import { interfaces } from 'inversify'; import { IEditorGroupsService, IEditorService, IClientConfigurationService, ITextEditor, IResourceSideBySide_Input, IEditorInput, IEditorGroup, IEditorOptions, GroupIdentifier, SIDE_GROUP_TYPE, ACTIVE_GROUP_TYPE, ITextEditorOptions, IUntitledResource_Input, IResourceDiff_Input, IResourceInput, ITextDiffEditor, ITextSideBySideEditor, IResourceEditor, IEditorInputWithOptions, IClientEditor as IEditor, IFileStatWithMetadata, IEditorPart } from '@workbench-stack/core'; import { ApolloClient } from 'apollo-client'; import { InMemoryCache } from 'apollo-cache-inmemory'; import { IClientFileService as IFileService, IUntitledEditorService } from '@files-stack/core'; import { URI } from '@vscode-alt/monaco-editor/esm/vs/base/common/uri'; export declare abstract class AbstractEditorService implements IEditorService { protected readonly configurationService: IClientConfigurationService; protected fileService: IFileService; protected untitledEditorService: IUntitledEditorService; protected editorGroupService: IEditorGroupsService; protected container: interfaces.Container; protected client: ApolloClient; protected cache: InMemoryCache; protected utility: any; protected logger: any; constructor(configurationService: IClientConfigurationService, fileService: IFileService, untitledEditorService: IUntitledEditorService, editorGroupService: IEditorGroupsService, container: interfaces.Container, client: ApolloClient, cache: InMemoryCache, utility: any, logger: any); abstract getLayout(): IEditorPart; get editors(): IEditorInput[]; get activeEditor(): IEditorInput | undefined; openEditor(editor: IEditorInput, options?: IEditorOptions | ITextEditorOptions, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise; openEditor(editor: IResourceInput | IUntitledResource_Input, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise; openEditor(editor: IResourceDiff_Input, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise; openEditor(editor: IResourceSideBySide_Input, group?: IEditorGroup | GroupIdentifier | SIDE_GROUP_TYPE | ACTIVE_GROUP_TYPE): Promise; protected abstract setEditorPart(data: any): any; protected abstract getEditorPart(layoutId: string): any; protected doOpenEditor(group: IEditorGroup | undefined, editor: IEditorInput, options?: IEditorOptions): Promise; createInput(input: IEditorInputWithOptions | IEditorInput | IResourceEditor): IEditorInput; private createOrGet; private getAdditionalDetails; private addIds; private getPreferredEditorId; abstract getFileDetails(resource: string | URI): IFileStatWithMetadata; private findTargetGroup; private findSideBySideGroup; private toOptions; private toDiffLabel; protected abstract setTabsWithFiles(editorId: number, tabs: any): Boolean; protected abstract setTabs(editorId: number, tabs: any): Boolean; protected abstract getEditors(editorId: number): IEditorInput[]; closeEditor(editor: IEditorInput, layoutId: string): boolean; pinEditor(editor: IEditorInput): void; }