import { Injector } from '@opensumi/di'; import { IDisposable, IEditorDocumentChange, IEditorDocumentModelSaveResult, ILogger, IRef, PreferenceService, StorageProvider, URI, WithEventBus } from '@opensumi/ide-core-browser'; import { IFileServiceClient } from '@opensumi/ide-file-service'; import { EOL } from '@opensumi/ide-monaco/lib/browser/monaco-api/types'; import { IEditorDocumentDescription, IEditorDocumentModel } from '../../common/editor'; import { EditorDocumentModel } from './editor-document-model'; import { EditorDocumentModelOptionExternalUpdatedEvent, IEditorDocumentModelContentRegistry, IEditorDocumentModelService, IPreferredModelOptions } from './types'; export declare const EDITOR_DOCUMENT_MODEL_STORAGE: URI; export declare const EDITOR_DOC_OPTIONS_PREF_KEY = "editor_doc_pref"; export declare class EditorDocumentModelServiceImpl extends WithEventBus implements IEditorDocumentModelService { contentRegistry: IEditorDocumentModelContentRegistry; injector: Injector; getStorage: StorageProvider; logger: ILogger; preferenceService: PreferenceService; private readonly hashCalculateService; protected readonly fileSystem: IFileServiceClient; private storage; private editorDocModels; private creatingEditorModels; private _modelReferenceManager; private _modelsToDispose; private preferredModelOptions; private _ready; private modelCreationEventDispatcher; constructor(); onDocumentModelCreated(uri: string, listener: () => void): IDisposable; private _delete; private _doDelete; changeModelOptions(uri: URI, options: IPreferredModelOptions): Promise; persistOptionsPreference(): Promise; initialize(): Promise; acceptExternalChange(e: EditorDocumentModelOptionExternalUpdatedEvent): Promise; createModelReference(uri: URI, reason?: string | undefined): Promise>; getModelReference(uri: URI, reason?: string | undefined): IRef | null; getModelDescription(uri: URI, reason?: string): IEditorDocumentDescription | null; getAllModels(): IEditorDocumentModel[]; hasLanguage(langaugeId: any): boolean; getOrCreateModel(uri: string, encoding?: string): Promise; private get onceReady(); private createModel; private doCreateModel; saveEditorDocumentModel(uri: URI, content: string, baseContent: string, changes: IEditorDocumentChange[], encoding?: string, ignoreDiff?: boolean, eol?: EOL): Promise; dispose(): void; } //# sourceMappingURL=editor-document-model-service.d.ts.map