import type { BrandPaletteSource, ColorScale, SemanticColors, SidebarTokens } from "../types"; /** WCAG 1.4.3 — the active label is normal-size text. */ export declare const AA_NORMAL_TEXT = 4.5; /** Lightest surface an active row reaches: Chakra `whiteAlpha.400` (0.24) on hover. */ export declare const ACTIVE_SURFACE_TINT = "#ffffff3d"; export declare const sidebarActiveSurface: (background: ColorScale) => string; /** Lightest a row ever gets on ANY rail surface — what chrome inside a row must clear. */ export declare const sidebarRowPeak: (surface: string) => string; /** Stronger than the divider — a hover fill must read as an action, not a rule. */ export declare const HOVER_SURFACE_TINT = "#ffffff20"; /** Chakra whiteAlpha.100 (0.06) — a divider only needs to read, not shout. */ export declare const DIVIDER_SURFACE_TINT = "#ffffff0f"; export declare const sidebarHoverSurface: (background: ColorScale) => string; export declare const sidebarDivider: (background: ColorScale) => string; /** The rail never inverts, so both modes take the accent from the LIGHT primary. */ export declare const buildSidebarTokens: (background: ColorScale, lightPrimary: ColorScale, semantic: SemanticColors) => SidebarTokens; export declare const withSidebarTokens: (source: BrandPaletteSource) => SidebarTokens;