import { create } from 'zustand'; export interface TabConfig { id: string; visible: boolean; window: 'developer' | 'user'; order: number; locked?: boolean; } interface TabConfigurationStore { userTabs: TabConfig[]; developerTabs: TabConfig[]; get: () => { userTabs: TabConfig[]; developerTabs: TabConfig[] }; set: (config: { userTabs: TabConfig[]; developerTabs: TabConfig[] }) => void; reset: () => void; } const DEFAULT_CONFIG = { userTabs: [], developerTabs: [], }; export const tabConfigurationStore = create((set, get) => ({ ...DEFAULT_CONFIG, get: () => ({ userTabs: get().userTabs, developerTabs: get().developerTabs, }), set: (config) => set(config), reset: () => set(DEFAULT_CONFIG), }));