import { Text } from "@codemirror/next/text"; export declare const DefaultSplit: RegExp; export declare enum MapMode { Simple = 0, TrackDel = 1, TrackBefore = 2, TrackAfter = 3 } export declare class ChangeDesc { get length(): number; get newLength(): number; get empty(): boolean; iterGaps(f: (posA: number, posB: number, length: number) => void): void; iterChangedRanges(f: (fromA: number, toA: number, fromB: number, toB: number) => void, individual?: boolean): void; get invertedDesc(): ChangeDesc; composeDesc(other: ChangeDesc): ChangeDesc; mapDesc(other: ChangeDesc, before?: boolean): ChangeDesc; mapPos(pos: number, assoc?: number): number; mapPos(pos: number, assoc: number, mode: MapMode): number | null; touchesRange(from: number, to?: number): boolean | "cover"; } export declare type ChangeSpec = { from: number; to?: number; insert?: string | Text; } | ChangeSet | readonly ChangeSpec[]; export declare class ChangeSet extends ChangeDesc { apply(doc: Text): Text; mapDesc(other: ChangeDesc, before?: boolean): ChangeDesc; invert(doc: Text): ChangeSet; compose(other: ChangeSet): ChangeSet; map(other: ChangeDesc, before?: boolean): ChangeSet; iterChanges(f: (fromA: number, toA: number, fromB: number, toB: number, inserted: Text) => void, individual?: boolean): void; get desc(): ChangeDesc; toJSON(): any; static of(changes: ChangeSpec, length: number, lineSep?: string): ChangeSet; static empty(length: number): ChangeSet; static fromJSON(json: any): ChangeSet; } //# sourceMappingURL=change.d.ts.map