import { Block } from "./types.js"; //#region src/docReview/segmentDocument.d.ts /** * Split a markdown document into fine-grained blocks. * * Boundaries are drawn at headings, blank lines (paragraph breaks) and fenced * code blocks, while frontmatter and the inside of code fences are kept intact. * Each blank-line run is appended to the block that precedes it, so the blocks * form an exact partition of the document: concatenating every `content` (in * order) yields the original text unchanged. This is what lets the block-aware * review re-translate only the paragraphs/snippets that actually changed instead * of the whole heading section. * * @param text - The full markdown document. * @returns The ordered list of blocks with their 1-based line ranges. */ export declare const segmentDocument: (text: string) => Block[]; /** * Split a markdown document into coarse, heading-anchored sections. * * Built by grouping the fine blocks of {@link segmentDocument}: frontmatter and * each heading open a new section, and the following non-heading blocks are * folded into it. Because it only concatenates adjacent fine blocks, the result * is still an exact partition of the document (sections concatenate back to the * source unchanged). * * Sections are the robust alignment unit between a base document and its * translation — both share the same heading structure, so they align almost * perfectly and a translation that splits its prose into a different number of * paragraphs never causes a section to be dropped. Fine-grained review happens * within a section once it is known to have changed. * * @param text - The full markdown document. * @returns The ordered list of sections with their 1-based line ranges. */ export declare const segmentSections: (text: string) => Block[]; //#endregion //# sourceMappingURL=segmentDocument.d.ts.map