export type TokenValue = string; export type TokenGroup = { [key: string]: TokenValue | TokenGroup; }; export interface ColorTokens extends Record { primary: string; bg: { primary: string; secondary: string; } & Record; text: { base: string; primary?: string; } & Record; border: { base: string; primary?: string; } & Record; status: { info: string; danger: string; warning: string; success: string; } & Record; } export interface SpacingTokens extends Record { xs: string; sm: string; md: string; lg: string; xl: string; '2xl': string; } export interface RadiusTokens extends Record { none: string; sm: string; md: string; lg: string; xl: string; full: string; } export interface TypographyTokens extends Record { xs: string; sm: string; md: string; lg: string; xl: string; '2xl': string; } export interface SizeTokens extends Record { xs: string; sm: string; md: string; lg: string; xl: string; } export interface DesignTokens { colors: ColorTokens; spacing: SpacingTokens; radius: RadiusTokens; fontSize: TypographyTokens; componentSize: SizeTokens; } /** Flatten a nested token object into flat key-value pairs. * e.g. { bg: { primary: '#fff' } } → { 'bg-primary': '#fff' } */ export declare function flattenTokens(tokens: TokenGroup | Record, prefix?: string): Record; /** Generate darken / lighten / fade variants for each flat color entry. * IMPORTANT: this function is THE SINGLE SOURCE OF TRUTH for color math. * Both UnoCSS (build-time) and ConfigProvider (runtime) must use this. */ export declare function deriveColorVariants(flatColors: Record): Record; /** Convert flat CSS-var–based colors into the shape UnoCSS theme.colors expects. * e.g. 'bg-primary' → { 'bg.primary': 'var(--sh-bg-primary)' } */ export declare function buildUnoColorMap(flatColors: Record, cssVarPrefix?: string): Record; /** Generate a CSS string of `:root { --sh-*: value; }` declarations. * Used for static baseline stylesheet (SSR-safe). */ export declare function generateCssVarBlock(flatTokens: Record, prefix?: string): string;