/** * Frozen enforcement baseline (change: add-enforcement-baseline-ratchet). * * The file is deterministic JSON Lines. Code markers distinguish "this code was * initialized with zero findings" from "this code has never been frozen"; finding * lines preserve arbitrary subjects without a delimiter or line-number dependency. */ import type { EnforcementPolicy, GateResult, GovernanceFinding } from './enforcement-policy.js'; type FindingRecord = ['finding', string, string, string]; export interface EnforcementBaselineSummary { path: string; initialized: string[]; frozen: number; new: number; removed: number; written: boolean; requiresInitialization?: string[]; integrityError?: boolean; caveat?: string; } export interface BaselineGateResult { gate: GateResult; baseline: EnforcementBaselineSummary; } /** Stable, line-number-insensitive identity for a governance finding. */ export declare function enforcementFindingIdentity(finding: GovernanceFinding): FindingRecord; /** * Initialize and ratchet the frozen codes this caller actually evaluates. * A read/parse failure is fail-closed for the affected frozen policy: the corrupt * baseline is never overwritten, and a failed first write cannot pretend a durable * baseline exists. */ export declare function applyEnforcementBaseline(rootPath: string, gate: GateResult, policy: EnforcementPolicy, managedCodes: ReadonlySet, mode?: 'bootstrap' | 'gate' | 'read-only', trustedBaselineText?: string | null): Promise; export {}; //# sourceMappingURL=enforcement-baseline.d.ts.map