import React from "react";
import { FinalPearlTheme } from "./types";
export type ColorMode = "light" | "dark";
export interface IThemeContext {
    /** Theme configuration object for the active color mode */
    theme: FinalPearlTheme;
    /** Active color mode */
    colorMode: ColorMode;
    /** Function to toggle the active color mode */
    toggleColorMode(): void;
    /** Function to switch the active color mode to a specific mode */
    switchColorMode(colorMode: ColorMode | "system"): void;
}
interface ThemeProviderProps {
    /**
     * Initial color mode for the theme (light, dark, system)
     *
     * @default "light"
     */
    initialColorMode?: ColorMode | "system";
    /** The theme configuration object */
    theme?: FinalPearlTheme;
    /**
     * A flag that describes the loading status of the custom fonts.
     *
     * @default true
     */
    haveFontsLoaded?: boolean;
    /**React children */
    children?: React.ReactNode;
}
export declare const themeContext: React.Context<IThemeContext>;
/**
 * The main provider component which controls the theme and color mode of the components in the entire application.
 */
export declare const ThemeProvider: React.FC<ThemeProviderProps>;
export {};
//# sourceMappingURL=theme-context.d.ts.map