UNPKG

monaco-editor-wrapper

Version:
54 lines 2.51 kB
import { type LanguageClientOptions, MessageTransports } from 'vscode-languageclient/browser.js'; import { type ConnectionConfigOptions, MonacoLanguageClient, type WorkerConfigOptionsDirect, type WorkerConfigOptionsParams } from 'monaco-languageclient'; import { type Logger } from 'monaco-languageclient/tools'; export interface ConnectionConfig { options: ConnectionConfigOptions; messageTransports?: MessageTransports; } export interface LanguageClientConfig { name?: string; connection: ConnectionConfig; clientOptions: LanguageClientOptions; restartOptions?: LanguageClientRestartOptions; } export interface LanguageClientRestartOptions { retries: number; timeout: number; keepWorker?: boolean; } export interface LanguageClientError { message: string; error: Error | string; } export declare class LanguageClientWrapper { private languageClient?; private languageClientConfig; private worker?; private port?; private name?; private logger; constructor(config: { languageClientConfig: LanguageClientConfig; logger?: Logger; }); haveLanguageClient(): boolean; getLanguageClient(): MonacoLanguageClient | undefined; getWorker(): Worker | undefined; isStarted(): boolean; start(): Promise<void>; /** * Restart the languageclient with options to control worker handling * * @param updatedWorker Set a new worker here that should be used. keepWorker has no effect then, as we want to dispose of the prior workers * @param disposeWorker Set to false if worker should not be disposed */ restartLanguageClient(updatedWorker?: Worker, disposeWorker?: boolean): Promise<void>; protected initMessageTransportWebSocket(webSocket: WebSocket, resolve: () => void, reject: (reason?: unknown) => void): Promise<void>; protected initMessageTransportWorker(lccOptions: WorkerConfigOptionsDirect | WorkerConfigOptionsParams, resolve: () => void, reject: (reason?: unknown) => void): Promise<void>; protected performLanguageClientStart(messageTransports: MessageTransports, resolve: () => void, reject: (reason?: unknown) => void): Promise<void>; protected initRestartConfiguration(messageTransports: MessageTransports, restartOptions?: LanguageClientRestartOptions): void; protected disposeWorker(): void; disposeLanguageClient(disposeWorker: boolean): Promise<void>; reportStatus(): string[]; } //# sourceMappingURL=languageClientWrapper.d.ts.map