/** * Public canonical codec for Init's bounded, path-neutral promotion journal. * No journal payload contains absolute paths, entry lists, or authored bytes. */ import { type CreateRuntimePromotionJournalInput, type RuntimePromotionJournal, type RuntimePromotionJournalBinding } from './runtime-promotion-journal-types.js'; export * from './runtime-promotion-journal-types.js'; export { assertRuntimeManifestIdentity, isSafeRuntimePromotionBasename, } from './runtime-promotion-journal-validation.js'; export { createRuntimePromotionOwnedSlots, runtimePromotionOwnedBasename, runtimePromotionOwnershipId, } from './runtime-promotion-owned-identities.js'; /** Validate the complete v1 shape and all static field combinations. */ export declare function assertRuntimePromotionJournal(value: unknown): asserts value is RuntimePromotionJournal; /** Return a deep copy with the one accepted v1 key order. */ export declare function canonicalRuntimePromotionJournal(journal: RuntimePromotionJournal): RuntimePromotionJournal; /** * Compact canonical JSON with no trailing newline. * * @throws {Error} When the encoded journal exceeds its durable size cap. */ export declare function encodeRuntimePromotionJournal(journal: RuntimePromotionJournal): string; /** * Parse only exact canonical bytes. Re-encoding catches duplicate keys, * reordered fields, alternate escapes, whitespace, and unknown additions. * * @throws {Error} When the bytes are oversized, invalid, noncanonical, or bound elsewhere. */ export declare function parseRuntimePromotionJournal(raw: string, expected?: RuntimePromotionJournalBinding): RuntimePromotionJournal; /** Construct the only legal revision-zero record. */ export declare function createInitialRuntimePromotionJournal(input: CreateRuntimePromotionJournalInput): RuntimePromotionJournal; //# sourceMappingURL=runtime-promotion-journal-schema.d.ts.map