UNPKG

@theia/monaco

Version:
85 lines 4.97 kB
import { URI as Uri } from '@theia/core/shared/vscode-uri'; import { Emitter } from '@theia/core/lib/common/event'; import { FileSystemPreferences } from '@theia/filesystem/lib/common'; import { EditorManager } from '@theia/editor/lib/browser'; import { MonacoTextModelService } from './monaco-text-model-service'; import { MonacoEditorModel, MonacoModelContentChangedEvent } from './monaco-editor-model'; import { MonacoEditor } from './monaco-editor'; import { ProblemManager } from '@theia/markers/lib/browser'; import { FileService } from '@theia/filesystem/lib/browser/file-service'; import * as monaco from '@theia/monaco-editor-core'; import { IBulkEditOptions, IBulkEditResult, ResourceEdit, ResourceFileEdit as MonacoResourceFileEdit, ResourceTextEdit as MonacoResourceTextEdit } from '@theia/monaco-editor-core/esm/vs/editor/browser/services/bulkEditService'; import { TextEdit } from '@theia/monaco-editor-core/esm/vs/editor/common/languages'; import { MaybePromise } from '@theia/core/lib/common'; import { SaveableService } from '@theia/core/lib/browser'; import { EditorPreferences } from '@theia/editor/lib/common/editor-preferences'; export declare namespace WorkspaceFileEdit { function is(arg: Edit): arg is monaco.languages.IWorkspaceFileEdit; } export declare namespace WorkspaceTextEdit { function is(arg: Edit): arg is monaco.languages.IWorkspaceTextEdit; } export type Edit = monaco.languages.IWorkspaceFileEdit | monaco.languages.IWorkspaceTextEdit; export declare namespace ResourceFileEdit { function is(arg: ResourceEdit): arg is MonacoResourceFileEdit; } export declare namespace ResourceTextEdit { function is(arg: ResourceEdit): arg is MonacoResourceTextEdit; } export interface WorkspaceFoldersChangeEvent { readonly added: WorkspaceFolder[]; readonly removed: WorkspaceFolder[]; } export interface WorkspaceFolder { readonly uri: Uri; readonly name: string; readonly index: number; } export declare class MonacoWorkspace { protected resolveReady: () => void; readonly ready: Promise<void>; protected readonly onDidOpenTextDocumentEmitter: Emitter<MonacoEditorModel>; readonly onDidOpenTextDocument: import("@theia/core/lib/common").Event<MonacoEditorModel>; protected readonly onDidCloseTextDocumentEmitter: Emitter<MonacoEditorModel>; readonly onDidCloseTextDocument: import("@theia/core/lib/common").Event<MonacoEditorModel>; protected readonly onDidChangeTextDocumentEmitter: Emitter<MonacoModelContentChangedEvent>; readonly onDidChangeTextDocument: import("@theia/core/lib/common").Event<MonacoModelContentChangedEvent>; protected readonly onDidSaveTextDocumentEmitter: Emitter<MonacoEditorModel>; readonly onDidSaveTextDocument: import("@theia/core/lib/common").Event<MonacoEditorModel>; protected readonly fileService: FileService; protected readonly filePreferences: FileSystemPreferences; protected readonly editorPreferences: EditorPreferences; protected readonly textModelService: MonacoTextModelService; protected readonly editorManager: EditorManager; protected readonly problems: ProblemManager; protected readonly saveService: SaveableService; protected init(): void; get textDocuments(): MonacoEditorModel[]; getTextDocument(uri: string): MonacoEditorModel | undefined; protected fireDidOpen(model: MonacoEditorModel): void; protected doFireDidOpen(model: MonacoEditorModel): void; protected fireDidClose(model: MonacoEditorModel): void; protected fireDidChangeContent(event: MonacoModelContentChangedEvent): void; protected fireDidSave(model: MonacoEditorModel): void; protected readonly suppressedOpenIfDirty: MonacoEditorModel[]; protected openEditorIfDirty(model: MonacoEditorModel): void; protected suppressOpenIfDirty(model: MonacoEditorModel, cb: () => MaybePromise<void>): Promise<void>; /** * Applies given edits to the given model. * The model is saved if no editors is opened for it. */ applyBackgroundEdit(model: MonacoEditorModel, editOperations: monaco.editor.IIdentifiedSingleEditOperation[], shouldSave?: boolean | ((openEditor: MonacoEditor | undefined, wasDirty: boolean) => boolean)): Promise<void>; applyBulkEdit(edits: ResourceEdit[], options?: IBulkEditOptions): Promise<IBulkEditResult>; protected saveAll(resources: Set<string>): Promise<void>; protected getAriaSummary(totalEdits: number, totalFiles: number): string; protected performTextEdits(edits: MonacoResourceTextEdit[]): Promise<{ totalEdits: number; totalFiles: number; }>; protected performFileEdits(edits: MonacoResourceFileEdit[]): Promise<void>; protected performSnippetEdits(edits: MonacoResourceTextEdit[]): Promise<void>; protected transformSnippetStringToInsertText(resourceEdit: MonacoResourceTextEdit): TextEdit & { insertAsSnippet?: boolean; }; } //# sourceMappingURL=monaco-workspace.d.ts.map