import { ShortcutAction } from '../lib/keyboard/types'; interface CloudProvider { apiKey: string; enabled: boolean; } interface LocalProvider { baseUrl: string; enabled: boolean; } export interface AISettings { openai?: CloudProvider; anthropic?: CloudProvider; gemini?: CloudProvider; grok?: CloudProvider; openrouter?: CloudProvider; ollama?: LocalProvider; lmstudio?: LocalProvider; } export interface KeyboardSettings { shortcuts: Partial>; enabled: boolean; } interface SettingsStore { ai: AISettings; setAIProvider: (provider: keyof AISettings, config: CloudProvider | LocalProvider) => void; clearAIProvider: (provider: keyof AISettings) => void; keyboard: KeyboardSettings; updateShortcut: (action: ShortcutAction, binding: string | null) => void; resetShortcut: (action: ShortcutAction) => void; resetAllShortcuts: () => void; isShortcutConflicting: (binding: string, excludeAction?: ShortcutAction) => string | null; showSettings: boolean; openSettings: () => void; closeSettings: () => void; showCommandPalette: boolean; openCommandPalette: () => void; closeCommandPalette: () => void; showShortcutsModal: boolean; openShortcutsModal: () => void; closeShortcutsModal: () => void; showExport: boolean; openExport: () => void; closeExport: () => void; showImport: boolean; openImport: () => void; closeImport: () => void; showNewWorkflowConfirm: boolean; newWorkflowConfirmCallback: (() => void) | null; requestNewWorkflow: (hasUnsavedChanges: boolean, onConfirm: () => void) => void; confirmNewWorkflow: () => void; cancelNewWorkflow: () => void; getConfiguredProviders: () => { openai?: { apiKey: string; }; anthropic?: { apiKey: string; }; gemini?: { apiKey: string; }; grok?: { apiKey: string; }; openrouter?: { apiKey: string; }; ollama?: { baseUrl: string; }; lmstudio?: { baseUrl: string; }; }; } export declare const useSettingsStore: import('zustand').UseBoundStore, "setState" | "persist"> & { setState(partial: SettingsStore | Partial | ((state: SettingsStore) => SettingsStore | Partial), replace?: false | undefined): unknown; setState(state: SettingsStore | ((state: SettingsStore) => SettingsStore), replace: true): unknown; persist: { setOptions: (options: Partial>) => void; clearStorage: () => void; rehydrate: () => Promise | void; hasHydrated: () => boolean; onHydrate: (fn: (state: SettingsStore) => void) => () => void; onFinishHydration: (fn: (state: SettingsStore) => void) => () => void; getOptions: () => Partial>; }; }>; export {};