import type { EditorView } from '@codemirror/view';
import type { CommonEditor, MarkupString } from "../common/index.js";
export interface CodeEditor {
    readonly cm: EditorView;
}
export declare class Editor implements CommonEditor, CodeEditor {
    #private;
    get cm(): EditorView;
    get codemirror(): EditorView;
    constructor(cm: EditorView);
    focus(): void;
    hasFocus(): boolean;
    getValue(): MarkupString;
    isEmpty(): boolean;
    clear(): void;
    replace(newMarkup: MarkupString): void;
    prepend(markup: MarkupString): void;
    append(markup: MarkupString): void;
    moveCursor(position: 'start' | 'end'): void;
    private _fixMarkupBeforeInsert;
}
