import { IRPCProtocol } from '@opensumi/ide-connection'; import { CancellationToken, IDisposable, IExtensionInfo } from '@opensumi/ide-core-common'; import { ExtensionDocumentDataManager, IExtHostCustomEditor, IWebviewPanelOptions } from '../../../common/vscode'; import { CustomEditorProvider, CustomReadonlyEditorProvider, CustomTextEditorProvider } from '../../../common/vscode/custom-editor'; import { Uri } from '../../../common/vscode/ext-types'; import { ExtHostWebviewService } from './ext.host.api.webview'; import type { UriComponents } from '@opensumi/ide-editor'; export declare class ExtHostCustomEditorImpl implements IExtHostCustomEditor { private webview; private extDocuments; private proxy; private providers; private customDocuments; constructor(rpcProtocol: IRPCProtocol, webview: ExtHostWebviewService, extDocuments: ExtensionDocumentDataManager); registerCustomEditorProvider(viewType: string, provider: CustomTextEditorProvider | CustomEditorProvider | CustomReadonlyEditorProvider, options: { supportsMultipleEditorsPerDocument?: boolean; webviewOptions?: IWebviewPanelOptions; }, extensionInfo: IExtensionInfo): IDisposable; $saveCustomDocument(viewType: string, uriComp: UriComponents, token: CancellationToken): Promise; $revertCustomDocument(viewType: string, uriComp: UriComponents, token: CancellationToken): Promise; $resolveCustomTextEditor(viewType: string, uriParts: UriComponents, webviewPanelId: string, token: CancellationToken): Promise; private getCustomDocument; $undo(viewType: string, uriParts: Uri): Promise; $redo(viewType: string, uriParts: Uri): Promise; } //# sourceMappingURL=ext.host.custom-editor.d.ts.map