import type { NativeDoctorFinding, NativeProjectPaths } from './native-types.js'; export declare const NATIVE_EVIDENCE_RETENTION_POLICY: Readonly<{ readonly minimumAgeMs: number; readonly keepLatestUnreferencedPerKind: 32; readonly maxDocuments: 4096; readonly maxScannedBytes: number; readonly maxReportedRefs: 8; readonly maxReportMessageBytes: 4096; }>; export interface NativeEvidenceRetentionHooks { beforeDelete?: (candidate: { ref: string; file: string; }) => void | Promise; afterRecoveryLink?: (recovery: { ref: string; original: string; quarantine: string; }) => void | Promise; } export interface NativeEvidenceRetentionOptions { paths: NativeProjectPaths; name?: string; repair?: boolean; now?: Date; /** Archive/root-move recovery can relocate a whole change, so all collection is deferred. */ deferAll?: boolean; hooks?: NativeEvidenceRetentionHooks; } /** * Inspect or explicitly prune old unreferenced Native-owned evidence. * * The default path is read-only. Repair repeats the complete scan and plan while holding the * project mutation lock, then deletes only documents whose identities remain unchanged. */ export declare function inspectNativeEvidenceRetention(options: NativeEvidenceRetentionOptions): Promise; //# sourceMappingURL=native-evidence-retention.d.ts.map