import { ICodeEditor } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/editorBrowser";
import { ICodeEditorService } from "@codingame/monaco-vscode-api/vscode/vs/editor/browser/services/codeEditorService.service";
import { IModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/model.service";
import { ITextModelService } from "@codingame/monaco-vscode-api/vscode/vs/editor/common/services/resolverService.service";
import { IFileService } from "@codingame/monaco-vscode-api/vscode/vs/platform/files/common/files.service";
import { IExtHostContext } from "../../services/extensions/common/extHostCustomers.js";
import { MainThreadTextEditor } from "./mainThreadEditor.js";
import { IMainThreadEditorLocator } from "./mainThreadEditors.js";
import { IEditorPane } from "@codingame/monaco-vscode-api/vscode/vs/workbench/common/editor";
import { IEditorService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorService.service";
import { IEditorGroupsService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/editor/common/editorGroupsService.service";
import { ITextFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/textfile/common/textfiles.service";
import { IWorkbenchEnvironmentService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/environment/common/environmentService.service";
import { IWorkingCopyFileService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/workingCopy/common/workingCopyFileService.service";
import { IUriIdentityService } from "@codingame/monaco-vscode-api/vscode/vs/platform/uriIdentity/common/uriIdentity.service";
import { IClipboardService } from "@codingame/monaco-vscode-api/vscode/vs/platform/clipboard/common/clipboardService.service";
import { IPathService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/path/common/pathService.service";
import { IPaneCompositePartService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/services/panecomposite/browser/panecomposite.service";
import { IConfigurationService } from "@codingame/monaco-vscode-api/vscode/vs/platform/configuration/common/configuration.service";
import { IQuickDiffModelService } from "@codingame/monaco-vscode-api/vscode/vs/workbench/contrib/scm/browser/quickDiffModel.service";
export declare class MainThreadDocumentsAndEditors implements IMainThreadEditorLocator {
    private readonly _modelService;
    private readonly _textFileService;
    private readonly _editorService;
    private readonly _editorGroupService;
    private readonly _clipboardService;
    private readonly _toDispose;
    private readonly _proxy;
    private readonly _mainThreadDocuments;
    private readonly _mainThreadEditors;
    private readonly _textEditors;
    constructor(extHostContext: IExtHostContext, _modelService: IModelService, _textFileService: ITextFileService, _editorService: IEditorService, codeEditorService: ICodeEditorService, fileService: IFileService, textModelResolverService: ITextModelService, _editorGroupService: IEditorGroupsService, paneCompositeService: IPaneCompositePartService, environmentService: IWorkbenchEnvironmentService, workingCopyFileService: IWorkingCopyFileService, uriIdentityService: IUriIdentityService, _clipboardService: IClipboardService, pathService: IPathService, configurationService: IConfigurationService, quickDiffModelService: IQuickDiffModelService);
    dispose(): void;
    private _onDelta;
    private _toModelAddData;
    private _toTextEditorAddData;
    private _findEditorPosition;
    findTextEditorIdFor(editorPane: IEditorPane): string | undefined;
    getIdOfCodeEditor(codeEditor: ICodeEditor): string | undefined;
    getEditor(id: string): MainThreadTextEditor | undefined;
}
