/** * Material 3 Design Tokens * * Based on Material Design 3 color system with semantic tokens * for consistent theming across components. * * NOTE: this is the simple/legacy `src/theme/` ThemeProvider. The canonical * full token surface (spacing + typography included) lives in the preset * system under `src/themes/` (Material/Glass/Studio + css-generator.ts). The * additive Material-3 aliases (issue #1431) are imported from the shared * preset tokens so both providers stay in lock-step where their categories * overlap. */ /** * Color scheme type */ export type ColorScheme = 'light' | 'dark' | 'system'; /** * Theme configuration */ export interface ThemeConfig { /** Color scheme preference */ colorScheme: ColorScheme; /** Primary color (hex) */ primaryColor?: string; /** Border radius scale */ borderRadius?: 'none' | 'sm' | 'md' | 'lg' | 'full'; /** Custom CSS variables to override */ overrides?: Record; } /** * Default theme configuration */ export declare const defaultThemeConfig: ThemeConfig; /** * Material 3 color palette * Light theme semantic colors */ export declare const lightColors: { primary: string; onPrimary: string; primaryContainer: string; onPrimaryContainer: string; secondary: string; onSecondary: string; secondaryContainer: string; onSecondaryContainer: string; tertiary: string; onTertiary: string; tertiaryContainer: string; onTertiaryContainer: string; error: string; onError: string; errorContainer: string; onErrorContainer: string; warning: string; onWarning: string; warningContainer: string; onWarningContainer: string; success: string; onSuccess: string; successContainer: string; onSuccessContainer: string; surface: string; onSurface: string; surfaceVariant: string; onSurfaceVariant: string; surfaceContainer: string; surfaceContainerLow: string; surfaceContainerHigh: string; surfaceContainerHighest: string; surfaceContainerLowest: string; surfaceDim: string; surfaceBright: string; outline: string; outlineVariant: string; background: string; onBackground: string; inverseSurface: string; inverseOnSurface: string; inversePrimary: string; shadow: string; scrim: string; }; /** * Material 3 color palette * Dark theme semantic colors */ export declare const darkColors: { primary: string; onPrimary: string; primaryContainer: string; onPrimaryContainer: string; secondary: string; onSecondary: string; secondaryContainer: string; onSecondaryContainer: string; tertiary: string; onTertiary: string; tertiaryContainer: string; onTertiaryContainer: string; error: string; onError: string; errorContainer: string; onErrorContainer: string; warning: string; onWarning: string; warningContainer: string; onWarningContainer: string; success: string; onSuccess: string; successContainer: string; onSuccessContainer: string; surface: string; onSurface: string; surfaceVariant: string; onSurfaceVariant: string; surfaceContainer: string; surfaceContainerLow: string; surfaceContainerHigh: string; surfaceContainerHighest: string; surfaceContainerLowest: string; surfaceDim: string; surfaceBright: string; outline: string; outlineVariant: string; background: string; onBackground: string; inverseSurface: string; inverseOnSurface: string; inversePrimary: string; shadow: string; scrim: string; }; /** * Typography scale */ export declare const typography: { displayLarge: { size: string; lineHeight: string; weight: string; tracking: string; }; displayMedium: { size: string; lineHeight: string; weight: string; tracking: string; }; displaySmall: { size: string; lineHeight: string; weight: string; tracking: string; }; headlineLarge: { size: string; lineHeight: string; weight: string; tracking: string; }; headlineMedium: { size: string; lineHeight: string; weight: string; tracking: string; }; headlineSmall: { size: string; lineHeight: string; weight: string; tracking: string; }; titleLarge: { size: string; lineHeight: string; weight: string; tracking: string; }; titleMedium: { size: string; lineHeight: string; weight: string; tracking: string; }; titleSmall: { size: string; lineHeight: string; weight: string; tracking: string; }; bodyLarge: { size: string; lineHeight: string; weight: string; tracking: string; }; bodyMedium: { size: string; lineHeight: string; weight: string; tracking: string; }; bodySmall: { size: string; lineHeight: string; weight: string; tracking: string; }; labelLarge: { size: string; lineHeight: string; weight: string; tracking: string; }; labelMedium: { size: string; lineHeight: string; weight: string; tracking: string; }; labelSmall: { size: string; lineHeight: string; weight: string; tracking: string; }; }; /** * Spacing scale (in rem) */ export declare const spacing: { 0: string; 0.5: string; 1: string; 1.5: string; 2: string; 2.5: string; 3: string; 3.5: string; 4: string; 5: string; 6: string; 7: string; 8: string; 9: string; 10: string; 11: string; 12: string; 14: string; 16: string; 20: string; 24: string; }; /** * Border radius scale */ export declare const borderRadius: { none: string; sm: string; md: string; lg: string; xl: string; '2xl': string; '3xl': string; full: string; }; /** * Shadow elevation scale (Material 3 style) */ export declare const elevation: { 0: string; 1: string; 2: string; 3: string; 4: string; 5: string; }; /** * Transition durations */ export declare const duration: { instant: string; fast: string; normal: string; slow: string; slower: string; }; /** * Transition easings (Material 3 style) */ export declare const easing: { standard: string; standardDecelerate: string; standardAccelerate: string; emphasized: string; emphasizedDecelerate: string; emphasizedAccelerate: string; }; /** * Generate CSS custom properties from colors */ export declare function generateColorVariables(colors: typeof lightColors): Record; /** * Generate all CSS custom properties for a theme */ export declare function generateThemeVariables(isDark: boolean): Record; //# sourceMappingURL=tokens.d.ts.map