@codingame/monaco-vscode-extensions-service-override
Version:
VSCode public API plugged on the monaco editor - extensions service-override
108 lines (107 loc) • 10.6 kB
TypeScript
import { VSBuffer } from "@codingame/monaco-vscode-api/vscode/vs/base/common/buffer";
import { CancellationToken } from "@codingame/monaco-vscode-api/vscode/vs/base/common/cancellation";
import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event";
import { Disposable } from "@codingame/monaco-vscode-api/vscode/vs/base/common/lifecycle";
import { Range as EditorRange } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range";
import * as languages from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages";
import { ILanguageService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/language.service";
import { ILanguageConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/languages/languageConfigurationRegistry.service";
import { ITextModel } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/model";
import { ILanguageFeaturesService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/languageFeatures.service";
import { ExtensionIdentifier } from "@codingame/monaco-vscode-api/vscode/vs/platform/extensions/common/extensions";
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
import { ExtHostLanguageFeaturesShape, ICodeActionProviderMetadataDto, IDocumentDropEditProviderMetadata, IDocumentFilterDto, IInlineCompletionChangeHintDto, IInlineCompletionModelInfoDto, IInlineCompletionProviderOptionDto, ILanguageConfigurationDto, IPasteEditProviderMetadataDto, ISignatureHelpProviderMetadataDto, MainThreadLanguageFeaturesShape } from "@codingame/monaco-vscode-api/vscode/vs/workbench/api/common/extHost.protocol";
import { IInstantiationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation";
import { IInlineCompletionsUnificationService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/inlineCompletions/common/inlineCompletionsUnification.service";
export declare class MainThreadLanguageFeatures extends Disposable implements MainThreadLanguageFeaturesShape {
private readonly _languageService;
private readonly _languageConfigurationService;
private readonly _languageFeaturesService;
private readonly _uriIdentService;
private readonly _instantiationService;
private readonly _inlineCompletionsUnificationService;
private readonly _proxy;
private readonly _registrations;
constructor(extHostContext: IExtHostContext, _languageService: ILanguageService, _languageConfigurationService: ILanguageConfigurationService, _languageFeaturesService: ILanguageFeaturesService, _uriIdentService: IUriIdentityService, _instantiationService: IInstantiationService, _inlineCompletionsUnificationService: IInlineCompletionsUnificationService);
$unregister(handle: number): void;
private static _reviveLocationDto;
private static _reviveLocationLinkDto;
private static _reviveWorkspaceSymbolDto;
private static _reviveCodeActionDto;
private static _reviveLinkDTO;
private static _reviveCallHierarchyItemDto;
private static _reviveTypeHierarchyItemDto;
$registerDocumentSymbolProvider(handle: number, selector: IDocumentFilterDto[], displayName: string): void;
$registerCodeLensSupport(handle: number, selector: IDocumentFilterDto[], eventHandle: number | undefined): void;
$emitCodeLensEvent(eventHandle: number, event?: unknown): void;
$registerDefinitionSupport(handle: number, selector: IDocumentFilterDto[]): void;
$registerDeclarationSupport(handle: number, selector: IDocumentFilterDto[]): void;
$registerImplementationSupport(handle: number, selector: IDocumentFilterDto[]): void;
$registerTypeDefinitionSupport(handle: number, selector: IDocumentFilterDto[]): void;
$registerHoverProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerEvaluatableExpressionProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerInlineValuesProvider(handle: number, selector: IDocumentFilterDto[], eventHandle: number | undefined): void;
$emitInlineValuesEvent(eventHandle: number, event?: unknown): void;
$registerDocumentHighlightProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerMultiDocumentHighlightProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerLinkedEditingRangeProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerReferenceSupport(handle: number, selector: IDocumentFilterDto[]): void;
$registerCodeActionSupport(handle: number, selector: IDocumentFilterDto[], metadata: ICodeActionProviderMetadataDto, displayName: string, extensionId: string, supportsResolve: boolean): void;
private readonly _pasteEditProviders;
$registerPasteEditProvider(handle: number, selector: IDocumentFilterDto[], metadata: IPasteEditProviderMetadataDto): void;
$resolvePasteFileData(handle: number, requestId: number, dataId: string): Promise<VSBuffer>;
$registerDocumentFormattingSupport(handle: number, selector: IDocumentFilterDto[], extensionId: ExtensionIdentifier, displayName: string): void;
$registerRangeFormattingSupport(handle: number, selector: IDocumentFilterDto[], extensionId: ExtensionIdentifier, displayName: string, supportsRanges: boolean): void;
$registerOnTypeFormattingSupport(handle: number, selector: IDocumentFilterDto[], autoFormatTriggerCharacters: string[], extensionId: ExtensionIdentifier): void;
$registerNavigateTypeSupport(handle: number, supportsResolve: boolean): void;
$registerRenameSupport(handle: number, selector: IDocumentFilterDto[], supportResolveLocation: boolean): void;
$registerNewSymbolNamesProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerDocumentSemanticTokensProvider(handle: number, selector: IDocumentFilterDto[], legend: languages.SemanticTokensLegend, eventHandle: number | undefined): void;
$emitDocumentSemanticTokensEvent(eventHandle: number): void;
$emitDocumentRangeSemanticTokensEvent(eventHandle: number): void;
$registerDocumentRangeSemanticTokensProvider(handle: number, selector: IDocumentFilterDto[], legend: languages.SemanticTokensLegend, eventHandle: number | undefined): void;
private static _inflateSuggestDto;
$registerCompletionsProvider(handle: number, selector: IDocumentFilterDto[], triggerCharacters: string[], supportsResolveDetails: boolean, extensionId: ExtensionIdentifier): void;
$registerInlineCompletionsSupport(handle: number, selector: IDocumentFilterDto[], supportsHandleEvents: boolean, extensionId: string, extensionVersion: string, groupId: string | undefined, yieldsToExtensionIds: string[], displayName: string | undefined, debounceDelayMs: number | undefined, excludesExtensionIds: string[], supportsOnDidChange: boolean, supportsSetModelId: boolean, initialModelInfo: IInlineCompletionModelInfoDto | undefined, supportsOnDidChangeModelInfo: boolean, supportsSetProviderOption: boolean, initialProviderOptions: readonly IInlineCompletionProviderOptionDto[] | undefined, supportsOnDidChangeProviderOptions: boolean): void;
$emitInlineCompletionsChange(handle: number, changeHint: IInlineCompletionChangeHintDto | undefined): void;
$emitInlineCompletionModelInfoChange(handle: number, data: IInlineCompletionModelInfoDto | undefined): void;
$emitInlineCompletionProviderOptionsChange(handle: number, data: readonly IInlineCompletionProviderOptionDto[] | undefined): void;
$registerSignatureHelpProvider(handle: number, selector: IDocumentFilterDto[], metadata: ISignatureHelpProviderMetadataDto): void;
$registerInlayHintsProvider(handle: number, selector: IDocumentFilterDto[], supportsResolve: boolean, eventHandle: number | undefined, displayName: string | undefined): void;
$emitInlayHintsEvent(eventHandle: number): void;
$registerDocumentLinkProvider(handle: number, selector: IDocumentFilterDto[], supportsResolve: boolean): void;
$registerDocumentColorProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerFoldingRangeProvider(handle: number, selector: IDocumentFilterDto[], extensionId: ExtensionIdentifier, eventHandle: number | undefined): void;
$emitFoldingRangeEvent(eventHandle: number, event?: unknown): void;
$registerSelectionRangeProvider(handle: number, selector: IDocumentFilterDto[]): void;
$registerCallHierarchyProvider(handle: number, selector: IDocumentFilterDto[]): void;
private static _reviveRegExp;
private static _reviveIndentationRule;
private static _reviveOnEnterRule;
private static _reviveOnEnterRules;
$setLanguageConfiguration(handle: number, languageId: string, _configuration: ILanguageConfigurationDto): void;
$registerTypeHierarchyProvider(handle: number, selector: IDocumentFilterDto[]): void;
private readonly _documentOnDropEditProviders;
$registerDocumentOnDropEditProvider(handle: number, selector: IDocumentFilterDto[], metadata: IDocumentDropEditProviderMetadata): void;
$resolveDocumentOnDropFileData(handle: number, requestId: number, dataId: string): Promise<VSBuffer>;
}
export declare class MainThreadDocumentSemanticTokensProvider implements languages.DocumentSemanticTokensProvider {
private readonly _proxy;
private readonly _handle;
private readonly _legend;
readonly onDidChange: Event<void> | undefined;
constructor(_proxy: ExtHostLanguageFeaturesShape, _handle: number, _legend: languages.SemanticTokensLegend, onDidChange: Event<void> | undefined);
releaseDocumentSemanticTokens(resultId: string | undefined): void;
getLegend(): languages.SemanticTokensLegend;
provideDocumentSemanticTokens(model: ITextModel, lastResultId: string | null, token: CancellationToken): Promise<languages.SemanticTokens | languages.SemanticTokensEdits | null>;
}
export declare class MainThreadDocumentRangeSemanticTokensProvider implements languages.DocumentRangeSemanticTokensProvider {
private readonly _proxy;
private readonly _handle;
private readonly _legend;
readonly onDidChange: Event<void> | undefined;
constructor(_proxy: ExtHostLanguageFeaturesShape, _handle: number, _legend: languages.SemanticTokensLegend, onDidChange: Event<void> | undefined);
getLegend(): languages.SemanticTokensLegend;
provideDocumentRangeSemanticTokens(model: ITextModel, range: EditorRange, token: CancellationToken): Promise<languages.SemanticTokens | null>;
}