/** * Validate untouched generated metadata without reading any property value. * * This must run before normalization because spreading or iterating an * untrusted record/container could otherwise execute an accessor or erase a * caller-controlled prototype before the immutable snapshot sees it. */ export declare function assertPlainRuntimeMetadataGraph(value: unknown): void; /** * Create an immutable, detached snapshot of framework runtime metadata. * * Runtime metadata is plain data plus lazy loader functions. Functions are * preserved by identity; every record and array that can redirect a loader or * change graph policy is copied before it is recursively frozen. * * Custom prototypes and accessors are rejected. Accepting either would let a * caller change inherited policy after minting even though the snapshot's own * properties are frozen. Opaque provider, Tool, and schema objects are loaded * later through the preserved functions and never cross this metadata boundary. */ export declare function cloneAndDeepFreezeRuntimeSnapshot(value: T): T; /** Recursively freeze a newly assembled runtime view without cloning loaders. */ export declare function deepFreezeRuntimeSnapshot(value: T): T;