import { type TZodFromSyntax } from './zod-from-syntax'; import { type TZodFromTypeBox } from './zod-from-typebox'; import { type TZodFromValibot } from './zod-from-valibot'; import { type TZodFromZod } from './zod-from-zod'; import { type TSyntaxOptions } from '../options'; import { type TParameter, type TContextFromParameter } from '../typebox/typebox'; import * as g from '../guard'; import * as z from 'zod'; /** Creates a Zod type by mapping from a remote Type */ export type TZod = (Type extends g.SyntaxType ? TZodFromSyntax, Type> : Type extends g.TypeBoxType ? TZodFromTypeBox : Type extends g.ValibotType ? TZodFromValibot : Type extends g.ZodType ? TZodFromZod : z.ZodNever)> = Result; /** Creates a Zod type by mapping from a remote Type */ export declare function Zod(parameter: Parameter, type: Type, options?: TSyntaxOptions): TZod; /** Creates a Zod type by mapping from a remote Type */ export declare function Zod(type: Type, options?: TSyntaxOptions): TZod<{}, Type>; /** Creates a Zod type by mapping from a remote Type */ export declare function Zod(type: Type, options?: TSyntaxOptions): TZod<{}, Type>;