import { EditorView } from '@codemirror/view'; import { JupyterFrontEndPlugin } from '@jupyterlab/application'; import { IVirtualPosition, WidgetLSPAdapter, Document } from '@jupyterlab/lsp'; import { LabIcon } from '@jupyterlab/ui-components'; import { Debouncer } from '@lumino/polling'; import type * as lsProtocol from 'vscode-languageserver-protocol'; import { CodeHighlights as LSPHighlightsSettings } from '../_highlights'; import { FeatureSettings, Feature } from '../feature'; import { DocumentHighlightKind } from '../lsp'; import { ISimpleMarkManager } from '../marks'; import { BrowserConsole } from '../virtual/console'; import { VirtualDocument } from '../virtual/document'; export declare const highlightIcon: LabIcon; export declare class HighlightsFeature extends Feature { readonly capabilities: lsProtocol.ClientCapabilities; readonly id: string; protected settings: FeatureSettings; protected markManager: ISimpleMarkManager; protected console: BrowserConsole; private _debouncedGetHighlight; private _virtualPosition; private _versionSent; private _lastToken; constructor(options: HighlightsFeature.IOptions); protected onBlur(view: EditorView): void; protected handleHighlight(items: lsProtocol.DocumentHighlight[] | null, adapter: WidgetLSPAdapter, document: VirtualDocument): void; protected createDebouncer(): Debouncer; protected requestHighlights: (virtualDocument: VirtualDocument, virtualPosition: IVirtualPosition) => Promise; protected onCursorActivity(editorAccessor: Document.IEditor, adapter: WidgetLSPAdapter): Promise; } export declare namespace HighlightsFeature { interface IOptions extends Feature.IOptions { settings: FeatureSettings; } const id: string; } export declare const HIGHLIGHTS_PLUGIN: JupyterFrontEndPlugin;