import { JupyterFrontEndPlugin } from '@jupyterlab/application';
import { IAdapterOptions as IUpstreamIAdapterOptions, Document } from '@jupyterlab/lsp';
import { NotebookAdapter as UpstreamNotebookAdapter, NotebookPanel } from '@jupyterlab/notebook';
import { ILSPCodeOverridesManager } from '../overrides/tokens';
import { VirtualDocument } from '../virtual/document';
interface IAdapterOptions extends IUpstreamIAdapterOptions {
    codeOverridesManager: ILSPCodeOverridesManager;
}
export declare class NotebookAdapter extends UpstreamNotebookAdapter {
    editorWidget: NotebookPanel;
    protected options: IAdapterOptions;
    constructor(editorWidget: NotebookPanel, options: IAdapterOptions);
    /**
     * Generate the virtual document associated with the document.
     */
    createVirtualDocument(): VirtualDocument;
    protected onForeignDocumentOpened(virtualDocument: VirtualDocument, context: Document.IForeignContext): Promise<void>;
    updateDocuments(): Promise<void>;
    private _blockUpdates;
}
export declare const NOTEBOOK_ADAPTER_PLUGIN: JupyterFrontEndPlugin<void>;
export {};
