/** * Panel state management store. * * Tracks visibility, size, and active tab for each panel area. * * @module @burdenoff/fe-libs/shared/plugins/panels/usePanelManagerStore */ export interface PanelState { id: string; position: 'bottom' | 'left' | 'right'; visible: boolean; size: number; minimized: boolean; maximized: boolean; } interface PanelManagerStore { panels: Record; /** Active panel ID per position */ activePanels: Record; initPanel(id: string, position: string, defaultSize: number): void; openPanel(id: string): void; closePanel(id: string): void; togglePanel(id: string): void; resizePanel(id: string, size: number): void; minimizePanel(id: string): void; maximizePanel(id: string): void; restorePanel(id: string): void; setActivePanel(position: string, panelId: string): void; } export declare const usePanelManagerStore: import('zustand').UseBoundStore, "setState" | "persist"> & { setState(partial: PanelManagerStore | Partial | ((state: PanelManagerStore) => PanelManagerStore | Partial), replace?: false | undefined): unknown; setState(state: PanelManagerStore | ((state: PanelManagerStore) => PanelManagerStore), replace: true): unknown; persist: { setOptions: (options: Partial>) => void; clearStorage: () => void; rehydrate: () => Promise | void; hasHydrated: () => boolean; onHydrate: (fn: (state: PanelManagerStore) => void) => () => void; onFinishHydration: (fn: (state: PanelManagerStore) => void) => () => void; getOptions: () => Partial>; }; }>; export {}; //# sourceMappingURL=usePanelManagerStore.d.ts.map