import { sharedScheme } from './theme_config'; export declare type ColorSchemeUnion = keyof BuiltInColorSchemeMap | keyof ExtendedColorSchemeMap; export declare type LayoutSchemeUnion = keyof BuiltInLayoutSchemeMap | keyof ExtendedLayoutSchemeMap; export declare type SystemColorSchemeUnion = 'dark' | 'light'; export declare type BuiltInColorSchemeMap = { light: ColorScheme; dark: ColorScheme; }; export declare type BuiltInLayoutSchemeMap = { normal: LayoutScheme; }; export interface ColorScheme extends ExtendedColorScheme { baseColor: string; bgColor: string; textColor: string; borderColor: string; linkColor: string; linkColorHover: string; linkColorActive: string; } export interface LayoutScheme extends ExtendedLayoutScheme { contentWidth: number; appBarHeight: number; } export declare type SharedScheme = typeof sharedScheme; export declare type Theme = ColorScheme & LayoutScheme & SharedScheme & ExtendedTheme; export declare class ThemeManager { private colorSchemesStore; private layoutSchemesStore; private _sharedScheme; get sharedSchemered(): { zIndexBackdrop: string; zIndexAppBar: string; } & ExtendedTheme; get layoutSchemes(): { [key: string]: LayoutScheme; }; get colorSchemes(): { [x: string]: ColorScheme; }; getColorSchemesByType(type: SystemColorSchemeUnion): { [key: string]: ColorScheme; }; getColorSchemeType(key: string): SystemColorSchemeUnion; addColorScheme(key: keyof ExtendedColorSchemeMap, scheme: ColorScheme, type: SystemColorSchemeUnion): void; addLayoutScheme(key: keyof ExtendedLayoutSchemeMap, scheme: LayoutScheme): void; patchColorScheme(key: keyof BuiltInColorSchemeMap, updater: (scheme: ColorScheme) => ColorScheme | void): void; patchLayoutScheme(key: keyof BuiltInLayoutSchemeMap, updater: (scheme: LayoutScheme) => LayoutScheme | void): void; extendColorScheme(property: keyof ExtendedColorScheme, valueMap: { [key in keyof BuiltInColorSchemeMap]: string | number; }): void; extendLayoutScheme(property: keyof ExtendedLayoutScheme, valueMap: { [key in keyof BuiltInLayoutSchemeMap]: string | number; }): void; extendSharedScheme(property: keyof ExtendedTheme, value: string | number): void; applyTheme(theme?: Theme): void; } export declare const generateTheme: (colorScheme: string, layoutScheme: string, useSystemColorScheme: boolean) => Theme; export declare const updateExternalThemeStyles: () => void; export declare const getCachedLayoutScheme: () => LayoutSchemeUnion; export declare const getCachedUseSystemColorScheme: () => boolean; export declare const getCachedColorScheme: () => ColorSchemeUnion; export declare const themeManager: ThemeManager;