import { DomainEntity, Result, UniqueID } from "@common/domain"; export interface ITabContextProps { tabId: UniqueID; userId: UniqueID; } export interface ITabContext { tabId: UniqueID; userId: UniqueID; toPersistenceData(): any; } export class TabContext extends DomainEntity implements ITabContext { static create(props: ITabContextProps, id?: UniqueID): Result { return Result.ok(new this(props, id)); } get tabId(): UniqueID { return this._props.tabId; } get userId(): UniqueID { return this._props.userId; } /** * 🔹 Devuelve una representación lista para persistencia */ toPersistenceData(): any { return { id: this._id.toString(), tab_id: this.tabId.toString(), user_id: this.userId.toString(), }; } }