import { IRPCProtocol } from '@opensumi/ide-connection'; import { StaticResourceService } from '@opensumi/ide-core-browser/lib/static-resource'; import { ILineChange, IRange, ISelection, WithEventBus } from '@opensumi/ide-core-common'; import { IDecorationApplyOptions, IDecorationRenderOptions, IResourceOpenOptions, ISingleEditOperation, IUndoStopOptions } from '@opensumi/ide-editor'; import { IEditorChangeDTO, IEditorStatusChangeDTO, IMainThreadEditorsService, ITextEditorUpdateConfiguration, TextEditorCursorStyle, TextEditorRevealType } from '../../../common/vscode'; import { EndOfLineSequence } from '../../../common/vscode/models'; import { MainThreadExtensionDocumentData } from './main.thread.doc'; import type { ICodeEditor as IMonacoCodeEditor } from '@opensumi/ide-monaco/lib/browser/monaco-api/types'; export declare class MainThreadEditorService extends WithEventBus implements IMainThreadEditorsService { private rpcProtocol; private documents; private readonly editorService; private readonly decorationService; private readonly codeEditorService; staticResourceService: StaticResourceService; private readonly proxy; constructor(rpcProtocol: IRPCProtocol, documents: MainThreadExtensionDocumentData); $getInitialState(): Promise; $closeEditor(id: string): Promise; $revealRange(id: string, range: IRange, type?: TextEditorRevealType): Promise; $createTextEditorDecorationType(key: string, options: IDecorationRenderOptions): Promise; private resolveIconPaths; $deleteTextEditorDecorationType(key: string): Promise; $applyDecoration(id: string, decorationKey: string, options: IDecorationApplyOptions[]): Promise; $insertSnippet(id: string, snippet: string, ranges?: IRange[], options?: IUndoStopOptions): Promise; $updateOptions(id: string, update: ITextEditorUpdateConfiguration): Promise; private getEditor; private getGroup; protected propertiesChangeCache: Map; triggerPropertiesChange: import("lodash").DebouncedFunc<() => void>; /** * 按 id 缓存 change, 每次 change 都会合并到缓存中,debounce 发送给插件进程 */ protected batchPropertiesChanges(change: Partial & { id: string; }): void; startEvents(): void; private acceptCurrentEditor; $applyEdits(id: string, documentVersionId: number, edits: ISingleEditOperation[], options: { setEndOfLine: EndOfLineSequence | undefined; undoStopBefore: boolean; undoStopAfter: boolean; }): Promise; $openResource(uri: string, options: IResourceOpenOptions): Promise; $setSelections(id: string, selections: ISelection[]): Promise; setConfiguration(codeEditor: IMonacoCodeEditor, newConfiguration: ITextEditorUpdateConfiguration): void; $getDiffInformation(id: string): Promise; private _setIndentConfiguration; } export declare function cursorStyleToString(cursorStyle: TextEditorCursorStyle): string; //# sourceMappingURL=main.thread.editor.d.ts.map