import type { ConfigStore } from "../persistence/createConfigStore.svelte.js"; import type { Command, Currency, Language, Theme, Toast, ToastType, } from "./types.js"; import type { LayoutStore } from "../../../runes/layout/src/store.svelte.js"; import type { ShortcutStore } from "../../../runes/palettes/src/shortcuts/store.svelte.js"; /** * Common store interfaces */ export interface ICommandStore { commands: Command[]; register(command: Command): void; unregister(id: string): void; search(query: string, parentId?: string): Command[]; } export interface IToastStore { toasts: Toast[]; send(message: string, type?: ToastType, duration?: number): void; success(msg: string): void; error(msg: string): void; warn(msg: string): void; info(msg: string): void; dismiss(id: string): void; pause(id: string): void; resume(id: string): void; } export interface ICurrencyStore extends ConfigStore { canConvert: boolean; convertAmount(amount: number, fromCode: string, toCode?: string): number; addCurrency(meta: Currency, dineroDef?: unknown): void; } /** * Store context accessors */ export declare function getLayoutStore(): LayoutStore; export declare function getLanguageStore(): ConfigStore; export declare function getThemeStore(): ConfigStore; export declare function getShortcutStore(): ShortcutStore; export declare function getCommandStore(): ICommandStore; export declare function getToastStore(): IToastStore; export declare function getCurrencyStore(): ICurrencyStore; /** * Standard layout shortcuts */ export declare const LAYOUT_SHORTCUTS: { readonly TOGGLE_NAV: { readonly id: "layout:toggle-nav"; readonly keys: "ctrl+b"; readonly label: "Toggle Sidebar"; readonly category: "Layout"; }; readonly TOGGLE_DETAIL: { readonly id: "layout:toggle-detail"; readonly keys: "ctrl+alt+b"; readonly label: "Toggle Detail Panel"; readonly category: "Layout"; }; readonly OPEN_SHORTCUTS: { readonly id: "layout:open-shortcuts"; readonly keys: "ctrl+/"; readonly label: "Show Shortcuts"; readonly category: "Layout"; }; };