schemas.d.ts 50 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146
  1. import * as checks from "./checks.js";
  2. import * as core from "./core.js";
  3. import type * as errors from "./errors.js";
  4. import type * as JSONSchema from "./json-schema.js";
  5. import type { StandardSchemaV1 } from "./standard-schema.js";
  6. import type { ProcessParams, ToJSONSchemaContext } from "./to-json-schema.js";
  7. import * as util from "./util.js";
  8. import { version } from "./versions.js";
  9. export interface ParseContext<T extends errors.$ZodIssueBase = never> {
  10. /** Customize error messages. */
  11. readonly error?: errors.$ZodErrorMap<T>;
  12. /** Include the `input` field in issue objects. Default `false`. */
  13. readonly reportInput?: boolean;
  14. /** Skip eval-based fast path. Default `false`. */
  15. readonly jitless?: boolean;
  16. }
  17. /** @internal */
  18. export interface ParseContextInternal<T extends errors.$ZodIssueBase = never> extends ParseContext<T> {
  19. readonly async?: boolean | undefined;
  20. readonly direction?: "forward" | "backward";
  21. readonly skipChecks?: boolean;
  22. }
  23. export interface ParsePayload<T = unknown> {
  24. value: T;
  25. issues: errors.$ZodRawIssue[];
  26. /** A may to mark a whole payload as aborted. Used in codecs/pipes. */
  27. aborted?: boolean;
  28. }
  29. export type CheckFn<T> = (input: ParsePayload<T>) => util.MaybeAsync<void>;
  30. export interface $ZodTypeDef {
  31. type: "string" | "number" | "int" | "boolean" | "bigint" | "symbol" | "null" | "undefined" | "void" | "never" | "any" | "unknown" | "date" | "object" | "record" | "file" | "array" | "tuple" | "union" | "intersection" | "map" | "set" | "enum" | "literal" | "nullable" | "optional" | "nonoptional" | "success" | "transform" | "default" | "prefault" | "catch" | "nan" | "pipe" | "readonly" | "template_literal" | "promise" | "lazy" | "function" | "custom";
  32. error?: errors.$ZodErrorMap<never> | undefined;
  33. checks?: checks.$ZodCheck<never>[];
  34. }
  35. export interface _$ZodTypeInternals {
  36. /** The `@zod/core` version of this schema */
  37. version: typeof version;
  38. /** Schema definition. */
  39. def: $ZodTypeDef;
  40. /** @internal Randomly generated ID for this schema. */
  41. /** @internal List of deferred initializers. */
  42. deferred: util.AnyFunc[] | undefined;
  43. /** @internal Parses input and runs all checks (refinements). */
  44. run(payload: ParsePayload<any>, ctx: ParseContextInternal): util.MaybeAsync<ParsePayload>;
  45. /** @internal Parses input, doesn't run checks. */
  46. parse(payload: ParsePayload<any>, ctx: ParseContextInternal): util.MaybeAsync<ParsePayload>;
  47. /** @internal Stores identifiers for the set of traits implemented by this schema. */
  48. traits: Set<string>;
  49. /** @internal Indicates that a schema output type should be considered optional inside objects.
  50. * @default Required
  51. */
  52. /** @internal */
  53. optin?: "optional" | undefined;
  54. /** @internal */
  55. optout?: "optional" | undefined;
  56. /** @internal The set of literal values that will pass validation. Must be an exhaustive set. Used to determine optionality in z.record().
  57. *
  58. * Defined on: enum, const, literal, null, undefined
  59. * Passthrough: optional, nullable, branded, default, catch, pipe
  60. * Todo: unions?
  61. */
  62. values?: util.PrimitiveSet | undefined;
  63. /** Default value bubbled up from */
  64. /** @internal A set of literal discriminators used for the fast path in discriminated unions. */
  65. propValues?: util.PropValues | undefined;
  66. /** @internal This flag indicates that a schema validation can be represented with a regular expression. Used to determine allowable schemas in z.templateLiteral(). */
  67. pattern: RegExp | undefined;
  68. /** @internal The constructor function of this schema. */
  69. constr: new (def: any) => $ZodType;
  70. /** @internal A catchall object for bag metadata related to this schema. Commonly modified by checks using `onattach`. */
  71. bag: Record<string, unknown>;
  72. /** @internal The set of issues this schema might throw during type checking. */
  73. isst: errors.$ZodIssueBase;
  74. /** @internal Subject to change, not a public API. */
  75. processJSONSchema?: ((ctx: ToJSONSchemaContext, json: JSONSchema.BaseSchema, params: ProcessParams) => void) | undefined;
  76. /** An optional method used to override `toJSONSchema` logic. */
  77. toJSONSchema?: () => unknown;
  78. /** @internal The parent of this schema. Only set during certain clone operations. */
  79. parent?: $ZodType | undefined;
  80. }
  81. /** @internal */
  82. export interface $ZodTypeInternals<out O = unknown, out I = unknown> extends _$ZodTypeInternals {
  83. /** @internal The inferred output type */
  84. output: O;
  85. /** @internal The inferred input type */
  86. input: I;
  87. }
  88. export type $ZodStandardSchema<T> = StandardSchemaV1.Props<core.input<T>, core.output<T>>;
  89. export type SomeType = {
  90. _zod: _$ZodTypeInternals;
  91. };
  92. export interface $ZodType<O = unknown, I = unknown, Internals extends $ZodTypeInternals<O, I> = $ZodTypeInternals<O, I>> {
  93. _zod: Internals;
  94. "~standard": $ZodStandardSchema<this>;
  95. }
  96. export interface _$ZodType<T extends $ZodTypeInternals = $ZodTypeInternals> extends $ZodType<T["output"], T["input"], T> {
  97. }
  98. export declare const $ZodType: core.$constructor<$ZodType>;
  99. export { clone } from "./util.js";
  100. export interface $ZodStringDef extends $ZodTypeDef {
  101. type: "string";
  102. coerce?: boolean;
  103. checks?: checks.$ZodCheck<string>[];
  104. }
  105. export interface $ZodStringInternals<Input> extends $ZodTypeInternals<string, Input> {
  106. def: $ZodStringDef;
  107. /** @deprecated Internal API, use with caution (not deprecated) */
  108. pattern: RegExp;
  109. /** @deprecated Internal API, use with caution (not deprecated) */
  110. isst: errors.$ZodIssueInvalidType;
  111. bag: util.LoosePartial<{
  112. minimum: number;
  113. maximum: number;
  114. patterns: Set<RegExp>;
  115. format: string;
  116. contentEncoding: string;
  117. }>;
  118. }
  119. export interface $ZodString<Input = unknown> extends _$ZodType<$ZodStringInternals<Input>> {
  120. }
  121. export declare const $ZodString: core.$constructor<$ZodString>;
  122. export interface $ZodStringFormatDef<Format extends string = string> extends $ZodStringDef, checks.$ZodCheckStringFormatDef<Format> {
  123. }
  124. export interface $ZodStringFormatInternals<Format extends string = string> extends $ZodStringInternals<string>, checks.$ZodCheckStringFormatInternals {
  125. def: $ZodStringFormatDef<Format>;
  126. }
  127. export interface $ZodStringFormat<Format extends string = string> extends $ZodType {
  128. _zod: $ZodStringFormatInternals<Format>;
  129. }
  130. export declare const $ZodStringFormat: core.$constructor<$ZodStringFormat>;
  131. export interface $ZodGUIDDef extends $ZodStringFormatDef<"guid"> {
  132. }
  133. export interface $ZodGUIDInternals extends $ZodStringFormatInternals<"guid"> {
  134. }
  135. export interface $ZodGUID extends $ZodType {
  136. _zod: $ZodGUIDInternals;
  137. }
  138. export declare const $ZodGUID: core.$constructor<$ZodGUID>;
  139. export interface $ZodUUIDDef extends $ZodStringFormatDef<"uuid"> {
  140. version?: "v1" | "v2" | "v3" | "v4" | "v5" | "v6" | "v7" | "v8";
  141. }
  142. export interface $ZodUUIDInternals extends $ZodStringFormatInternals<"uuid"> {
  143. def: $ZodUUIDDef;
  144. }
  145. export interface $ZodUUID extends $ZodType {
  146. _zod: $ZodUUIDInternals;
  147. }
  148. export declare const $ZodUUID: core.$constructor<$ZodUUID>;
  149. export interface $ZodEmailDef extends $ZodStringFormatDef<"email"> {
  150. }
  151. export interface $ZodEmailInternals extends $ZodStringFormatInternals<"email"> {
  152. }
  153. export interface $ZodEmail extends $ZodType {
  154. _zod: $ZodEmailInternals;
  155. }
  156. export declare const $ZodEmail: core.$constructor<$ZodEmail>;
  157. export interface $ZodURLDef extends $ZodStringFormatDef<"url"> {
  158. hostname?: RegExp | undefined;
  159. protocol?: RegExp | undefined;
  160. normalize?: boolean | undefined;
  161. }
  162. export interface $ZodURLInternals extends $ZodStringFormatInternals<"url"> {
  163. def: $ZodURLDef;
  164. }
  165. export interface $ZodURL extends $ZodType {
  166. _zod: $ZodURLInternals;
  167. }
  168. export declare const $ZodURL: core.$constructor<$ZodURL>;
  169. export interface $ZodEmojiDef extends $ZodStringFormatDef<"emoji"> {
  170. }
  171. export interface $ZodEmojiInternals extends $ZodStringFormatInternals<"emoji"> {
  172. }
  173. export interface $ZodEmoji extends $ZodType {
  174. _zod: $ZodEmojiInternals;
  175. }
  176. export declare const $ZodEmoji: core.$constructor<$ZodEmoji>;
  177. export interface $ZodNanoIDDef extends $ZodStringFormatDef<"nanoid"> {
  178. }
  179. export interface $ZodNanoIDInternals extends $ZodStringFormatInternals<"nanoid"> {
  180. }
  181. export interface $ZodNanoID extends $ZodType {
  182. _zod: $ZodNanoIDInternals;
  183. }
  184. export declare const $ZodNanoID: core.$constructor<$ZodNanoID>;
  185. export interface $ZodCUIDDef extends $ZodStringFormatDef<"cuid"> {
  186. }
  187. export interface $ZodCUIDInternals extends $ZodStringFormatInternals<"cuid"> {
  188. }
  189. export interface $ZodCUID extends $ZodType {
  190. _zod: $ZodCUIDInternals;
  191. }
  192. export declare const $ZodCUID: core.$constructor<$ZodCUID>;
  193. export interface $ZodCUID2Def extends $ZodStringFormatDef<"cuid2"> {
  194. }
  195. export interface $ZodCUID2Internals extends $ZodStringFormatInternals<"cuid2"> {
  196. }
  197. export interface $ZodCUID2 extends $ZodType {
  198. _zod: $ZodCUID2Internals;
  199. }
  200. export declare const $ZodCUID2: core.$constructor<$ZodCUID2>;
  201. export interface $ZodULIDDef extends $ZodStringFormatDef<"ulid"> {
  202. }
  203. export interface $ZodULIDInternals extends $ZodStringFormatInternals<"ulid"> {
  204. }
  205. export interface $ZodULID extends $ZodType {
  206. _zod: $ZodULIDInternals;
  207. }
  208. export declare const $ZodULID: core.$constructor<$ZodULID>;
  209. export interface $ZodXIDDef extends $ZodStringFormatDef<"xid"> {
  210. }
  211. export interface $ZodXIDInternals extends $ZodStringFormatInternals<"xid"> {
  212. }
  213. export interface $ZodXID extends $ZodType {
  214. _zod: $ZodXIDInternals;
  215. }
  216. export declare const $ZodXID: core.$constructor<$ZodXID>;
  217. export interface $ZodKSUIDDef extends $ZodStringFormatDef<"ksuid"> {
  218. }
  219. export interface $ZodKSUIDInternals extends $ZodStringFormatInternals<"ksuid"> {
  220. }
  221. export interface $ZodKSUID extends $ZodType {
  222. _zod: $ZodKSUIDInternals;
  223. }
  224. export declare const $ZodKSUID: core.$constructor<$ZodKSUID>;
  225. export interface $ZodISODateTimeDef extends $ZodStringFormatDef<"datetime"> {
  226. precision: number | null;
  227. offset: boolean;
  228. local: boolean;
  229. }
  230. export interface $ZodISODateTimeInternals extends $ZodStringFormatInternals {
  231. def: $ZodISODateTimeDef;
  232. }
  233. export interface $ZodISODateTime extends $ZodType {
  234. _zod: $ZodISODateTimeInternals;
  235. }
  236. export declare const $ZodISODateTime: core.$constructor<$ZodISODateTime>;
  237. export interface $ZodISODateDef extends $ZodStringFormatDef<"date"> {
  238. }
  239. export interface $ZodISODateInternals extends $ZodStringFormatInternals<"date"> {
  240. }
  241. export interface $ZodISODate extends $ZodType {
  242. _zod: $ZodISODateInternals;
  243. }
  244. export declare const $ZodISODate: core.$constructor<$ZodISODate>;
  245. export interface $ZodISOTimeDef extends $ZodStringFormatDef<"time"> {
  246. precision?: number | null;
  247. }
  248. export interface $ZodISOTimeInternals extends $ZodStringFormatInternals<"time"> {
  249. def: $ZodISOTimeDef;
  250. }
  251. export interface $ZodISOTime extends $ZodType {
  252. _zod: $ZodISOTimeInternals;
  253. }
  254. export declare const $ZodISOTime: core.$constructor<$ZodISOTime>;
  255. export interface $ZodISODurationDef extends $ZodStringFormatDef<"duration"> {
  256. }
  257. export interface $ZodISODurationInternals extends $ZodStringFormatInternals<"duration"> {
  258. }
  259. export interface $ZodISODuration extends $ZodType {
  260. _zod: $ZodISODurationInternals;
  261. }
  262. export declare const $ZodISODuration: core.$constructor<$ZodISODuration>;
  263. export interface $ZodIPv4Def extends $ZodStringFormatDef<"ipv4"> {
  264. version?: "v4";
  265. }
  266. export interface $ZodIPv4Internals extends $ZodStringFormatInternals<"ipv4"> {
  267. def: $ZodIPv4Def;
  268. }
  269. export interface $ZodIPv4 extends $ZodType {
  270. _zod: $ZodIPv4Internals;
  271. }
  272. export declare const $ZodIPv4: core.$constructor<$ZodIPv4>;
  273. export interface $ZodIPv6Def extends $ZodStringFormatDef<"ipv6"> {
  274. version?: "v6";
  275. }
  276. export interface $ZodIPv6Internals extends $ZodStringFormatInternals<"ipv6"> {
  277. def: $ZodIPv6Def;
  278. }
  279. export interface $ZodIPv6 extends $ZodType {
  280. _zod: $ZodIPv6Internals;
  281. }
  282. export declare const $ZodIPv6: core.$constructor<$ZodIPv6>;
  283. export interface $ZodMACDef extends $ZodStringFormatDef<"mac"> {
  284. delimiter?: string;
  285. }
  286. export interface $ZodMACInternals extends $ZodStringFormatInternals<"mac"> {
  287. def: $ZodMACDef;
  288. }
  289. export interface $ZodMAC extends $ZodType {
  290. _zod: $ZodMACInternals;
  291. }
  292. export declare const $ZodMAC: core.$constructor<$ZodMAC>;
  293. export interface $ZodCIDRv4Def extends $ZodStringFormatDef<"cidrv4"> {
  294. version?: "v4";
  295. }
  296. export interface $ZodCIDRv4Internals extends $ZodStringFormatInternals<"cidrv4"> {
  297. def: $ZodCIDRv4Def;
  298. }
  299. export interface $ZodCIDRv4 extends $ZodType {
  300. _zod: $ZodCIDRv4Internals;
  301. }
  302. export declare const $ZodCIDRv4: core.$constructor<$ZodCIDRv4>;
  303. export interface $ZodCIDRv6Def extends $ZodStringFormatDef<"cidrv6"> {
  304. version?: "v6";
  305. }
  306. export interface $ZodCIDRv6Internals extends $ZodStringFormatInternals<"cidrv6"> {
  307. def: $ZodCIDRv6Def;
  308. }
  309. export interface $ZodCIDRv6 extends $ZodType {
  310. _zod: $ZodCIDRv6Internals;
  311. }
  312. export declare const $ZodCIDRv6: core.$constructor<$ZodCIDRv6>;
  313. export declare function isValidBase64(data: string): boolean;
  314. export interface $ZodBase64Def extends $ZodStringFormatDef<"base64"> {
  315. }
  316. export interface $ZodBase64Internals extends $ZodStringFormatInternals<"base64"> {
  317. }
  318. export interface $ZodBase64 extends $ZodType {
  319. _zod: $ZodBase64Internals;
  320. }
  321. export declare const $ZodBase64: core.$constructor<$ZodBase64>;
  322. export declare function isValidBase64URL(data: string): boolean;
  323. export interface $ZodBase64URLDef extends $ZodStringFormatDef<"base64url"> {
  324. }
  325. export interface $ZodBase64URLInternals extends $ZodStringFormatInternals<"base64url"> {
  326. }
  327. export interface $ZodBase64URL extends $ZodType {
  328. _zod: $ZodBase64URLInternals;
  329. }
  330. export declare const $ZodBase64URL: core.$constructor<$ZodBase64URL>;
  331. export interface $ZodE164Def extends $ZodStringFormatDef<"e164"> {
  332. }
  333. export interface $ZodE164Internals extends $ZodStringFormatInternals<"e164"> {
  334. }
  335. export interface $ZodE164 extends $ZodType {
  336. _zod: $ZodE164Internals;
  337. }
  338. export declare const $ZodE164: core.$constructor<$ZodE164>;
  339. export declare function isValidJWT(token: string, algorithm?: util.JWTAlgorithm | null): boolean;
  340. export interface $ZodJWTDef extends $ZodStringFormatDef<"jwt"> {
  341. alg?: util.JWTAlgorithm | undefined;
  342. }
  343. export interface $ZodJWTInternals extends $ZodStringFormatInternals<"jwt"> {
  344. def: $ZodJWTDef;
  345. }
  346. export interface $ZodJWT extends $ZodType {
  347. _zod: $ZodJWTInternals;
  348. }
  349. export declare const $ZodJWT: core.$constructor<$ZodJWT>;
  350. export interface $ZodCustomStringFormatDef<Format extends string = string> extends $ZodStringFormatDef<Format> {
  351. fn: (val: string) => unknown;
  352. }
  353. export interface $ZodCustomStringFormatInternals<Format extends string = string> extends $ZodStringFormatInternals<Format> {
  354. def: $ZodCustomStringFormatDef<Format>;
  355. }
  356. export interface $ZodCustomStringFormat<Format extends string = string> extends $ZodStringFormat<Format> {
  357. _zod: $ZodCustomStringFormatInternals<Format>;
  358. }
  359. export declare const $ZodCustomStringFormat: core.$constructor<$ZodCustomStringFormat>;
  360. export interface $ZodNumberDef extends $ZodTypeDef {
  361. type: "number";
  362. coerce?: boolean;
  363. }
  364. export interface $ZodNumberInternals<Input = unknown> extends $ZodTypeInternals<number, Input> {
  365. def: $ZodNumberDef;
  366. /** @deprecated Internal API, use with caution (not deprecated) */
  367. pattern: RegExp;
  368. /** @deprecated Internal API, use with caution (not deprecated) */
  369. isst: errors.$ZodIssueInvalidType;
  370. bag: util.LoosePartial<{
  371. minimum: number;
  372. maximum: number;
  373. exclusiveMinimum: number;
  374. exclusiveMaximum: number;
  375. format: string;
  376. pattern: RegExp;
  377. }>;
  378. }
  379. export interface $ZodNumber<Input = unknown> extends $ZodType {
  380. _zod: $ZodNumberInternals<Input>;
  381. }
  382. export declare const $ZodNumber: core.$constructor<$ZodNumber>;
  383. export interface $ZodNumberFormatDef extends $ZodNumberDef, checks.$ZodCheckNumberFormatDef {
  384. }
  385. export interface $ZodNumberFormatInternals extends $ZodNumberInternals<number>, checks.$ZodCheckNumberFormatInternals {
  386. def: $ZodNumberFormatDef;
  387. isst: errors.$ZodIssueInvalidType;
  388. }
  389. export interface $ZodNumberFormat extends $ZodType {
  390. _zod: $ZodNumberFormatInternals;
  391. }
  392. export declare const $ZodNumberFormat: core.$constructor<$ZodNumberFormat>;
  393. export interface $ZodBooleanDef extends $ZodTypeDef {
  394. type: "boolean";
  395. coerce?: boolean;
  396. checks?: checks.$ZodCheck<boolean>[];
  397. }
  398. export interface $ZodBooleanInternals<T = unknown> extends $ZodTypeInternals<boolean, T> {
  399. pattern: RegExp;
  400. def: $ZodBooleanDef;
  401. isst: errors.$ZodIssueInvalidType;
  402. }
  403. export interface $ZodBoolean<T = unknown> extends $ZodType {
  404. _zod: $ZodBooleanInternals<T>;
  405. }
  406. export declare const $ZodBoolean: core.$constructor<$ZodBoolean>;
  407. export interface $ZodBigIntDef extends $ZodTypeDef {
  408. type: "bigint";
  409. coerce?: boolean;
  410. }
  411. export interface $ZodBigIntInternals<T = unknown> extends $ZodTypeInternals<bigint, T> {
  412. pattern: RegExp;
  413. /** @internal Internal API, use with caution */
  414. def: $ZodBigIntDef;
  415. isst: errors.$ZodIssueInvalidType;
  416. bag: util.LoosePartial<{
  417. minimum: bigint;
  418. maximum: bigint;
  419. format: string;
  420. }>;
  421. }
  422. export interface $ZodBigInt<T = unknown> extends $ZodType {
  423. _zod: $ZodBigIntInternals<T>;
  424. }
  425. export declare const $ZodBigInt: core.$constructor<$ZodBigInt>;
  426. export interface $ZodBigIntFormatDef extends $ZodBigIntDef, checks.$ZodCheckBigIntFormatDef {
  427. check: "bigint_format";
  428. }
  429. export interface $ZodBigIntFormatInternals extends $ZodBigIntInternals<bigint>, checks.$ZodCheckBigIntFormatInternals {
  430. def: $ZodBigIntFormatDef;
  431. }
  432. export interface $ZodBigIntFormat extends $ZodType {
  433. _zod: $ZodBigIntFormatInternals;
  434. }
  435. export declare const $ZodBigIntFormat: core.$constructor<$ZodBigIntFormat>;
  436. export interface $ZodSymbolDef extends $ZodTypeDef {
  437. type: "symbol";
  438. }
  439. export interface $ZodSymbolInternals extends $ZodTypeInternals<symbol, symbol> {
  440. def: $ZodSymbolDef;
  441. isst: errors.$ZodIssueInvalidType;
  442. }
  443. export interface $ZodSymbol extends $ZodType {
  444. _zod: $ZodSymbolInternals;
  445. }
  446. export declare const $ZodSymbol: core.$constructor<$ZodSymbol>;
  447. export interface $ZodUndefinedDef extends $ZodTypeDef {
  448. type: "undefined";
  449. }
  450. export interface $ZodUndefinedInternals extends $ZodTypeInternals<undefined, undefined> {
  451. pattern: RegExp;
  452. def: $ZodUndefinedDef;
  453. values: util.PrimitiveSet;
  454. isst: errors.$ZodIssueInvalidType;
  455. }
  456. export interface $ZodUndefined extends $ZodType {
  457. _zod: $ZodUndefinedInternals;
  458. }
  459. export declare const $ZodUndefined: core.$constructor<$ZodUndefined>;
  460. export interface $ZodNullDef extends $ZodTypeDef {
  461. type: "null";
  462. }
  463. export interface $ZodNullInternals extends $ZodTypeInternals<null, null> {
  464. pattern: RegExp;
  465. def: $ZodNullDef;
  466. values: util.PrimitiveSet;
  467. isst: errors.$ZodIssueInvalidType;
  468. }
  469. export interface $ZodNull extends $ZodType {
  470. _zod: $ZodNullInternals;
  471. }
  472. export declare const $ZodNull: core.$constructor<$ZodNull>;
  473. export interface $ZodAnyDef extends $ZodTypeDef {
  474. type: "any";
  475. }
  476. export interface $ZodAnyInternals extends $ZodTypeInternals<any, any> {
  477. def: $ZodAnyDef;
  478. isst: never;
  479. }
  480. export interface $ZodAny extends $ZodType {
  481. _zod: $ZodAnyInternals;
  482. }
  483. export declare const $ZodAny: core.$constructor<$ZodAny>;
  484. export interface $ZodUnknownDef extends $ZodTypeDef {
  485. type: "unknown";
  486. }
  487. export interface $ZodUnknownInternals extends $ZodTypeInternals<unknown, unknown> {
  488. def: $ZodUnknownDef;
  489. isst: never;
  490. }
  491. export interface $ZodUnknown extends $ZodType {
  492. _zod: $ZodUnknownInternals;
  493. }
  494. export declare const $ZodUnknown: core.$constructor<$ZodUnknown>;
  495. export interface $ZodNeverDef extends $ZodTypeDef {
  496. type: "never";
  497. }
  498. export interface $ZodNeverInternals extends $ZodTypeInternals<never, never> {
  499. def: $ZodNeverDef;
  500. isst: errors.$ZodIssueInvalidType;
  501. }
  502. export interface $ZodNever extends $ZodType {
  503. _zod: $ZodNeverInternals;
  504. }
  505. export declare const $ZodNever: core.$constructor<$ZodNever>;
  506. export interface $ZodVoidDef extends $ZodTypeDef {
  507. type: "void";
  508. }
  509. export interface $ZodVoidInternals extends $ZodTypeInternals<void, void> {
  510. def: $ZodVoidDef;
  511. isst: errors.$ZodIssueInvalidType;
  512. }
  513. export interface $ZodVoid extends $ZodType {
  514. _zod: $ZodVoidInternals;
  515. }
  516. export declare const $ZodVoid: core.$constructor<$ZodVoid>;
  517. export interface $ZodDateDef extends $ZodTypeDef {
  518. type: "date";
  519. coerce?: boolean;
  520. }
  521. export interface $ZodDateInternals<T = unknown> extends $ZodTypeInternals<Date, T> {
  522. def: $ZodDateDef;
  523. isst: errors.$ZodIssueInvalidType;
  524. bag: util.LoosePartial<{
  525. minimum: Date;
  526. maximum: Date;
  527. format: string;
  528. }>;
  529. }
  530. export interface $ZodDate<T = unknown> extends $ZodType {
  531. _zod: $ZodDateInternals<T>;
  532. }
  533. export declare const $ZodDate: core.$constructor<$ZodDate>;
  534. export interface $ZodArrayDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  535. type: "array";
  536. element: T;
  537. }
  538. export interface $ZodArrayInternals<T extends SomeType = $ZodType> extends _$ZodTypeInternals {
  539. def: $ZodArrayDef<T>;
  540. isst: errors.$ZodIssueInvalidType;
  541. output: core.output<T>[];
  542. input: core.input<T>[];
  543. }
  544. export interface $ZodArray<T extends SomeType = $ZodType> extends $ZodType<any, any, $ZodArrayInternals<T>> {
  545. }
  546. export declare const $ZodArray: core.$constructor<$ZodArray>;
  547. type OptionalOutSchema = {
  548. _zod: {
  549. optout: "optional";
  550. };
  551. };
  552. type OptionalInSchema = {
  553. _zod: {
  554. optin: "optional";
  555. };
  556. };
  557. export type $InferObjectOutput<T extends $ZodLooseShape, Extra extends Record<string, unknown>> = string extends keyof T ? util.IsAny<T[keyof T]> extends true ? Record<string, unknown> : Record<string, core.output<T[keyof T]>> : keyof (T & Extra) extends never ? Record<string, never> : util.Prettify<{
  558. -readonly [k in keyof T as T[k] extends OptionalOutSchema ? never : k]: T[k]["_zod"]["output"];
  559. } & {
  560. -readonly [k in keyof T as T[k] extends OptionalOutSchema ? k : never]?: T[k]["_zod"]["output"];
  561. } & Extra>;
  562. export type $InferObjectInput<T extends $ZodLooseShape, Extra extends Record<string, unknown>> = string extends keyof T ? util.IsAny<T[keyof T]> extends true ? Record<string, unknown> : Record<string, core.input<T[keyof T]>> : keyof (T & Extra) extends never ? Record<string, never> : util.Prettify<{
  563. -readonly [k in keyof T as T[k] extends OptionalInSchema ? never : k]: T[k]["_zod"]["input"];
  564. } & {
  565. -readonly [k in keyof T as T[k] extends OptionalInSchema ? k : never]?: T[k]["_zod"]["input"];
  566. } & Extra>;
  567. export type $ZodObjectConfig = {
  568. out: Record<string, unknown>;
  569. in: Record<string, unknown>;
  570. };
  571. export type $loose = {
  572. out: Record<string, unknown>;
  573. in: Record<string, unknown>;
  574. };
  575. export type $strict = {
  576. out: {};
  577. in: {};
  578. };
  579. export type $strip = {
  580. out: {};
  581. in: {};
  582. };
  583. export type $catchall<T extends SomeType> = {
  584. out: {
  585. [k: string]: core.output<T>;
  586. };
  587. in: {
  588. [k: string]: core.input<T>;
  589. };
  590. };
  591. export type $ZodShape = Readonly<{
  592. [k: string]: $ZodType;
  593. }>;
  594. export interface $ZodObjectDef<Shape extends $ZodShape = $ZodShape> extends $ZodTypeDef {
  595. type: "object";
  596. shape: Shape;
  597. catchall?: $ZodType | undefined;
  598. }
  599. export interface $ZodObjectInternals<
  600. /** @ts-ignore Cast variance */
  601. out Shape extends $ZodShape = $ZodShape, out Config extends $ZodObjectConfig = $ZodObjectConfig> extends _$ZodTypeInternals {
  602. def: $ZodObjectDef<Shape>;
  603. config: Config;
  604. isst: errors.$ZodIssueInvalidType | errors.$ZodIssueUnrecognizedKeys;
  605. propValues: util.PropValues;
  606. output: $InferObjectOutput<Shape, Config["out"]>;
  607. input: $InferObjectInput<Shape, Config["in"]>;
  608. optin?: "optional" | undefined;
  609. optout?: "optional" | undefined;
  610. }
  611. export type $ZodLooseShape = Record<string, any>;
  612. export interface $ZodObject<
  613. /** @ts-ignore Cast variance */
  614. out Shape extends Readonly<$ZodShape> = Readonly<$ZodShape>, out Params extends $ZodObjectConfig = $ZodObjectConfig> extends $ZodType<any, any, $ZodObjectInternals<Shape, Params>> {
  615. }
  616. export declare const $ZodObject: core.$constructor<$ZodObject>;
  617. export declare const $ZodObjectJIT: core.$constructor<$ZodObject>;
  618. export type $InferUnionOutput<T extends SomeType> = T extends any ? core.output<T> : never;
  619. export type $InferUnionInput<T extends SomeType> = T extends any ? core.input<T> : never;
  620. export interface $ZodUnionDef<Options extends readonly SomeType[] = readonly $ZodType[]> extends $ZodTypeDef {
  621. type: "union";
  622. options: Options;
  623. inclusive?: boolean;
  624. }
  625. type IsOptionalIn<T extends SomeType> = T extends OptionalInSchema ? true : false;
  626. type IsOptionalOut<T extends SomeType> = T extends OptionalOutSchema ? true : false;
  627. export interface $ZodUnionInternals<T extends readonly SomeType[] = readonly $ZodType[]> extends _$ZodTypeInternals {
  628. def: $ZodUnionDef<T>;
  629. isst: errors.$ZodIssueInvalidUnion;
  630. pattern: T[number]["_zod"]["pattern"];
  631. values: T[number]["_zod"]["values"];
  632. output: $InferUnionOutput<T[number]>;
  633. input: $InferUnionInput<T[number]>;
  634. optin: IsOptionalIn<T[number]> extends false ? "optional" | undefined : "optional";
  635. optout: IsOptionalOut<T[number]> extends false ? "optional" | undefined : "optional";
  636. }
  637. export interface $ZodUnion<T extends readonly SomeType[] = readonly $ZodType[]> extends $ZodType<any, any, $ZodUnionInternals<T>> {
  638. _zod: $ZodUnionInternals<T>;
  639. }
  640. export declare const $ZodUnion: core.$constructor<$ZodUnion>;
  641. export interface $ZodXorInternals<T extends readonly SomeType[] = readonly $ZodType[]> extends $ZodUnionInternals<T> {
  642. }
  643. export interface $ZodXor<T extends readonly SomeType[] = readonly $ZodType[]> extends $ZodType<any, any, $ZodXorInternals<T>> {
  644. _zod: $ZodXorInternals<T>;
  645. }
  646. export declare const $ZodXor: core.$constructor<$ZodXor>;
  647. export interface $ZodDiscriminatedUnionDef<Options extends readonly SomeType[] = readonly $ZodType[], Disc extends string = string> extends $ZodUnionDef<Options> {
  648. discriminator: Disc;
  649. unionFallback?: boolean;
  650. }
  651. export interface $ZodDiscriminatedUnionInternals<Options extends readonly SomeType[] = readonly $ZodType[], Disc extends string = string> extends $ZodUnionInternals<Options> {
  652. def: $ZodDiscriminatedUnionDef<Options, Disc>;
  653. propValues: util.PropValues;
  654. }
  655. export interface $ZodDiscriminatedUnion<Options extends readonly SomeType[] = readonly $ZodType[], Disc extends string = string> extends $ZodType {
  656. _zod: $ZodDiscriminatedUnionInternals<Options, Disc>;
  657. }
  658. export declare const $ZodDiscriminatedUnion: core.$constructor<$ZodDiscriminatedUnion>;
  659. export interface $ZodIntersectionDef<Left extends SomeType = $ZodType, Right extends SomeType = $ZodType> extends $ZodTypeDef {
  660. type: "intersection";
  661. left: Left;
  662. right: Right;
  663. }
  664. export interface $ZodIntersectionInternals<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends _$ZodTypeInternals {
  665. def: $ZodIntersectionDef<A, B>;
  666. isst: never;
  667. optin: A["_zod"]["optin"] | B["_zod"]["optin"];
  668. optout: A["_zod"]["optout"] | B["_zod"]["optout"];
  669. output: core.output<A> & core.output<B>;
  670. input: core.input<A> & core.input<B>;
  671. }
  672. export interface $ZodIntersection<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodType {
  673. _zod: $ZodIntersectionInternals<A, B>;
  674. }
  675. export declare const $ZodIntersection: core.$constructor<$ZodIntersection>;
  676. export interface $ZodTupleDef<T extends util.TupleItems = readonly $ZodType[], Rest extends SomeType | null = $ZodType | null> extends $ZodTypeDef {
  677. type: "tuple";
  678. items: T;
  679. rest: Rest;
  680. }
  681. export type $InferTupleInputType<T extends util.TupleItems, Rest extends SomeType | null> = [
  682. ...TupleInputTypeWithOptionals<T>,
  683. ...(Rest extends SomeType ? core.input<Rest>[] : [])
  684. ];
  685. type TupleInputTypeNoOptionals<T extends util.TupleItems> = {
  686. [k in keyof T]: core.input<T[k]>;
  687. };
  688. type TupleInputTypeWithOptionals<T extends util.TupleItems> = T extends readonly [
  689. ...infer Prefix extends SomeType[],
  690. infer Tail extends SomeType
  691. ] ? Tail["_zod"]["optin"] extends "optional" ? [...TupleInputTypeWithOptionals<Prefix>, core.input<Tail>?] : TupleInputTypeNoOptionals<T> : [];
  692. export type $InferTupleOutputType<T extends util.TupleItems, Rest extends SomeType | null> = [
  693. ...TupleOutputTypeWithOptionals<T>,
  694. ...(Rest extends SomeType ? core.output<Rest>[] : [])
  695. ];
  696. type TupleOutputTypeNoOptionals<T extends util.TupleItems> = {
  697. [k in keyof T]: core.output<T[k]>;
  698. };
  699. type TupleOutputTypeWithOptionals<T extends util.TupleItems> = T extends readonly [
  700. ...infer Prefix extends SomeType[],
  701. infer Tail extends SomeType
  702. ] ? Tail["_zod"]["optout"] extends "optional" ? [...TupleOutputTypeWithOptionals<Prefix>, core.output<Tail>?] : TupleOutputTypeNoOptionals<T> : [];
  703. export interface $ZodTupleInternals<T extends util.TupleItems = readonly $ZodType[], Rest extends SomeType | null = $ZodType | null> extends _$ZodTypeInternals {
  704. def: $ZodTupleDef<T, Rest>;
  705. isst: errors.$ZodIssueInvalidType | errors.$ZodIssueTooBig<unknown[]> | errors.$ZodIssueTooSmall<unknown[]>;
  706. output: $InferTupleOutputType<T, Rest>;
  707. input: $InferTupleInputType<T, Rest>;
  708. }
  709. export interface $ZodTuple<T extends util.TupleItems = readonly $ZodType[], Rest extends SomeType | null = $ZodType | null> extends $ZodType {
  710. _zod: $ZodTupleInternals<T, Rest>;
  711. }
  712. export declare const $ZodTuple: core.$constructor<$ZodTuple>;
  713. export type $ZodRecordKey = $ZodType<string | number | symbol, unknown>;
  714. export interface $ZodRecordDef<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType> extends $ZodTypeDef {
  715. type: "record";
  716. keyType: Key;
  717. valueType: Value;
  718. /** @default "strict" - errors on keys not matching keyType. "loose" passes through non-matching keys unchanged. */
  719. mode?: "strict" | "loose";
  720. }
  721. export type $InferZodRecordOutput<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType> = Key extends $partial ? Partial<Record<core.output<Key>, core.output<Value>>> : Record<core.output<Key>, core.output<Value>>;
  722. export type $InferZodRecordInput<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType> = Key extends $partial ? Partial<Record<core.input<Key> & PropertyKey, core.input<Value>>> : Record<core.input<Key> & PropertyKey, core.input<Value>>;
  723. export interface $ZodRecordInternals<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType> extends $ZodTypeInternals<$InferZodRecordOutput<Key, Value>, $InferZodRecordInput<Key, Value>> {
  724. def: $ZodRecordDef<Key, Value>;
  725. isst: errors.$ZodIssueInvalidType | errors.$ZodIssueInvalidKey<Record<PropertyKey, unknown>>;
  726. optin?: "optional" | undefined;
  727. optout?: "optional" | undefined;
  728. }
  729. export type $partial = {
  730. "~~partial": true;
  731. };
  732. export interface $ZodRecord<Key extends $ZodRecordKey = $ZodRecordKey, Value extends SomeType = $ZodType> extends $ZodType {
  733. _zod: $ZodRecordInternals<Key, Value>;
  734. }
  735. export declare const $ZodRecord: core.$constructor<$ZodRecord>;
  736. export interface $ZodMapDef<Key extends SomeType = $ZodType, Value extends SomeType = $ZodType> extends $ZodTypeDef {
  737. type: "map";
  738. keyType: Key;
  739. valueType: Value;
  740. }
  741. export interface $ZodMapInternals<Key extends SomeType = $ZodType, Value extends SomeType = $ZodType> extends $ZodTypeInternals<Map<core.output<Key>, core.output<Value>>, Map<core.input<Key>, core.input<Value>>> {
  742. def: $ZodMapDef<Key, Value>;
  743. isst: errors.$ZodIssueInvalidType | errors.$ZodIssueInvalidKey | errors.$ZodIssueInvalidElement<unknown>;
  744. optin?: "optional" | undefined;
  745. optout?: "optional" | undefined;
  746. }
  747. export interface $ZodMap<Key extends SomeType = $ZodType, Value extends SomeType = $ZodType> extends $ZodType {
  748. _zod: $ZodMapInternals<Key, Value>;
  749. }
  750. export declare const $ZodMap: core.$constructor<$ZodMap>;
  751. export interface $ZodSetDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  752. type: "set";
  753. valueType: T;
  754. }
  755. export interface $ZodSetInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<Set<core.output<T>>, Set<core.input<T>>> {
  756. def: $ZodSetDef<T>;
  757. isst: errors.$ZodIssueInvalidType;
  758. optin?: "optional" | undefined;
  759. optout?: "optional" | undefined;
  760. }
  761. export interface $ZodSet<T extends SomeType = $ZodType> extends $ZodType {
  762. _zod: $ZodSetInternals<T>;
  763. }
  764. export declare const $ZodSet: core.$constructor<$ZodSet>;
  765. export type $InferEnumOutput<T extends util.EnumLike> = T[keyof T] & {};
  766. export type $InferEnumInput<T extends util.EnumLike> = T[keyof T] & {};
  767. export interface $ZodEnumDef<T extends util.EnumLike = util.EnumLike> extends $ZodTypeDef {
  768. type: "enum";
  769. entries: T;
  770. }
  771. export interface $ZodEnumInternals<
  772. /** @ts-ignore Cast variance */
  773. out T extends util.EnumLike = util.EnumLike> extends $ZodTypeInternals<$InferEnumOutput<T>, $InferEnumInput<T>> {
  774. def: $ZodEnumDef<T>;
  775. /** @deprecated Internal API, use with caution (not deprecated) */
  776. values: util.PrimitiveSet;
  777. /** @deprecated Internal API, use with caution (not deprecated) */
  778. pattern: RegExp;
  779. isst: errors.$ZodIssueInvalidValue;
  780. }
  781. export interface $ZodEnum<T extends util.EnumLike = util.EnumLike> extends $ZodType {
  782. _zod: $ZodEnumInternals<T>;
  783. }
  784. export declare const $ZodEnum: core.$constructor<$ZodEnum>;
  785. export interface $ZodLiteralDef<T extends util.Literal> extends $ZodTypeDef {
  786. type: "literal";
  787. values: T[];
  788. }
  789. export interface $ZodLiteralInternals<T extends util.Literal = util.Literal> extends $ZodTypeInternals<T, T> {
  790. def: $ZodLiteralDef<T>;
  791. values: Set<T>;
  792. pattern: RegExp;
  793. isst: errors.$ZodIssueInvalidValue;
  794. }
  795. export interface $ZodLiteral<T extends util.Literal = util.Literal> extends $ZodType {
  796. _zod: $ZodLiteralInternals<T>;
  797. }
  798. export declare const $ZodLiteral: core.$constructor<$ZodLiteral>;
  799. type _File = typeof globalThis extends {
  800. File: infer F extends new (...args: any[]) => any;
  801. } ? InstanceType<F> : {};
  802. /** Do not reference this directly. */
  803. export interface File extends _File {
  804. readonly type: string;
  805. readonly size: number;
  806. }
  807. export interface $ZodFileDef extends $ZodTypeDef {
  808. type: "file";
  809. }
  810. export interface $ZodFileInternals extends $ZodTypeInternals<File, File> {
  811. def: $ZodFileDef;
  812. isst: errors.$ZodIssueInvalidType;
  813. bag: util.LoosePartial<{
  814. minimum: number;
  815. maximum: number;
  816. mime: util.MimeTypes[];
  817. }>;
  818. }
  819. export interface $ZodFile extends $ZodType {
  820. _zod: $ZodFileInternals;
  821. }
  822. export declare const $ZodFile: core.$constructor<$ZodFile>;
  823. export interface $ZodTransformDef extends $ZodTypeDef {
  824. type: "transform";
  825. transform: (input: unknown, payload: ParsePayload<unknown>) => util.MaybeAsync<unknown>;
  826. }
  827. export interface $ZodTransformInternals<O = unknown, I = unknown> extends $ZodTypeInternals<O, I> {
  828. def: $ZodTransformDef;
  829. isst: never;
  830. }
  831. export interface $ZodTransform<O = unknown, I = unknown> extends $ZodType {
  832. _zod: $ZodTransformInternals<O, I>;
  833. }
  834. export declare const $ZodTransform: core.$constructor<$ZodTransform>;
  835. export interface $ZodOptionalDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  836. type: "optional";
  837. innerType: T;
  838. }
  839. export interface $ZodOptionalInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<core.output<T> | undefined, core.input<T> | undefined> {
  840. def: $ZodOptionalDef<T>;
  841. optin: "optional";
  842. optout: "optional";
  843. isst: never;
  844. values: T["_zod"]["values"];
  845. pattern: T["_zod"]["pattern"];
  846. }
  847. export interface $ZodOptional<T extends SomeType = $ZodType> extends $ZodType {
  848. _zod: $ZodOptionalInternals<T>;
  849. }
  850. export declare const $ZodOptional: core.$constructor<$ZodOptional>;
  851. export interface $ZodExactOptionalDef<T extends SomeType = $ZodType> extends $ZodOptionalDef<T> {
  852. }
  853. export interface $ZodExactOptionalInternals<T extends SomeType = $ZodType> extends $ZodOptionalInternals<T> {
  854. def: $ZodExactOptionalDef<T>;
  855. output: core.output<T>;
  856. input: core.input<T>;
  857. }
  858. export interface $ZodExactOptional<T extends SomeType = $ZodType> extends $ZodType {
  859. _zod: $ZodExactOptionalInternals<T>;
  860. }
  861. export declare const $ZodExactOptional: core.$constructor<$ZodExactOptional>;
  862. export interface $ZodNullableDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  863. type: "nullable";
  864. innerType: T;
  865. }
  866. export interface $ZodNullableInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<core.output<T> | null, core.input<T> | null> {
  867. def: $ZodNullableDef<T>;
  868. optin: T["_zod"]["optin"];
  869. optout: T["_zod"]["optout"];
  870. isst: never;
  871. values: T["_zod"]["values"];
  872. pattern: T["_zod"]["pattern"];
  873. }
  874. export interface $ZodNullable<T extends SomeType = $ZodType> extends $ZodType {
  875. _zod: $ZodNullableInternals<T>;
  876. }
  877. export declare const $ZodNullable: core.$constructor<$ZodNullable>;
  878. export interface $ZodDefaultDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  879. type: "default";
  880. innerType: T;
  881. /** The default value. May be a getter. */
  882. defaultValue: util.NoUndefined<core.output<T>>;
  883. }
  884. export interface $ZodDefaultInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<util.NoUndefined<core.output<T>>, core.input<T> | undefined> {
  885. def: $ZodDefaultDef<T>;
  886. optin: "optional";
  887. optout?: "optional" | undefined;
  888. isst: never;
  889. values: T["_zod"]["values"];
  890. }
  891. export interface $ZodDefault<T extends SomeType = $ZodType> extends $ZodType {
  892. _zod: $ZodDefaultInternals<T>;
  893. }
  894. export declare const $ZodDefault: core.$constructor<$ZodDefault>;
  895. export interface $ZodPrefaultDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  896. type: "prefault";
  897. innerType: T;
  898. /** The default value. May be a getter. */
  899. defaultValue: core.input<T>;
  900. }
  901. export interface $ZodPrefaultInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<util.NoUndefined<core.output<T>>, core.input<T> | undefined> {
  902. def: $ZodPrefaultDef<T>;
  903. optin: "optional";
  904. optout?: "optional" | undefined;
  905. isst: never;
  906. values: T["_zod"]["values"];
  907. }
  908. export interface $ZodPrefault<T extends SomeType = $ZodType> extends $ZodType {
  909. _zod: $ZodPrefaultInternals<T>;
  910. }
  911. export declare const $ZodPrefault: core.$constructor<$ZodPrefault>;
  912. export interface $ZodNonOptionalDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  913. type: "nonoptional";
  914. innerType: T;
  915. }
  916. export interface $ZodNonOptionalInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<util.NoUndefined<core.output<T>>, util.NoUndefined<core.input<T>>> {
  917. def: $ZodNonOptionalDef<T>;
  918. isst: errors.$ZodIssueInvalidType;
  919. values: T["_zod"]["values"];
  920. optin: "optional" | undefined;
  921. optout: "optional" | undefined;
  922. }
  923. export interface $ZodNonOptional<T extends SomeType = $ZodType> extends $ZodType {
  924. _zod: $ZodNonOptionalInternals<T>;
  925. }
  926. export declare const $ZodNonOptional: core.$constructor<$ZodNonOptional>;
  927. export interface $ZodSuccessDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  928. type: "success";
  929. innerType: T;
  930. }
  931. export interface $ZodSuccessInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<boolean, core.input<T>> {
  932. def: $ZodSuccessDef<T>;
  933. isst: never;
  934. optin: T["_zod"]["optin"];
  935. optout: "optional" | undefined;
  936. }
  937. export interface $ZodSuccess<T extends SomeType = $ZodType> extends $ZodType {
  938. _zod: $ZodSuccessInternals<T>;
  939. }
  940. export declare const $ZodSuccess: core.$constructor<$ZodSuccess>;
  941. export interface $ZodCatchCtx extends ParsePayload {
  942. /** @deprecated Use `ctx.issues` */
  943. error: {
  944. issues: errors.$ZodIssue[];
  945. };
  946. /** @deprecated Use `ctx.value` */
  947. input: unknown;
  948. }
  949. export interface $ZodCatchDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  950. type: "catch";
  951. innerType: T;
  952. catchValue: (ctx: $ZodCatchCtx) => unknown;
  953. }
  954. export interface $ZodCatchInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<core.output<T>, core.input<T>> {
  955. def: $ZodCatchDef<T>;
  956. optin: T["_zod"]["optin"];
  957. optout: T["_zod"]["optout"];
  958. isst: never;
  959. values: T["_zod"]["values"];
  960. }
  961. export interface $ZodCatch<T extends SomeType = $ZodType> extends $ZodType {
  962. _zod: $ZodCatchInternals<T>;
  963. }
  964. export declare const $ZodCatch: core.$constructor<$ZodCatch>;
  965. export interface $ZodNaNDef extends $ZodTypeDef {
  966. type: "nan";
  967. }
  968. export interface $ZodNaNInternals extends $ZodTypeInternals<number, number> {
  969. def: $ZodNaNDef;
  970. isst: errors.$ZodIssueInvalidType;
  971. }
  972. export interface $ZodNaN extends $ZodType {
  973. _zod: $ZodNaNInternals;
  974. }
  975. export declare const $ZodNaN: core.$constructor<$ZodNaN>;
  976. export interface $ZodPipeDef<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodTypeDef {
  977. type: "pipe";
  978. in: A;
  979. out: B;
  980. /** Only defined inside $ZodCodec instances. */
  981. transform?: (value: core.output<A>, payload: ParsePayload<core.output<A>>) => util.MaybeAsync<core.input<B>>;
  982. /** Only defined inside $ZodCodec instances. */
  983. reverseTransform?: (value: core.input<B>, payload: ParsePayload<core.input<B>>) => util.MaybeAsync<core.output<A>>;
  984. }
  985. export interface $ZodPipeInternals<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodTypeInternals<core.output<B>, core.input<A>> {
  986. def: $ZodPipeDef<A, B>;
  987. isst: never;
  988. values: A["_zod"]["values"];
  989. optin: A["_zod"]["optin"];
  990. optout: B["_zod"]["optout"];
  991. propValues: A["_zod"]["propValues"];
  992. }
  993. export interface $ZodPipe<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodType {
  994. _zod: $ZodPipeInternals<A, B>;
  995. }
  996. export declare const $ZodPipe: core.$constructor<$ZodPipe>;
  997. export interface $ZodCodecDef<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodPipeDef<A, B> {
  998. transform: (value: core.output<A>, payload: ParsePayload<core.output<A>>) => util.MaybeAsync<core.input<B>>;
  999. reverseTransform: (value: core.input<B>, payload: ParsePayload<core.input<B>>) => util.MaybeAsync<core.output<A>>;
  1000. }
  1001. export interface $ZodCodecInternals<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodTypeInternals<core.output<B>, core.input<A>> {
  1002. def: $ZodCodecDef<A, B>;
  1003. isst: never;
  1004. values: A["_zod"]["values"];
  1005. optin: A["_zod"]["optin"];
  1006. optout: B["_zod"]["optout"];
  1007. propValues: A["_zod"]["propValues"];
  1008. }
  1009. export interface $ZodCodec<A extends SomeType = $ZodType, B extends SomeType = $ZodType> extends $ZodType {
  1010. _zod: $ZodCodecInternals<A, B>;
  1011. }
  1012. export declare const $ZodCodec: core.$constructor<$ZodCodec>;
  1013. export interface $ZodReadonlyDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  1014. type: "readonly";
  1015. innerType: T;
  1016. }
  1017. export interface $ZodReadonlyInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<util.MakeReadonly<core.output<T>>, util.MakeReadonly<core.input<T>>> {
  1018. def: $ZodReadonlyDef<T>;
  1019. optin: T["_zod"]["optin"];
  1020. optout: T["_zod"]["optout"];
  1021. isst: never;
  1022. propValues: T["_zod"]["propValues"];
  1023. values: T["_zod"]["values"];
  1024. }
  1025. export interface $ZodReadonly<T extends SomeType = $ZodType> extends $ZodType {
  1026. _zod: $ZodReadonlyInternals<T>;
  1027. }
  1028. export declare const $ZodReadonly: core.$constructor<$ZodReadonly>;
  1029. export interface $ZodTemplateLiteralDef extends $ZodTypeDef {
  1030. type: "template_literal";
  1031. parts: $ZodTemplateLiteralPart[];
  1032. format?: string | undefined;
  1033. }
  1034. export interface $ZodTemplateLiteralInternals<Template extends string = string> extends $ZodTypeInternals<Template, Template> {
  1035. pattern: RegExp;
  1036. def: $ZodTemplateLiteralDef;
  1037. isst: errors.$ZodIssueInvalidType;
  1038. }
  1039. export interface $ZodTemplateLiteral<Template extends string = string> extends $ZodType {
  1040. _zod: $ZodTemplateLiteralInternals<Template>;
  1041. }
  1042. type LiteralPart = Exclude<util.Literal, symbol>;
  1043. interface SchemaPartInternals extends $ZodTypeInternals<LiteralPart, LiteralPart> {
  1044. pattern: RegExp;
  1045. }
  1046. interface SchemaPart extends $ZodType {
  1047. _zod: SchemaPartInternals;
  1048. }
  1049. export type $ZodTemplateLiteralPart = LiteralPart | SchemaPart;
  1050. type UndefinedToEmptyString<T> = T extends undefined ? "" : T;
  1051. type AppendToTemplateLiteral<Template extends string, Suffix extends LiteralPart | $ZodType> = Suffix extends LiteralPart ? `${Template}${UndefinedToEmptyString<Suffix>}` : Suffix extends $ZodType ? `${Template}${core.output<Suffix> extends infer T extends LiteralPart ? UndefinedToEmptyString<T> : never}` : never;
  1052. export type ConcatenateTupleOfStrings<T extends string[]> = T extends [
  1053. infer First extends string,
  1054. ...infer Rest extends string[]
  1055. ] ? Rest extends string[] ? First extends "" ? ConcatenateTupleOfStrings<Rest> : `${First}${ConcatenateTupleOfStrings<Rest>}` : never : "";
  1056. export type ConvertPartsToStringTuple<Parts extends $ZodTemplateLiteralPart[]> = {
  1057. [K in keyof Parts]: Parts[K] extends LiteralPart ? `${UndefinedToEmptyString<Parts[K]>}` : Parts[K] extends $ZodType ? `${core.output<Parts[K]> extends infer T extends LiteralPart ? UndefinedToEmptyString<T> : never}` : never;
  1058. };
  1059. export type ToTemplateLiteral<Parts extends $ZodTemplateLiteralPart[]> = ConcatenateTupleOfStrings<ConvertPartsToStringTuple<Parts>>;
  1060. export type $PartsToTemplateLiteral<Parts extends $ZodTemplateLiteralPart[]> = [] extends Parts ? `` : Parts extends [...infer Rest, infer Last extends $ZodTemplateLiteralPart] ? Rest extends $ZodTemplateLiteralPart[] ? AppendToTemplateLiteral<$PartsToTemplateLiteral<Rest>, Last> : never : never;
  1061. export declare const $ZodTemplateLiteral: core.$constructor<$ZodTemplateLiteral>;
  1062. export type $ZodFunctionArgs = $ZodType<unknown[], unknown[]>;
  1063. export type $ZodFunctionIn = $ZodFunctionArgs;
  1064. export type $ZodFunctionOut = $ZodType;
  1065. export type $InferInnerFunctionType<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (...args: $ZodFunctionIn extends Args ? never[] : core.output<Args>) => core.input<Returns>;
  1066. export type $InferInnerFunctionTypeAsync<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (...args: $ZodFunctionIn extends Args ? never[] : core.output<Args>) => util.MaybeAsync<core.input<Returns>>;
  1067. export type $InferOuterFunctionType<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (...args: $ZodFunctionIn extends Args ? never[] : core.input<Args>) => core.output<Returns>;
  1068. export type $InferOuterFunctionTypeAsync<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> = (...args: $ZodFunctionIn extends Args ? never[] : core.input<Args>) => Promise<core.output<Returns>>;
  1069. export interface $ZodFunctionDef<In extends $ZodFunctionIn = $ZodFunctionIn, Out extends $ZodFunctionOut = $ZodFunctionOut> extends $ZodTypeDef {
  1070. type: "function";
  1071. input: In;
  1072. output: Out;
  1073. }
  1074. export interface $ZodFunctionInternals<Args extends $ZodFunctionIn, Returns extends $ZodFunctionOut> extends $ZodTypeInternals<$InferOuterFunctionType<Args, Returns>, $InferInnerFunctionType<Args, Returns>> {
  1075. def: $ZodFunctionDef<Args, Returns>;
  1076. isst: errors.$ZodIssueInvalidType;
  1077. }
  1078. export interface $ZodFunction<Args extends $ZodFunctionIn = $ZodFunctionIn, Returns extends $ZodFunctionOut = $ZodFunctionOut> extends $ZodType<any, any, $ZodFunctionInternals<Args, Returns>> {
  1079. /** @deprecated */
  1080. _def: $ZodFunctionDef<Args, Returns>;
  1081. _input: $InferInnerFunctionType<Args, Returns>;
  1082. _output: $InferOuterFunctionType<Args, Returns>;
  1083. implement<F extends $InferInnerFunctionType<Args, Returns>>(func: F): (...args: Parameters<this["_output"]>) => ReturnType<F> extends ReturnType<this["_output"]> ? ReturnType<F> : ReturnType<this["_output"]>;
  1084. implementAsync<F extends $InferInnerFunctionTypeAsync<Args, Returns>>(func: F): F extends $InferOuterFunctionTypeAsync<Args, Returns> ? F : $InferOuterFunctionTypeAsync<Args, Returns>;
  1085. input<const Items extends util.TupleItems, const Rest extends $ZodFunctionOut = $ZodFunctionOut>(args: Items, rest?: Rest): $ZodFunction<$ZodTuple<Items, Rest>, Returns>;
  1086. input<NewArgs extends $ZodFunctionIn>(args: NewArgs): $ZodFunction<NewArgs, Returns>;
  1087. input(...args: any[]): $ZodFunction<any, Returns>;
  1088. output<NewReturns extends $ZodType>(output: NewReturns): $ZodFunction<Args, NewReturns>;
  1089. }
  1090. export interface $ZodFunctionParams<I extends $ZodFunctionIn, O extends $ZodType> {
  1091. input?: I;
  1092. output?: O;
  1093. }
  1094. export declare const $ZodFunction: core.$constructor<$ZodFunction>;
  1095. export interface $ZodPromiseDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  1096. type: "promise";
  1097. innerType: T;
  1098. }
  1099. export interface $ZodPromiseInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<Promise<core.output<T>>, util.MaybeAsync<core.input<T>>> {
  1100. def: $ZodPromiseDef<T>;
  1101. isst: never;
  1102. }
  1103. export interface $ZodPromise<T extends SomeType = $ZodType> extends $ZodType {
  1104. _zod: $ZodPromiseInternals<T>;
  1105. }
  1106. export declare const $ZodPromise: core.$constructor<$ZodPromise>;
  1107. export interface $ZodLazyDef<T extends SomeType = $ZodType> extends $ZodTypeDef {
  1108. type: "lazy";
  1109. getter: () => T;
  1110. }
  1111. export interface $ZodLazyInternals<T extends SomeType = $ZodType> extends $ZodTypeInternals<core.output<T>, core.input<T>> {
  1112. def: $ZodLazyDef<T>;
  1113. isst: never;
  1114. /** Auto-cached way to retrieve the inner schema */
  1115. innerType: T;
  1116. pattern: T["_zod"]["pattern"];
  1117. propValues: T["_zod"]["propValues"];
  1118. optin: T["_zod"]["optin"];
  1119. optout: T["_zod"]["optout"];
  1120. }
  1121. export interface $ZodLazy<T extends SomeType = $ZodType> extends $ZodType {
  1122. _zod: $ZodLazyInternals<T>;
  1123. }
  1124. export declare const $ZodLazy: core.$constructor<$ZodLazy>;
  1125. export interface $ZodCustomDef<O = unknown> extends $ZodTypeDef, checks.$ZodCheckDef {
  1126. type: "custom";
  1127. check: "custom";
  1128. path?: PropertyKey[] | undefined;
  1129. error?: errors.$ZodErrorMap | undefined;
  1130. params?: Record<string, any> | undefined;
  1131. fn: (arg: O) => unknown;
  1132. }
  1133. export interface $ZodCustomInternals<O = unknown, I = unknown> extends $ZodTypeInternals<O, I>, checks.$ZodCheckInternals<O> {
  1134. def: $ZodCustomDef;
  1135. issc: errors.$ZodIssue;
  1136. isst: never;
  1137. bag: util.LoosePartial<{
  1138. Class: typeof util.Class;
  1139. }>;
  1140. }
  1141. export interface $ZodCustom<O = unknown, I = unknown> extends $ZodType {
  1142. _zod: $ZodCustomInternals<O, I>;
  1143. }
  1144. export declare const $ZodCustom: core.$constructor<$ZodCustom>;
  1145. export type $ZodTypes = $ZodString | $ZodNumber | $ZodBigInt | $ZodBoolean | $ZodDate | $ZodSymbol | $ZodUndefined | $ZodNullable | $ZodNull | $ZodAny | $ZodUnknown | $ZodNever | $ZodVoid | $ZodArray | $ZodObject | $ZodUnion | $ZodIntersection | $ZodTuple | $ZodRecord | $ZodMap | $ZodSet | $ZodLiteral | $ZodEnum | $ZodFunction | $ZodPromise | $ZodLazy | $ZodOptional | $ZodDefault | $ZodPrefault | $ZodTemplateLiteral | $ZodCustom | $ZodTransform | $ZodNonOptional | $ZodReadonly | $ZodNaN | $ZodPipe | $ZodSuccess | $ZodCatch | $ZodFile;
  1146. export type $ZodStringFormatTypes = $ZodGUID | $ZodUUID | $ZodEmail | $ZodURL | $ZodEmoji | $ZodNanoID | $ZodCUID | $ZodCUID2 | $ZodULID | $ZodXID | $ZodKSUID | $ZodISODateTime | $ZodISODate | $ZodISOTime | $ZodISODuration | $ZodIPv4 | $ZodIPv6 | $ZodMAC | $ZodCIDRv4 | $ZodCIDRv6 | $ZodBase64 | $ZodBase64URL | $ZodE164 | $ZodJWT | $ZodCustomStringFormat<"hex"> | $ZodCustomStringFormat<util.HashFormat> | $ZodCustomStringFormat<"hostname">;