import type { RetainedOutput } from '../runner.js'; /** * The bound on what one recorded pass persists, and so on what `nmr --log` can print back. * * A quantity of its own, distinct from the two that bound the same bytes elsewhere: the in-memory copy a * command's capture keeps is bounded per stream, for a failure this run may still have to report, and a * verdict line is bounded at what a pipe carries atomically. This one bounds what a cache directory * accumulates over every scope and command a repo records. */ export declare const TRANSCRIPT_LIMIT_BYTES = 262144; /** * Reduces a command's raw output to the form nmr persists: escape sequences dropped, and a line the command * redrew reduced to what a reader was left looking at. * * Applied where the bytes are stored rather than where they are captured. The copy a quiet run writes to * stderr on failure is the command's own output going to a stream that may be a terminal, and stripping its * color there would be a loss. */ export declare function cleanTranscript(raw: string): string; /** * Composes what a pass persists from what its command wrote, or `undefined` where it wrote nothing worth * keeping. * * The streams follow one another rather than interleaving, in the order a quiet run already dumps them on * failure: nmr reads each through a pipe of its own, so their true interleaving is not among the facts it * holds. A stream carrying nothing contributes neither content nor marker. */ export declare function composeTranscript(retained: RetainedOutput): string | undefined; /** Renders the line that stands in for dropped bytes, in nmr's voice so it is not mistaken for the tool's. */ export declare function formatElisionMarker(byteCount: number): string;