/** * Collapse repeats of a log line that can fire on a hot path. * * An error describing a *steady state* — a queue that is full, a service that * is down — is emitted once per attempt, and attempts can run at loop speed. * One such line filled 119 MB of log with 151,981 copies of the same sentence * and buried every other diagnostic in the file (SKY-104). * * The first occurrence is always emitted immediately, so nothing is hidden; * repeats are folded into a periodic summary carrying the suppressed count. */ export type LogThrottle = { /** Emit `message` if it is new or the window has elapsed, else count it. */ emit: (message: string) => void; /** Flush any pending suppression summary — call when the condition clears. */ reset: () => void; }; export declare function createLogThrottle(options: { windowMs: number; sink: (line: string) => void; }): LogThrottle;