import * as monaco from 'monaco-editor';
import { OpenEditor, IEditorOptions, IResolvedTextEditorModel } from '@codingame/monaco-vscode-editor-service-override';
import { IReference } from 'vscode/monaco';
export type EditorOpenHandler = (modelRef: IReference<IResolvedTextEditorModel>, input: IEditorOptions | undefined, editor: monaco.editor.ICodeEditor | null, sideBySide?: boolean) => Promise<monaco.editor.ICodeEditor | null>;
export default class EditorOpenHandlerRegistry {
    private handlers;
    registerEditorOpenHandler(handler: EditorOpenHandler): monaco.IDisposable;
    openCodeEditor: OpenEditor;
}
