/** * Chunking strategies for the streaming-parser invariant suite. * * Each strategy slices the *same* source text into an append-only chunk * sequence. The union of all strategies is designed to stress the parser's * boundary handling: `per-code-unit` deliberately splits UTF-16 surrogate pairs * (the hardest case — a chunk boundary can land inside a single emoji), while * the seeded strategies exercise arbitrary mid-token cuts reproducibly. * * Determinism is a hard requirement: no `Math.random`, no `Date.now`. The * seeded strategies use a tiny inline LCG so every run produces byte-identical * chunk boundaries. */ export interface Chunking { name: string; chunks: string[]; } /** * Produce every chunking of `text`. Each strategy self-checks the fundamental * invariant `chunks.join('') === text` before it is returned, so a bug in the * harness surfaces here rather than as a confusing parser mismatch downstream. */ export declare function chunkings(text: string): Chunking[];