/**
 * Hex colour helpers shared by every palette-editing surface (Macadamia
 * onboarding swatches, the LiveThemeEditor, the Style configurator advanced
 * row). Consolidates three prior duplicates: `normalizeColorPickerValue` in
 * Macadamia, `normalizeHex` + `contrastRatio` in `theme-editor/utils.ts`, and
 * the inline regex in `updateColorRole`.
 *
 * Pure functions; no DOM, no React.
 */
/**
 * Coerces user input into a canonical lowercase `#RRGGBB` form. Accepts
 * 3-digit shorthand, case-insensitive 6-digit hex, and the same forms with or
 * without a leading `#`; returns `fallback` for any other shape (empty
 * string, garbage, characters outside `[0-9a-f]`, wrong length, etc.). Pass
 * a `fallback` to make the fallback explicit at the call site — defaulting
 * to `'#000000'` keeps the legacy `theme-editor/utils.ts` semantics.
 */
export declare function normalizeHex(input: string | null | undefined, fallback?: string): string;
/**
 * WCAG relative luminance + contrast ratio. Rounded to 2 decimal places so
 * the result is stable for UI display.
 */
export declare function contrastRatio(hexA: string, hexB: string): number;
