export declare class MarkdownProvider {
    private value;
    private selectionStart;
    private selectionEnd;
    private before;
    private after;
    private addNewLine;
    private afterNewline;
    private emptyText;
    constructor(value: string, selectionStart: number, selectionEnd: number);
    insertBefore(before: string): this;
    insertAfter(after: string): this;
    surroundWithNewlines(): this;
    insertAfterNewlineInSelection(afterNewline: string): this;
    emptySelectionText(emptyText: string): this;
    apply(callback: (value: string, selectionStart: number, selectionEnd: number) => void): void;
    private splice;
    private addNewLineImpl;
    private trimSelection;
    private insertAfterNewlineInSelectionImpl;
    private addEmptyText;
}
