interface HighlighterInput {
    colorScheme: 'light' | 'dark' | (string & {});
    code: string;
    language?: string;
}
type Highlighter = (input: HighlighterInput) => {
    /** Highlighted code (html markup) */
    highlightedCode: string;
    /** `true` if the code is represented with html string, `false` for plain text string */
    isHighlighted: boolean;
    /** Props to pass down to `<code>` tag */
    codeElementProps?: Record<string, any>;
};
export interface CodeHighlightAdapter {
    loadContext?: () => Promise<any>;
    getHighlighter: (ctx: any) => Highlighter;
}
interface CodeHighlightProviderContext {
    adapter: CodeHighlightAdapter;
    highlight: Highlighter;
}
export declare const CodeHighlightContext: import("react").Context<CodeHighlightProviderContext>;
export interface CodeHighlightAdapterProviderProps {
    adapter: CodeHighlightAdapter;
    children: React.ReactNode;
}
export declare function CodeHighlightAdapterProvider({ adapter, children, }: CodeHighlightAdapterProviderProps): import("react/jsx-runtime").JSX.Element;
export declare function useHighlight(): Highlighter;
export {};
