/** * Theme CSS Compiler -- `ThemeDef` to `html[data-theme]` selector blocks + transitions. * * Emits per-variant CSS blocks overriding `--czap-*` custom properties, * and optional transition declarations for animated theme switching. * * @module */ import type { Theme } from '@czap/core'; /** * Output of {@link ThemeCSSCompiler.compile}. * * `selectors` is the concatenated `html[data-theme="variant"]` rule block, * one per theme variant that has at least one token override. `transitions` * is the optional `:root { transition-*: … }` block emitted when the theme * carries metadata indicating animated switching is desired. */ export interface ThemeCSSResult { /** Per-variant `html[data-theme]` selector blocks. */ readonly selectors: string; /** Optional root transition declarations for animated theme swaps. */ readonly transitions: string; } /** * Compile a {@link Theme.Shape} into per-variant selector blocks and optional * root transitions. */ declare function compile(theme: Theme.Shape): ThemeCSSResult; /** * Theme CSS compiler namespace. * * Serializes a {@link Theme.Shape} into `html[data-theme="…"]` selector * overrides of `--czap-*` custom properties and, when theme metadata * requests it, a `:root` transition block that animates all theme * property changes. */ export declare const ThemeCSSCompiler: { /** Compile a theme definition into per-variant selector blocks. */ readonly compile: typeof compile; }; export {}; //# sourceMappingURL=theme-css.d.ts.map