import type { EditOp } from "./types.ts"; /** * Extract the line number from an edit's anchor. * For replace ops without pos, returns 0. For append/prepend without pos, * returns 0 (BOF/EOF sentinel). */ export declare function getEditLineNumber(edit: EditOp): number; /** * Collect all line references from a set of edits. */ export declare function collectLineRefs(edits: EditOp[]): string[]; /** * Sort edits bottom-up (descending line number) to avoid index shifting * during application. Within the same line: * replace before append before prepend. */ export declare function sortEditsBottomUp(edits: EditOp[]): EditOp[]; /** * Detect identical edits and remove duplicates. * Two edits are identical if they have the same op, pos, end, and lines. */ export declare function deduplicateEdits(edits: EditOp[]): { edits: EditOp[]; deduplicatedCount: number; }; /** * Detect overlapping replace ranges. * Returns an error message if overlaps found, or null if clean. */ export declare function detectOverlappingRanges(edits: EditOp[]): string | null; //# sourceMappingURL=edit-ordering.d.ts.map