import { Subscription } from '@napplet/core'; import { Theme } from './types.js'; /** * Napplet NAP theme sdk entrypoint. * * @module */ /** * @napplet/nap/theme -- SDK helpers wrapping window.napplet.theme. * * These convenience functions delegate to `window.napplet.theme.*` at call time. * The shim must be imported somewhere to install the global. */ /** * Get the shell's current active theme. * * @returns The current theme payload * * @example * ```ts * import { themeGet } from '@napplet/nap/theme'; * * const theme = await themeGet(); * ``` */ declare function themeGet(): Promise; /** * Listen for shell-pushed theme changes. * * @returns Subscription with close() to detach the handler * * @example * ```ts * import { themeOnChanged } from '@napplet/nap/theme'; * * const sub = themeOnChanged((theme) => applyTheme(theme)); * ``` */ declare function themeOnChanged(handler: (theme: Theme) => void): Subscription; export { themeGet, themeOnChanged };