import { Disposable } from "../../../base/common/lifecycle.js"; import { URI } from "../../../base/common/uri.js"; import { Proxied } from "../../../base/common/worker/webWorker.js"; import { WebWorkerDescriptor } from "../../../platform/webWorker/browser/webWorkerDescriptor.js"; import { IWebWorkerService } from "../../../platform/webWorker/browser/webWorkerService.service.js"; import { IRange } from "../../common/core/range.js"; import * as languages from "../../common/languages.js"; import { ILanguageConfigurationService } from "../../common/languages/languageConfigurationRegistry.service.js"; import { EditorWorker } from "../../common/services/editorWebWorker.js"; import { DiffAlgorithmName, IUnicodeHighlightsResult } from "../../common/services/editorWorker.js"; import { IEditorWorkerService } from "../../common/services/editorWorker.service.js"; import { IModelService } from "../../common/services/model.service.js"; import { ITextResourceConfigurationService } from "../../common/services/textResourceConfiguration.service.js"; import { ILogService } from "../../../platform/log/common/log.service.js"; import { UnicodeHighlighterOptions } from "../../common/services/unicodeTextModelHighlighter.js"; import { ILanguageFeaturesService } from "../../common/services/languageFeatures.service.js"; import { IChange } from "../../common/diff/legacyLinesDiffComputer.js"; import { IDocumentDiff, IDocumentDiffProviderOptions } from "@codingame/monaco-vscode-chat-service-override/vscode/vs/editor/common/diff/documentDiffProvider"; import { SectionHeader, FindSectionHeaderOptions } from "../../common/services/findSectionHeaders.js"; import { StringEdit } from "../../common/core/edits/stringEdit.js"; export declare class EditorWorkerService extends Disposable implements IEditorWorkerService { private readonly _languageConfigurationService; private readonly _webWorkerService; readonly _serviceBrand: undefined; static readonly workerDescriptor: WebWorkerDescriptor; private readonly _modelService; private readonly _workerManager; private readonly _logService; constructor(modelService: IModelService, configurationService: ITextResourceConfigurationService, logService: ILogService, _languageConfigurationService: ILanguageConfigurationService, languageFeaturesService: ILanguageFeaturesService, _webWorkerService: IWebWorkerService); dispose(): void; canComputeUnicodeHighlights(uri: URI): boolean; computedUnicodeHighlights(uri: URI, options: UnicodeHighlighterOptions, range?: IRange): Promise; computeDiff(original: URI, modified: URI, options: IDocumentDiffProviderOptions, algorithm: DiffAlgorithmName): Promise; canComputeDirtyDiff(original: URI, modified: URI): boolean; computeDirtyDiff(original: URI, modified: URI, ignoreTrimWhitespace: boolean): Promise; computeMoreMinimalEdits(resource: URI, edits: languages.TextEdit[] | null | undefined, pretty?: boolean): Promise; computeHumanReadableDiff(resource: URI, edits: languages.TextEdit[] | null | undefined): Promise; computeStringEditFromDiff(original: string, modified: string, options: { maxComputationTimeMs: number; }, algorithm: DiffAlgorithmName): Promise; canNavigateValueSet(resource: URI): boolean; navigateValueSet(resource: URI, range: IRange, up: boolean): Promise; canComputeWordRanges(resource: URI): boolean; computeWordRanges(resource: URI, range: IRange): Promise<{ [word: string]: IRange[]; } | null>; findSectionHeaders(uri: URI, options: FindSectionHeaderOptions): Promise; computeDefaultDocumentColors(uri: URI): Promise; private _workerWithResources; } export interface IEditorWorkerClient { fhr(method: string, args: unknown[]): Promise; } export declare class EditorWorkerClient extends Disposable implements IEditorWorkerClient { private readonly _workerDescriptorOrWorker; private readonly _modelService; private readonly _webWorkerService; private readonly _keepIdleModels; private _worker; private _modelManager; private _disposed; constructor(_workerDescriptorOrWorker: WebWorkerDescriptor | Worker | Promise, keepIdleModels: boolean, modelService: IModelService, webWorkerService: IWebWorkerService); fhr(method: string, args: unknown[]): Promise; private _getOrCreateWorker; protected _getProxy(): Promise>; private _createFallbackLocalWorker; private _createEditorWorkerHost; private _getOrCreateModelManager; workerWithSyncedResources(resources: URI[], forceLargeModels?: boolean): Promise>; textualSuggest(resources: URI[], leadingWord: string | undefined, wordDefRegExp: RegExp): Promise<{ words: string[]; duration: number; } | null>; dispose(): void; }