import type { PanelEdge, PanelState, ResolvedShellConfig, ShellActivity, ShellActivityBadge, ShellActivityEvent, ShellActivityFilter, ShellFocusTool, ShellPanelDefaults, ShellScope, ShellSettingsAdapter, ShellSettingsDelta, ShellStateSnapshot, VisiblePanelState } from './types.js'; type ActivityListener = (event: ShellActivityEvent) => void; type ShellActivityPatch = Partial>; export interface ShellStateOptions { config?: ShellPanelDefaults; settings?: ShellSettingsDelta; settingsAdapter?: ShellSettingsAdapter; storageKey?: string; } export declare class ShellState { readonly config: ResolvedShellConfig; readonly adapter: ShellSettingsAdapter | null; settings: ShellSettingsDelta; panels: Record; focusTools: ShellFocusTool[]; activeFocusToolId: string | null; activities: ShellActivity[]; private activityListeners; constructor(options?: ShellStateOptions); hydrate(): Promise; snapshot(): ShellStateSnapshot; applySettings(delta: ShellSettingsDelta, options?: { persist?: boolean; }): void; setHotkeysEnabled(enabled: boolean): void; setHotkey(edge: PanelEdge, code: string | null): void; setPanel(edge: PanelEdge, state: VisiblePanelState): void; togglePanel(edge: PanelEdge): void; expandPanel(edge: PanelEdge): void; collapsePanel(edge: PanelEdge): void; closeTopmostExpanded(): boolean; registerFocusTool(tool: ShellFocusTool): () => void; unregisterFocusTool(id: string): void; openFocusTool(id: string): void; toggleFocusTool(id: string): void; upsertActivity(activity: ShellActivity): void; updateActivity(id: string, patch: ShellActivityPatch): void; removeActivity(id: string): void; watchActivities(listener: ActivityListener): () => void; listActivities(filter?: ShellActivityFilter): ShellActivity[]; activityBadge(edge: PanelEdge): ShellActivityBadge; homeEdgeForScope(scope: ShellScope): PanelEdge; private closeExclusivePeers; private persistSettings; private emitActivity; } export declare function createShellState(options?: ShellStateOptions): ShellState; export {}; //# sourceMappingURL=state.svelte.d.ts.map