import { type Component, type Snippet } from "svelte"; import type { PersistenceDriver, RunePlugin } from "./kernel/src/mod.js"; import type { AppData } from "./kernel/src/mod.js"; /** * Namespaced configuration for Rune Lab plugins. * Keyed by plugin.id. */ export interface RuneLabConfig { persistence?: PersistenceDriver; /** Optional head management properties */ favicon?: string; manageHead?: boolean; icons?: "material" | "none"; /** App metadata — passed to AppStore.init() */ app?: Partial; /** Namespaced config for plugins */ [pluginId: string]: unknown; } type $$ComponentProps = { children: Snippet; config?: RuneLabConfig; plugins?: RunePlugin[]; onThemeChange?: (newTheme: any, oldTheme: any) => void; onLanguageChange?: (newLang: any, oldLang: any) => void; onCurrencyChange?: (newCurrency: any, oldCurrency: any) => void; }; declare const RuneProvider: Component<$$ComponentProps, {}, "">; type RuneProvider = ReturnType; export default RuneProvider;