import { Event } from "@codingame/monaco-vscode-api/vscode/vs/base/common/event"; import { URI } from "@codingame/monaco-vscode-api/vscode/vs/base/common/uri"; import { Range } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/core/range"; import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service"; import { IFileDialogService } from "@codingame/monaco-vscode-api/vscode/vs/platform/dialogs/common/dialogs.service"; import { IInstantiationService, ServicesAccessor } from "@codingame/monaco-vscode-api/vscode/vs/platform/instantiation/common/instantiation"; import { IStorageService } from "@codingame/monaco-vscode-api/vscode/vs/platform/storage/common/storage.service"; import { ITelemetryService } from "@codingame/monaco-vscode-api/vscode/vs/platform/telemetry/common/telemetry.service"; import { GroupIdentifier, IRevertOptions, IMoveResult, EditorInputCapabilities, IUntypedEditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor"; import { SearchConfiguration } from "@codingame/monaco-vscode-85f7fb0f-70f5-5a5e-831b-15c743a8bd11-common/vscode/vs/workbench/contrib/searchEditor/browser/constants"; import { SearchEditorModel } from "./searchEditorModel.js"; import { IPathService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/path/common/pathService.service"; import { ITextFileSaveOptions } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles"; import { ITextFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service"; import { IWorkingCopyService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/workingCopyService.service"; import { IWorkingCopySaveEvent } from "@codingame/monaco-vscode-1f37b5fb-f500-54d2-b98a-d12d100cafca-common/vscode/vs/workbench/services/workingCopy/common/workingCopy"; import { ISearchComplete } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/search/common/search"; import { EditorInput } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor/editorInput"; import { IResourceEditorInput } from "@codingame/monaco-vscode-api/vscode/vs/platform/editor/common/editor"; import { ThemeIcon } from "@codingame/monaco-vscode-api/vscode/vs/base/common/themables"; export declare const SEARCH_EDITOR_EXT = ".code-search"; export declare class SearchEditorInput extends EditorInput { readonly modelUri: URI; readonly backingUri: URI | undefined; private readonly modelService; protected readonly textFileService: ITextFileService; private readonly fileDialogService; private readonly instantiationService; private readonly workingCopyService; private readonly telemetryService; private readonly pathService; static readonly ID: string; get typeId(): string; get editorId(): string | undefined; getIcon(): ThemeIcon; get capabilities(): EditorInputCapabilities; private memento; private dirty; private lastLabel; private readonly _onDidChangeContent; readonly onDidChangeContent: Event; private readonly _onDidSave; readonly onDidSave: Event; private oldDecorationsIDs; get resource(): URI; ongoingSearchOperation: Promise | undefined; model: SearchEditorModel; private _cachedResultsModel; private _cachedConfigurationModel; constructor(modelUri: URI, backingUri: URI | undefined, modelService: IModelService, textFileService: ITextFileService, fileDialogService: IFileDialogService, instantiationService: IInstantiationService, workingCopyService: IWorkingCopyService, telemetryService: ITelemetryService, pathService: IPathService, storageService: IStorageService); save(group: GroupIdentifier, options?: ITextFileSaveOptions): Promise; tryReadConfigSync(): SearchConfiguration | undefined; private serializeForDisk; private configChangeListenerDisposable; private registerConfigChangeListeners; resolveModels(): Promise; saveAs(group: GroupIdentifier, options?: ITextFileSaveOptions): Promise; getName(maxLength?: number): string; setDirty(dirty: boolean): void; isDirty(): boolean; rename(group: GroupIdentifier, target: URI): Promise; dispose(): void; matches(other: EditorInput | IUntypedEditorInput): boolean; getMatchRanges(): Range[]; setMatchRanges(ranges: Range[]): Promise; revert(group: GroupIdentifier, options?: IRevertOptions): Promise; private backup; private suggestFileName; toUntyped(): IResourceEditorInput | undefined; copy(): EditorInput; } export declare const getOrMakeSearchEditorInput: (accessor: ServicesAccessor, existingData: ({ from: "model"; config?: Partial; modelUri: URI; backupOf?: URI; } | { from: "rawData"; resultsContents: string | undefined; config: Partial; modelUri?: URI; } | { from: "existingFile"; fileUri: URI; })) => SearchEditorInput;