import { Logger } from "../shared/logger.js"; export interface HistorySnapshot { version: number; envName: string; capturedAt: string; /** Map of audit-name → list of findings (fingerprints + a sample). */ audits: Record; }>>; } export interface SnapshotEntry { filePath: string; capturedAt: string; } export interface CaptureAuditAllEnvelope { audits?: Record; } /** * Take an `audit all` envelope and persist it as a history snapshot. * Returns the full path to the snapshot file. */ export declare const captureHistory: (params: { envName: string; configDir: string; envelope: CaptureAuditAllEnvelope; logger?: Logger; now?: Date; }) => string; /** List history snapshots for an env, newest first. */ export declare const listHistory: (params: { envName: string; configDir: string; }) => SnapshotEntry[]; export declare const loadSnapshot: (filePath: string) => HistorySnapshot; export interface DiffSummary { fromCapturedAt: string; toCapturedAt: string; perAudit: Record; }>; removed: Array<{ fingerprint: string; sample?: Record; }>; }>; totals: { added: number; removed: number; net: number; }; } /** * Compute a delta between two snapshots: items added (present in * `to` but not `from`) and removed (vice versa), grouped by audit. * Identity is by fingerprint, same as baselines. */ export declare const diffSnapshots: (from: HistorySnapshot, to: HistorySnapshot) => DiffSummary;