export type LedgerV3Object = Record; /** * Event kinds that 0.30.0 and earlier wrote and 0.31.0 no longer builds (the check runner and workflow facts were * deleted). A ledger is append-only, so a line written then is still a valid line now: readers accept these * discriminators as historical and count them, and nothing here can produce a new one. Removing a kind from this * set turns an operator's existing record into "corrupt" on upgrade, which is the failure this set exists to prevent. */ export declare const RETIRED_LEDGER_EVENT_KINDS: ReadonlySet; export declare function isRetiredLedgerEvent(event: { event?: unknown; }): boolean; export declare function isLedgerObject(value: unknown): value is LedgerV3Object; export declare function isNonEmptyString(value: unknown): value is string; /** Ledger timestamp profile: JSON Schema `date-time`, narrowed to seconds 00-59 for JS date arithmetic. */ export declare function isTimestamp(value: unknown): value is string; export declare function isStringArray(value: unknown): value is string[]; /** Exact, content-free runtime validation for one closed ledger v3 event. */ export declare function validateLedgerV3Event(event: LedgerV3Object): string | null; /** Ensure a public builder cannot emit bytes the closed v3 reader would reject. */ export declare function assertLedgerV3Wire(event: T): T; //# sourceMappingURL=ledger-v3-validation.d.ts.map