import { JupyterFrontEndPlugin } from '@jupyterlab/application'; import { TranslationBundle } from '@jupyterlab/translation'; import { LabIcon } from '@jupyterlab/ui-components'; import * as lsProtocol from 'vscode-languageserver-protocol'; import { CodeMirrorIntegration, IEditOutcome } from '../editor_integration/codemirror'; import { CodeMirrorVirtualEditor } from '../virtual/codemirror_editor'; import { DiagnosticsCM } from './diagnostics/diagnostics'; export declare const renameIcon: LabIcon; export declare class RenameCM extends CodeMirrorIntegration { setTrans(trans: TranslationBundle): void; setStatus(message: string, timeout: number): void; handleRename(workspaceEdit: lsProtocol.WorkspaceEdit, old_value: string, new_value: string): Promise; /** * In #115 an issue with rename for Python (when using pyls) was identified: * rename was failing with an obscure message when the source code could * not be parsed correctly by rope (due to a user's syntax error). * * This function detects such a condition using diagnostics feature * and provides a nice error message to the user. */ static ux_workaround_for_rope_limitation(error: Error, diagnostics_feature: DiagnosticsCM, editor: CodeMirrorVirtualEditor, rename_feature: RenameCM): string | null; } export declare const RENAME_PLUGIN: JupyterFrontEndPlugin;