import { ThemeValue } from './types/ThemeProvider.props.ts'; import { Context } from 'react'; export interface ThemeContextValue { /** Currently active theme name. `'system'` follows the OS preference. */ theme: ThemeValue; /** * The concrete resolved theme name, never `'system'`. Useful for * conditional rendering that depends on the actual visual state. */ resolvedTheme: string; /** * Change the active theme. * - In **uncontrolled** mode this updates internal state. * - In **controlled** mode (`theme` prop is provided) it only fires * `onThemeChange`; the parent is responsible for updating `theme`. */ setTheme: (theme: ThemeValue) => void; } export declare const ThemeContext: Context; /** * Returns the nearest `ThemeProvider` context. * * Safe to call outside a provider — returns `{ theme: 'system', resolvedTheme: * 'light', setTheme: noop }` as a fallback. * * @example * const { resolvedTheme, setTheme } = useTheme() */ export declare const useTheme: () => ThemeContextValue;