///
import { MonacoToProtocolConverter, ProtocolToMonacoConverter } from './monaco-converter';
import { Workspace, WorkspaceEdit, TextDocumentDidChangeEvent, Event, Emitter } from './services';
import { TextDocument } from 'vscode-languageserver-textdocument';
import IModel = monaco.editor.IModel;
export declare class MonacoWorkspace implements Workspace {
protected readonly p2m: ProtocolToMonacoConverter;
protected readonly m2p: MonacoToProtocolConverter;
protected _rootUri: string | null;
protected readonly documents: Map;
protected readonly onDidOpenTextDocumentEmitter: Emitter;
protected readonly onDidCloseTextDocumentEmitter: Emitter;
protected readonly onDidChangeTextDocumentEmitter: Emitter;
constructor(p2m: ProtocolToMonacoConverter, m2p: MonacoToProtocolConverter, _rootUri?: string | null);
get rootUri(): string | null;
protected removeModel(model: IModel): void;
protected addModel(model: IModel): void;
protected onDidChangeContent(uri: string, model: IModel, event: monaco.editor.IModelContentChangedEvent): void;
protected setModel(uri: string, model: IModel): TextDocument;
get textDocuments(): TextDocument[];
get onDidOpenTextDocument(): Event;
get onDidCloseTextDocument(): Event;
get onDidChangeTextDocument(): Event;
applyEdit(workspaceEdit: WorkspaceEdit): Promise;
}
//# sourceMappingURL=monaco-workspace.d.ts.map