import * as z from 'zod/mini'; declare const JsonArrayZod: z.ZodMiniArray>>>; declare const JsonValueZod: z.ZodMiniType; /** Zod schema for a JSON object with string keys and recursive JSON values. */ export declare const JsonObjectZod: z.ZodMiniRecord, z.ZodMiniType>>; /** A recursive JSON value: string, number, boolean, null, array, or object. */ export type JsonValue = z.infer; /** A JSON object with string keys and JSON values. */ export type JsonObject = z.infer; /** A JSON array containing JSON values. */ export type JsonArray = z.infer; /** Type guard that checks if a value is a valid JSON value. */ export declare const isJsonValue: (value: T) => value is T; /** Casts a value to JsonValue or returns undefined if it does not conform. */ export declare const asJsonValue: { (value: T): T | undefined; (value: T, assert: import("@xylabs/zod").ZodFactoryConfig): T; }; /** Parses a value into a JsonValue, throwing if it does not conform. */ export declare const toJsonValue: { (value: T): T | undefined; (value: T, assert: import("@xylabs/zod").ZodFactoryConfig): T; }; /** Type guard that checks if a value is a valid JSON array. */ export declare const isJsonArray: (value: T) => value is T & unknown[]; /** Casts a value to JsonArray or returns undefined if it does not conform. */ export declare const asJsonArray: { (value: T): (T & unknown[]) | undefined; (value: T, assert: import("@xylabs/zod").ZodFactoryConfig): T & unknown[]; }; /** Parses a value into a JsonArray, throwing if it does not conform. */ export declare const toJsonArray: { (value: T): (T & unknown[]) | undefined; (value: T, assert: import("@xylabs/zod").ZodFactoryConfig): T & unknown[]; }; /** Type guard that checks if a value is a valid JSON object. */ export declare const isJsonObject: (value: T) => value is T & Record; /** Casts a value to JsonObject or returns undefined if it does not conform. */ export declare const asJsonObject: { (value: T): (T & Record) | undefined; (value: T, assert: import("@xylabs/zod").ZodFactoryConfig): T & Record; }; /** Parses a value into a JsonObject, throwing if it does not conform. */ export declare const toJsonObject: { (value: T): (T & Record) | undefined; (value: T, assert: import("@xylabs/zod").ZodFactoryConfig): T & Record; }; export {}; //# sourceMappingURL=JsonObject.d.ts.map