export interface Range { start: number; end: number; } export interface EditResult { value: string; selection: Range; } export declare function wrapSelection(value: string, range: Range, before: string, after: string): EditResult; export declare function toggleWrap(value: string, range: Range, before: string, after: string): EditResult; export declare function replaceSelection(value: string, range: Range, text: string, selectInsert?: boolean): EditResult; export declare function getLineRange(value: string, pos: number): Range; export declare function getSelectedLinesRange(value: string, range: Range): Range; export declare function mapLines(value: string, range: Range, mapper: (line: string, index: number) => string): EditResult; export declare function toggleLinePrefix(value: string, range: Range, prefix: string): EditResult; export declare function setLinePrefix(value: string, range: Range, prefixRegex: RegExp, prefix: string): EditResult; export declare function insertBlock(value: string, range: Range, block: string): EditResult; export declare function indentLines(value: string, range: Range, unit?: string): EditResult; export declare function outdentLines(value: string, range: Range, unit?: string): EditResult;