/** * Relative-luminance cutoff between "dark enough for white text" and "light * enough for black text". WCAG's own crossover for #767676-class greys sits * near here; 0.179 is the value this assistant has shipped with. */ export declare const LUMINANCE_CUTOFF = 0.179; /** Returned for anything unparseable, the safe default on a light product. */ export declare const FALLBACK_TEXT = "#000000"; /** * Black or white, whichever stays readable on `color`. * * The Style step offers one swatch per surface and `#585858` is a preset, so * without this a dark fill lands black text on near-black. * * Accepts three- and six-digit hex, with or without `#`. Falling back to black * on OTHER notations is deliberate: the built-in default is an `rgba()` string * that should keep the original black, and the dashboard picker only ever * emits hex. * * Shorthand was added 2026-08-29. Before it, `#000` failed to parse and fell * back to black, black text on a black launcher, invisible. The dashboard * never emits shorthand, but the config is writable by API and by * `assistant.sh update`, so an operator could always reach it. */ export declare function readableTextOn(color: string): string;