import { UniqueID } from "@/core/common/domain";
import { Result } from "@repo/rdx-utils";
import { TabContext } from "../entities";

export interface ITabContextService {
  getContextByTabId(tabId: UniqueID, transaction?: any): Promise<Result<TabContext, Error>>;
  createContext(
    params: { tabId: UniqueID; userId: UniqueID },
    transaction?: any
  ): Promise<Result<TabContext, Error>>;
  removeContext(
    params: { tabId: UniqueID; userId: UniqueID },
    transaction?: any
  ): Promise<Result<void, Error>>;
}
