import { PaletteMode, Theme, ThemeOptions } from '@mui/material';
/** 颜色模式上下文类型 */
export interface ColorSchemeContextType {
    mode: PaletteMode;
    toggleMode: () => void;
    changeMode: (mode: PaletteMode) => void;
    prefer?: Prefer;
}
export type UxTheme = ThemeOptions | ((parentTheme: Theme, context?: {
    mode: PaletteMode;
}) => Theme);
export type Prefer = 'light' | 'dark' | 'system';
export declare const ColorSchemeContext: import('react').Context<ColorSchemeContextType>;
export declare function useColorScheme(): ColorSchemeContextType;
interface BaseThemeProviderProps {
    children?: React.ReactNode;
    theme?: UxTheme;
    injectFirst?: boolean;
    /** 指定一个类名，DarkSchemeStyles 只会作用于带有该类的元素及其后代 */
    darkSchemeClass?: string;
    /** 禁用样式缓存 */
    disableStyleCache?: boolean;
}
interface ColorSchemeProviderProps extends BaseThemeProviderProps {
    prefer?: Prefer;
    disableBlockletTheme?: boolean;
}
export interface ThemeProviderProps extends ColorSchemeProviderProps {
    /** 下列情况会启用 ColorScheme 功能（让 theme 支持明暗模式切换）
     * 1. 显示打开 enableColorScheme
     * 2. 显示设置 prefer
     * 3. 顶层 ThemeProvider
     */
    enableColorScheme?: boolean;
}
export default function ThemeProvider({ children, prefer, enableColorScheme, ...props }: ThemeProviderProps): import("react/jsx-runtime").JSX.Element;
export {};
