import { useContext } from "react"; // context import { StoreContext } from "@/lib/store-context"; // mobx store import type { IProjectPageStore } from "@/store/pages/project-page.store"; export enum EPageStoreType { PROJECT = "PROJECT_PAGE", } export type TReturnType = { [EPageStoreType.PROJECT]: IProjectPageStore; }; export const usePageStore = (storeType: T): TReturnType[T] => { const context = useContext(StoreContext); if (context === undefined) throw new Error("usePageStore must be used within StoreProvider"); if (storeType === EPageStoreType.PROJECT) { return context.projectPages; } throw new Error(`Invalid store type: ${storeType}`); };