export type AppColorName = 'teal' | 'blue' | 'green' | 'amber' | 'yellow' | 'red' | 'purple' | 'pink' | 'sky' | 'orange' | 'mint' | 'oxy' | 'faircoin';
/**
 * Palette tokens for a single mode (light or dark) of a color preset.
 *
 * Keys carry a leading `--` for historical reasons (shadcn-style CSS variable
 * names) — keep in mind the values are platform-agnostic **raw HSL triples**
 * (e.g. `'185 100% 20%'` or `'185 100% 20% / 0.5'`), not CSS-resolved colors.
 * The single canonical resolver `getResolvedTokens` (in `token-registry.ts`)
 * converts this raw map to sRGB `rgb(...)` for every runtime write — the same
 * values drive BOTH layers:
 *   - the web layer: `getResolvedTokens`'s `rgb(...)` strings are written to
 *     `document.documentElement` / a `BloomColorScope` element, so `var(--x)` —
 *     the form Tailwind v4 `@theme inline` compiles its color utilities to —
 *     resolves to a valid color directly, and
 *   - the native layer (`buildTheme` resolves the raw triples into `hsl(...)`
 *     strings consumable by React Native styles; `native-root-vars.native.ts`
 *     writes the same canonical `rgb(...)` values into react-native-css's
 *     `rootVariables` family).
 *
 * The `--` prefix is an implementation detail we will drop in a future major.
 */
export type PresetTokens = Record<string, string>;
export interface AppColorPreset {
    name: AppColorName;
    hex: string;
    light: PresetTokens;
    dark: PresetTokens;
}
export declare const APP_COLOR_NAMES: readonly AppColorName[];
/** Premium-exclusive presets, hidden from the standard color picker. */
export declare const PREMIUM_COLOR_NAMES: readonly AppColorName[];
export declare const HEX_TO_APP_COLOR: Record<string, AppColorName>;
export declare function hexToAppColorName(hex: string): AppColorName;
export declare const APP_COLOR_PRESETS: Record<AppColorName, AppColorPreset>;
//# sourceMappingURL=color-presets.d.ts.map