UNPKG

@krassowski/jupyterlab-lsp

Version:

Language Server Protocol integration for JupyterLab

56 lines (55 loc) 3.18 kB
import { JupyterFrontEnd } from '@jupyterlab/application'; import { CompletionHandler, ICompletionManager, CompleterModel } from '@jupyterlab/completer'; import { IDocumentWidget } from '@jupyterlab/docregistry'; import { IRenderMimeRegistry } from '@jupyterlab/rendermime'; import { ILSPCompletionThemeManager } from '@krassowski/completion-theme/lib/types'; import type * as CodeMirror from 'codemirror'; import { CodeCompletion as LSPCompletionSettings } from '../../_completion'; import { IEditorChangedData, WidgetAdapter } from '../../adapters/adapter'; import { IDocumentConnectionData } from '../../connection_manager'; import { CodeMirrorIntegration } from '../../editor_integration/codemirror'; import { FeatureSettings, IFeatureLabIntegration } from '../../feature'; import { ExtendedCompletionTriggerKind } from '../../lsp'; import { ILSPAdapterManager, ILSPLogConsole } from '../../tokens'; import { LSPConnector } from './completion_handler'; import { LazyCompletionItem } from './item'; import { LSPCompleterModel } from './model'; import { ICompletionData, LSPCompletionRenderer } from './renderer'; export declare class CompletionCM extends CodeMirrorIntegration { private _completionCharacters; get settings(): FeatureSettings<LSPCompletionSettings>; get completionCharacters(): string[]; afterChange(change: CodeMirror.EditorChange): void; } export declare class CompletionLabIntegration implements IFeatureLabIntegration { private app; private completionManager; settings: FeatureSettings<LSPCompletionSettings>; private adapterManager; private completionThemeManager; private console; private renderMimeRegistry; protected current_completion_connector: LSPConnector; protected current_completion_handler: CompletionHandler; protected current_adapter: WidgetAdapter<IDocumentWidget> | null; protected renderer: LSPCompletionRenderer; private _latestActiveItem; private _signalConnected; private _disabled; constructor(app: JupyterFrontEnd, completionManager: ICompletionManager, settings: FeatureSettings<LSPCompletionSettings>, adapterManager: ILSPAdapterManager, completionThemeManager: ILSPCompletionThemeManager, console: ILSPLogConsole, renderMimeRegistry: IRenderMimeRegistry); protected fetchDocumentation(item: LazyCompletionItem): void; active_completion_changed(renderer: LSPCompletionRenderer, active_completion: ICompletionData): void; private resolve_and_update_from_item; private resolve_and_update; private swap_adapter; connect_completion(adapter: WidgetAdapter<IDocumentWidget>, data?: IDocumentConnectionData): void; protected get completer(): import("@jupyterlab/completer").Completer; protected get model(): LSPCompleterModel | CompleterModel; invoke_completer(kind: ExtendedCompletionTriggerKind): Promise<any>; set_connector(adapter: WidgetAdapter<IDocumentWidget>, editor_changed: IEditorChangedData): void; private get current_items(); private get current_index(); refresh_doc_panel(item: LazyCompletionItem): void; set_doc_panel_placeholder(enable: boolean): void; private set_completion_connector; }