/** One file whose observed count differs from its recorded baseline. */ export interface CountedBaselineDifference { readonly path: string; readonly count: number; readonly allowed: number; } /** Compare per-file counts with a baseline that may only shrink. */ export function compareCountedBaseline( counts: ReadonlyMap, baseline: Readonly>, shrink: boolean, ): { readonly grown: CountedBaselineDifference[]; readonly stale: CountedBaselineDifference[]; readonly baseline: Record; /** True only when `shrink` lowered or removed a recorded count. */ readonly lowered: boolean; }; /** Record a lowered baseline under `key`; true when the map changed. */ export function recordLoweredBaseline( baselines: Record>, key: string, compared: { readonly baseline: Record; readonly lowered: boolean; }, ): boolean;