import { OK, ParseInput, UnknownKeysParam, ZodBooleanDef, ZodDate, ZodObject, ZodRawShape, ZodType, ZodTypeAny, objectInputType, objectOutputType, z } from 'zod'; export declare function zJsonSchema(schema: z.Schema, defaultValue?: T): z.ZodEffects, T, T>; export declare function zJsonArray(defaultValue?: T[] extends { parse: any; }[] ? never : T[]): z.ZodEffects, T[], T[]>; export type TableRelation = { ref: string; table: string; refTarget: string; select?: string[]; schema?: z.Schema; }; export declare function zRelationOne(relation: TableRelation, defaultValue?: T extends { parse: any; } ? never : T): z.ZodOptional, T, T & { __relations?: any; }>>; export declare function zString(): ZodType; export declare function zRelationMany(relation: TableRelation, defaultValue?: T[] extends { parse: any; } ? never : T[]): z.ZodOptional; })[], z.ZodTypeDef, (T & { __relations?: TableRelation; })[]>, T[], (T & { __relations?: TableRelation; })[]>>; export declare class ZodKyDate extends ZodDate { _parse(input: ParseInput): z.INVALID | OK | z.DIRTY | z.AsyncParseReturnType; } export declare class ZodKyBoolean extends ZodType { _parse(input: ParseInput): OK; } export declare class ZodKyJsonString, Input = objectInputType> extends ZodObject { _parse(input: ParseInput): OK; } export declare const zBoolean: () => ZodKyBoolean; export declare const zDate: () => z.ZodOptional; export declare function zJsonObject>(): ZodKyJsonString;