import { Extension } from '@codemirror/state';
import { HighlightedCypherTokenTypes } from './constants';
export interface DiffColors {
    /** Background fill for the whole inserted/changed line. */
    insertedLine: string;
    /** Highlight for the exact inserted text within a changed line. */
    insertedText: string;
    /** Background fill for the whole deleted line widget. */
    deletedLine: string;
    /** Highlight for the exact deleted text within a deleted chunk. */
    deletedText: string;
}
export interface ThemeOptions {
    dark: boolean;
    editorSettings: {
        background: string;
        foreground: string;
        gutterForeground: string;
        cursor: string;
        selection: string;
        textMatchingSelection: string;
        searchPanel: {
            background: string;
            text: string;
            buttonHoverBackground: string;
        };
        autoCompletionPanel: {
            selectedColor: string;
            backgroundColor: string;
            matchingTextColor: string;
        };
    };
    highlightStyles: Partial<Record<HighlightedCypherTokenTypes, string>>;
    inheritBgColor?: boolean;
    diffColors?: DiffColors;
}
export declare const createCypherTheme: ({ dark, editorSettings: settings, highlightStyles, inheritBgColor, diffColors, }: ThemeOptions) => Extension;
