//#region src/lib/option-color.d.ts /** * The kit's colour token for user-chosen option colours. * * A token is either one of the sixteen named presets, which resolve to the * theme's `--option-*` custom properties, or a six-character hex string, which * resolves to a `color-mix` against the current background and foreground. The * indirection is what keeps a stored colour theme-aware: nothing persists a * literal colour the palette cannot re-tint. * * This lives in the kit rather than beside a data model because the resolver is * pure presentation: it maps a token to CSS, and knows nothing about what the * token was chosen for. */ /** Named preset or arbitrary 6-character hex colour (e.g. "FF0000"). */ export type OptionColor = "red" | "orange" | "amber" | "yellow" | "lime" | "green" | "emerald" | "teal" | "cyan" | "sky" | "blue" | "indigo" | "violet" | "purple" | "fuchsia" | "gray" | (string & Record); export type ColorVariants = { background: string; foreground: string; color: string; }; export declare const emptyColor: ColorVariants; /** Resolve any OptionColor (named or hex) to CSS color variants. */ export declare const resolveOptionColor: (color: OptionColor) => ColorVariants; /** The 16 named preset color keys. */ export declare const optionColors: readonly OptionColor[]; //#endregion