export type StaticJsonValue = null | boolean | number | string | readonly StaticJsonValue[] | StaticJsonObject; /** A plain, losslessly JSON-serializable object with safe property keys. */ export type StaticJsonObject = { readonly [key: string]: StaticJsonValue; }; /** * Validate values that cross evjs static configuration and graph boundaries. * * This is intentionally stricter than JSON.stringify(): unsupported values, * lossy properties, unsafe object keys, sparse arrays, and cycles fail instead * of being dropped or coerced. */ export declare function assertStaticJsonValue(value: unknown, source: string): asserts value is StaticJsonValue; /** Read and validate an optional static-JSON object without invoking accessors. */ export declare function readOptionalStaticJsonObjectProperty(owner: object, key: string, source: string): StaticJsonObject | undefined; export declare function cloneStaticJsonValue(value: T): T; export declare function deepFreezeStaticJsonValue(value: T): T; export declare function isPlainStaticJsonObject(value: unknown): value is Record; export declare function assertEnumerableStaticJsonProperties(value: object, source: string): void; //# sourceMappingURL=static-json.d.ts.map