/** * Defensive validation for data-only JSON values. * * Kept internal to the schemas module so runtime schemas and JSON Schema * adapter boundaries share one set of resource and prototype-safety checks. * * @module schemas/json-value */ export type BoundedJsonValue = string | number | boolean | null | BoundedJsonValue[] | { [key: string]: BoundedJsonValue; }; export type BoundedJsonPathSegment = string | number; export type BoundedJsonSnapshot = { success: true; value: BoundedJsonValue; } | { success: false; path: readonly BoundedJsonPathSegment[]; }; /** * Creates a bounded, data-only snapshot of an unknown JSON value. * * The walk is iterative and rejects cycles, accessors, plain-object * prototypes other than `Object.prototype` or `null`, non-JSON properties, * and inputs above the documented depth, node, string, key, and * serialized-size limits. Only property descriptor values captured during * this walk are copied, so a stateful Proxy cannot change the value between * validation and later consumption. Rejections include the path to the * narrowest invalid value that could be identified without invoking caller * code. */ export declare function snapshotBoundedJsonValue(value: unknown): BoundedJsonSnapshot; //# sourceMappingURL=json-value.d.ts.map