import { ReactNode } from 'react';
import { BorderConfig, ColorsConfig, DefaultModeTheme, NeumorphismConfig, ReactNeumorphismAugmentedTheme, TypographyConfig } from '../types/theme';
interface ThemeContextType {
    mode: DefaultModeTheme;
    theme: ReactNeumorphismAugmentedTheme;
    setMode: (mode: DefaultModeTheme) => void;
    updateConfig: (config: {
        neumorphismConfig?: Partial<NeumorphismConfig>;
        colorsConfig?: Partial<ColorsConfig>;
        typographyConfig?: Partial<TypographyConfig>;
        borderConfig?: Partial<BorderConfig>;
    }) => void;
}
export declare const useTheme: () => ThemeContextType;
interface ThemeProviderProps {
    mode: DefaultModeTheme;
    neumorphismConfig?: Partial<NeumorphismConfig>;
    colorsConfig?: Partial<ColorsConfig>;
    typographyConfig?: Partial<TypographyConfig>;
    borderConfig?: Partial<BorderConfig>;
    children: ReactNode;
}
export declare const ThemeProvider: ({ mode, neumorphismConfig, borderConfig, colorsConfig, typographyConfig, children, }: ThemeProviderProps) => ReactNode;
export {};
//# sourceMappingURL=ThemeProvider.d.ts.map