import type { EventSchema, RepairEdit, RunnerOptions } from "./types"; /** * Reads the segment IDs in `input` as the message `schema` accepts with the * fewest edits: segments missing from `input`, and segments `input` has that * the schema does not allow there. * * Returns the edits in input order; none when `input` fits `schema`, as * `runner()` matches it. Of repairs with as many edits, it returns one with * the fewest unexpected segments; of those, the first in `runner()`'s * priority order, where at each segment the schema's reading comes first, * then passing over a Z-segment, then the segment as unexpected in place of * the schema's segment there, as missing, then a missing segment, then an * unexpected one. * * A Z-segment the schema does not name costs no edit unless * `options.allowZSegments` is `false`. * * Compiles `schema` on its first use by `runner()` or `repair()` and reuses * the program. `schema` MUST NOT change after its first use. Runs in time and * space proportional to the input length times the schema size. * * @throws {Error} As `runner()`, for an invalid `schema`. */ export declare function repair(schema: EventSchema, input: readonly string[], options?: RunnerOptions): RepairEdit[]; //# sourceMappingURL=repair.d.ts.map