import { type Palette } from "./style/tokens.js"; export type Theme = "light" | "dark"; export type Surface = "solid" | "glass"; export type Density = "compact" | "regular" | "comfy"; /** * The web light or dark choice: the persisted one, else the document root's `.dark` class. * Returns `"light"` off the web. */ export declare function getTheme(): Theme; /** * Persists the web light or dark choice and toggles the `.dark` class on the document root * for the CSS hand-off. Pass the same choice to ThemeProvider so React Native components * follow it. */ export declare function setTheme(theme: Theme): void; /** Flips the web light or dark choice through setTheme and returns the new one. */ export declare function toggleTheme(): Theme; /** * The web palette (`"violet"`, `"cyan"`, `"mint"`, `"rose"` or `"amber"`): the persisted * one, else the document root's `data-palette`. Returns `"violet"` off the web. */ export declare function getPalette(): Palette; /** * Persists the web palette and sets `data-palette` on the document root (violet, the * default, removes it). Pass the same choice to ThemeProvider (``) so * React Native components follow it. */ export declare function setPalette(palette: Palette): void; /** * The web surface, `"solid"` or `"glass"`: the persisted one, else the document root's * `data-surface`. Returns `"solid"` off the web. */ export declare function getSurface(): Surface; /** * Persists the web surface and sets `data-surface` on the document root, which gates the * CSS hand-off's material mode (solid removes it). Pass the same choice to ThemeProvider * so React Native components follow it. */ export declare function setSurface(surface: Surface): void; /** * The web density, `"compact"`, `"regular"` or `"comfy"`: the persisted one, else the * document root's `data-density`. Returns `"regular"` off the web. */ export declare function getDensity(): Density; /** * Persists the web density and sets `data-density` on the document root for the CSS * hand-off's card and table spacing (regular removes it). Components take density from * their own `compact` and `comfortable` props. */ export declare function setDensity(density: Density): void; //# sourceMappingURL=theme.d.ts.map