import type { EditorChange as EditorChangeOriginal, EditorCommandName as EditorCommandNameOriginal, Editor as EditorOriginal, EditorPosition as EditorPositionOriginal, EditorRange as EditorRangeOriginal, EditorSelectionOrCaret as EditorSelectionOrCaretOriginal, EditorSelection as EditorSelectionOriginal, EditorTransaction as EditorTransactionOriginal } from 'obsidian'; import type { CoordsLeftTop } from '../internal/types.cjs'; export declare abstract class Editor { private anchor; private content; private focused; private head; private redoStack; private scrollLeft; private scrollTop; private readonly undoStack; constructor(); static fromOriginalType__(value: EditorOriginal): Editor; asOriginalType__(): EditorOriginal; blur(): void; constructor__(): void; exec(command: EditorCommandNameOriginal): void; focus(): void; getCursor(side?: 'anchor' | 'from' | 'head' | 'to'): EditorPositionOriginal; getDoc(): this; getLine(line: number): string; getRange(from: EditorPositionOriginal, to: EditorPositionOriginal): string; getScrollInfo(): CoordsLeftTop; getSelection(): string; getValue(): string; hasFocus(): boolean; lastLine(): number; lineCount(): number; listSelections(): EditorSelectionOriginal[]; offsetToPos(offset: number): EditorPositionOriginal; posToOffset(pos: EditorPositionOriginal): number; processLines(read: (line: number, lineText: string) => null | T, write: (line: number, lineText: string, value: null | T) => EditorChangeOriginal | undefined, _ignoreEmpty?: boolean): void; redo(): void; refresh(): void; replaceRange(replacement: string, from: EditorPositionOriginal, to?: EditorPositionOriginal, _origin?: string): void; replaceSelection(replacement: string, _origin?: string): void; scrollIntoView(_range: EditorRangeOriginal, _center?: boolean): void; scrollTo(x?: null | number, y?: null | number): void; setCursor(pos: EditorPositionOriginal | number, ch?: number): void; setLine(n: number, text: string): void; setSelection(anchor: EditorPositionOriginal, head?: EditorPositionOriginal): void; setSelections(ranges: EditorSelectionOrCaretOriginal[], main?: number): void; setValue(content: string): void; somethingSelected(): boolean; transaction(tx: EditorTransactionOriginal, _origin?: string): void; undo(): void; wordAt(pos: EditorPositionOriginal): EditorRangeOriginal | null; private execDeleteLine; private execGoDown; private execGoEnd; private execGoLeft; private execGoRight; private execGoUp; private execGoWordLeft; private execGoWordRight; private execIndent; private execNewlineAndIndent; private execSwapLine; private getLines; private maxPos; private minPos; }