import type { BatchCompactionPoint } from '../../services/code/batch-compaction-point.js'; import type { BatchProgress } from '../../services/batch/batch-progress-types.js'; import { type BatchItemInput } from './batch-item-input.js'; /** * Record every item, then read the record back and stamp it with the batch's * stage and the wave plan. * * The per-item append is what makes a partial run recoverable: each item * lands on disk as it is measured, so a compaction between two items loses * neither. The final write carries the two facts that are only knowable once * every item is in: the stage, and the plan the measured file sets produce. */ export declare function recordBatch(input: { projectRoot: string; sessionId: string; batchId: string; items: readonly BatchItemInput[]; }): { progress: BatchProgress; compaction: BatchCompactionPoint; };