import { JupyterFrontEndPlugin } from '@jupyterlab/application';
import { IEditorMimeTypeService } from '@jupyterlab/codeeditor';
import { CodeMirrorEditor, IEditorLanguageRegistry } from '@jupyterlab/codemirror';
import { WidgetLSPAdapter, Document } from '@jupyterlab/lsp';
import { LabIcon } from '@jupyterlab/ui-components';
import { CodeSyntax as LSPSyntaxHighlightingSettings } from '../_syntax_highlighting';
import { FeatureSettings, Feature } from '../feature';
export declare const syntaxHighlightingIcon: LabIcon;
export declare class SyntaxHighlightingFeature extends Feature {
    protected options: SyntaxHighlightingFeature.IOptions;
    readonly id: string;
    readonly capabilities: {};
    protected originalModes: Map<CodeMirrorEditor, string>;
    constructor(options: SyntaxHighlightingFeature.IOptions);
    private getMode;
    updateMode(adapter: WidgetLSPAdapter<any>, editorAccessor: Document.IEditor, awaitUpdate?: boolean): Promise<void>;
}
export declare namespace SyntaxHighlightingFeature {
    interface IOptions extends Feature.IOptions {
        settings: FeatureSettings<LSPSyntaxHighlightingSettings>;
        mimeTypeService: IEditorMimeTypeService;
        languageRegistry: IEditorLanguageRegistry;
    }
    const id: string;
}
export declare const SYNTAX_HIGHLIGHTING_PLUGIN: JupyterFrontEndPlugin<void>;
