import { IRPCProtocol } from '@opensumi/ide-connection'; import { IReporterService, PreferenceService } from '@opensumi/ide-core-browser'; import { IMarkerData, MarkerManager } from '@opensumi/ide-core-common'; import { IEvaluatableExpressionService } from '@opensumi/ide-debug/lib/browser/editor/evaluatable-expression'; import { ILanguageStatus, LanguageSelector } from '@opensumi/ide-editor/lib/browser'; import * as monaco from '@opensumi/ide-monaco'; import { ICallHierarchyService } from '@opensumi/ide-monaco/lib/browser/contrib/callHierarchy'; import { ITypeHierarchyService } from '@opensumi/ide-monaco/lib/browser/contrib/typeHierarchy'; import * as modes from '@opensumi/monaco-editor-core/esm/vs/editor/common/languages'; import { ICodeActionProviderMetadataDto, IMainThreadLanguages, MonacoModelIdentifier } from '../../../common/vscode'; import { IDocumentFilterDto } from '../../../common/vscode/converter'; import { UriComponents } from '../../../common/vscode/ext-types'; import { ExtensionIdentifier, IExtensionDescription } from '../../../common/vscode/extension'; import { CallHierarchyItem, FoldingRangeProvider, ILink, ISerializedSignatureHelpProviderMetadata, SemanticTokensLegend, SerializedDocumentFilter, SerializedLanguageConfiguration, WorkspaceSymbolProvider } from '../../../common/vscode/model.api'; import type { ITextModel } from '@opensumi/monaco-editor-core/esm/vs/editor/common/model'; export declare class MainThreadLanguages implements IMainThreadLanguages { private rpcProtocol; private readonly proxy; private readonly disposables; readonly markerManager: MarkerManager; preference: PreferenceService; reporter: IReporterService; private readonly languageService; protected readonly callHierarchyService: ICallHierarchyService; protected readonly typeHierarchyService: ITypeHierarchyService; protected readonly evaluatableExpressionService: IEvaluatableExpressionService; private readonly documentModelManager; private readonly languageStatusService; private textmateService; private languageFeatureEnabled; private _reviveCodeActionDto; constructor(rpcProtocol: IRPCProtocol); dispose(): void; $unregister(handle: any): void; $getLanguages(): string[]; $changeLanguage(resource: UriComponents, languageId: string): Promise; isLanguageFeatureEnabled(model: ITextModel): boolean | undefined; protected getUniqueLanguages(): string[]; $registerHoverProvider(handle: number, selector: SerializedDocumentFilter[]): void; protected createHoverProvider(handle: number, selector?: LanguageSelector): modes.HoverProvider; private isDeflatedSuggestDto; private inflateLabel; private inflateSuggestDto; $registerCompletionSupport(handle: number, selector: SerializedDocumentFilter[], triggerCharacters: string[], supportsResolveDetails: boolean): void; $registerInlineCompletionsSupport(handle: number, selector: IDocumentFilterDto[], supportsHandleEvents: boolean, extensionId: string, yieldsToExtensionIds: string[]): void; $registerInlineEditProvider(handle: number, selector: IDocumentFilterDto[], extensionId: ExtensionIdentifier, displayName: string): void; protected matchLanguage(selector: LanguageSelector | undefined, languageId: string): boolean; protected matchModel(selector: LanguageSelector | undefined, model: MonacoModelIdentifier): boolean; $registerDefinitionProvider(handle: number, selector: SerializedDocumentFilter[]): void; $registerDeclarationProvider(handle: number, selector: SerializedDocumentFilter[]): void; protected createDefinitionProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.DefinitionProvider; $registerTypeDefinitionProvider(handle: number, selector: SerializedDocumentFilter[]): void; protected createTypeDefinitionProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.TypeDefinitionProvider; $registerFoldingRangeProvider(handle: number, selector: SerializedDocumentFilter[], eventHandle: number | undefined): void; $emitFoldingRangeEvent(eventHandle: number, event?: any): void; createFoldingRangeProvider(handle: number, selector: LanguageSelector | undefined): FoldingRangeProvider; $registerDocumentColorProvider(handle: number, selector: SerializedDocumentFilter[]): void; createColorProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.DocumentColorProvider; $registerDocumentHighlightProvider(handle: number, selector: SerializedDocumentFilter[]): void; protected createDocumentHighlightProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.DocumentHighlightProvider; $registerDocumentFormattingProvider(handle: number, extension: IExtensionDescription, selector: SerializedDocumentFilter[]): void; createDocumentFormattingEditProvider(handle: number, extension: IExtensionDescription, selector: LanguageSelector | undefined): monaco.languages.DocumentFormattingEditProvider; $registerRangeFormattingProvider(handle: number, extension: IExtensionDescription, selector: SerializedDocumentFilter[]): void; createDocumentRangeFormattingEditProvider(handle: number, extension: IExtensionDescription, selector: LanguageSelector | undefined): monaco.languages.DocumentRangeFormattingEditProvider; $registerOnTypeFormattingProvider(handle: number, selector: SerializedDocumentFilter[], autoFormatTriggerCharacters: string[]): void; createOnTypeFormattingProvider(handle: number, selector: LanguageSelector | undefined, autoFormatTriggerCharacters: string[]): monaco.languages.OnTypeFormattingEditProvider; $registerCodeLensSupport(handle: number, selector: SerializedDocumentFilter[], eventHandle: number): void; createCodeLensProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.CodeLensProvider; $emitCodeLensEvent(eventHandle: number, event?: any): void; $clearDiagnostics(id: string): void; $changeDiagnostics(id: string, delta: [string, IMarkerData[]][]): void; $registerImplementationProvider(handle: number, selector: SerializedDocumentFilter[]): void; $registerDocumentLinkProvider(handle: number, selector: SerializedDocumentFilter[], supportsResolve: boolean): void; protected createImplementationProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.ImplementationProvider; $registerQuickFixProvider(handle: number, selector: SerializedDocumentFilter[], metadata: ICodeActionProviderMetadataDto, displayName: string, supportResolve: boolean): void; protected createQuickFixProvider(handle: number, selector: LanguageSelector | undefined, metadata: ICodeActionProviderMetadataDto, displayName: string, supportsResolve: boolean): modes.CodeActionProvider; protected createLinkProvider(handle: number, supportResolve: boolean): monaco.languages.LinkProvider; reviveLink(data: ILink): monaco.languages.ILink; $setLanguageConfiguration(handle: number, languageId: string, configuration: SerializedLanguageConfiguration): void; $registerReferenceProvider(handle: number, selector: SerializedDocumentFilter[]): void; protected createReferenceProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.ReferenceProvider; $registerWorkspaceSymbolProvider(handle: number): void; protected createWorkspaceSymbolProvider(handle: number): WorkspaceSymbolProvider; $registerOutlineSupport(handle: number, selector: SerializedDocumentFilter[]): void; protected createDocumentSymbolProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.DocumentSymbolProvider; $registerSignatureHelpProvider(handle: number, selector: SerializedDocumentFilter[], metadata: ISerializedSignatureHelpProviderMetadata): void; protected createSignatureHelpProvider(handle: number, selector: LanguageSelector | undefined, metadata: ISerializedSignatureHelpProviderMetadata): monaco.languages.SignatureHelpProvider; $registerRenameProvider(handle: number, selector: SerializedDocumentFilter[], supportsResolveLocation: boolean): void; protected createRenameProvider(handle: number, selector: LanguageSelector | undefined, supportsResolveLocation: boolean): monaco.languages.RenameProvider; createNewSymbolNamesProvider(handle: number, selector: LanguageSelector | undefined): monaco.languages.NewSymbolNamesProvider; $registerNewSymbolNamesProvider(handle: number, selector: SerializedDocumentFilter[]): void; /** * 将 IWorkspaceEditDto 转为 monaco-editor 中的 WorkspaceEdit */ private reviveWorkspaceEditDto; $registerSelectionRangeProvider(handle: number, selector: SerializedDocumentFilter[]): void; protected createSelectionProvider(handle: number, selector?: LanguageSelector): monaco.languages.SelectionRangeProvider; $registerCallHierarchyProvider(handle: number, selector: SerializedDocumentFilter[]): void; private reviveCallHierarchyItemDto; protected createCallHierarchyProvider(handle: number, selector: LanguageSelector | undefined): { prepareCallHierarchy: (document: any, position: any, token: any) => Promise<{ dispose: () => void; roots: CallHierarchyItem[]; } | undefined>; provideOutgoingCalls: (item: any, token: any) => Promise; provideIncomingCalls: (item: any, token: any) => Promise; }; $registerTypeHierarchyProvider(handle: number, selector: SerializedDocumentFilter[]): void; private createTypeHierarchyProvider; private reviveTypeHierarchyItemDto; $registerDocumentSemanticTokensProvider(handle: number, selector: SerializedDocumentFilter[], legend: SemanticTokensLegend): void; $registerDocumentRangeSemanticTokensProvider(handle: number, selector: SerializedDocumentFilter[], legend: SemanticTokensLegend): void; $registerEvaluatableExpressionProvider(handler: number, selector: SerializedDocumentFilter[]): void; $registerInlineValuesProvider(handler: number, selector: SerializedDocumentFilter[], eventHandle: number | undefined): void; $emitInlineValuesEvent(eventHandle: number, event?: any): void; $registerLinkedEditingRangeProvider(handle: number, selector: SerializedDocumentFilter[]): void; $registerInlayHintsProvider(handle: number, selector: SerializedDocumentFilter[], supportsResolve: boolean, eventHandle: number | undefined): void; $emitInlayHintsEvent(eventHandle: number, event?: any): void; private readonly _status; $setLanguageStatus(handle: number, status: ILanguageStatus): void; $removeLanguageStatus(handle: number): void; } //# sourceMappingURL=main.thread.language.d.ts.map