import * as React from 'react';
declare enum Status {
    idle = "idle",
    loading = "loading",
    loaded = "loaded"
}
interface IThemeSwitcherContext {
    currentTheme: string | undefined;
    themes: Record<any, string>;
    switcher: ({ theme }: {
        theme: string;
    }) => void;
    status: Status;
}
interface Props {
    themeMap: Record<any, string>;
    children?: React.ReactNode;
    insertionPoint?: string | HTMLElement | null;
    id?: string;
    defaultTheme?: string;
    attr?: string;
}
export declare function ThemeSwitcherProvider({ themeMap, insertionPoint, defaultTheme, id, attr, ...rest }: Props): JSX.Element;
export declare function useThemeSwitcher(): IThemeSwitcherContext;
export {};
