Full Code of open-circle/valibot for AI

main f3f475e7711b cached
3219 files
7.0 MB
2.0M tokens
2524 symbols
1 requests
Download .txt
Showing preview only (7,986K chars total). Download the full file or copy to clipboard to get everything.
Repository: open-circle/valibot
Branch: main
Commit: f3f475e7711b
Files: 3219
Total size: 7.0 MB

Directory structure:
gitextract_iir2u9y5/

├── .agents/
│   └── skills/
│       ├── repo-source-code-document/
│       │   └── SKILL.md
│       ├── repo-source-code-review/
│       │   └── SKILL.md
│       ├── repo-structure-navigate/
│       │   └── SKILL.md
│       ├── repo-website-api-create/
│       │   └── SKILL.md
│       ├── repo-website-api-update/
│       │   └── SKILL.md
│       └── repo-website-guide-create/
│           └── SKILL.md
├── .github/
│   ├── FUNDING.yml
│   ├── actions/
│   │   └── environment/
│   │       └── action.yml
│   └── workflows/
│       ├── ci.yml
│       └── publish.yml
├── .gitignore
├── .grit/
│   ├── .gitignore
│   ├── grit.yaml
│   └── patterns/
│       └── migrate_to_v0_31_0.md
├── .prettierignore
├── AGENTS.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE.md
├── SECURITY.md
├── codemod/
│   ├── README.md
│   ├── migrate-to-v0.31.0/
│   │   ├── .codemodrc.json
│   │   ├── .gitignore
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── __testfixtures__/
│   │   │   ├── fixture1.input.ts
│   │   │   ├── fixture1.output.ts
│   │   │   ├── fixture10.input.ts
│   │   │   ├── fixture10.output.ts
│   │   │   ├── fixture11.input.ts
│   │   │   ├── fixture11.output.ts
│   │   │   ├── fixture12.input.ts
│   │   │   ├── fixture12.output.ts
│   │   │   ├── fixture13.input.ts
│   │   │   ├── fixture13.output.ts
│   │   │   ├── fixture14.input.ts
│   │   │   ├── fixture14.output.ts
│   │   │   ├── fixture15.input.ts
│   │   │   ├── fixture15.output.ts
│   │   │   ├── fixture16.input.ts
│   │   │   ├── fixture16.output.ts
│   │   │   ├── fixture17.input.ts
│   │   │   ├── fixture17.output.ts
│   │   │   ├── fixture2.input.ts
│   │   │   ├── fixture2.output.ts
│   │   │   ├── fixture3.input.ts
│   │   │   ├── fixture3.output.ts
│   │   │   ├── fixture4.input.ts
│   │   │   ├── fixture4.output.ts
│   │   │   ├── fixture5.input.ts
│   │   │   ├── fixture5.output.ts
│   │   │   ├── fixture6.input.ts
│   │   │   ├── fixture6.output.ts
│   │   │   ├── fixture7.input.ts
│   │   │   ├── fixture7.output.ts
│   │   │   ├── fixture8.input.ts
│   │   │   ├── fixture8.output.ts
│   │   │   ├── fixture9.input.ts
│   │   │   └── fixture9.output.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   └── index.ts
│   │   └── tsconfig.json
│   └── zod-to-valibot/
│       ├── .gitignore
│       ├── CHANGELOG.md
│       ├── LICENSE.md
│       ├── README.md
│       ├── __testfixtures__/
│       │   ├── any-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-element/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-nonempty/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── bigint-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-bigint-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-boolean-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-date-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-number-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-string-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── custom-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── date-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default-import-with-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default-import-with-specific-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── describe/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── discriminated-union-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── instanceof-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── intersection-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── literal-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── map-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── multiple-imports-from-zod/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── named-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── named-import-with-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── named-import-with-specific-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── namespace-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── nan-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── native-enum/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── never-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── null-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── nullable-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── nullish-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── number-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-catchall/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-deepPartial/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-extend/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-keyof/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-merge/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-omit/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-partial/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-passthrough/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-pick/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-required/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-shape/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-strict/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-strip/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── optional-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── or/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── parsing/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── readonly/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── record-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── refine/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── schema-chain/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── schema-options/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── set-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── set-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── specific-default-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── specific-namespace-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── string-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── symbol-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── transform/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── tuple-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── type-inference/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── undefined-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── union-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── unknown-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── validation-error-msg/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── void-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   └── zod-enum/
│       │       ├── input.ts
│       │       └── output.ts
│       ├── cli.mjs
│       ├── package.json
│       ├── src/
│       │   ├── test-setup.test.ts
│       │   ├── transform/
│       │   │   ├── imports/
│       │   │   │   ├── imports.ts
│       │   │   │   └── index.ts
│       │   │   ├── index.ts
│       │   │   └── schemas-and-links/
│       │   │       ├── constants.ts
│       │   │       ├── helpers.ts
│       │   │       ├── index.ts
│       │   │       ├── methods/
│       │   │       │   ├── array/
│       │   │       │   │   ├── array.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── catchall/
│       │   │       │   │   ├── catchall.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── deepPartial/
│       │   │       │   │   ├── deepPartial.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── default/
│       │   │       │   │   ├── default.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── exclude/
│       │   │       │   │   ├── exclude.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── extend/
│       │   │       │   │   ├── extend.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── extract/
│       │   │       │   │   ├── extract.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── index.ts
│       │   │       │   ├── keyof/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── keyof.ts
│       │   │       │   ├── merge/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── merge.ts
│       │   │       │   ├── nullable/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nullable.ts
│       │   │       │   ├── nullish/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nullish.ts
│       │   │       │   ├── omit/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── omit.ts
│       │   │       │   ├── optional/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── optional.ts
│       │   │       │   ├── or/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── or.ts
│       │   │       │   ├── parse/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── parse.ts
│       │   │       │   ├── parseAsync/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── parseAsync.ts
│       │   │       │   ├── partial/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── partial.ts
│       │   │       │   ├── passthrough/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── passthrough.ts
│       │   │       │   ├── pick/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── pick.ts
│       │   │       │   ├── refine/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── refine.ts
│       │   │       │   ├── required/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── required.ts
│       │   │       │   ├── rest/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── rest.ts
│       │   │       │   ├── safeParse/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── safeParse.ts
│       │   │       │   ├── safeParseAsync/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── safeParseAsync.ts
│       │   │       │   ├── strict/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── strict.ts
│       │   │       │   ├── strip/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── strip.ts
│       │   │       │   ├── transform/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── transform.ts
│       │   │       │   └── unwrap/
│       │   │       │       ├── index.ts
│       │   │       │       └── unwrap.ts
│       │   │       ├── properties/
│       │   │       │   ├── description.ts
│       │   │       │   ├── element.ts
│       │   │       │   ├── index.ts
│       │   │       │   └── shape.ts
│       │   │       ├── schemas/
│       │   │       │   ├── any/
│       │   │       │   │   ├── any.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── array/
│       │   │       │   │   ├── array.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── bigint/
│       │   │       │   │   ├── bigint.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── boolean/
│       │   │       │   │   ├── boolean.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── custom/
│       │   │       │   │   ├── custom.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── date/
│       │   │       │   │   ├── date.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── discriminatedUnion/
│       │   │       │   │   ├── discriminatedUnion.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── enum/
│       │   │       │   │   ├── enum.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── helpers.ts
│       │   │       │   ├── index.ts
│       │   │       │   ├── instanceof/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── instanceof.ts
│       │   │       │   ├── intersection/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── intersection.ts
│       │   │       │   ├── literal/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── literal.ts
│       │   │       │   ├── map/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── map.ts
│       │   │       │   ├── nan/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nan.ts
│       │   │       │   ├── nativeEnum/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nativeEnum.ts
│       │   │       │   ├── never/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── never.ts
│       │   │       │   ├── null/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── null.ts
│       │   │       │   ├── nullable/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nullable.ts
│       │   │       │   ├── number/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── number.ts
│       │   │       │   ├── object/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── object.ts
│       │   │       │   ├── optional/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── optional.ts
│       │   │       │   ├── record/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── record.ts
│       │   │       │   ├── set/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── set.ts
│       │   │       │   ├── string/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── string.ts
│       │   │       │   ├── symbol/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── symbol.ts
│       │   │       │   ├── tuple/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── tuple.ts
│       │   │       │   ├── types.ts
│       │   │       │   ├── undefined/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── undefined.ts
│       │   │       │   ├── union/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── union.ts
│       │   │       │   ├── unknown/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── unknown.ts
│       │   │       │   └── void/
│       │   │       │       ├── index.ts
│       │   │       │       └── void.ts
│       │   │       ├── schemas-and-links.ts
│       │   │       ├── types.ts
│       │   │       └── validators/
│       │   │           ├── base64/
│       │   │           │   ├── base64.ts
│       │   │           │   └── index.ts
│       │   │           ├── cuid2/
│       │   │           │   ├── cuid2.ts
│       │   │           │   └── index.ts
│       │   │           ├── date/
│       │   │           │   ├── date.ts
│       │   │           │   └── index.ts
│       │   │           ├── datetime/
│       │   │           │   ├── datetime.ts
│       │   │           │   └── index.ts
│       │   │           ├── describe/
│       │   │           │   ├── describe.ts
│       │   │           │   └── index.ts
│       │   │           ├── email/
│       │   │           │   ├── email.ts
│       │   │           │   └── index.ts
│       │   │           ├── emoji/
│       │   │           │   ├── emoji.ts
│       │   │           │   └── index.ts
│       │   │           ├── endsWith/
│       │   │           │   ├── endsWith.ts
│       │   │           │   └── index.ts
│       │   │           ├── finite/
│       │   │           │   ├── finite.ts
│       │   │           │   └── index.ts
│       │   │           ├── gt/
│       │   │           │   ├── gt.ts
│       │   │           │   └── index.ts
│       │   │           ├── gte/
│       │   │           │   ├── gte.ts
│       │   │           │   └── index.ts
│       │   │           ├── helpers.ts
│       │   │           ├── includes/
│       │   │           │   ├── includes.ts
│       │   │           │   └── index.ts
│       │   │           ├── index.ts
│       │   │           ├── int/
│       │   │           │   ├── index.ts
│       │   │           │   └── int.ts
│       │   │           ├── ip/
│       │   │           │   ├── index.ts
│       │   │           │   └── ip.ts
│       │   │           ├── length/
│       │   │           │   ├── index.ts
│       │   │           │   └── length.ts
│       │   │           ├── lt/
│       │   │           │   ├── index.ts
│       │   │           │   └── lt.ts
│       │   │           ├── lte/
│       │   │           │   ├── index.ts
│       │   │           │   └── lte.ts
│       │   │           ├── max/
│       │   │           │   ├── index.ts
│       │   │           │   └── max.ts
│       │   │           ├── min/
│       │   │           │   ├── index.ts
│       │   │           │   └── min.ts
│       │   │           ├── multipleOf/
│       │   │           │   ├── index.ts
│       │   │           │   └── multipleOf.ts
│       │   │           ├── nanoid/
│       │   │           │   ├── index.ts
│       │   │           │   └── nanoid.ts
│       │   │           ├── negative/
│       │   │           │   ├── index.ts
│       │   │           │   └── negative.ts
│       │   │           ├── nonempty/
│       │   │           │   ├── index.ts
│       │   │           │   └── nonempty.ts
│       │   │           ├── nonnegative/
│       │   │           │   ├── index.ts
│       │   │           │   └── nonnegative.ts
│       │   │           ├── nonpositive/
│       │   │           │   ├── index.ts
│       │   │           │   └── nonpositive.ts
│       │   │           ├── positive/
│       │   │           │   ├── index.ts
│       │   │           │   └── positive.ts
│       │   │           ├── readonly/
│       │   │           │   ├── index.ts
│       │   │           │   └── readonly.ts
│       │   │           ├── regex/
│       │   │           │   ├── index.ts
│       │   │           │   └── regex.ts
│       │   │           ├── safe/
│       │   │           │   ├── index.ts
│       │   │           │   └── safe.ts
│       │   │           ├── size/
│       │   │           │   ├── index.ts
│       │   │           │   └── size.ts
│       │   │           ├── startsWith/
│       │   │           │   ├── index.ts
│       │   │           │   └── startsWith.ts
│       │   │           ├── time/
│       │   │           │   ├── index.ts
│       │   │           │   └── time.ts
│       │   │           ├── toLowerCase/
│       │   │           │   ├── index.ts
│       │   │           │   └── toLowerCase.ts
│       │   │           ├── toUpperCase/
│       │   │           │   ├── index.ts
│       │   │           │   └── toUpperCase.ts
│       │   │           ├── trim/
│       │   │           │   ├── index.ts
│       │   │           │   └── trim.ts
│       │   │           ├── ulid/
│       │   │           │   ├── index.ts
│       │   │           │   └── ulid.ts
│       │   │           ├── url/
│       │   │           │   ├── index.ts
│       │   │           │   └── url.ts
│       │   │           └── uuid/
│       │   │               ├── index.ts
│       │   │               └── uuid.ts
│       │   └── utils.ts
│       ├── tsconfig.json
│       └── tsdown.config.ts
├── library/
│   ├── CHANGELOG.md
│   ├── LICENSE.md
│   ├── README.md
│   ├── eslint.config.js
│   ├── jsr.json
│   ├── mod.ts
│   ├── package.json
│   ├── playground.ts
│   ├── src/
│   │   ├── actions/
│   │   │   ├── args/
│   │   │   │   ├── args.test-d.ts
│   │   │   │   ├── args.test.ts
│   │   │   │   ├── args.ts
│   │   │   │   ├── argsAsync.test-d.ts
│   │   │   │   ├── argsAsync.test.ts
│   │   │   │   ├── argsAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── await/
│   │   │   │   ├── awaitAsync.test-d.ts
│   │   │   │   ├── awaitAsync.test.ts
│   │   │   │   ├── awaitAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── base64/
│   │   │   │   ├── base64.test-d.ts
│   │   │   │   ├── base64.test.ts
│   │   │   │   ├── base64.ts
│   │   │   │   └── index.ts
│   │   │   ├── bic/
│   │   │   │   ├── bic.test-d.ts
│   │   │   │   ├── bic.test.ts
│   │   │   │   ├── bic.ts
│   │   │   │   └── index.ts
│   │   │   ├── brand/
│   │   │   │   ├── brand.test-d.ts
│   │   │   │   ├── brand.test.ts
│   │   │   │   ├── brand.ts
│   │   │   │   └── index.ts
│   │   │   ├── bytes/
│   │   │   │   ├── bytes.test-d.ts
│   │   │   │   ├── bytes.test.ts
│   │   │   │   ├── bytes.ts
│   │   │   │   └── index.ts
│   │   │   ├── check/
│   │   │   │   ├── check.test-d.ts
│   │   │   │   ├── check.test.ts
│   │   │   │   ├── check.ts
│   │   │   │   ├── checkAsync.test-d.ts
│   │   │   │   ├── checkAsync.test.ts
│   │   │   │   ├── checkAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── checkItems/
│   │   │   │   ├── checkItems.test-d.ts
│   │   │   │   ├── checkItems.test.ts
│   │   │   │   ├── checkItems.ts
│   │   │   │   ├── checkItemsAsync.test-d.ts
│   │   │   │   ├── checkItemsAsync.test.ts
│   │   │   │   ├── checkItemsAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── creditCard/
│   │   │   │   ├── creditCard.test-d.ts
│   │   │   │   ├── creditCard.test.ts
│   │   │   │   ├── creditCard.ts
│   │   │   │   └── index.ts
│   │   │   ├── cuid2/
│   │   │   │   ├── cuid2.test-d.ts
│   │   │   │   ├── cuid2.test.ts
│   │   │   │   ├── cuid2.ts
│   │   │   │   └── index.ts
│   │   │   ├── decimal/
│   │   │   │   ├── decimal.test-d.ts
│   │   │   │   ├── decimal.test.ts
│   │   │   │   ├── decimal.ts
│   │   │   │   └── index.ts
│   │   │   ├── description/
│   │   │   │   ├── description.test-d.ts
│   │   │   │   ├── description.test.ts
│   │   │   │   ├── description.ts
│   │   │   │   └── index.ts
│   │   │   ├── digits/
│   │   │   │   ├── digits.test-d.ts
│   │   │   │   ├── digits.test.ts
│   │   │   │   ├── digits.ts
│   │   │   │   └── index.ts
│   │   │   ├── domain/
│   │   │   │   ├── domain.test-d.ts
│   │   │   │   ├── domain.test.ts
│   │   │   │   ├── domain.ts
│   │   │   │   └── index.ts
│   │   │   ├── email/
│   │   │   │   ├── email.test-d.ts
│   │   │   │   ├── email.test.ts
│   │   │   │   ├── email.ts
│   │   │   │   └── index.ts
│   │   │   ├── emoji/
│   │   │   │   ├── emoji.test-d.ts
│   │   │   │   ├── emoji.test.ts
│   │   │   │   ├── emoji.ts
│   │   │   │   └── index.ts
│   │   │   ├── empty/
│   │   │   │   ├── empty.test-d.ts
│   │   │   │   ├── empty.test.ts
│   │   │   │   ├── empty.ts
│   │   │   │   └── index.ts
│   │   │   ├── endsWith/
│   │   │   │   ├── endsWith.test-d.ts
│   │   │   │   ├── endsWith.test.ts
│   │   │   │   ├── endsWith.ts
│   │   │   │   └── index.ts
│   │   │   ├── entries/
│   │   │   │   ├── entries.test-d.ts
│   │   │   │   ├── entries.test.ts
│   │   │   │   ├── entries.ts
│   │   │   │   └── index.ts
│   │   │   ├── everyItem/
│   │   │   │   ├── everyItem.test-d.ts
│   │   │   │   ├── everyItem.test.ts
│   │   │   │   ├── everyItem.ts
│   │   │   │   └── index.ts
│   │   │   ├── examples/
│   │   │   │   ├── examples.test-d.ts
│   │   │   │   ├── examples.test.ts
│   │   │   │   ├── examples.ts
│   │   │   │   └── index.ts
│   │   │   ├── excludes/
│   │   │   │   ├── excludes.test-d.ts
│   │   │   │   ├── excludes.test.ts
│   │   │   │   ├── excludes.ts
│   │   │   │   └── index.ts
│   │   │   ├── filterItems/
│   │   │   │   ├── filterItems.test-d.ts
│   │   │   │   ├── filterItems.test.ts
│   │   │   │   ├── filterItems.ts
│   │   │   │   └── index.ts
│   │   │   ├── findItem/
│   │   │   │   ├── findItem.test-d.ts
│   │   │   │   ├── findItem.test.ts
│   │   │   │   ├── findItem.ts
│   │   │   │   └── index.ts
│   │   │   ├── finite/
│   │   │   │   ├── finite.test-d.ts
│   │   │   │   ├── finite.test.ts
│   │   │   │   ├── finite.ts
│   │   │   │   └── index.ts
│   │   │   ├── flavor/
│   │   │   │   ├── flavor.test-d.ts
│   │   │   │   ├── flavor.test.ts
│   │   │   │   ├── flavor.ts
│   │   │   │   └── index.ts
│   │   │   ├── graphemes/
│   │   │   │   ├── graphemes.test-d.ts
│   │   │   │   ├── graphemes.test.ts
│   │   │   │   ├── graphemes.ts
│   │   │   │   └── index.ts
│   │   │   ├── gtValue/
│   │   │   │   ├── gtValue.test.ts
│   │   │   │   ├── gtValue.ts
│   │   │   │   ├── gtValues.test-d.ts
│   │   │   │   └── index.ts
│   │   │   ├── guard/
│   │   │   │   ├── guard.test-d.ts
│   │   │   │   ├── guard.test.ts
│   │   │   │   ├── guard.ts
│   │   │   │   └── index.ts
│   │   │   ├── hash/
│   │   │   │   ├── hash.test-d.ts
│   │   │   │   ├── hash.test.ts
│   │   │   │   ├── hash.ts
│   │   │   │   └── index.ts
│   │   │   ├── hexColor/
│   │   │   │   ├── hexColor.test-d.ts
│   │   │   │   ├── hexColor.test.ts
│   │   │   │   ├── hexColor.ts
│   │   │   │   └── index.ts
│   │   │   ├── hexadecimal/
│   │   │   │   ├── hexadecimal.test-d.ts
│   │   │   │   ├── hexadecimal.test.ts
│   │   │   │   ├── hexadecimal.ts
│   │   │   │   └── index.ts
│   │   │   ├── imei/
│   │   │   │   ├── imei.test-d.ts
│   │   │   │   ├── imei.test.ts
│   │   │   │   ├── imei.ts
│   │   │   │   └── index.ts
│   │   │   ├── includes/
│   │   │   │   ├── includes.test-d.ts
│   │   │   │   ├── includes.test.ts
│   │   │   │   ├── includes.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── integer/
│   │   │   │   ├── index.ts
│   │   │   │   ├── integer.test-d.ts
│   │   │   │   ├── integer.test.ts
│   │   │   │   └── integer.ts
│   │   │   ├── ip/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ip.test-d.ts
│   │   │   │   ├── ip.test.ts
│   │   │   │   └── ip.ts
│   │   │   ├── ipv4/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ipv4.test-d.ts
│   │   │   │   ├── ipv4.test.ts
│   │   │   │   └── ipv4.ts
│   │   │   ├── ipv6/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ipv6.test-d.ts
│   │   │   │   ├── ipv6.test.ts
│   │   │   │   └── ipv6.ts
│   │   │   ├── isbn/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isbn.test-d.ts
│   │   │   │   ├── isbn.test.ts
│   │   │   │   ├── isbn.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _isIsbn10.test.ts
│   │   │   │       ├── _isIsbn10.ts
│   │   │   │       ├── _isIsbn13.test.ts
│   │   │   │       ├── _isIsbn13.ts
│   │   │   │       └── index.ts
│   │   │   ├── isoDate/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoDate.test-d.ts
│   │   │   │   ├── isoDate.test.ts
│   │   │   │   └── isoDate.ts
│   │   │   ├── isoDateTime/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoDateTime.test-d.ts
│   │   │   │   ├── isoDateTime.test.ts
│   │   │   │   └── isoDateTime.ts
│   │   │   ├── isoTime/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoTime.test-d.ts
│   │   │   │   ├── isoTime.test.ts
│   │   │   │   └── isoTime.ts
│   │   │   ├── isoTimeSecond/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoTimeSecond.test-d.ts
│   │   │   │   ├── isoTimeSecond.test.ts
│   │   │   │   └── isoTimeSecond.ts
│   │   │   ├── isoTimestamp/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoTimestamp.test-d.ts
│   │   │   │   ├── isoTimestamp.test.ts
│   │   │   │   └── isoTimestamp.ts
│   │   │   ├── isoWeek/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoWeek.test-d.ts
│   │   │   │   ├── isoWeek.test.ts
│   │   │   │   └── isoWeek.ts
│   │   │   ├── isrc/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isrc.test-d.ts
│   │   │   │   ├── isrc.test.ts
│   │   │   │   └── isrc.ts
│   │   │   ├── jwsCompact/
│   │   │   │   ├── index.ts
│   │   │   │   ├── jwsCompact.test-d.ts
│   │   │   │   ├── jwsCompact.test.ts
│   │   │   │   └── jwsCompact.ts
│   │   │   ├── length/
│   │   │   │   ├── index.ts
│   │   │   │   ├── length.test-d.ts
│   │   │   │   ├── length.test.ts
│   │   │   │   └── length.ts
│   │   │   ├── ltValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ltValue.test-d.ts
│   │   │   │   ├── ltValue.test.ts
│   │   │   │   └── ltValue.ts
│   │   │   ├── mac/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mac.test-d.ts
│   │   │   │   ├── mac.test.ts
│   │   │   │   └── mac.ts
│   │   │   ├── mac48/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mac48.test-d.ts
│   │   │   │   ├── mac48.test.ts
│   │   │   │   └── mac48.ts
│   │   │   ├── mac64/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mac64.test-d.ts
│   │   │   │   ├── mac64.test.ts
│   │   │   │   └── mac64.ts
│   │   │   ├── mapItems/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mapItems.test-d.ts
│   │   │   │   ├── mapItems.test.ts
│   │   │   │   └── mapItems.ts
│   │   │   ├── maxBytes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxBytes.test-d.ts
│   │   │   │   ├── maxBytes.test.ts
│   │   │   │   └── maxBytes.ts
│   │   │   ├── maxEntries/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxEntries.test-d.ts
│   │   │   │   ├── maxEntries.test.ts
│   │   │   │   └── maxEntries.ts
│   │   │   ├── maxGraphemes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxGraphemes.test-d.ts
│   │   │   │   ├── maxGraphemes.test.ts
│   │   │   │   └── maxGraphemes.ts
│   │   │   ├── maxLength/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxLength.test-d.ts
│   │   │   │   ├── maxLength.test.ts
│   │   │   │   └── maxLength.ts
│   │   │   ├── maxSize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxSize.test-d.ts
│   │   │   │   ├── maxSize.test.ts
│   │   │   │   └── maxSize.ts
│   │   │   ├── maxValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxValue.test-d.ts
│   │   │   │   ├── maxValue.test.ts
│   │   │   │   └── maxValue.ts
│   │   │   ├── maxWords/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxWords.test-d.ts
│   │   │   │   ├── maxWords.test.ts
│   │   │   │   └── maxWords.ts
│   │   │   ├── metadata/
│   │   │   │   ├── index.ts
│   │   │   │   ├── metadata.test-d.ts
│   │   │   │   ├── metadata.test.ts
│   │   │   │   └── metadata.ts
│   │   │   ├── mimeType/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mimeType.test-d.ts
│   │   │   │   ├── mimeType.test.ts
│   │   │   │   └── mimeType.ts
│   │   │   ├── minBytes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minBytes.test-d.ts
│   │   │   │   ├── minBytes.test.ts
│   │   │   │   └── minBytes.ts
│   │   │   ├── minEntries/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minEntries.test-d.ts
│   │   │   │   ├── minEntries.test.ts
│   │   │   │   └── minEntries.ts
│   │   │   ├── minGraphemes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minGraphemes.test-d.ts
│   │   │   │   ├── minGraphemes.test.ts
│   │   │   │   └── minGraphemes.ts
│   │   │   ├── minLength/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minLength.test-d.ts
│   │   │   │   ├── minLength.test.ts
│   │   │   │   └── minLength.ts
│   │   │   ├── minSize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minSize.test-d.ts
│   │   │   │   ├── minSize.test.ts
│   │   │   │   └── minSize.ts
│   │   │   ├── minValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minValue.test-d.ts
│   │   │   │   ├── minValue.test.ts
│   │   │   │   └── minValue.ts
│   │   │   ├── minWords/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minWords.test-d.ts
│   │   │   │   ├── minWords.test.ts
│   │   │   │   └── minWords.ts
│   │   │   ├── multipleOf/
│   │   │   │   ├── index.ts
│   │   │   │   ├── multipleOf.test-d.ts
│   │   │   │   ├── multipleOf.test.ts
│   │   │   │   └── multipleOf.ts
│   │   │   ├── nanoid/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nanoid.test-d.ts
│   │   │   │   ├── nanoid.test.ts
│   │   │   │   └── nanoid.ts
│   │   │   ├── nonEmpty/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonEmpty.test-d.ts
│   │   │   │   ├── nonEmpty.test.ts
│   │   │   │   └── nonEmpty.ts
│   │   │   ├── normalize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── normalize.test-d.ts
│   │   │   │   ├── normalize.test.ts
│   │   │   │   └── normalize.ts
│   │   │   ├── notBytes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notBytes.test-d.ts
│   │   │   │   ├── notBytes.test.ts
│   │   │   │   └── notBytes.ts
│   │   │   ├── notEntries/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notEntries.test-d.ts
│   │   │   │   ├── notEntries.test.ts
│   │   │   │   └── notEntries.ts
│   │   │   ├── notGraphemes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notGraphemes.test-d.ts
│   │   │   │   ├── notGraphemes.test.ts
│   │   │   │   └── notGraphemes.ts
│   │   │   ├── notLength/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notLength.test-d.ts
│   │   │   │   ├── notLength.test.ts
│   │   │   │   └── notLength.ts
│   │   │   ├── notSize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notSize.test-d.ts
│   │   │   │   ├── notSize.test.ts
│   │   │   │   └── notSize.ts
│   │   │   ├── notValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notValue.test-d.ts
│   │   │   │   ├── notValue.test.ts
│   │   │   │   └── notValue.ts
│   │   │   ├── notValues/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notValues.test-d.ts
│   │   │   │   ├── notValues.test.ts
│   │   │   │   └── notValues.ts
│   │   │   ├── notWords/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notWords.test-d.ts
│   │   │   │   ├── notWords.test.ts
│   │   │   │   └── notWords.ts
│   │   │   ├── octal/
│   │   │   │   ├── index.ts
│   │   │   │   ├── octal.test-d.ts
│   │   │   │   ├── octal.test.ts
│   │   │   │   └── octal.ts
│   │   │   ├── parseBoolean/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parseBoolean.test-d.ts
│   │   │   │   ├── parseBoolean.test.ts
│   │   │   │   └── parseBoolean.ts
│   │   │   ├── parseJson/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parseJson.test-d.ts
│   │   │   │   ├── parseJson.test.ts
│   │   │   │   └── parseJson.ts
│   │   │   ├── partialCheck/
│   │   │   │   ├── index.ts
│   │   │   │   ├── partialCheck.test-d.ts
│   │   │   │   ├── partialCheck.test.ts
│   │   │   │   ├── partialCheck.ts
│   │   │   │   ├── partialCheckAsync.test-d.ts
│   │   │   │   ├── partialCheckAsync.test.ts
│   │   │   │   ├── partialCheckAsync.ts
│   │   │   │   ├── types.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _isPartiallyTyped/
│   │   │   │       │   ├── _isPartiallyTyped.test.ts
│   │   │   │       │   ├── _isPartiallyTyped.ts
│   │   │   │       │   └── index.ts
│   │   │   │       └── index.ts
│   │   │   ├── rawCheck/
│   │   │   │   ├── index.ts
│   │   │   │   ├── rawCheck.test-d.ts
│   │   │   │   ├── rawCheck.test.ts
│   │   │   │   ├── rawCheck.ts
│   │   │   │   ├── rawCheckAsync.test-d.ts
│   │   │   │   ├── rawCheckAsync.test.ts
│   │   │   │   ├── rawCheckAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── rawTransform/
│   │   │   │   ├── index.ts
│   │   │   │   ├── rawTransform.test-d.ts
│   │   │   │   ├── rawTransform.test.ts
│   │   │   │   ├── rawTransform.ts
│   │   │   │   ├── rawTransformAsync.test-d.ts
│   │   │   │   ├── rawTransformAsync.test.ts
│   │   │   │   ├── rawTransformAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── readonly/
│   │   │   │   ├── index.ts
│   │   │   │   ├── readonly.test-d.ts
│   │   │   │   ├── readonly.test.ts
│   │   │   │   └── readonly.ts
│   │   │   ├── reduceItems/
│   │   │   │   ├── index.ts
│   │   │   │   ├── reduceItems.test-d.ts
│   │   │   │   ├── reduceItems.test.ts
│   │   │   │   └── reduceItems.ts
│   │   │   ├── regex/
│   │   │   │   ├── index.ts
│   │   │   │   ├── regex.test-d.ts
│   │   │   │   ├── regex.test.ts
│   │   │   │   └── regex.ts
│   │   │   ├── returns/
│   │   │   │   ├── index.ts
│   │   │   │   ├── returns.test-d.ts
│   │   │   │   ├── returns.test.ts
│   │   │   │   ├── returns.ts
│   │   │   │   ├── returnsAsync.test-d.ts
│   │   │   │   ├── returnsAsync.test.ts
│   │   │   │   └── returnsAsync.ts
│   │   │   ├── rfcEmail/
│   │   │   │   ├── index.ts
│   │   │   │   ├── rfcEmail.test-d.ts
│   │   │   │   ├── rfcEmail.test.ts
│   │   │   │   └── rfcEmail.ts
│   │   │   ├── safeInteger/
│   │   │   │   ├── index.ts
│   │   │   │   ├── safeInteger.test-d.ts
│   │   │   │   ├── safeInteger.test.ts
│   │   │   │   └── safeInteger.ts
│   │   │   ├── size/
│   │   │   │   ├── index.ts
│   │   │   │   ├── size.test-d.ts
│   │   │   │   ├── size.test.ts
│   │   │   │   └── size.ts
│   │   │   ├── slug/
│   │   │   │   ├── index.ts
│   │   │   │   ├── slug.test-d.ts
│   │   │   │   ├── slug.test.ts
│   │   │   │   └── slug.ts
│   │   │   ├── someItem/
│   │   │   │   ├── index.ts
│   │   │   │   ├── someItem.test-d.ts
│   │   │   │   ├── someItem.test.ts
│   │   │   │   └── someItem.ts
│   │   │   ├── sortItems/
│   │   │   │   ├── index.ts
│   │   │   │   ├── sortItems.test-d.ts
│   │   │   │   ├── sortItems.test.ts
│   │   │   │   └── sortItems.ts
│   │   │   ├── startsWith/
│   │   │   │   ├── index.ts
│   │   │   │   ├── startsWith.test-d.ts
│   │   │   │   ├── startsWith.test.ts
│   │   │   │   └── startsWith.ts
│   │   │   ├── stringifyJson/
│   │   │   │   ├── index.ts
│   │   │   │   ├── stringifyJson.test-d.ts
│   │   │   │   ├── stringifyJson.test.ts
│   │   │   │   └── stringifyJson.ts
│   │   │   ├── title/
│   │   │   │   ├── index.ts
│   │   │   │   ├── title.test-d.ts
│   │   │   │   ├── title.test.ts
│   │   │   │   └── title.ts
│   │   │   ├── toBigint/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toBigint.test-d.ts
│   │   │   │   ├── toBigint.test.ts
│   │   │   │   └── toBigint.ts
│   │   │   ├── toBoolean/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toBoolean.test-d.ts
│   │   │   │   ├── toBoolean.test.ts
│   │   │   │   └── toBoolean.ts
│   │   │   ├── toDate/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toDate.test-d.ts
│   │   │   │   ├── toDate.test.ts
│   │   │   │   └── toDate.ts
│   │   │   ├── toLowerCase/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toLowerCase.test-d.ts
│   │   │   │   ├── toLowerCase.test.ts
│   │   │   │   └── toLowerCase.ts
│   │   │   ├── toMaxValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toMaxValue.test-d.ts
│   │   │   │   ├── toMaxValue.test.ts
│   │   │   │   └── toMaxValue.ts
│   │   │   ├── toMinValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toMinValue.test-d.ts
│   │   │   │   ├── toMinValue.test.ts
│   │   │   │   └── toMinValue.ts
│   │   │   ├── toNumber/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toNumber.test-d.ts
│   │   │   │   ├── toNumber.test.ts
│   │   │   │   └── toNumber.ts
│   │   │   ├── toString/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toString.test-d.ts
│   │   │   │   ├── toString.test.ts
│   │   │   │   └── toString.ts
│   │   │   ├── toUpperCase/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toUpperCase.test-d.ts
│   │   │   │   ├── toUpperCase.test.ts
│   │   │   │   └── toUpperCase.ts
│   │   │   ├── transform/
│   │   │   │   ├── index.ts
│   │   │   │   ├── transform.test-d.ts
│   │   │   │   ├── transform.test.ts
│   │   │   │   ├── transform.ts
│   │   │   │   ├── transformAsync.test-d.ts
│   │   │   │   ├── transformAsync.test.ts
│   │   │   │   └── transformAsync.ts
│   │   │   ├── trim/
│   │   │   │   ├── index.ts
│   │   │   │   ├── trim.test-d.ts
│   │   │   │   ├── trim.test.ts
│   │   │   │   └── trim.ts
│   │   │   ├── trimEnd/
│   │   │   │   ├── index.ts
│   │   │   │   ├── trimEnd.test-d.ts
│   │   │   │   ├── trimEnd.test.ts
│   │   │   │   └── trimEnd.ts
│   │   │   ├── trimStart/
│   │   │   │   ├── index.ts
│   │   │   │   ├── trimStart.test-d.ts
│   │   │   │   ├── trimStart.test.ts
│   │   │   │   └── trimStart.ts
│   │   │   ├── types.ts
│   │   │   ├── ulid/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ulid.test-d.ts
│   │   │   │   ├── ulid.test.ts
│   │   │   │   └── ulid.ts
│   │   │   ├── url/
│   │   │   │   ├── index.ts
│   │   │   │   ├── url.test-d.ts
│   │   │   │   ├── url.test.ts
│   │   │   │   └── url.ts
│   │   │   ├── uuid/
│   │   │   │   ├── index.ts
│   │   │   │   ├── uuid.test-d.ts
│   │   │   │   ├── uuid.test.ts
│   │   │   │   └── uuid.ts
│   │   │   ├── value/
│   │   │   │   ├── index.ts
│   │   │   │   ├── value.test-d.ts
│   │   │   │   ├── value.test.ts
│   │   │   │   └── value.ts
│   │   │   ├── values/
│   │   │   │   ├── index.ts
│   │   │   │   ├── values.test-d.ts
│   │   │   │   ├── values.test.ts
│   │   │   │   └── values.ts
│   │   │   └── words/
│   │   │       ├── index.ts
│   │   │       ├── words.test-d.ts
│   │   │       ├── words.test.ts
│   │   │       └── words.ts
│   │   ├── index.ts
│   │   ├── methods/
│   │   │   ├── assert/
│   │   │   │   ├── assert.test-d.ts
│   │   │   │   ├── assert.test.ts
│   │   │   │   ├── assert.ts
│   │   │   │   └── index.ts
│   │   │   ├── cache/
│   │   │   │   ├── _LruCache.test.ts
│   │   │   │   ├── _LruCache.ts
│   │   │   │   ├── cache.test-d.ts
│   │   │   │   ├── cache.test.ts
│   │   │   │   ├── cache.ts
│   │   │   │   ├── cacheAsync.test-d.ts
│   │   │   │   ├── cacheAsync.test.ts
│   │   │   │   ├── cacheAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── config/
│   │   │   │   ├── config.test-d.ts
│   │   │   │   ├── config.test.ts
│   │   │   │   ├── config.ts
│   │   │   │   └── index.ts
│   │   │   ├── fallback/
│   │   │   │   ├── fallback.test-d.ts
│   │   │   │   ├── fallback.test.ts
│   │   │   │   ├── fallback.ts
│   │   │   │   ├── fallbackAsync.test-d.ts
│   │   │   │   ├── fallbackAsync.test.ts
│   │   │   │   ├── fallbackAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── flatten/
│   │   │   │   ├── flatten.test-d.ts
│   │   │   │   ├── flatten.test.ts
│   │   │   │   ├── flatten.ts
│   │   │   │   └── index.ts
│   │   │   ├── forward/
│   │   │   │   ├── forward.test-d.ts
│   │   │   │   ├── forward.test.ts
│   │   │   │   ├── forward.ts
│   │   │   │   ├── forwardAsync.test-d.ts
│   │   │   │   ├── forwardAsync.test.ts
│   │   │   │   ├── forwardAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── getDefault/
│   │   │   │   ├── getDefault.test-d.ts
│   │   │   │   ├── getDefault.test.ts
│   │   │   │   ├── getDefault.ts
│   │   │   │   └── index.ts
│   │   │   ├── getDefaults/
│   │   │   │   ├── getDefaults.test-d.ts
│   │   │   │   ├── getDefaults.test.ts
│   │   │   │   ├── getDefaults.ts
│   │   │   │   ├── getDefaultsAsync.test-d.ts
│   │   │   │   ├── getDefaultsAsync.test.ts
│   │   │   │   ├── getDefaultsAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── getDescription/
│   │   │   │   ├── getDescription.test.ts
│   │   │   │   ├── getDescription.ts
│   │   │   │   └── index.ts
│   │   │   ├── getExamples/
│   │   │   │   ├── getExamples.test-d.ts
│   │   │   │   ├── getExamples.test.ts
│   │   │   │   ├── getExamples.ts
│   │   │   │   └── index.ts
│   │   │   ├── getFallback/
│   │   │   │   ├── getFallback.test-d.ts
│   │   │   │   ├── getFallback.test.ts
│   │   │   │   ├── getFallback.ts
│   │   │   │   └── index.ts
│   │   │   ├── getFallbacks/
│   │   │   │   ├── getFallbacks.test-d.ts
│   │   │   │   ├── getFallbacks.test.ts
│   │   │   │   ├── getFallbacks.ts
│   │   │   │   ├── getFallbacksAsync.test-d.ts
│   │   │   │   ├── getFallbacksAsync.test.ts
│   │   │   │   ├── getFallbacksAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── getMetadata/
│   │   │   │   ├── getMetadata.test-d.ts
│   │   │   │   ├── getMetadata.test.ts
│   │   │   │   ├── getMetadata.ts
│   │   │   │   └── index.ts
│   │   │   ├── getTitle/
│   │   │   │   ├── getTitle.test.ts
│   │   │   │   ├── getTitle.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── is/
│   │   │   │   ├── index.ts
│   │   │   │   ├── is.test-d.ts
│   │   │   │   ├── is.test.ts
│   │   │   │   └── is.ts
│   │   │   ├── keyof/
│   │   │   │   ├── index.ts
│   │   │   │   ├── keyof.test-d.ts
│   │   │   │   ├── keyof.test.ts
│   │   │   │   └── keyof.ts
│   │   │   ├── message/
│   │   │   │   ├── index.ts
│   │   │   │   ├── message.test-d.ts
│   │   │   │   ├── message.test.ts
│   │   │   │   └── message.ts
│   │   │   ├── omit/
│   │   │   │   ├── index.ts
│   │   │   │   ├── omit.test-d.ts
│   │   │   │   ├── omit.test.ts
│   │   │   │   └── omit.ts
│   │   │   ├── parse/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parse.test-d.ts
│   │   │   │   ├── parse.test.ts
│   │   │   │   ├── parse.ts
│   │   │   │   ├── parseAsync.test-d.ts
│   │   │   │   ├── parseAsync.test.ts
│   │   │   │   └── parseAsync.ts
│   │   │   ├── parser/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parser.test-d.ts
│   │   │   │   ├── parser.test.ts
│   │   │   │   ├── parser.ts
│   │   │   │   ├── parserAsync.test-d.ts
│   │   │   │   ├── parserAsync.test.ts
│   │   │   │   └── parserAsync.ts
│   │   │   ├── partial/
│   │   │   │   ├── index.ts
│   │   │   │   ├── partial.test-d.ts
│   │   │   │   ├── partial.test.ts
│   │   │   │   ├── partial.ts
│   │   │   │   ├── partialAsync.test-d.ts
│   │   │   │   ├── partialAsync.test.ts
│   │   │   │   └── partialAsync.ts
│   │   │   ├── pick/
│   │   │   │   ├── index.ts
│   │   │   │   ├── pick.test-d.ts
│   │   │   │   ├── pick.test.ts
│   │   │   │   └── pick.ts
│   │   │   ├── pipe/
│   │   │   │   ├── index.ts
│   │   │   │   ├── pipe.test-d.ts
│   │   │   │   ├── pipe.test.ts
│   │   │   │   ├── pipe.ts
│   │   │   │   ├── pipeAsync.test-d.ts
│   │   │   │   ├── pipeAsync.test.ts
│   │   │   │   └── pipeAsync.ts
│   │   │   ├── required/
│   │   │   │   ├── index.ts
│   │   │   │   ├── required.test-d.ts
│   │   │   │   ├── required.test.ts
│   │   │   │   ├── required.ts
│   │   │   │   ├── requiredAsync.test-d.ts
│   │   │   │   ├── requiredAsync.test.ts
│   │   │   │   └── requiredAsync.ts
│   │   │   ├── safeParse/
│   │   │   │   ├── index.ts
│   │   │   │   ├── safeParse.test-d.ts
│   │   │   │   ├── safeParse.test.ts
│   │   │   │   ├── safeParse.ts
│   │   │   │   ├── safeParseAsync.test-d.ts
│   │   │   │   ├── safeParseAsync.test.ts
│   │   │   │   ├── safeParseAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── safeParser/
│   │   │   │   ├── index.ts
│   │   │   │   ├── safeParser.test-d.ts
│   │   │   │   ├── safeParser.test.ts
│   │   │   │   ├── safeParser.ts
│   │   │   │   ├── safeParserAsync.test-d.ts
│   │   │   │   ├── safeParserAsync.test.ts
│   │   │   │   └── safeParserAsync.ts
│   │   │   ├── summarize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── summarize.test.ts
│   │   │   │   └── summarize.ts
│   │   │   └── unwrap/
│   │   │       ├── index.ts
│   │   │       ├── unwrap.test-d.ts
│   │   │       ├── unwrap.test.ts
│   │   │       └── unwrap.ts
│   │   ├── regex.ts
│   │   ├── schemas/
│   │   │   ├── any/
│   │   │   │   ├── any.test-d.ts
│   │   │   │   ├── any.test.ts
│   │   │   │   ├── any.ts
│   │   │   │   └── index.ts
│   │   │   ├── array/
│   │   │   │   ├── array.test-d.ts
│   │   │   │   ├── array.test.ts
│   │   │   │   ├── array.ts
│   │   │   │   ├── arrayAsync.test-d.ts
│   │   │   │   ├── arrayAsync.test.ts
│   │   │   │   ├── arrayAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── bigint/
│   │   │   │   ├── bigint.test-d.ts
│   │   │   │   ├── bigint.test.ts
│   │   │   │   ├── bigint.ts
│   │   │   │   └── index.ts
│   │   │   ├── blob/
│   │   │   │   ├── blob.test-d.ts
│   │   │   │   ├── blob.test.ts
│   │   │   │   ├── blob.ts
│   │   │   │   └── index.ts
│   │   │   ├── boolean/
│   │   │   │   ├── boolean.test-d.ts
│   │   │   │   ├── boolean.test.ts
│   │   │   │   ├── boolean.ts
│   │   │   │   └── index.ts
│   │   │   ├── custom/
│   │   │   │   ├── custom.test-d.ts
│   │   │   │   ├── custom.test.ts
│   │   │   │   ├── custom.ts
│   │   │   │   ├── customAsync.test-d.ts
│   │   │   │   ├── customAsync.test.ts
│   │   │   │   ├── customAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── date/
│   │   │   │   ├── date.test-d.ts
│   │   │   │   ├── date.test.ts
│   │   │   │   ├── date.ts
│   │   │   │   └── index.ts
│   │   │   ├── enum/
│   │   │   │   ├── enum.test-d.ts
│   │   │   │   ├── enum.test.ts
│   │   │   │   ├── enum.ts
│   │   │   │   └── index.ts
│   │   │   ├── exactOptional/
│   │   │   │   ├── exactOptional.test-d.ts
│   │   │   │   ├── exactOptional.test.ts
│   │   │   │   ├── exactOptional.ts
│   │   │   │   ├── exactOptionalAsync.test-d.ts
│   │   │   │   ├── exactOptionalAsync.test.ts
│   │   │   │   ├── exactOptionalAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── file/
│   │   │   │   ├── file.test-d.ts
│   │   │   │   ├── file.test.ts
│   │   │   │   ├── file.ts
│   │   │   │   └── index.ts
│   │   │   ├── function/
│   │   │   │   ├── function.test-d.ts
│   │   │   │   ├── function.test.ts
│   │   │   │   ├── function.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── instance/
│   │   │   │   ├── index.ts
│   │   │   │   ├── instance.test-d.ts
│   │   │   │   ├── instance.test.ts
│   │   │   │   └── instance.ts
│   │   │   ├── intersect/
│   │   │   │   ├── index.ts
│   │   │   │   ├── intersect.test-d.ts
│   │   │   │   ├── intersect.test.ts
│   │   │   │   ├── intersect.ts
│   │   │   │   ├── intersectAsync.test-d.ts
│   │   │   │   ├── intersectAsync.test.ts
│   │   │   │   ├── intersectAsync.ts
│   │   │   │   ├── types.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _merge/
│   │   │   │       │   ├── _merge.test.ts
│   │   │   │       │   ├── _merge.ts
│   │   │   │       │   └── index.ts
│   │   │   │       └── index.ts
│   │   │   ├── lazy/
│   │   │   │   ├── index.ts
│   │   │   │   ├── lazy.test-d.ts
│   │   │   │   ├── lazy.test.ts
│   │   │   │   ├── lazy.ts
│   │   │   │   ├── lazyAsync.test-d.ts
│   │   │   │   ├── lazyAsync.test.ts
│   │   │   │   └── lazyAsync.ts
│   │   │   ├── literal/
│   │   │   │   ├── index.ts
│   │   │   │   ├── literal.test-d.ts
│   │   │   │   ├── literal.test.ts
│   │   │   │   └── literal.ts
│   │   │   ├── looseObject/
│   │   │   │   ├── index.ts
│   │   │   │   ├── looseObject.test-d.ts
│   │   │   │   ├── looseObject.test.ts
│   │   │   │   ├── looseObject.ts
│   │   │   │   ├── looseObjectAsync.test-d.ts
│   │   │   │   ├── looseObjectAsync.test.ts
│   │   │   │   ├── looseObjectAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── looseTuple/
│   │   │   │   ├── index.ts
│   │   │   │   ├── looseTuple.test-d.ts
│   │   │   │   ├── looseTuple.test.ts
│   │   │   │   ├── looseTuple.ts
│   │   │   │   ├── looseTupleAsync.test-d.ts
│   │   │   │   ├── looseTupleAsync.test.ts
│   │   │   │   ├── looseTupleAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── map/
│   │   │   │   ├── index.ts
│   │   │   │   ├── map.test-d.ts
│   │   │   │   ├── map.test.ts
│   │   │   │   ├── map.ts
│   │   │   │   ├── mapAsync.test-d.ts
│   │   │   │   ├── mapAsync.test.ts
│   │   │   │   ├── mapAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nan/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nan.test-d.ts
│   │   │   │   ├── nan.test.ts
│   │   │   │   └── nan.ts
│   │   │   ├── never/
│   │   │   │   ├── index.ts
│   │   │   │   ├── never.test-d.ts
│   │   │   │   ├── never.test.ts
│   │   │   │   └── never.ts
│   │   │   ├── nonNullable/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonNullable.test-d.ts
│   │   │   │   ├── nonNullable.test.ts
│   │   │   │   ├── nonNullable.ts
│   │   │   │   ├── nonNullableAsync.test-d.ts
│   │   │   │   ├── nonNullableAsync.test.ts
│   │   │   │   ├── nonNullableAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nonNullish/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonNullish.test-d.ts
│   │   │   │   ├── nonNullish.test.ts
│   │   │   │   ├── nonNullish.ts
│   │   │   │   ├── nonNullishAsync.test-d.ts
│   │   │   │   ├── nonNullishAsync.test.ts
│   │   │   │   ├── nonNullishAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nonOptional/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonOptional.test-d.ts
│   │   │   │   ├── nonOptional.test.ts
│   │   │   │   ├── nonOptional.ts
│   │   │   │   ├── nonOptionalAsync.test-d.ts
│   │   │   │   ├── nonOptionalAsync.test.ts
│   │   │   │   ├── nonOptionalAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── null/
│   │   │   │   ├── index.ts
│   │   │   │   ├── null.test-d.ts
│   │   │   │   ├── null.test.ts
│   │   │   │   └── null.ts
│   │   │   ├── nullable/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nullable.test-d.ts
│   │   │   │   ├── nullable.test.ts
│   │   │   │   ├── nullable.ts
│   │   │   │   ├── nullableAsync.test-d.ts
│   │   │   │   ├── nullableAsync.test.ts
│   │   │   │   ├── nullableAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nullish/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nullish.test-d.ts
│   │   │   │   ├── nullish.test.ts
│   │   │   │   ├── nullish.ts
│   │   │   │   ├── nullishAsync.test-d.ts
│   │   │   │   ├── nullishAsync.test.ts
│   │   │   │   ├── nullishAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── number/
│   │   │   │   ├── index.ts
│   │   │   │   ├── number.test-d.ts
│   │   │   │   ├── number.test.ts
│   │   │   │   └── number.ts
│   │   │   ├── object/
│   │   │   │   ├── index.ts
│   │   │   │   ├── object.test-d.ts
│   │   │   │   ├── object.test.ts
│   │   │   │   ├── object.ts
│   │   │   │   ├── objectAsync.test-d.ts
│   │   │   │   ├── objectAsync.test.ts
│   │   │   │   ├── objectAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── objectWithRest/
│   │   │   │   ├── index.ts
│   │   │   │   ├── objectWithRest.test-d.ts
│   │   │   │   ├── objectWithRest.test.ts
│   │   │   │   ├── objectWithRest.ts
│   │   │   │   ├── objectWithRestAsync.test-d.ts
│   │   │   │   ├── objectWithRestAsync.test.ts
│   │   │   │   ├── objectWithRestAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── optional/
│   │   │   │   ├── index.ts
│   │   │   │   ├── optional.test-d.ts
│   │   │   │   ├── optional.test.ts
│   │   │   │   ├── optional.ts
│   │   │   │   ├── optionalAsync.test-d.ts
│   │   │   │   ├── optionalAsync.test.ts
│   │   │   │   ├── optionalAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── picklist/
│   │   │   │   ├── index.ts
│   │   │   │   ├── picklist.test-d.ts
│   │   │   │   ├── picklist.test.ts
│   │   │   │   └── picklist.ts
│   │   │   ├── promise/
│   │   │   │   ├── index.ts
│   │   │   │   ├── promise.test-d.ts
│   │   │   │   ├── promise.test.ts
│   │   │   │   └── promise.ts
│   │   │   ├── record/
│   │   │   │   ├── index.ts
│   │   │   │   ├── record.test-d.ts
│   │   │   │   ├── record.test.ts
│   │   │   │   ├── record.ts
│   │   │   │   ├── recordAsync.test-d.ts
│   │   │   │   ├── recordAsync.test.ts
│   │   │   │   ├── recordAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── set/
│   │   │   │   ├── index.ts
│   │   │   │   ├── set.test-d.ts
│   │   │   │   ├── set.test.ts
│   │   │   │   ├── set.ts
│   │   │   │   ├── setAsync.test-d.ts
│   │   │   │   ├── setAsync.test.ts
│   │   │   │   ├── setAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── strictObject/
│   │   │   │   ├── index.ts
│   │   │   │   ├── strictObject.test-d.ts
│   │   │   │   ├── strictObject.test.ts
│   │   │   │   ├── strictObject.ts
│   │   │   │   ├── strictObjectAsync.test-d.ts
│   │   │   │   ├── strictObjectAsync.test.ts
│   │   │   │   ├── strictObjectAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── strictTuple/
│   │   │   │   ├── index.ts
│   │   │   │   ├── strictTuple.test-d.ts
│   │   │   │   ├── strictTuple.test.ts
│   │   │   │   ├── strictTuple.ts
│   │   │   │   ├── strictTupleAsync.test-d.ts
│   │   │   │   ├── strictTupleAsync.test.ts
│   │   │   │   ├── strictTupleAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── string/
│   │   │   │   ├── index.ts
│   │   │   │   ├── string.test-d.ts
│   │   │   │   ├── string.test.ts
│   │   │   │   └── string.ts
│   │   │   ├── symbol/
│   │   │   │   ├── index.ts
│   │   │   │   ├── symbol.test-d.ts
│   │   │   │   ├── symbol.test.ts
│   │   │   │   └── symbol.ts
│   │   │   ├── tuple/
│   │   │   │   ├── index.ts
│   │   │   │   ├── tuple.test-d.ts
│   │   │   │   ├── tuple.test.ts
│   │   │   │   ├── tuple.ts
│   │   │   │   ├── tupleAsync.test-d.ts
│   │   │   │   ├── tupleAsync.test.ts
│   │   │   │   ├── tupleAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── tupleWithRest/
│   │   │   │   ├── index.ts
│   │   │   │   ├── tupleWithRest.test-d.ts
│   │   │   │   ├── tupleWithRest.test.ts
│   │   │   │   ├── tupleWithRest.ts
│   │   │   │   ├── tupleWithRestAsync.test-d.ts
│   │   │   │   ├── tupleWithRestAsync.test.ts
│   │   │   │   ├── tupleWithRestAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── undefined/
│   │   │   │   ├── index.ts
│   │   │   │   ├── undefined.test-d.ts
│   │   │   │   ├── undefined.test.ts
│   │   │   │   └── undefined.ts
│   │   │   ├── undefinedable/
│   │   │   │   ├── index.ts
│   │   │   │   ├── types.ts
│   │   │   │   ├── undefinedable.test-d.ts
│   │   │   │   ├── undefinedable.test.ts
│   │   │   │   ├── undefinedable.ts
│   │   │   │   ├── undefinedableAsync.test-d.ts
│   │   │   │   ├── undefinedableAsync.test.ts
│   │   │   │   └── undefinedableAsync.ts
│   │   │   ├── union/
│   │   │   │   ├── index.ts
│   │   │   │   ├── types.ts
│   │   │   │   ├── union.test-d.ts
│   │   │   │   ├── union.test.ts
│   │   │   │   ├── union.ts
│   │   │   │   ├── unionAsync.test-d.ts
│   │   │   │   ├── unionAsync.test.ts
│   │   │   │   ├── unionAsync.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _subIssues/
│   │   │   │       │   ├── _subIssues.test.ts
│   │   │   │       │   ├── _subIssues.ts
│   │   │   │       │   └── index.ts
│   │   │   │       └── index.ts
│   │   │   ├── unknown/
│   │   │   │   ├── index.ts
│   │   │   │   ├── unknown.test-d.ts
│   │   │   │   ├── unknown.test.ts
│   │   │   │   └── unknown.ts
│   │   │   ├── variant/
│   │   │   │   ├── index.ts
│   │   │   │   ├── types.ts
│   │   │   │   ├── variant.test-d.ts
│   │   │   │   ├── variant.test.ts
│   │   │   │   ├── variant.ts
│   │   │   │   ├── variantAsync.test-d.ts
│   │   │   │   ├── variantAsync.test.ts
│   │   │   │   └── variantAsync.ts
│   │   │   └── void/
│   │   │       ├── index.ts
│   │   │       ├── void.test-d.ts
│   │   │       ├── void.test.ts
│   │   │       └── void.ts
│   │   ├── storages/
│   │   │   ├── globalConfig/
│   │   │   │   ├── globalConfig.test.ts
│   │   │   │   ├── globalConfig.ts
│   │   │   │   └── index.ts
│   │   │   ├── globalMessage/
│   │   │   │   ├── globalMessage.test.ts
│   │   │   │   ├── globalMessage.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── schemaMessage/
│   │   │   │   ├── index.ts
│   │   │   │   ├── schemaMessage.test.ts
│   │   │   │   └── schemaMessage.ts
│   │   │   └── specificMessage/
│   │   │       ├── index.ts
│   │   │       ├── specificMessage.test.ts
│   │   │       └── specificMessage.ts
│   │   ├── types/
│   │   │   ├── config.ts
│   │   │   ├── dataset.ts
│   │   │   ├── index.ts
│   │   │   ├── infer.ts
│   │   │   ├── issue.ts
│   │   │   ├── metadata.ts
│   │   │   ├── object.ts
│   │   │   ├── other.ts
│   │   │   ├── pipe.ts
│   │   │   ├── schema.ts
│   │   │   ├── standard.ts
│   │   │   ├── transformation.ts
│   │   │   ├── tuple.ts
│   │   │   ├── utils.ts
│   │   │   └── validation.ts
│   │   ├── utils/
│   │   │   ├── ValiError/
│   │   │   │   ├── ValiError.test-d.ts
│   │   │   │   ├── ValiError.test.ts
│   │   │   │   ├── ValiError.ts
│   │   │   │   └── index.ts
│   │   │   ├── _addIssue/
│   │   │   │   ├── _addIssue.test.ts
│   │   │   │   ├── _addIssue.ts
│   │   │   │   └── index.ts
│   │   │   ├── _cloneDataset/
│   │   │   │   ├── _cloneDataset.test.ts
│   │   │   │   ├── _cloneDataset.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getByteCount/
│   │   │   │   ├── _getByteCount.test.ts
│   │   │   │   ├── _getByteCount.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getGraphemeCount/
│   │   │   │   ├── _getGraphemeCount.test.ts
│   │   │   │   ├── _getGraphemeCount.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getLastMetadata/
│   │   │   │   ├── _getLastMetadata.test.ts
│   │   │   │   ├── _getLastMetadata.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getStandardProps/
│   │   │   │   ├── _getStandardProps.test-d.ts
│   │   │   │   ├── _getStandardProps.test.ts
│   │   │   │   ├── _getStandardProps.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getWordCount/
│   │   │   │   ├── _getWordCount.test.ts
│   │   │   │   ├── _getWordCount.ts
│   │   │   │   └── index.ts
│   │   │   ├── _isLuhnAlgo/
│   │   │   │   ├── _isLuhnAlgo.test.ts
│   │   │   │   ├── _isLuhnAlgo.ts
│   │   │   │   └── index.ts
│   │   │   ├── _isValidObjectKey/
│   │   │   │   ├── _isValidObjectKey.test.ts
│   │   │   │   ├── _isValidObjectKey.ts
│   │   │   │   └── index.ts
│   │   │   ├── _joinExpects/
│   │   │   │   ├── _joinExpects.test.ts
│   │   │   │   ├── _joinExpects.ts
│   │   │   │   └── index.ts
│   │   │   ├── _stringify/
│   │   │   │   ├── _stringify.test.ts
│   │   │   │   ├── _stringify.ts
│   │   │   │   └── index.ts
│   │   │   ├── entriesFromList/
│   │   │   │   ├── entriesFromList.test-d.ts
│   │   │   │   ├── entriesFromList.test.ts
│   │   │   │   ├── entriesFromList.ts
│   │   │   │   └── index.ts
│   │   │   ├── entriesFromObjects/
│   │   │   │   ├── entriesFromObjects.test-d.ts
│   │   │   │   ├── entriesFromObjects.test.ts
│   │   │   │   ├── entriesFromObjects.ts
│   │   │   │   └── index.ts
│   │   │   ├── getDotPath/
│   │   │   │   ├── getDotPath.test-d.ts
│   │   │   │   ├── getDotPath.test.ts
│   │   │   │   ├── getDotPath.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── isOfKind/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isOfKind.test.ts
│   │   │   │   └── isOfKind.ts
│   │   │   ├── isOfType/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isOfType.test.ts
│   │   │   │   └── isOfType.ts
│   │   │   └── isValiError/
│   │   │       ├── index.ts
│   │   │       ├── isValiError.test.ts
│   │   │       └── isValiError.ts
│   │   └── vitest/
│   │       ├── expectActionIssue.ts
│   │       ├── expectActionIssueAsync.ts
│   │       ├── expectNoActionIssue.ts
│   │       ├── expectNoActionIssueAsync.ts
│   │       ├── expectNoSchemaIssue.ts
│   │       ├── expectNoSchemaIssueAsync.ts
│   │       ├── expectSchemaIssue.ts
│   │       ├── expectSchemaIssueAsync.ts
│   │       └── index.ts
│   ├── tsconfig.json
│   ├── tsdown.config.ts
│   └── vitest.config.ts
├── package.json
├── packages/
│   ├── i18n/
│   │   ├── .gitignore
│   │   ├── CHANGELOG.md
│   │   ├── LICENSE.md
│   │   ├── README.md
│   │   ├── jsr.json
│   │   ├── package.json
│   │   ├── scripts/
│   │   │   ├── build-jsr.ts
│   │   │   └── build-npm.ts
│   │   ├── src/
│   │   │   ├── ar.ts
│   │   │   ├── az.ts
│   │   │   ├── ca.ts
│   │   │   ├── cs.ts
│   │   │   ├── de.ts
│   │   │   ├── el.ts
│   │   │   ├── en.ts
│   │   │   ├── es.ts
│   │   │   ├── fa.ts
│   │   │   ├── fi.ts
│   │   │   ├── fr.ts
│   │   │   ├── hu.ts
│   │   │   ├── id.ts
│   │   │   ├── it.ts
│   │   │   ├── ja.ts
│   │   │   ├── ko.ts
│   │   │   ├── kr.ts
│   │   │   ├── mn.ts
│   │   │   ├── nb.ts
│   │   │   ├── nl.ts
│   │   │   ├── pl.ts
│   │   │   ├── pt.ts
│   │   │   ├── ro.ts
│   │   │   ├── ru.ts
│   │   │   ├── sk.ts
│   │   │   ├── sl.ts
│   │   │   ├── sv.ts
│   │   │   ├── tr.ts
│   │   │   ├── types.ts
│   │   │   ├── uk.ts
│   │   │   ├── vi.ts
│   │   │   ├── zh-CN.ts
│   │   │   └── zh-TW.ts
│   │   └── tsconfig.json
│   └── to-json-schema/
│       ├── CHANGELOG.md
│       ├── LICENSE.md
│       ├── README.md
│       ├── eslint.config.js
│       ├── jsr.json
│       ├── package.json
│       ├── src/
│       │   ├── converters/
│       │   │   ├── convertAction/
│       │   │   │   ├── convertAction.test.ts
│       │   │   │   ├── convertAction.ts
│       │   │   │   └── index.ts
│       │   │   ├── convertSchema/
│       │   │   │   ├── convertSchema.test.ts
│       │   │   │   ├── convertSchema.ts
│       │   │   │   └── index.ts
│       │   │   └── index.ts
│       │   ├── functions/
│       │   │   ├── index.ts
│       │   │   ├── toJsonSchema/
│       │   │   │   ├── index.ts
│       │   │   │   ├── toJsonSchema.test.ts
│       │   │   │   └── toJsonSchema.ts
│       │   │   ├── toJsonSchemaDefs/
│       │   │   │   ├── index.ts
│       │   │   │   ├── toJsonSchemaDefs.test.ts
│       │   │   │   └── toJsonSchemaDefs.ts
│       │   │   └── toStandardJsonSchema/
│       │   │       ├── index.ts
│       │   │       ├── toStandardJsonSchema.test.ts
│       │   │       └── toStandardJsonSchema.ts
│       │   ├── index.ts
│       │   ├── storages/
│       │   │   ├── globalDefs/
│       │   │   │   ├── globalDefs.test.ts
│       │   │   │   ├── globalDefs.ts
│       │   │   │   └── index.ts
│       │   │   └── index.ts
│       │   ├── types/
│       │   │   ├── config.ts
│       │   │   ├── index.ts
│       │   │   ├── schema.ts
│       │   │   └── standard.ts
│       │   ├── utils/
│       │   │   ├── addError.ts
│       │   │   ├── escapeRegExp.ts
│       │   │   ├── handleError.ts
│       │   │   ├── index.ts
│       │   │   ├── isJsonConstValue.ts
│       │   │   └── isJsonEnumValues.ts
│       │   └── vitest/
│       │       ├── createContext.ts
│       │       └── index.ts
│       ├── tsconfig.json
│       ├── tsdown.config.ts
│       └── vitest.config.ts
├── pnpm-workspace.yaml
├── prettier.config.cjs
└── website/
    ├── .gitignore
    ├── .node-version
    ├── .prettierignore
    ├── README.md
    ├── adapters/
    │   └── vercel-edge/
    │       └── vite.config.ts
    ├── eslint.config.js
    ├── package.json
    ├── public/
    │   ├── manifest.json
    │   └── robots.txt
    ├── scripts/
    │   ├── contributors.ts
    │   ├── llms.ts
    │   ├── sitemap.ts
    │   ├── sources.ts
    │   └── utils/
    │       ├── findNestedFiles.ts
    │       └── index.ts
    ├── src/
    │   ├── components/
    │   │   ├── ActionButton.tsx
    │   │   ├── ApiList.tsx
    │   │   ├── ButtonGroup.tsx
    │   │   ├── Chapters.tsx
    │   │   ├── CodeEditor.tsx
    │   │   ├── Credits.tsx
    │   │   ├── DiscordIconLink.tsx
    │   │   ├── DocSearch.tsx
    │   │   ├── DocsLayout.tsx
    │   │   ├── Expandable.tsx
    │   │   ├── Footer.tsx
    │   │   ├── GitHubIconLink.tsx
    │   │   ├── Head.tsx
    │   │   ├── Header.tsx
    │   │   ├── IconButton.tsx
    │   │   ├── Link.tsx
    │   │   ├── MainMenuToggle.tsx
    │   │   ├── Navigation.tsx
    │   │   ├── PostCover.tsx
    │   │   ├── PostList.tsx
    │   │   ├── PostMeta.tsx
    │   │   ├── Property.tsx
    │   │   ├── RoutingIndicator.tsx
    │   │   ├── SearchToggle.tsx
    │   │   ├── SideBar.tsx
    │   │   ├── SpeedInsights.tsx
    │   │   ├── Spinner.tsx
    │   │   ├── SystemIcon.tsx
    │   │   ├── TextLink.tsx
    │   │   ├── ThemeToggle.tsx
    │   │   ├── UnstyledButton.tsx
    │   │   └── index.ts
    │   ├── entry.dev.tsx
    │   ├── entry.preview.tsx
    │   ├── entry.ssr.tsx
    │   ├── entry.vercel-edge.tsx
    │   ├── hooks/
    │   │   ├── index.ts
    │   │   ├── useFocusTrap.ts
    │   │   ├── useMDXComponents.tsx
    │   │   ├── useResetSignal.ts
    │   │   └── useStorageSignal.ts
    │   ├── icons/
    │   │   ├── AngleRightIcon.tsx
    │   │   ├── AngleUpIcon.tsx
    │   │   ├── ArrowLeftIcon.tsx
    │   │   ├── ArrowRrightIcon.tsx
    │   │   ├── BinIcon.tsx
    │   │   ├── CheckIcon.tsx
    │   │   ├── CloseIcon.tsx
    │   │   ├── CopyIcon.tsx
    │   │   ├── DiscordIcon.tsx
    │   │   ├── GitHubIcon.tsx
    │   │   ├── HashtagIcon.tsx
    │   │   ├── LogoIcon.tsx
    │   │   ├── MarkdownIcon.tsx
    │   │   ├── MenuIcon.tsx
    │   │   ├── NightIcon.tsx
    │   │   ├── PageIcon.tsx
    │   │   ├── PenIcon.tsx
    │   │   ├── PlayIcon.tsx
    │   │   ├── PlusIcon.tsx
    │   │   ├── SearchIcon.tsx
    │   │   ├── ShareIcon.tsx
    │   │   ├── SunIcon.tsx
    │   │   └── index.ts
    │   ├── images/
    │   │   └── index.ts
    │   ├── json/
    │   │   └── TypeScript.tmLanguage.json
    │   ├── logos/
    │   │   ├── AlgoliaLogo.tsx
    │   │   ├── BoltLogo.tsx
    │   │   ├── BuilderLogo.tsx
    │   │   ├── DailyDevLogo.tsx
    │   │   ├── DigitalOceanLogo.tsx
    │   │   ├── HdmLogo.tsx
    │   │   ├── LambdaTestLogo.tsx
    │   │   ├── MotionLogo.tsx
    │   │   ├── NetlifyLogo.tsx
    │   │   ├── PaceLogo.tsx
    │   │   ├── StainlessLogo.tsx
    │   │   ├── TestMuAiLogo.tsx
    │   │   ├── VercelLogo.tsx
    │   │   └── index.ts
    │   ├── root.tsx
    │   ├── routes/
    │   │   ├── (legal)/
    │   │   │   ├── contact/
    │   │   │   │   └── index.mdx
    │   │   │   ├── layout.tsx
    │   │   │   └── privacy/
    │   │   │       └── index.mdx
    │   │   ├── 404.tsx
    │   │   ├── api/
    │   │   │   ├── (actions)/
    │   │   │   │   ├── args/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── base64/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── bic/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── brand/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── bytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── check/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── checkItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── creditCard/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── cuid2/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── decimal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── description/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── digits/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── domain/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── email/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── emoji/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── empty/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── endsWith/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── entries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── everyItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── examples/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── excludes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── filterItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── findItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── finite/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── flavor/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── graphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── gtValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── guard/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── hash/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── hexColor/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── hexadecimal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── imei/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── includes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── integer/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ip/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ipv4/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ipv6/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isbn/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoDate/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoDateTime/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoTime/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoTimeSecond/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoTimestamp/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoWeek/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isrc/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── jwsCompact/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── length/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ltValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mac/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mac48/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mac64/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mapItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxBytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxGraphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxLength/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxSize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxWords/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── metadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mimeType/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minBytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minGraphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minLength/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minSize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minWords/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── multipleOf/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nanoid/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonEmpty/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── normalize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notBytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notGraphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notLength/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notSize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notValues/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notWords/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── octal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parseBoolean/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parseJson/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partialCheck/
    │   │   │   │   │   ├── ValidPaths/
    │   │   │   │   │   │   └── index.mdx
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawCheck/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawTransform/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── readonly/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── reduceItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── regex/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── returns/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rfcEmail/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeInteger/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── size/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── slug/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── someItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── sortItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── startsWith/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── stringifyJson/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── title/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toBigint/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toBoolean/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toDate/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toLowerCase/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toMaxValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toMinValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toNumber/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toString/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toUpperCase/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── transform/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── trim/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── trimEnd/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── trimStart/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ulid/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── url/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── uuid/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── value/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── values/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── words/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (async)/
    │   │   │   │   ├── argsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── arrayAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── awaitAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── cacheAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── checkAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── checkItemsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── customAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── exactOptionalAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── fallbackAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── forwardAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDefaultsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getFallbacksAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── intersectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── lazyAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseObjectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseTupleAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mapAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullableAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullishAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonOptionalAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullableAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullishAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── objectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── objectWithRestAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── optionalAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parseAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partialAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partialCheckAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── pipeAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawCheckAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawTransformAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── recordAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── requiredAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── returnsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParseAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictObjectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictTupleAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── transformAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tupleAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tupleWithRestAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── undefinedableAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── unionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── variantAsync/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (methods)/
    │   │   │   │   ├── assert/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── cache/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── config/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── fallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── flatten/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── forward/
    │   │   │   │   │   ├── ValidPath/
    │   │   │   │   │   │   └── index.mdx
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDefault/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDefaults/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDescription/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getExamples/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getFallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getFallbacks/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getMetadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getTitle/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── is/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── keyof/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── message/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── omit/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parse/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partial/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── pick/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── pipe/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── required/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParse/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── summarize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── unwrap/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (schemas)/
    │   │   │   │   ├── any/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── array/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── bigint/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── blob/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── boolean/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── custom/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── date/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── enum/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── exactOptional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── file/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── function/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── instance/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── intersect/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── lazy/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── literal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseObject/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseTuple/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── map/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nan/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── never/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullish/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonOptional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── null/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullish/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── number/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── object/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── objectWithRest/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── optional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── picklist/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── promise/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── record/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── set/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictObject/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictTuple/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── string/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── symbol/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tuple/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tupleWithRest/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── undefined/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── undefinedable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── union/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── unknown/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── variant/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── void/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (storages)/
    │   │   │   │   ├── deleteGlobalConfig/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── deleteGlobalMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── deleteSchemaMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── deleteSpecificMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getGlobalConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getGlobalMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getSchemaMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getSpecificMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setGlobalConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setGlobalMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setSchemaMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── setSpecificMessage/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (types)/
    │   │   │   │   ├── AnySchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArgsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArgsActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayRequirement/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayRequirementAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArraySchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArraySchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── AwaitActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Base64Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Base64Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseMetadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseTransformation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseTransformationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseValidation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseValidationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BicAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BicIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BigintIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BigintSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BlobIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BlobSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BooleanIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BooleanSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Brand/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BrandAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BrandName/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Cache/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CacheConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckItemsActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckItemsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Class/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Config/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ContentInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ContentRequirement/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CreditCardAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CreditCardIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Cuid2Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Cuid2Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CustomIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CustomSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CustomSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DateIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DateSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DecimalAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DecimalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DeepPickN/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── Default/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DefaultAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DefaultValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DescriptionAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DigitsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DigitsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DomainAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DomainIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmailAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmailIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmojiAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmojiIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmptyAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmptyIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EndsWithAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EndsWithIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EntriesInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Enum/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EnumIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EnumSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ErrorMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EveryItemAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EveryItemIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExactOptionalSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExactOptionalSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExamplesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExcludesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExcludesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FailureDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Fallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FallbackAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FileIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FileSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FilterItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FindItemAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FiniteAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FiniteIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FirstTupleItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FlatErrors/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── Flavor/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FlavorAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FlavorName/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FunctionIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FunctionSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericMetadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeItemAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericTransformation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericTransformationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericValidation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericValidationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GlobalConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GtValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GtValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GuardAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GuardFunction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GuardIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HashAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HashIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HashType/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexColorAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexColorIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexadecimalAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexadecimalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ImeiAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ImeiIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IncludesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IncludesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferDefault/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferDefaults/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferExamples/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferFallback/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferFallbacks/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferGuardOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferIntersectInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferIntersectOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferMapInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferMapOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferMetadata/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullableInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullableIssue/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullableOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullishInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullishIssue/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullishOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonOptionalInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonOptionalIssue/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonOptionalOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNullableOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferNullishOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferObjectInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferObjectOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferOptionalOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferRecordInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferRecordOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferSetInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferSetOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferTupleInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferTupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferTupleOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferVariantIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InstanceIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InstanceSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntegerAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntegerIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectOptionsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IpAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IpIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv4Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv4Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv6Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv6Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsbnAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsbnIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateTimeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateTimeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeSecondAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeSecondIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimestampAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimestampIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoWeekAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoWeekIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsrcAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsrcIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IssueDotPath/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── IssuePathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── JwsCompactAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── JwsCompactIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LastTupleItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LazySchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LazySchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LengthInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Literal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LiteralIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LiteralSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseObjectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseObjectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseTupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseTupleSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseTupleSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LtValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LtValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac48Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac48Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac64Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac64Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MacAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MacIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxBytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxBytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxEntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxEntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxGraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxGraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxLengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxLengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxSizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxSizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxWordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxWordsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaybePromise/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaybeReadonly/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MetadataAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MimeTypeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MimeTypeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinBytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinBytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinEntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinEntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinGraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinGraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinLengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinLengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinSizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinSizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinWordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinWordsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MultipleOfAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MultipleOfIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NanIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NanSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NeverIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NeverSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonEmptyAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonEmptyIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullableIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullableSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullableSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullish/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullishIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullishSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullishSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptionalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptionalSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptionalSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NormalizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NormalizeForm/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotBytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotBytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotEntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotEntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotGraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotGraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotLengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotLengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotSizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotSizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValuesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValuesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotWordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotWordsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullableSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullableSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullishSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullishSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NumberIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NumberSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectEntriesAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectKeys/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectWithRestIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectWithRestSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectWithRestSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OctalAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OctalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OptionalSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OptionalSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OutputDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseBooleanAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseBooleanConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseBooleanIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseJsonAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseJsonConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseJsonIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Parser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialCheckAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialCheckActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialCheckIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Path/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PicklistIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PicklistOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PicklistSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeItemAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PromiseIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PromiseSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckAddIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckContext/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckIssueInfo/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformAddIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformContext/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformIssueInfo/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReadonlyAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RecordIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RecordSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RecordSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReduceItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Reference/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RegexAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RegexIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RequiredPath/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RequiredPaths/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReturnsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReturnsActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RfcEmailAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RfcEmailIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeIntegerAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeIntegerIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeParseResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeParser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeParserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithCache/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithCacheAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithFallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithFallbackAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithPartial/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithPartialAsync/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithPipe/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithPipeAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithRequired/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithRequiredAsync/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithoutPipe/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SizeInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SlugAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SlugIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SomeItemAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SomeItemIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SortItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardFailureResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardProps/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardSuccessResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardTypes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StartsWithAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StartsWithIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictObjectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictObjectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictTupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictTupleSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictTupleSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringifyJsonAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringifyJsonConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringifyJsonIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SuccessDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SymbolIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SymbolSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TitleAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToBigintAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToBigintIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToBooleanAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToDateAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToDateIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToLowerCaseAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToMaxValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToMinValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToNumberAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToNumberIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToStringAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToStringIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToUpperCaseAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TransformAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TransformActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TrimAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TrimEndAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TrimStartAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleItemsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleWithRestIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleWithRestSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleWithRestSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UlidAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UlidIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedableSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedableSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionOptionsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnknownDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnknownPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnknownSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UrlAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UrlIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UuidAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UuidIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValueInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValuesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValuesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOption/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOptionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOptionsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VoidIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VoidSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── WordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── WordsIssue/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (utils)/
    │   │   │   │   ├── ValiError/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── entriesFromList/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── entriesFromObjects/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDotPath/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isOfKind/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isOfType/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── isValiError/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── index.tsx
    │   │   │   ├── layout.tsx
    │   │   │   └── menu.md
    │   │   ├── blog/
    │   │   │   ├── (posts)/
    │   │   │   │   ├── first-draft-of-the-new-pipe-function/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── how-valibot-has-evolved-this-year/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── introducing-open-circle/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── json-schema-package-upgrade/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── layout.tsx
    │   │   │   │   ├── should-we-change-the-object-schema/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── should-we-change-valibots-api/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v0.31.0-is-finally-available/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1-rc-is-available/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1-the-1-kb-schema-library/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1.1-release-notes/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1.2-release-notes/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── valibot-v1.3-release-notes/
    │   │   │   │       └── index.mdx
    │   │   │   └── index.tsx
    │   │   ├── guides/
    │   │   │   ├── (advanced)/
    │   │   │   │   ├── async-validation/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── extend-valibot/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── integrate-valibot/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── internal-architecture/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── internationalization/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── json-schema/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── naming-convention/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (get-started)/
    │   │   │   │   ├── comparison/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── ecosystem/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── installation/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── introduction/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── llms-txt/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── quick-start/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── use-cases/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (main-concepts)/
    │   │   │   │   ├── errors/
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── infer-types/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── issues/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── mental-model/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── methods/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── parse-data/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── pipelines/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── schemas/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (migration)/
    │   │   │   │   ├── migrate-from-v0.30.0/
    │   │   │   │   │   └── index.ts
    │   │   │   │   ├── migrate-from-zod/
    │   │   │   │   │   ├── CodemodEditor.tsx
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── zod/
    │   │   │   │   │       ├── code.ts
    │   │   │   │   │       ├── v3/
    │   │   │   │   │       │   ├── index.d.ts
    │   │   │   │   │       │   └── package.json
    │   │   │   │   │       └── v4/
    │   │   │   │   │           ├── index.d.ts
    │   │   │   │   │           └── package.json
    │   │   │   │   └── migrate-to-v0.31.0/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (schemas)/
    │   │   │   │   ├── arrays/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── enums/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── intersections/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── objects/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── optionals/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── other/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── unions/
    │   │   │   │       └── index.mdx
    │   │   │   ├── index.tsx
    │   │   │   ├── layout.tsx
    │   │   │   └── menu.md
    │   │   ├── index.tsx
    │   │   ├── layout.tsx
    │   │   ├── og-image/
    │   │   │   └── index.ts
    │   │   ├── playground/
    │   │   │   ├── editorCode.ts
    │   │   │   ├── iframeCode.js
    │   │   │   └── index.tsx
    │   │   ├── plugin@chapters.ts
    │   │   └── plugin@theme.ts
    │   ├── styles/
    │   │   ├── pace.css
    │   │   └── root.css
    │   └── utils/
    │       ├── disableTransitions.ts
    │       ├── index.ts
    │       └── trackEvent.ts
    ├── tsconfig.json
    ├── vercel.json
    └── vite.config.ts

================================================
FILE CONTENTS
================================================

================================================
FILE: .agents/skills/repo-source-code-document/SKILL.md
================================================
---
name: repo-source-code-document
description: Write JSDoc comments and inline documentation for Valibot library source code in /library/src/. Use when documenting schemas, actions, methods, or utilities. Covers interface documentation, function overloads, purity annotations, inline comment patterns, and terminology consistency.
---

# Valibot Source Code Documentation

Documentation patterns for library source code in `/library/src/`.

## JSDoc Patterns

### Interface Documentation

```typescript
/**
 * String issue interface.
 */
export interface StringIssue extends BaseIssue<unknown> {
  /**
   * The issue kind.
   */
  readonly kind: 'schema';
  /**
   * The issue type.
   */
  readonly type: 'string';
}
```

**Rules:**

- First line: `[Name] [category] interface.` (e.g., "String issue interface.")
- Property comments: `The [description].` (always start with "The", end with period)
- All properties use `readonly`
- No blank lines between property and its comment

### Function Overloads

Each overload gets its own complete JSDoc:

```typescript
/**
 * Creates a string schema.
 *
 * @returns A string schema.
 */
export function string(): StringSchema<undefined>;

/**
 * Creates a string schema.
 *
 * @param message The error message.
 *
 * @returns A string schema.
 */
export function string<
  const TMessage extends ErrorMessage<StringIssue> | undefined,
>(message: TMessage): StringSchema<TMessage>;
```

**Rules:**

- First line: `Creates a [name] [category].` (use "a" vs "an" correctly)
- Blank line after description
- `@param name The [description].` (start with "The", end with period)
- Blank line after params
- `@returns A [name] [category].` or `@returns The [description].`

### Hints

Add hints after the main description, before `@param`:

```typescript
/**
 * Creates an object schema.
 *
 * Hint: This schema removes unknown entries. To include unknown entries, use
 * `looseObject`. To reject unknown entries, use `strictObject`.
 *
 * @param entries The entries schema.
 *
 * @returns An object schema.
 */
```

### Links

Link to external resources when relevant using markdown format:

```typescript
/**
 * Creates an [email](https://en.wikipedia.org/wiki/Email_address) validation action.
 */
```

### Implementation Function

The implementation has **NO JSDoc** but uses `// @__NO_SIDE_EFFECTS__`:

```typescript
// @__NO_SIDE_EFFECTS__
export function string(
  message?: ErrorMessage<StringIssue>
): StringSchema<ErrorMessage<StringIssue> | undefined> {
  return {
    /* ... */
  };
}
```

**`// @__NO_SIDE_EFFECTS__` rules:**

- Add for pure functions (no external state mutation, no I/O)
- Most schema/action/method factories are pure
- **Do NOT add** for functions that mutate arguments (like `_addIssue`)
- Used by bundlers for tree-shaking

### Utility Functions

```typescript
/**
 * Stringifies an unknown input to a literal or type string.
 *
 * @param input The unknown input.
 *
 * @returns A literal or type string.
 *
 * @internal
 */
// @__NO_SIDE_EFFECTS__
export function _stringify(input: unknown): string {
  // ...
}
```

**Rules:**

- Use `@internal` tag for internal utilities
- Prefix internal functions with `_`
- Only add `// @__NO_SIDE_EFFECTS__` if function is pure

## Inline Comment Patterns

### Section Headers

```typescript
'~run'(dataset, config) {
  // Get input value from dataset
  const input = dataset.value;

  // If root type is valid, check nested types
  if (Array.isArray(input)) {
    // Set typed to true and value to empty array
    dataset.typed = true;
    dataset.value = [];

    // Parse schema of each array item
    for (let key = 0; key < input.length; key++) {
      // ...
    }
  }
}
```

**Rules:**

- Describe WHAT the next code block does
- Present tense verbs: "Get", "Parse", "Check", "Set", "Add", "Create"
- **Omit articles** ("the", "a", "an"): "Get input value" not "Get the input value"
- No period at end
- Blank line before comment, no blank line after

### Conditional Logic

```typescript
// If root type is valid, check nested types
if (input && typeof input === 'object') {
  // ...
}

// Otherwise, add issue
else {
  _addIssue(this, 'type', dataset, config);
}
```

**Rules:**

- Use "If [condition], [action]"
- Use "Otherwise, [action]" for else branches
- Omit articles

### Hint Comments (Exception)

```typescript
// Hint: The issue is deliberately not constructed with the spread operator
// for performance reasons
const issue: BaseIssue<unknown> = {
  /* ... */
};
```

**Rules:**

- Start with "Hint:"
- Explain WHY, not just what
- **CAN use articles** (unlike other inline comments)
- Document performance decisions, non-obvious logic

### TODO Comments

```typescript
// TODO: Should we add "n" suffix to bigints?
if (type === 'bigint') {
  /* ... */
}
```

### @ts-expect-error

Used for internal dataset mutations TypeScript can't track:

```typescript
// @ts-expect-error
dataset.typed = true;
```

## File Type Patterns

### Schema Files (`string.ts`, `object.ts`, etc.)

1. Issue interface with JSDoc
2. Schema interface with JSDoc
3. Function overloads with full JSDoc each
4. Implementation with `// @__NO_SIDE_EFFECTS__`
5. Return object with `'~run'` method containing inline comments

### Action Files (`email.ts`, `minLength.ts`, etc.)

1. Issue interface (for validation actions)
2. Action interface with JSDoc
3. Function overloads with JSDoc
4. Implementation with `// @__NO_SIDE_EFFECTS__`

### Method Files (`parse.ts`, `pipe.ts`, etc.)

More complex logic, require more inline comments.

### Utility Files (`_addIssue.ts`, `_stringify.ts`)

1. Single function with JSDoc including `@internal`
2. `// @__NO_SIDE_EFFECTS__` only if pure

## Terminology Consistency

JSDoc descriptions must match the `kind` property if present:

| `kind` Property    | JSDoc Wording                          |
| ------------------ | -------------------------------------- |
| `'schema'`         | "Creates a ... schema."                |
| `'validation'`     | "Creates a ... validation action."     |
| `'transformation'` | "Creates a ... transformation action." |

## Quick Reference

### JSDoc First Lines

| Type      | Pattern                        |
| --------- | ------------------------------ |
| Interface | `[Name] [category] interface.` |
| Type      | `[Name] [category] type.`      |
| Function  | `Creates a [name] [category].` |
| Utility   | `[Verb]s [description].`       |

### Inline Comment Starters

| Pattern                        | Example                                        |
| ------------------------------ | ---------------------------------------------- |
| `// Get [what]`                | `// Get input value from dataset`              |
| `// If [condition], [action]`  | `// If root type is valid, check nested types` |
| `// Otherwise, [action]`       | `// Otherwise, add issue`                      |
| `// Create [what]`             | `// Create object path item`                   |
| `// Add [what] to [where]`     | `// Add issues to dataset`                     |
| `// Parse [what]`              | `// Parse schema of each array item`           |
| `// Set [property] to [value]` | `// Set typed to true`                         |
| `// Hint: [explanation]`       | `// Hint: This is for performance`             |
| `// TODO: [task]`              | `// TODO: Add bigint suffix`                   |

## Terminology

Use consistently:

- **Schema** (not "validator")
- **Action** (not "validation" for the object)
- **Issue** (not "error" in type names)
- **Dataset** (internal data structure)
- **Config/Configuration** (not "options")

## Checklist

- [ ] Interfaces: `[Name] [category] interface.`
- [ ] Properties: `The [description].`
- [ ] Overloads: Complete JSDoc each
- [ ] Implementation: NO JSDoc
- [ ] Pure functions: `// @__NO_SIDE_EFFECTS__`
- [ ] Impure functions (mutate args): NO `@__NO_SIDE_EFFECTS__`
- [ ] Internal utilities: `@internal` tag
- [ ] Inline comments: No articles (except Hint), no periods
- [ ] JSDoc comments: End with periods


================================================
FILE: .agents/skills/repo-source-code-review/SKILL.md
================================================
---
name: repo-source-code-review
description: Review pull requests and source code changes in /library/src/. Use when reviewing PRs, validating implementation patterns, or checking code quality before merging. Covers code quality checks, type safety, documentation review, test coverage, and common issues to watch for.
---

# Reviewing Source Code Changes

Guide for reviewing PRs and source code changes in `/library/src/`.

## When to Use This Guide

- Reviewing pull requests modifying library source
- Validating implementation patterns before merging
- Checking code quality, types, documentation, and tests

## Review Process

1. **Understand the change** — Read PR description, identify affected files
2. **Check patterns** — Verify code follows existing conventions
3. **Verify types** — Ensure type safety and proper inference
4. **Review docs** — Confirm JSDoc is complete and accurate
5. **Check tests** — Validate runtime and type test coverage

## What to Review

### Code Quality

| Check             | Requirement                                                           |
| ----------------- | --------------------------------------------------------------------- |
| Naming            | Matches existing patterns (`StringSchema`, `minLength`, `_parse`)     |
| Purity annotation | `// @__NO_SIDE_EFFECTS__` before pure factory functions               |
| Import extensions | All imports use `.ts` extension                                       |
| Interface vs type | Use `interface` for object shapes, `type` for unions/aliases          |
| Folder structure  | Each API has: `name.ts`, `name.test.ts`, `name.test-d.ts`, `index.ts` |

**Good — purity annotation:**

```typescript
// @__NO_SIDE_EFFECTS__
export function string(message?: ErrorMessage<StringIssue>): StringSchema {
  return {
    /* ... */
  };
}
```

**Bad — missing annotation:**

```typescript
export function string(message?: ErrorMessage<StringIssue>): StringSchema {
  return {
    /* ... */
  };
}
```

### Type Safety

| Check             | Requirement                                           |
| ----------------- | ----------------------------------------------------- |
| Generic inference | Types infer correctly without explicit annotations    |
| Constraints       | Generic parameters have appropriate `extends` clauses |
| Return types      | Explicit return types on exported functions           |
| Type tests        | `.test-d.ts` file covers type inference scenarios     |

**Good — constrained generic:**

```typescript
export function minLength<
  TInput extends LengthInput,
  TRequirement extends number,
>(
  requirement: TRequirement,
  message?: ErrorMessage<MinLengthIssue<TInput, TRequirement>>
): MinLengthAction<TInput, TRequirement>;
```

### Documentation

| Check          | Requirement                                       |
| -------------- | ------------------------------------------------- |
| JSDoc present  | All exported functions have JSDoc                 |
| First line     | Action verb matching function purpose (see below) |
| `@param` tags  | Every parameter documented                        |
| `@returns` tag | Return value documented                           |
| Overloads      | Every overload has its own complete JSDoc block   |

**First line patterns by category:**

| Category       | Pattern                                        |
| -------------- | ---------------------------------------------- |
| Schemas        | `Creates a ... schema.`                        |
| Actions        | `Creates a ... action.`                        |
| Parse methods  | `Parses ...`                                   |
| Type guards    | `Checks if ...`                                |
| Unwrap methods | `Unwraps ...`                                  |
| Other methods  | `Creates a ...`, `Returns ...`, `Forwards ...` |

See `repo-source-code-document` skill for full documentation rules.

### Tests

| Check          | Requirement                                                |
| -------------- | ---------------------------------------------------------- |
| Runtime tests  | `.test.ts` covers success cases, failure cases, edge cases |
| Type tests     | `.test-d.ts` validates type inference with `expectTypeOf`  |
| Issue messages | Tests verify correct error messages and issue structure    |

## Common Issues

| Issue                     | What to Look For                                             |
| ------------------------- | ------------------------------------------------------------ |
| Missing purity annotation | Factory function without `// @__NO_SIDE_EFFECTS__`           |
| Incomplete JSDoc          | Missing `@param` or `@returns`, wrong description format     |
| No type tests             | New API without `.test-d.ts` file                            |
| Wrong import extension    | Imports without `.ts` suffix                                 |
| Inconsistent naming       | Schema not ending in `Schema`, action not ending in `Action` |
| Side effects in pure code | Mutations, I/O, or global state in schema/action creation    |

## Checklist

- [ ] Implementation follows existing patterns in similar files
- [ ] `// @__NO_SIDE_EFFECTS__` on pure factory functions
- [ ] All imports use `.ts` extension
- [ ] `interface` used for object shapes
- [ ] JSDoc complete on all exports
- [ ] Runtime tests in `.test.ts`
- [ ] Type tests in `.test-d.ts`
- [ ] Naming conventions followed

## Related Skills

- `repo-structure-navigate` — Navigate the codebase
- `repo-source-code-document` — JSDoc requirements


================================================
FILE: .agents/skills/repo-structure-navigate/SKILL.md
================================================
---
name: repo-structure-navigate
description: Navigate the Valibot repository structure. Use when looking for files, understanding the codebase layout, finding schema/action/method implementations, locating tests, API docs, or guide pages. Covers monorepo layout, library architecture, file naming conventions, and quick lookups.
---

# Valibot Repository Structure

## Monorepo Layout

```
valibot/
├── library/          # Core valibot package (zero dependencies)
├── packages/
│   ├── i18n/         # Translated error messages (25+ languages)
│   └── to-json-schema/  # JSON Schema converter
├── codemod/
│   ├── migrate-to-v0.31.0/  # Version migration
│   └── zod-to-valibot/      # Zod converter
├── website/          # valibot.dev (Qwik + Vite)
├── brand/            # Brand assets
├── skills/           # Agent skills (this folder)
└── prompts/          # Legacy AI agent guides
```

## Core Library (`/library/src/`)

### Directory Structure

| Directory   | Purpose                         | Examples                                      |
| ----------- | ------------------------------- | --------------------------------------------- |
| `schemas/`  | Data type validators            | `string/`, `object/`, `array/`, `union/`      |
| `actions/`  | Validation & transformation     | `email/`, `minLength/`, `trim/`, `transform/` |
| `methods/`  | High-level API                  | `parse/`, `safeParse/`, `pipe/`, `partial/`   |
| `types/`    | TypeScript definitions          | `schema.ts`, `issue.ts`, `dataset.ts`         |
| `utils/`    | Internal helpers (prefixed `_`) | `_addIssue/`, `_stringify/`, `ValiError/`     |
| `storages/` | Global state                    | Config, message storage                       |

### Schema Categories

- **Primitives**: `string`, `number`, `boolean`, `bigint`, `date`, `symbol`, `blob`, `file`
- **Objects**: `object`, `strictObject`, `looseObject`, `objectWithRest`
- **Arrays**: `array`, `tuple`, `strictTuple`, `looseTuple`, `tupleWithRest`
- **Advanced**: `union`, `variant`, `intersect`, `record`, `map`, `set`, `lazy`, `custom`
- **Modifiers**: `optional`, `nullable`, `nullish`, `nonNullable`, `nonNullish`, `nonOptional`

### Action Types

**Validation** (return issues): `email`, `url`, `uuid`, `regex`, `minLength`, `maxValue`, `check`

**Transformation** (modify data): `trim`, `toLowerCase`, `toUpperCase`, `mapItems`, `transform`

**Metadata**: `brand`, `flavor`, `metadata`, `description`, `title`

### File Naming Convention

Each schema/action/method has its own directory:

```
schemas/string/
├── string.ts        # Implementation
├── string.test.ts   # Runtime tests
├── string.test-d.ts # Type tests
└── index.ts         # Re-export
```

### Core Patterns

**Schemas** define data types:

```typescript
export interface StringSchema<TMessage> extends BaseSchema<...> {
  readonly kind: 'schema';
  readonly type: 'string';
  // ...
}
```

**Actions** validate/transform in pipelines:

```typescript
export interface EmailAction<TInput, TMessage> extends BaseValidation<...> {
  readonly kind: 'validation';
  readonly type: 'email';
  // ...
}
```

**Methods** provide API functions:

```typescript
export function parse<TSchema>(
  schema: TSchema,
  input: unknown
): InferOutput<TSchema>;
```

### Key Types

- `BaseSchema`, `BaseValidation`, `BaseTransformation` - Base interfaces
- `InferOutput<T>`, `InferInput<T>`, `InferIssue<T>` - Type inference
- `Config`, `ErrorMessage<T>`, `BaseIssue<T>` - Configuration and errors
- `'~standard'` property - [Standard Schema](https://github.com/standard-schema/standard-schema) compatibility

## Website (`/website/src/routes/`)

### API Documentation

```
routes/api/
├── (schemas)/string/     # Schema docs
│   ├── index.mdx         # MDX content
│   └── properties.ts     # Type definitions
├── (actions)/email/      # Action docs
├── (methods)/parse/      # Method docs
├── (types)/StringSchema/ # Type docs
└── menu.md               # Navigation
```

### Guides

```
routes/guides/
├── (get-started)/       # Intro, installation
├── (main-concepts)/     # Schemas, pipelines, parsing
├── (schemas)/           # Objects, arrays, unions
├── (advanced)/          # Async, i18n, JSON Schema
├── (migration)/         # Version upgrades
└── menu.md              # Navigation
```

## Development

### Playground

Use `library/playground.ts` for quick experimentation.

### Adding a Schema/Action

1. Create directory: `library/src/schemas/yourSchema/`
2. Create files: `yourSchema.ts`, `yourSchema.test.ts`, `yourSchema.test-d.ts`, `index.ts`
3. Follow existing patterns (copy similar implementation)
4. Export from category `index.ts`
5. Run `pnpm -C library test`

### Modifying Core Types

⚠️ Changes to `library/src/types/` affect the entire library. Always run full test suite.

## Quick Lookups

| Looking for...        | Location                                       |
| --------------------- | ---------------------------------------------- |
| Schema implementation | `library/src/schemas/[name]/[name].ts`         |
| Action implementation | `library/src/actions/[name]/[name].ts`         |
| Method implementation | `library/src/methods/[name]/[name].ts`         |
| Type definitions      | `library/src/types/`                           |
| Internal utilities    | `library/src/utils/`                           |
| Error messages (i18n) | `packages/i18n/[lang]/`                        |
| API docs page         | `website/src/routes/api/(category)/[name]/`    |
| Guide page            | `website/src/routes/guides/(category)/[name]/` |
| Tests                 | Same directory as source, `.test.ts` suffix    |
| Type tests            | Same directory as source, `.test-d.ts` suffix  |

## Commands

```bash
# Library
pnpm -C library build      # Build
pnpm -C library test       # Run tests
pnpm -C library lint       # Lint
pnpm -C library format     # Format

# Website
pnpm -C website dev        # Dev server
pnpm -C website build      # Production build

# Root
pnpm install               # Install all
pnpm format                # Format all
```

## Key Principles

1. **Modularity** - Small, focused functions; one per file
2. **Zero dependencies** - Core library has no runtime deps
3. **100% test coverage** - Required for library
4. **Tree-shakable** - Use `// @__NO_SIDE_EFFECTS__` annotation
5. **Type-safe** - Full TypeScript with strict mode
6. **ESM only** - Imports include `.ts` extensions

## Do's and Don'ts

**Do:**

- Follow existing code patterns
- Write runtime and type tests
- Add JSDoc documentation
- Keep functions small and focused
- Check bundle size impact

**Don't:**

- Add external dependencies
- Modify core types without full test run
- Skip tests
- Create large multi-purpose functions
- Modify generated files (`dist/`, `coverage/`)


================================================
FILE: .agents/skills/repo-website-api-create/SKILL.md
================================================
---
name: repo-website-api-create
description: Create new API reference pages for the Valibot website at website/src/routes/api/. Use when adding documentation for new schemas, actions, methods, or types. Covers reading source code, creating properties.ts and index.mdx files, updating menu.md, and cross-referencing related APIs.
---

# Adding API Documentation to Website

Guide for creating new API reference pages at `website/src/routes/api/`.

## Process Overview

1. Read source code in `/library/src/`
2. Create folder in `/website/src/routes/api/(category)/[name]/`
3. Create `properties.ts` with type definitions
4. Create `index.mdx` with documentation
5. Update `menu.md`
6. Create type documentation if needed (Issue, Schema/Action interfaces)

## File Structure

```
website/src/routes/api/
├── (schemas)/string/
│   ├── index.mdx        # Documentation content
│   └── properties.ts    # Type definitions for Property component
├── (actions)/email/
├── (methods)/parse/
├── (types)/StringSchema/
└── menu.md              # Navigation (alphabetical order)
```

Categories: `(schemas)`, `(actions)`, `(methods)`, `(types)`, `(utils)`, `(async)`, `(storages)`

## Reading Source Code

### What to Extract

From `/library/src/schemas/string/string.ts`:

```typescript
// 1. Issue interface → Document in (types)/StringIssue/
export interface StringIssue extends BaseIssue<unknown> { ... }

// 2. Schema interface → Document in (types)/StringSchema/
export interface StringSchema<TMessage extends ErrorMessage<StringIssue> | undefined>
  extends BaseSchema<string, string, StringIssue> { ... }

// 3. Function overloads → Main documentation
export function string(): StringSchema<undefined>;
export function string<const TMessage>(message: TMessage): StringSchema<TMessage>;

// 4. JSDoc → Description, hints, parameter docs
/**
 * Creates a string schema.
 *
 * Hint: This is an example hint.
 *
 * @param message The error message.
 *
 * @returns A string schema.
 */
```

**JSDoc hints** become blockquotes in the Explanation section:

```mdx
> This is an example hint.
```

### Extract for properties.ts

- Generic parameters and constraints (e.g., `TMessage extends ErrorMessage<...> | undefined`)
- Function parameters and types
- Return type

## properties.ts

Import and define properties matching source code:

```typescript
import type { PropertyProps } from '~/components';

export const properties: Record<string, PropertyProps> = {
  // Generics (use modifier: 'extends')
  TMessage: {
    modifier: 'extends',
    type: {
      type: 'union',
      options: [
        {
          type: 'custom',
          name: 'ErrorMessage',
          href: '../ErrorMessage/',
          generics: [
            { type: 'custom', name: 'StringIssue', href: '../StringIssue/' },
          ],
        },
        'undefined',
      ],
    },
  },

  // Parameters (reference generic or direct type)
  message: {
    type: { type: 'custom', name: 'TMessage' },
  },

  // Return type
  Schema: {
    type: {
      type: 'custom',
      name: 'StringSchema',
      href: '../StringSchema/',
      generics: [{ type: 'custom', name: 'TMessage' }],
    },
  },
};
```

### Optional Object Keys

For optional object keys from TypeScript source such as `key?: string`, do not append `?` to the property name in `properties.ts`.

Use the plain key name and represent optionality in the value type with `undefined` as the last union option:

```typescript
payload: {
  type: {
    type: 'object',
    entries: [
      {
        key: 'key',
        value: {
          type: 'union',
          options: ['string', 'undefined'],
        },
      },
    ],
  },
},
```

### DefinitionData Types

| Type            | Syntax                                                                         |
| --------------- | ------------------------------------------------------------------------------ |
| Primitive       | `'string'`, `'number'`, `'boolean'`, `'unknown'`, etc.                         |
| Literal string  | `{ type: 'string', value: 'email' }`                                           |
| Literal number  | `{ type: 'number', value: 5 }`                                                 |
| Custom/Named    | `{ type: 'custom', name: 'TypeName', href: '../TypeName/', generics: [...] }`  |
| Custom+modifier | `{ type: 'custom', modifier: 'typeof', name: 'string', href: '../string/' }`   |
| Union           | `{ type: 'union', options: [type1, type2] }`                                   |
| Intersect       | `{ type: 'intersect', options: [type1, type2] }`                               |
| Array           | `{ type: 'array', item: elementType }`                                         |
| Tuple           | `{ type: 'tuple', items: [type1, type2] }`                                     |
| Object          | `{ type: 'object', entries: [{ key: 'name', value: type }] }`                   |
| Function        | `{ type: 'function', params: [{ name: 'x', type: t }], return: retType }`      |
| Template        | `{ type: 'template', parts: [{ type: 'string', value: '>=' }, otherType] }`    |

## index.mdx Template

```mdx
---
title: functionName
description: One-line description from JSDoc.
source: /schemas/string/string.ts
contributors:
  - github-username
---

import { ApiList, Property } from '~/components';
import { properties } from './properties';

# functionName

Creates a string schema.

\`\`\`ts
const Schema = v.functionName<TMessage>(message);
\`\`\`

## Generics

- \`TMessage\` <Property {...properties.TMessage} />

## Parameters

- \`message\` <Property {...properties.message} />

### Explanation

With \`functionName\` you can validate... If the input does not match, you can use \`message\` to customize the error message.

## Returns

- \`Schema\` <Property {...properties.Schema} />

## Examples

The following examples show how \`functionName\` can be used.

### Email schema

Schema to validate an email.

\`\`\`ts
const EmailSchema = v.pipe(
v.string(),
v.nonEmpty('Please enter your email.'),
v.email('The email is badly formatted.')
);
\`\`\`

## Related

The following APIs can be combined with \`functionName\`.

### Schemas

<ApiList items={['array', 'object', 'string']} />

### Methods

<ApiList items={['parse', 'pipe', 'safeParse']} />

### Actions

<ApiList items={['email', 'minLength']} />

### Utils

<ApiList items={['isOfKind', 'isOfType']} />
```

**Related section order:** Schemas → Methods → Actions → Utils (omit empty sections)

## Key Conventions

### Naming

- Schema variables: `PascalCase` + `Schema` suffix: `EmailSchema`, `UserSchema`
- Action variables: `PascalCase` + `Action`: `MinLengthAction`
- Parse output: `output` or descriptive name

### Examples

- Always include error messages for validation actions
- Progress from simple to complex
- Use realistic, practical scenarios
- Start with `import * as v from 'valibot';` pattern

### Error Messages

Use friendly, actionable messages:

- ✅ "Your password is too short."
- ✅ "Please enter your email."
- ❌ "Invalid" or "Error"

### Links

- Use `href: '../TypeName/'` for type references (with trailing slash)
- Use `<Link href="/api/parse/">\`parse\`</Link>`in MDX prose (import from`~/components`)
- Link to related guides when relevant: `<Link href="/guides/objects/">object guide</Link>`

## Update Related Files

### menu.md

Add alphabetically to `/website/src/routes/api/menu.md`:

```markdown
## Schemas

- [any](/api/any/)
- [newSchema](/api/newSchema/) ← Add here
- [string](/api/string/)
```

### Related Sections of Other API Docs

Existing API pages have a `## Related` section with `<ApiList>` components. When adding a new API, update related APIs to include the new one.

**Rule:** An API is "related" if:

- It makes sense to use it as an argument of the other API, or vice versa
- It makes sense to use them together in the same `pipe` (e.g., `v.pipe(v.string(), v.email())` → `string` and `email` are related)

Examples:

- `string` schema lists `email` action because they work together in a pipe
- `email` action lists `string` schema because it validates string input
- `pipe` method lists all schemas because any schema can be piped
- `minLength` action lists `string`, `array`, `tuple` because it validates their length

**Process:**

1. Review a few existing API docs in the same category to understand the pattern
2. Check `menu.md` to identify potentially related APIs
3. For each related API, edit its `index.mdx` and add the new API to the appropriate `<ApiList>`

**Shortcut:** If your new API is very similar to an existing one (e.g., `guard` is similar to `check`), add it everywhere the similar API appears. This ensures consistent coverage across all related docs.

### Concept Guides

Add the new API to the appropriate guide in `/website/src/routes/guides/`:

| API Category | Guide to Update                       |
| ------------ | ------------------------------------- |
| Schema       | `(main-concepts)/schemas/index.mdx`   |
| Action       | `(main-concepts)/pipelines/index.mdx` |
| Method       | `(main-concepts)/methods/index.mdx`   |

Also update topic-specific guides if relevant (e.g., `(schemas)/objects/`, `(schemas)/arrays/`, `(advanced)/async/`).

### Type Documentation

Create pages for new types in `(types)/`:

- Issue interfaces (e.g., `StringIssue`)
- Schema/Action interfaces (e.g., `StringSchema`)

Type pages differ from function docs:

- **No `source` field** in frontmatter
- **No Examples or Related sections**
- Use `## Definition` instead of `## Returns`

Type page structure:

```mdx
---
title: StringSchema
description: String schema interface.
contributors:
  - github-username
---

import { Property } from '~/components';
import { properties } from './properties';

# StringSchema

String schema interface.

## Generics

- \`TMessage\` <Property {...properties.TMessage} />

## Definition

- \`StringSchema\` <Property {...properties.BaseSchema} />
  - \`type\` <Property {...properties.type} />
  - \`reference\` <Property {...properties.reference} />
  - \`expects\` <Property {...properties.expects} />
  - \`message\` <Property {...properties.message} />
```

## Checklist

- [ ] Read source file completely
- [ ] `properties.ts` matches source types exactly
- [ ] `index.mdx` signature matches source
- [ ] All generics documented
- [ ] All parameters documented
- [ ] Examples are realistic with error messages
- [ ] `menu.md` updated (alphabetically)
- [ ] Related type pages created if needed
- [ ] Related API docs updated (add new API to their `## Related` sections)
- [ ] Concept guide updated (schemas/pipelines/methods)
- [ ] All `href` links valid with trailing slashes


================================================
FILE: .agents/skills/repo-website-api-update/SKILL.md
================================================
---
name: repo-website-api-update
description: Update existing API documentation pages after source code changes. Use when syncing docs with library changes like new parameters, type constraint changes, interface updates, or function renames. Covers common change patterns and verification steps.
---

# Updating API Documentation

Guide for syncing API docs with source code changes.

**Prerequisite:** Read the `repo-website-api-create` skill for `properties.ts` and `index.mdx` patterns.

## When to Update

Update documentation when source code changes:

- Function signatures (parameters, generics, return types)
- Interface properties
- JSDoc descriptions or hints
- Behavior changes affecting examples

**Do NOT update for:** Internal implementation changes (`~run` method), test changes, non-JSDoc comments.

## Process

1. **Read full source file** - Don't just look at diff; understand complete current state
2. **Identify changes** - Categorize as addition, removal, or modification
3. **Update `properties.ts`** - Match types exactly to source; for optional object keys, keep the plain key name and use a union with `undefined` as the last option instead of appending `?`
4. **Update `index.mdx`** - Signature, generics, parameters, examples
5. **Update related files** - Type docs, `menu.md` if renamed

## Common Change Types

### New Parameter Added

```typescript
// Before: one overload
export function action<TInput>(requirement: TRequirement): Action<...>;

// After: two overloads (message is optional)
export function action<TInput>(requirement: TRequirement): Action<..., undefined>;
export function action<TInput, TMessage>(requirement: TRequirement, message: TMessage): Action<..., TMessage>;
```

Update:

1. Add `TMessage` generic to `properties.ts`
2. Add `message` parameter to `properties.ts`
3. Update signature in `index.mdx`
4. Add generic and parameter documentation
5. Update examples to show new parameter

### Parameter Removed (Breaking)

1. Remove from `properties.ts`
2. Update signature in `index.mdx`
3. Remove from Parameters section
4. Update all examples
5. Consider adding migration note in Explanation

### Type Constraint Changed

```typescript
// Before
TRequirement extends number

// After
TRequirement extends number | string
```

Update:

1. Update type in `properties.ts`
2. Update Explanation to mention both types
3. Add examples for new type usage

### Interface Property Added

1. Update type documentation in `(types)/TypeName/`
2. Add new property to `properties.ts`; if the source key is optional, do not append `?` to the key name and model it as a union with `undefined` last
3. Document in Definition section

### Function Renamed

1. Rename folder
2. Update all references in files
3. Update `menu.md` (maintain alphabetical order)
4. Update cross-references in related API docs
5. Consider redirect if widely used

### Deprecation

Add notice at top of `index.mdx` (import `Link` from `~/components`):

```mdx
> **⚠️ Deprecated**: Use <Link href="../newFunction/">\`newFunction\`</Link> instead. Will be removed in v2.0.
```

### New Helper Type Introduced

When source introduces a type alias:

```typescript
// Before: TInput extends string | unknown[]
// After: TInput extends LengthInput
```

1. Update `properties.ts` to reference new type with `href`
2. Create documentation for the new type in `(types)/`
3. Update explanation if supported types changed

### Multiple Overloads Added (Sync/Async)

When sync and async variants are added:

1. Update signature to show general pattern or both overloads
2. Add explanation about sync vs async usage
3. Add examples for both use cases
4. Update Related section for async schemas if relevant

## Related Files to Update

When a function changes, check:

- **Type docs** - If interfaces changed (`(types)/TypeName/`)
- **Related API docs** - Other APIs that reference this function in their Related section
- **Guide files** - If usage patterns changed significantly
- **menu.md** - If function renamed or moved

## Verification

After updating, verify:

- [ ] All types match source exactly
- [ ] Function signature matches source
- [ ] All examples work with new API
- [ ] All `href` links are valid
- [ ] Related type docs updated if interfaces changed
- [ ] `menu.md` updated if renamed
- [ ] Related API docs updated (their Related sections)

## Best Practices

- **Read full source file** - Don't just look at diff
- **Update incrementally** - `properties.ts` → `index.mdx` → related files
- **Don't over-document internals** - Only user-facing changes need docs
- **Preserve example quality** - Keep realistic, demonstrate best practices
- **Check related APIs** - They may reference the changed function

## When to Ask for Help

- Major breaking changes (complete signature overhaul)
- Complex generic constraint changes
- Unclear intent from source changes
- Many related files affected
- Need to document migration path

## Quick Reference

| Change            | Files to Update                                                      |
| ----------------- | -------------------------------------------------------------------- |
| New parameter     | `properties.ts`, `index.mdx` (signature, generics, params, examples) |
| Removed parameter | `properties.ts`, `index.mdx`                                         |
| Type change       | `properties.ts`, `index.mdx` (explanation, examples)                 |
| Interface change  | `(types)/TypeName/properties.ts`, `(types)/TypeName/index.mdx`       |
| Renamed function  | Folder name, all files, `menu.md`, cross-references                  |
| Deprecation       | `index.mdx` (add warning)                                            |


================================================
FILE: .agents/skills/repo-website-guide-create/SKILL.md
================================================
---
name: repo-website-guide-create
description: Create conceptual documentation and tutorial pages for the Valibot website at website/src/routes/guides/. Use when adding guides about schemas, pipelines, async validation, migration, or other topics. Covers directory structure, MDX templates, frontmatter, and content guidelines.
---

# Adding Guides to Website

Guide for creating conceptual documentation at `website/src/routes/guides/`.

## Directory Structure

```
website/src/routes/guides/
├── menu.md                    # Navigation menu
├── (get-started)/             # Intro, installation, quick start
├── (main-concepts)/           # Schemas, pipelines, parsing
├── (schemas)/                 # Objects, arrays, unions
├── (advanced)/                # Async, i18n, JSON Schema
├── (migration)/               # Version upgrades, Zod migration
└── (category)/guide-slug/
    └── index.mdx              # Guide content
```

Note: Category folders use parentheses (Qwik route grouping).

## Process

1. Review 2-3 existing guides in the target category to understand style
2. Choose category from existing or create new
3. Create folder: `(category)/guide-slug/`
4. Create `index.mdx` with content
5. Update `menu.md`

## index.mdx Template

```mdx
---
title: Guide Title
description: >-
  A concise description of what this guide covers.
contributors:
  - github-username
---

import { ApiList, Link } from '~/components';

# Guide Title

Opening paragraph explaining what the reader will learn.

## Section Heading

Content with clear, concise language.

\`\`\`ts
import \* as v from 'valibot';

const Schema = v.object({
name: v.string(),
email: v.pipe(v.string(), v.email()),
});
\`\`\`

## Another Section

Continue with additional sections as needed.

Use <Link href="/api/pipe/">\`pipe\`</Link> for internal links.
```

## Frontmatter

Required fields:

- **title**: Page title and navigation label
- **description**: SEO description (use `>-` for multi-line)
- **contributors**: Array of GitHub usernames

## Content Guidelines

### Code Examples

- Use TypeScript (`ts` language)
- Import as `import * as v from 'valibot';`
- Include comments for complex code

### Links

Internal links use the `Link` component:

```mdx
<Link href="/guides/schemas/">schemas guide</Link>
<Link href="/api/pipe/">\`pipe\`</Link>
```

### Components

```mdx
<ApiList label="Related schemas" items={['object', 'array', 'string']} />
```

### Formatting

- `inline code` for API names, variables, file names
- **bold** for genuine emphasis only — not as inline section labels
- Proper heading hierarchy (h1 title, h2 sections, h3 subsections)

### Writing tone

- Write conversational prose, not terse reference-doc style
- Use first-person plural: "we recommend" not "you should"
- Do not use bold as inline section labels (e.g. avoid `**Label:** content`). Use a proper subheading instead
- Do not prefix blockquotes with bold labels (e.g. avoid `> **Note:** ...`). A plain `>` is correct
- Bullet list items do not need a bold prefix on each item

### Images

Place images in the same folder as `index.mdx`:

```mdx
![Alt text](./diagram-light.jpg)
```

Consider light/dark theme variants if applicable (e.g., `diagram-light.jpg`, `diagram-dark.jpg`).

## Update menu.md

Add to `/website/src/routes/guides/menu.md`:

```markdown
## Category Name

- [Existing Guide](/guides/existing/)
- [New Guide Title](/guides/guide-slug/)
```

Maintain logical ordering within categories.

## Checklist

- [ ] Reviewed existing guides in the same category
- [ ] Folder structure: `(category)/guide-slug/index.mdx`
- [ ] Frontmatter: title, description, contributors
- [ ] Internal links use `Link` component
- [ ] Code examples use `import * as v from 'valibot';`
- [ ] Added to `menu.md`
- [ ] Style matches existing guides


================================================
FILE: .github/FUNDING.yml
================================================
github: [fabian-hiller, EltonLobo07, Bilboramix]
open_collective: valibot


================================================
FILE: .github/actions/environment/action.yml
================================================
name: Setup environment
description: Setup environment with Node.js, Deno and pnpm

runs:
  using: composite
  steps:
    - name: Setup pnpm
      uses: pnpm/action-setup@v4
      with:
        version: 9
        run_install: false

    - name: Setup Node.js
      uses: actions/setup-node@v6
      with:
        node-version: 24
        registry-url: 'https://registry.npmjs.org'
        cache: pnpm

    - name: Setup npm
      shell: bash
      run: npm install --global npm@11.11.1

    - name: Setup Deno
      uses: denoland/setup-deno@v2
      with:
        deno-version: v2.5.6

    - name: Install dependencies
      shell: bash
      run: pnpm install

    - name: Build library
      shell: bash
      run: pnpm build
      working-directory: library

    - name: Build to-json-schema
      shell: bash
      run: pnpm build
      working-directory: packages/to-json-schema

    - name: Build zod-to-valibot
      shell: bash
      run: pnpm build
      working-directory: codemod/zod-to-valibot


================================================
FILE: .github/workflows/ci.yml
================================================
name: CI

on:
  push:
    branches: [main]
  pull_request:
  workflow_call:

jobs:
  install:
    name: Install packages
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment

  library_preview:
    name: Publish library via pkg.pr.new
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Publish library
        run: pnpx pkg-pr-new publish --compact --comment=update --pnpm
        working-directory: library

  library_prettier:
    name: Run Prettier in library
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Prettier check
        run: pnpm format.check
        working-directory: library

  library_eslint:
    name: Run ESLint in library
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: ESLint check
        run: pnpm lint
        working-directory: library

  library_vitest:
    name: Run Vitest in library
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Vitest tests
        run: pnpm test
        working-directory: library

  to_json_schema_prettier:
    name: Run Prettier in packages/to-json-schema
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Prettier check
        run: pnpm format.check
        working-directory: packages/to-json-schema

  to_json_schema_eslint:
    name: Run ESLint in packages/to-json-schema
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: ESLint check
        run: pnpm lint
        working-directory: packages/to-json-schema

  to_json_schema_vitest:
    name: Run Vitest in packages/to-json-schema
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Vitest tests
        run: pnpm test
        working-directory: packages/to-json-schema

  website_prettier:
    name: Run Prettier in website
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Prettier check
        run: pnpm format.check
        working-directory: website

  website_eslint:
    name: Run ESLint in website
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: ESLint check
        run: pnpm lint
        working-directory: website

  zod_to_valibot_vitest:
    name: Run Vitest in codemod/zod-to-valibot
    needs: install
    runs-on: ubuntu-latest
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Vitest tests
        run: pnpm test
        working-directory: codemod/zod-to-valibot


================================================
FILE: .github/workflows/publish.yml
================================================
name: Publish

on:
  release:
    types: [published]
  workflow_dispatch:

jobs:
  default_ci:
    name: Run default CI of repository
    uses: ./.github/workflows/ci.yml

  library_npm:
    name: Publish library to NPM
    needs: default_ci
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Build library
        run: pnpm build
        working-directory: library
      - name: Publish library
        run: npm publish --access public
        working-directory: library
        continue-on-error: true

  library_jsr:
    name: Publish library to JSR
    needs: default_ci
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Publish library
        run: npx jsr publish
        working-directory: library

  i18n_npm:
    name: Publish i18n to NPM
    needs: default_ci
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Build i18n
        run: pnpm build.npm
        working-directory: packages/i18n
      - name: Publish i18n
        run: npm publish --access public
        working-directory: packages/i18n
        continue-on-error: true

  i18n_jsr:
    name: Publish i18n to JSR
    needs: default_ci
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Build i18n
        run: pnpm build.jsr
        working-directory: packages/i18n
      - name: Publish i18n
        run: npx jsr publish --allow-dirty
        working-directory: packages/i18n

  to_json_schema_npm:
    name: Publish to-json-schema to NPM
    needs: default_ci
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Build to-json-schema
        run: pnpm build
        working-directory: packages/to-json-schema
      - name: Publish to-json-schema
        run: npm publish --access public
        working-directory: packages/to-json-schema
        continue-on-error: true

  to_json_schema_jsr:
    name: Publish to-json-schema to JSR
    needs: default_ci
    runs-on: ubuntu-latest
    permissions:
      contents: read
      id-token: write
    steps:
      - name: Checkout repository
        uses: actions/checkout@v6
      - name: Setup environment
        uses: ./.github/actions/environment
      - name: Publish to-json-schema
        run: npx jsr publish
        working-directory: packages/to-json-schema


================================================
FILE: .gitignore
================================================
# Dependencies
node_modules

# Production
dist
build
server

# Tests
coverage

# Backups
backups

# Services
.vscode
.netlify
.vercel

# Others
logs
*.log
.cache
temp
tmp

# Local env files
.env*.local

# IDEs and editors
.idea
.project
.classpath
*.launch
.settings

# System files
.DS_Store
Thumbs.db
*.pem


================================================
FILE: .grit/.gitignore
================================================
.gritmodules*
*.log


================================================
FILE: .grit/grit.yaml
================================================
version: 0.1.0
patterns:
  - name: github.com/getgrit/stdlib#*


================================================
FILE: .grit/patterns/migrate_to_v0_31_0.md
================================================
# Migrate to v0.31.0

You can use [Grit](https://docs.grit.io/cli/quickstart) to automatically update your code to the new API. See the [migration guide](https://valibot.dev/guides/migrate-to-v0.31.0/) for more details on the changes.

```grit
language js

pattern rewritten_names() {
  or {
    // This could end up as a three-way rename, so we only apply it in first phase
    `custom` => `check`,
    `customAsync` => `checkAsync`,
    `special` => `custom`,
    `specialAsync` => `customAsync`,
    // These are safe to apply in the second phase
    `anyAsync` => `any`,
    `BaseSchema` => `GenericSchema`,
    `bigintAsync` => `bigint`,
    `blobAsync` => `blob`,
    `booleanAsync` => `boolean`,
    `dateAsync` => `date`,
    `enumAsync` => `enum_`,
    `Input` => `InferInput`,
    `instanceAsync` => `instance`,
    `literalAsync` => `literal`,
    `nanAsync` => `nan`,
    `neverAsync` => `never`,
    `nullAsync` => `null_`,
    `numberAsync` => `number`,
    `Output` => `InferOutput`,
    `picklistAsync` => `picklist`,
    `SchemaConfig` => `Config`,
    `stringAsync` => `string`,
    `symbolAsync` => `symbol`,
    `undefinedAsync` => `undefined_`,
    `unknownAsync` => `unknown`,
    `toCustom` => `transform`,
    `toTrimmed` => `trim`,
    `toTrimmedEnd` => `trimEnd`,
    `toTrimmedStart` => `trimStart`,
    `voidAsync` => `void_`,
  }
}

pattern rewrite_names($v) {
  or {
    rewritten_names() as $name where {
      $name <: imported_from(`"valibot"`)
    },
    `$v.$name` where {
      $name <: rewritten_names(),
    },
  }
}

pattern schema_names() {
  or {
    `any`, `array`, `bigint`, `blob`, `boolean`, `custom`, `date`, `enum_`, `instance`, `intersect`, `lazy`, `literal`, `looseObject`, `looseTuple`, `map`, `nan`, `never`, `nonNullable`, `nonNullish`, `nonOptional`, `null_`, `nullable`, `nullish`, `number`, `object`, `objectWithRest`, `optional`, `picklist`, `record`, `set`, `strictObject`, `strictTuple`, `string`, `symbol`, `tuple`, `tupleWithRest`, `undefined_`, `union`, `unknown`, `variant`, `void_`
  }
}

// These schemas have a mandatory array argument that is not a pipeline
pattern schema_names_with_array_arg() {
  or {
    `union`, `intersect`, `tuple`, `looseTuple`, `strictTuple`, `picklist`, `variant`
  }
}

pattern extract_pipe_args($schema, $new_schema_args, $pipe_args) {
  or {
    [$maybe_pipe] where $other_args = [],
    [$one_arg, $maybe_pipe] where $other_args = [$one_arg],
    [$one_arg, $two_arg, $maybe_pipe] where $other_args = [$one_arg, $two_arg],
    [$one_arg, $two_arg, $three_arg, $maybe_pipe] where $other_args = [$one_arg, $two_arg, $three_arg]
  } where {
    $maybe_pipe <: `[$pipe_args]` where {
      or {
        $schema <: not schema_names_with_array_arg(),
        // Skip mandatory array arguments
        and {
          $schema <: schema_names_with_array_arg(),
          $one_arg <: not undefined,
          if ($schema <: `variant`) {
            $two_arg <: not undefined
          }
        },
      }
    },
    $new_schema_args = join($other_args, `, `)
  }
}

pattern rewrite_pipes($v, $pipe_args) {
  or {
    `$v.$schema($schema_args)` where {
      $schema <: schema_names(),
      $schema_args <: extract_pipe_args($schema, $new_schema_args, $pipe_args)
    } => `$v.pipe($v.$schema($new_schema_args), $pipe_args)`,
    `$schema($schema_args)` where {
      $schema <: schema_names(),
      $schema_args <: extract_pipe_args($schema, $new_schema_args, $pipe_args),
      add_import(`pipe`, `'valibot'`)
    } => `pipe($schema($new_schema_args), $pipe_args)`
  }
}

pattern rewrite_brand_and_transform($v, $schema, $pipe_args) {
  `$v.$method($schema, $method_arg)` as $outer where {
    $method <: or {`brand`, `transform`},
    or {
      and {
        $schema <: rewrite_pipes($v, $pipe_args),
        $pipe_args += `, $v.$method($method_arg)`,
        $outer => $schema
      },
      and {
        // Handle nested case
        $schema <: bubble($outer, $v, $method, $method_arg) rewrite_brand_and_transform(v=$_, $schema, $pipe_args) where {
          $pipe_args += `, $v.$method($method_arg)`,
          $outer => `$v.pipe($schema, $pipe_args)`
        }
      },
      and {
        $pipe_args = `$v.$method($method_arg)`,
        $outer => `$v.pipe($schema, $pipe_args)`
      }
    }
  }
}

pattern rewrite_coerce($v) {
  `$v.coerce($schema, $fn)` => `$v.pipe($v.unknown(), $v.transform($fn))`
}

pattern rewrite_flatten($v) {
  `$flatten($error)`  => `$flatten($error.issues)` where {
    $error <: identifier(),
    $flatten <: or {
      `flatten`,
      `$v.flatten`
    }
  }
}

pattern rewrite_nested_pipes($v, $args) {
  `$v.pipe($args)` where {
    $args <: maybe contains {
      bubble rewrite_nested_pipes($v, args=$inner) => $inner
    }
      // Don't traverse inside schemas
      until `$_($_)`
  }
}

pattern rewrite_object_and_tuple($v) {
  or {
    `$v.object($obj, $v.unknown(), '$message', $pipe)` => `$v.looseObject($obj, '$message', $pipe)`,
    `$v.object($obj, $v.unknown(), $pipe)` => `$v.looseObject($obj, $pipe)`,
    `$v.object($obj, $v.unknown())` => `$v.looseObject($obj)`,
    `$v.tuple($tuple, $v.unknown(), '$message', $pipe)` => `$v.looseTuple($tuple, '$message', $pipe)`,
    `$v.tuple($tuple, $v.unknown(), $pipe)` => `$v.looseTuple($tuple, $pipe)`,
    `$v.tuple($tuple, $v.unknown())` => `$v.looseTuple($tuple)`,
    `$v.object($obj, $v.never(), '$message', $pipe)` => `$v.strictObject($obj, '$message', $pipe)`,
    `$v.object($obj, $v.never(), $pipe)` => `$v.strictObject($obj, $pipe)`,
    `$v.object($obj, $v.never())` => `$v.strictObject($obj)`,
    `$v.tuple($tuple, $v.never(), '$message', $pipe)` => `$v.strictTuple($tuple, '$message', $pipe)`,
    `$v.tuple($tuple, $v.never(), $pipe)` => `$v.strictTuple($tuple, $pipe)`,
    `$v.tuple($tuple, $v.never())` => `$v.strictTuple($tuple)`,
    `$v.object($obj, $v.$rest(), '$message', $pipe)` => `$v.objectWithRest($obj, $v.$rest(), '$message', $pipe)`,
    `$v.object($obj, $v.$rest(), $pipe)` => `$v.objectWithRest($obj, $v.$rest(), $pipe)`,
    `$v.object($obj, $v.$rest())` => `$v.objectWithRest($obj, $v.$rest())`,
    `$v.tuple($tuple, $v.$rest(), '$message', $pipe)` => `$v.tupleWithRest($tuple, $v.$rest(), '$message', $pipe)`,
    `$v.tuple($tuple, $v.$rest(), $pipe)` => `$v.tupleWithRest($tuple, $v.$rest(), $pipe)`,
    `$v.tuple($tuple, $v.$rest())` => `$v.tupleWithRest($tuple, $v.$rest())`,
  }
}

pattern rewrite_merge($v) {
  or {
    `$v.merge([$schemas], $rest, '$message', $pipe)`,
    `$v.merge([$schemas], '$message', $pipe)`,
    `$v.merge([$schemas], $rest, $pipe)`,
    `$v.merge([$schemas], $pipe)`,
    `$v.merge([$schemas])`,
  } where {
    $entries = [],
    $schemas <: some bubble($entries) $schema where {
      $entries += `...$schema.entries`,
    },
    $entries = join($entries, `, `),
    $args = `{ $entries }`,
    if ($rest <: not undefined) {
      $args += `, $rest`
    },
    if ($message <: not undefined) {
      $args += `, '$message'`
    },
    if ($pipe <: not undefined) {
      $args += `, $pipe`,
    },
  } => `$v.object($args)`
}

pattern is_valibot() {
  `$v` where {
    $v <: or {
      // Direct imports
      undefined,
      // Default wildcard specification
      `v`,
      // Other wildcard imports
      identifier() where $program <: contains `import * as $v from 'valibot'`
    }
  }
}

pattern rewrite_functions() {
  any {
    rewrite_pipes($v),
    rewrite_brand_and_transform($v),
    rewrite_coerce($v),
    rewrite_flatten($v),
    rewrite_nested_pipes($v),
    rewrite_object_and_tuple($v),
    rewrite_merge($v),
  } where {
    $v <: is_valibot()
  }
}

sequential {
  bubble file($body) where $body <: contains or {
    rewrite_functions(),
    rewrite_names($v) where $v <: is_valibot()
  },
  bubble file($body) where $body <: maybe contains rewrite_functions(),
  bubble file($body) where $body <: maybe contains rewrite_functions(),
}
```

## Should transform simple pipe

Before:

```javascript
const Schema1 = v.string([v.email('Email required')]);
const Schema2 = v.string([v.email(), v.endsWith('@example.com')]);
const Schema3 = v.string([v.email(), v.endsWith('@example.com'), v.maxLength(30)]);
```

After:

```javascript
const Schema1 = v.pipe(v.string(), v.email('Email required'));
const Schema2 = v.pipe(v.string(), v.email(), v.endsWith('@example.com'));
const Schema3 = v.pipe(v.string(), v.email(), v.endsWith('@example.com'), v.maxLength(30));
```

## Should transform nested pipe

Before:

```javascript
const Schema1 = v.map(v.number(), v.string([v.url(), v.endsWith('@example.com')]), [v.maxSize(10)]);
const Schema2 = v.object({ list: v.array(v.string([v.minLength(3)]), [v.minLength(3), v.includes('foo')]), length: v.number([v.integer()]) }, [v.custom((input) => input.list.length === input.length)]);
```

After:

```javascript
const Schema1 = v.pipe(v.map(v.number(), v.pipe(v.string(), v.url(), v.endsWith('@example.com'))), v.maxSize(10));
const Schema2 = v.pipe(v.object({ list: v.pipe(v.array(v.pipe(v.string(), v.minLength(3))), v.minLength(3), v.includes('foo')), length: v.pipe(v.number(), v.integer()) }), v.check((input) => input.list.length === input.length));
```

## Should not transform non pipe

Before:

```js
const Schema = v.object({
  normal: v.string([v.email(() => 'Email required')]),
  union: v.union([v.string([v.decimal()]), v.number()], [v.minValue(10)]),
  intersection: v.intersect([v.object({ a: v.string() }), v.object({ b: v.number() })]),
  variant: v.variant('type', [v.object({ type: v.literal('a') }), v.object({ type: v.literal('b') })]),
  picklist: v.picklist(['a', 'b']),
  tuple: v.tuple([v.string(), v.number()]),
});
```

After:

```js
const Schema = v.object({
  normal: v.pipe(v.string(), v.email(() => 'Email required')),
  union: v.pipe(v.union([v.pipe(v.string(), v.decimal()), v.number()]), v.minValue(10)),
  intersection: v.intersect([v.object({ a: v.string() }), v.object({ b: v.number() })]),
  variant: v.variant('type', [v.object({ type: v.literal('a') }), v.object({ type: v.literal('b') })]),
  picklist: v.picklist(['a', 'b']),
  tuple: v.tuple([v.string(), v.number()]),
});
```

## Should transform coerce method

Before:

```javascript
const Schema = v.coerce(v.date(), (input) => new Date(input));
```

After:

```javascript
const Schema = v.pipe(v.unknown(), v.transform((input) => new Date(input)));
```

## Should transform flatten argument

Before:

```js
const flatErrors1 = v.flatten(error);

// This should be unchanged
const flatErrors2 = v.flatten([issue]);
const flatErrors3 = v.flatten(result.issues);
```

After:

```js
const flatErrors1 = v.flatten(error.issues);

// This should be unchanged
const flatErrors2 = v.flatten([issue]);
const flatErrors3 = v.flatten(result.issues);
```

## Should transform any Valibot wildcard

Before:

```js
import * as foo from 'valibot';
import * as notFoo from 'zod';

const Schema1 = foo.string([foo.email()]);
const Schema2 = notFoo.string([notFoo.email()]);
```

After:

```js
import * as foo from 'valibot';
import * as notFoo from 'zod';

const Schema1 = foo.pipe(foo.string(), foo.email());
const Schema2 = notFoo.string([notFoo.email()]);
```

## Should transform direct Valibot imports

Before:

```js
import { email, string } from 'valibot';

const Schema = string([email()]);
```

After:

```js
import { email, string, pipe } from 'valibot';

const Schema = pipe(string(), email());
```

## Should transform brand and transform method

Before:

```js
const Schema1 = v.brand(v.string([v.url()]), 'foo');
const Schema2 = v.transform(v.string(), (input) => input.length);
const Schema3 = v.transform(v.brand(v.string(), 'Name'), (input) => input.length);
const Schema4 = v.brand(v.brand(v.string(), 'Name1'), 'Name2');
```

After:

```js
const Schema1 = v.pipe(v.string(), v.url(), v.brand('foo'));
const Schema2 = v.pipe(v.string(), v.transform((input) => input.length));
const Schema3 = v.pipe(v.string(), v.brand('Name'), v.transform((input) => input.length));
const Schema4 = v.pipe(v.string(), v.brand('Name1'), v.brand('Name2'));
```

## Should transform unnecessary pipes

Before:

```js
const Schema1 = v.pipe(v.pipe(v.pipe(v.string()), v.email()), v.maxLength(10));
const Schema2 = v.transform(v.coerce(v.date(), (input) => new Date(input)), (input) => input.toJSON());
const Schema3 = v.pipe(v.array(v.pipe(v.string(), v.decimal())), v.transform((input) => input.length));
```

After:

```js
const Schema1 = v.pipe(v.string(), v.email(), v.maxLength(10));
const Schema2 = v.pipe(v.unknown(), v.transform((input) => new Date(input)), v.transform((input) => input.toJSON()));
const Schema3 = v.pipe(v.array(v.pipe(v.string(), v.decimal())), v.transform((input) => input.length));
```

## Should not rename unrelated methods

Before:

```js
import { special } from 'valibot';
import * as vb from 'valibot';
import { Input } from '~/ui';

const foo = <Input />
const bar = special();
const baz = vb.toCustom();
```

After:

```js
import { custom } from 'valibot';
import * as vb from 'valibot';
import { Input } from '~/ui';

const foo = <Input />
const bar = custom();
const baz = vb.transform();
```

## Should transform objects and tuples

Before:

```js
const ObjectSchema = v.object({ key: v.string() }, v.null_());
const TupleSchema = v.tuple([v.string()], v.null_());

const LooseObjectSchema = v.object({ key: v.string() }, v.unknown());
const LooseTupleSchema = v.tuple([v.string()], v.unknown());
const StrictObjectSchema = v.object({ key: v.string() }, v.never());
const StrictTupleSchema = v.tuple([v.string()], v.never());
```

After:
  
```js
const ObjectSchema = v.objectWithRest({ key: v.string() }, v.null_());
const TupleSchema = v.tupleWithRest([v.string()], v.null_());

const LooseObjectSchema = v.looseObject({ key: v.string() });
const LooseTupleSchema = v.looseTuple([v.string()]);
const StrictObjectSchema = v.strictObject({ key: v.string() });
const StrictTupleSchema = v.strictTuple([v.string()]);
```

## Should transform object merging

Before:

```js
const ObjectSchema1 = v.object({ foo: v.string() });
const ObjectSchema2 = v.object({ bar: v.number() });

const MergedObject = v.merge([ObjectSchema1, ObjectSchema2]);
```

After:
  
```js
const ObjectSchema1 = v.object({ foo: v.string() });
const ObjectSchema2 = v.object({ bar: v.number() });

const MergedObject = v.object({ ...ObjectSchema1.entries, ...ObjectSchema2.entries });
```

## Should transform object with additional arguments

Before:

```js
const Schema = v.merge([ObjectSchema1, ObjectSchema1], v.string(), 'Error message', [v.custom(() => true)]);
```

After:

```js
const Schema = v.pipe(v.objectWithRest({ ...ObjectSchema1.entries, ...ObjectSchema1.entries }, v.string(), 'Error message'), v.check(() => true));
```

================================================
FILE: .prettierignore
================================================
**/*.log
**/.DS_Store
*.
.vscode/settings.json
.history
.yarn
bazel-*
bazel-bin
bazel-out
bazel-qwik
bazel-testlogs
dist
dist-dev
lib
lib-types
etc
external
node_modules
temp
tsc-out
tsdoc-metadata.json
target
output
build
.cache
.vscode
.rollup.cache
tsconfig.tsbuildinfo
*.spec.tsx
*.spec.ts
.netlify
pnpm-lock.yaml
package-lock.json
yarn.lock
server
.grit/patterns
codemod/zod-to-valibot/__testfixtures__


================================================
FILE: AGENTS.md
================================================
# AI Instructions

Valibot is a modular, type-safe schema validation library with zero runtime dependencies.

## Monorepo Layout

| Directory                  | Purpose                                         |
| -------------------------- | ----------------------------------------------- |
| `library/`                 | Core `valibot` package — most work happens here |
| `packages/to-json-schema/` | JSON Schema converter                           |
| `packages/i18n/`           | Translated error messages                       |
| `website/`                 | valibot.dev (Qwik + Vite)                       |
| `codemod/`                 | Migration and conversion tools                  |

## Essential Commands

```bash
pnpm install                    # Install dependencies
pnpm test                       # Run tests (all packages)
pnpm lint                       # ESLint + tsc + deno check (all packages)
pnpm format                     # Format code with Prettier (all packages)
pnpm build                      # Build for publishing (all packages)
```

## Code Conventions

- **ESM with `.ts` extensions** in imports (enforced by ESLint)
- **`interface` over `type`** for object shapes
- **JSDoc required** on exported functions (first overload only for overload sets)
- **`// @__NO_SIDE_EFFECTS__`** before pure factory functions for tree-shaking

## Other Rules

- **Source code is the single source of truth.** All documentation must match `/library/src/`.
- **Lint and format after modifying code.** Run `pnpm lint` and `pnpm format` so CI passes.
- **Use the GitHub CLI for GitHub-related tasks.** Prefer `gh` for pull requests, issues, checks, and other GitHub operations.

## Library Architecture

Schemas, actions, and methods are plain objects with a `'~run'` method:

```
library/src/
├── schemas/   → Data types (string, object, array...)
├── actions/   → Validations & transforms (email, minLength, trim...)
├── methods/   → API functions (parse, pipe, partial...)
├── types/     → TypeScript definitions
└── utils/     → Internal helpers (prefixed with _)
```

Each has its own folder: `name.ts`, `name.test.ts`, `name.test-d.ts`, `index.ts`.

## Agent Skills

This repository includes agent skills in `/skills/` following the [Agent Skills](https://agentskills.io) open standard.

**Naming:** Skills prefixed with `repo-` are local repository skills


================================================
FILE: CODE_OF_CONDUCT.md
================================================
# Contributor Covenant Code of Conduct

## Our Pledge

We as members, contributors, and leaders pledge to make participation in our
community a harassment-free experience for everyone, regardless of age, body
size, visible or invisible disability, ethnicity, sex characteristics, gender
identity and expression, level of experience, education, socio-economic status,
nationality, personal appearance, race, caste, color, religion, or sexual
identity and orientation.

We pledge to act and interact in ways that contribute to an open, welcoming,
diverse, inclusive, and healthy community.

## Our Standards

Examples of behavior that contributes to a positive environment for our
community include:

- Demonstrating empathy and kindness toward other people
- Being respectful of differing opinions, viewpoints, and experiences
- Giving and gracefully accepting constructive feedback
- Accepting responsibility and apologizing to those affected by our mistakes,
  and learning from the experience
- Focusing on what is best not just for us as individuals, but for the overall
  community

Examples of unacceptable behavior include:

- The use of sexualized language or imagery, and sexual attention or advances of
  any kind
- Trolling, insulting or derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or email address,
  without their explicit permission
- Other conduct which could reasonably be considered inappropriate in a
  professional setting

## Enforcement Responsibilities

Community leaders are responsible for clarifying and enforcing our standards of
acceptable behavior and will take appropriate and fair corrective action in
response to any behavior that they deem inappropriate, threatening, offensive,
or harmful.

Community leaders have the right and responsibility to remove, edit, or reject
comments, commits, code, wiki edits, issues, and other contributions that are
not aligned to this Code of Conduct, and will communicate reasons for moderation
decisions when appropriate.

## Scope

This Code of Conduct applies within all community spaces, and also applies when
an individual is officially representing the community in public spaces.
Examples of representing our community include using an official e-mail address,
posting via an official social media account, or acting as an appointed
representative at an online or offline event.

## Enforcement

Instances of abusive, harassing, or otherwise unacceptable behavior may be
reported to the community leaders responsible for enforcement at
hello@fabianhiller.com.
All complaints will be reviewed and investigated promptly and fairly.

All community leaders are obligated to respect the privacy and security of the
reporter of any incident.

## Enforcement Guidelines

Community leaders will follow these Community Impact Guidelines in determining
the consequences for any action they deem in violation of this Code of Conduct:

### 1. Correction

**Community Impact**: Use of inappropriate language or other behavior deemed
unprofessional or unwelcome in the community.

**Consequence**: A private, written warning from community leaders, providing
clarity around the nature of the violation and an explanation of why the
behavior was inappropriate. A public apology may be requested.

### 2. Warning

**Community Impact**: A violation through a single incident or series of
actions.

**Consequence**: A warning with consequences for continued behavior. No
interaction with the people involved, including unsolicited interaction with
those enforcing the Code of Conduct, for a specified period of time. This
includes avoiding interactions in community spaces as well as external channels
like social media. Violating these terms may lead to a temporary or permanent
ban.

### 3. Temporary Ban

**Community Impact**: A serious violation of community standards, including
sustained inappropriate behavior.

**Consequence**: A temporary ban from any sort of interaction or public
communication with the community for a specified period of time. No public or
private interaction with the people involved, including unsolicited interaction
with those enforcing the Code of Conduct, is allowed during this period.
Violating these terms may lead to a permanent ban.

### 4. Permanent Ban

**Community Impact**: Demonstrating a pattern of violation of community
standards, including sustained inappropriate behavior, harassment of an
individual, or aggression toward or disparagement of classes of individuals.

**Consequence**: A permanent ban from any sort of public interaction within the
community.

## Attribution

This Code of Conduct is adapted from the [Contributor Covenant][homepage],
version 2.1, available at
[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1].

Community Impact Guidelines were inspired by
[Mozilla's code of conduct enforcement ladder][Mozilla CoC].

For answers to common questions about this code of conduct, see the FAQ at
[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at
[https://www.contributor-covenant.org/translations][translations].

[homepage]: https://www.contributor-covenant.org
[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html
[Mozilla CoC]: https://github.com/mozilla/diversity
[FAQ]: https://www.contributor-covenant.org/faq
[translations]: https://www.contributor-covenant.org/translations


================================================
FILE: CONTRIBUTING.md
================================================
# Contributing

We love pull requests from everyone. By contributing to this repository, you
agree to abide by the [Code of Conduct](CODE_OF_CONDUCT.md).

## Get started

- First [fork][fork] the repository and then clone it using:

```bash
git clone git@github.com:your-username/valibot.git
```

- After that create a branch for your changes. For example:
  - `feat-XXX` if you will add functionality.
  - `fix-XXX` if you will fix a bug.
  - `test-XXX` if you wrote a test/s.
  - `doc-XXX` if you added to or edited documentation.
  - `refactor-XXX` if you refactor some part of the code.

You may contribute by:

- Implementing a new validation action.
- Optimizing or improving the existing code.
- Suggest a different solution for a problem.
- Finding and fixing bugs and typos.
- Adding examples to explain the usage.
- Adding and improving test cases.
- Improving our website and documentation.

## Pull requests

Push to your fork and [submit a pull request][pr].

### Best practices

As we strive for excellence in our codebase, here are some guidelines to make your contributions shine:

- Code in TypeScript: Embrace the power of TypeScript for writing your code. It helps in maintaining consistency and leveraging TypeScript's robust features.
- Clarity and cleanliness: Write code that speaks for itself. Aim for simplicity and clarity, making it easy for others to read and understand at a glance.
- Commenting and documentation: Illuminate your code with clear comments. Explain the purpose and functionality of your code. Where applicable, include links to relevant Wiki articles or external sources for further context.
- Illustrative examples: Enhance understanding by providing minimal yet meaningful examples to demonstrate the expected output of your code.
- Include test cases: Show the robustness of your code by accompanying it with well-thought-out test cases. This practice not only validates your code but also assists in maintaining the code quality in the long run.
- Size matters for PRs: Keep your pull requests concise and focused. Smaller PRs are easier to review and merge, speeding up the development process. This approach helps in isolating changes and simplifying troubleshooting.
- Crafting a good commit message: Your commit messages are a roadmap of your changes. Make them informative and useful for everyone.

## Issues

Submit a [new issue][newissue] if there is a feature to be added, or if a bug was found in the existing code. Before submitting a new issue please review the [existing issues][issues] to avoid creating duplicates. Also, consider resolving current issues or contributing to the discussion on an issue.

## Collaborators

You can ask for any help or clarifications from the collaborators.

- [Fabian Hiller](https://github.com/fabian-hiller)
- [Elton Lobo](https://github.com/EltonLobo07)
- [Aris Kemper](https://github.com/ariskemper)

[fork]: https://help.github.com/articles/fork-a-repo/
[pr]: https://github.com/open-circle/valibot/compare
[newissue]: https://github.com/open-circle/valibot/issues/new
[issues]: https://github.com/open-circle/valibot/issues


================================================
FILE: LICENSE.md
================================================
MIT License

Copyright (c) Fabian Hiller

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


================================================
FILE: SECURITY.md
================================================
# Reporting Security Issues

To report a vulnerability, please contact us via hello@fabianhiller.com.

We recommend that you use the latest versions of the library to ensure that your application remains as secure as possible.


================================================
FILE: codemod/README.md
================================================
# Codemod

## Run options

The preferred way to run these codemods is via the [codemod registry](https://codemod.com/registry), but as a fallback you can also run them from the source file by running the following command.

```bash
npx codemod@latest path-to-source-file.ts --engine=workflow
```


================================================
FILE: codemod/migrate-to-v0.31.0/.codemodrc.json
================================================
{
  "$schema": "https://codemod-utils.s3.us-west-1.amazonaws.com/configuration_schema.json",
  "version": "0.2.2",
  "private": false,
  "name": "valibot/migrate-to-v0.31.0",
  "engine": "workflow",
  "meta": {
    "tags": ["valibot", "v0.31.0", "pipeline", "pipe"],
    "git": "https://github.com/open-circle/valibot/tree/main/codemod/migrate-to-v0.31.0"
  },
  "applicability": {
    "from": [["valibot", "<=", "0.30.0"]]
  }
}


================================================
FILE: codemod/migrate-to-v0.31.0/.gitignore
================================================
node_modules
dist

================================================
FILE: codemod/migrate-to-v0.31.0/LICENSE
================================================
The MIT License (MIT)

Copyright (c) 2024 arybitskiy

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


================================================
FILE: codemod/migrate-to-v0.31.0/README.md
================================================
# Migrate to v0.31.0

You can use [Codemod](https://codemod.com/) to automatically update your code to the new API. See the [migration guide](https://valibot.dev/guides/migrate-to-v0.31.0/) for more details on the changes.

## Examples

### Before

```ts
import * as v from 'valibot';

v.object({
  email: v.string([v.email(), v.endsWith('@gmail.com')]),
  password: v.string([v.minLength(8)]),
  other: v.union([v.string([v.decimal()]), v.number()]),
});
```

### After

```ts
import * as v from 'valibot';

v.object({
  email: v.pipe(v.string(), v.email(), v.endsWith('@gmail.com')),
  password: v.pipe(v.string(), v.minLength(8)),
  other: v.union([v.pipe(v.string(), v.decimal()), v.number()]),
});
```

### Before

```ts
import * as v from 'valibot';
import { object, tuple } from 'valibot';

const ObjectSchema = object({ key: v.string() }, v.null_());
const TupleSchema = tuple([v.string()], v.null_());
```

### After

```ts
import * as v from 'valibot';
import { objectWithRest, tupleWithRest } from 'valibot';

const ObjectSchema = objectWithRest({ key: v.string() }, v.null_());
const TupleSchema = tupleWithRest([v.string()], v.null_());
```

### Before

```ts
import * as v from 'valibot';

const ObjectSchema1 = v.object({ foo: v.string() });
const ObjectSchema2 = v.object({ bar: v.number() });

const MergedObject = v.merge([ObjectSchema1, ObjectSchema2]);
```

### After

```ts
import * as v from 'valibot';

const ObjectSchema1 = v.object({ foo: v.string() });
const ObjectSchema2 = v.object({ bar: v.number() });

const MergedObject = v.object({
  ...ObjectSchema1.entries,
  ...ObjectSchema2.entries,
});
```

### Before

```ts
import * as v from 'valibot';

const BrandedSchema = v.brand(v.string(), 'foo');
const TransformedSchema = v.transform(v.string(), (input) => input.length);
```

### After

```ts
import * as v from 'valibot';

const BrandedSchema = v.pipe(v.string(), v.brand('foo'));
const TransformedSchema = v.pipe(
  v.string(),
  v.transform((input) => input.length)
);
```


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture1.input.ts
================================================
import * as v from 'valibot';
import { email } from 'valibot';

const Schema1 = v.string([email()]);

const Schema2 = v.string('asd', [email()]);

const Schema3 = v.string('asd', '123', [email()]);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture1.output.ts
================================================
import * as v from 'valibot';
import { email } from 'valibot';

const Schema1 = v.pipe(v.string(), email());

const Schema2 = v.pipe(v.string('asd'), email());

const Schema3 = v.pipe(v.string('asd', '123'), email());


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture10.input.ts
================================================
import * as v from 'valibot';

const Schema = v.transform(
  v.brand(v.string(), 'Name'),
  (input) => input.length
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture10.output.ts
================================================
import * as v from 'valibot';

const Schema = v.pipe(
  v.string(),
  v.brand('Name'),
  v.transform((input) => input.length)
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture11.input.ts
================================================
import * as v from 'valibot';

const Schema = v.object(
  {
    name: v.string(),
    age: v.number(),
  },
  [
    v.forward(
      v.custom((i) => i.age > 18, 'You must be over 18'),
      ['age']
    ),
  ]
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture11.output.ts
================================================
import * as v from 'valibot';

const Schema = v.pipe(
  v.object({
    name: v.string(),
    age: v.number(),
  }),
  v.forward(
    v.check((i) => i.age > 18, 'You must be over 18'),
    ['age']
  )
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture12.input.ts
================================================
import * as v from 'valibot';

const Schema = v.brand(v.string([v.url()]), 'foo');


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture12.output.ts
================================================
import * as v from 'valibot';

const Schema = v.pipe(v.string(), v.url(), v.brand('foo'));


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture13.input.ts
================================================
import * as v from 'valibot';

const Schema1 = v.map(
  v.number(),
  v.string([v.url(), v.endsWith('@example.com')]),
  [v.maxSize(10)]
);

const Schema2 = v.object(
  {
    list: v.array(v.string([v.minLength(3)]), [
      v.minLength(3),
      v.includes('foo'),
    ]),
    length: v.number([v.integer()]),
  },
  [v.custom((input) => input.list.length === input.length)]
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture13.output.ts
================================================
import * as v from 'valibot';

const Schema1 = v.pipe(
  v.map(v.number(), v.pipe(v.string(), v.url(), v.endsWith('@example.com'))),
  v.maxSize(10)
);

const Schema2 = v.pipe(
  v.object({
    list: v.pipe(
      v.array(v.pipe(v.string(), v.minLength(3))),
      v.minLength(3),
      v.includes('foo')
    ),
    length: v.pipe(v.number(), v.integer()),
  }),
  v.check((input) => input.list.length === input.length)
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture14.input.ts
================================================
import * as v from 'valibot';

const Schema = v.object({
  normal: v.string([v.email(() => 'Email required')]),
  union: v.union([v.string([v.decimal()]), v.number()], [v.minValue(10)]),
  intersection: v.intersect([
    v.object({ a: v.string() }),
    v.object({ b: v.number() }),
  ]),
  variant: v.variant('type', [
    v.object({ type: v.literal('a') }),
    v.object({ type: v.literal('b') }),
  ]),
  picklist: v.picklist(['a', 'b']),
  tuple: v.tuple([v.string(), v.number()]),
});


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture14.output.ts
================================================
import * as v from 'valibot';

const Schema = v.object({
  normal: v.pipe(
    v.string(),
    v.email(() => 'Email required')
  ),
  union: v.pipe(
    v.union([v.pipe(v.string(), v.decimal()), v.number()]),
    v.minValue(10)
  ),
  intersection: v.intersect([
    v.object({ a: v.string() }),
    v.object({ b: v.number() }),
  ]),
  variant: v.variant('type', [
    v.object({ type: v.literal('a') }),
    v.object({ type: v.literal('b') }),
  ]),
  picklist: v.picklist(['a', 'b']),
  tuple: v.tuple([v.string(), v.number()]),
});


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture15.input.ts
================================================
import * as v from 'valibot';

const Schema = v.coerce(v.date(), (input) => new Date(input));


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture15.output.ts
================================================
import * as v from 'valibot';

const Schema = v.pipe(
  v.unknown(),
  v.transform((input) => new Date(input))
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture16.input.ts
================================================
import * as v from 'valibot';

const flatErrors1 = v.flatten(error);
const flatErrors2 = v.flatten([issue]);
const flatErrors3 = v.flatten(result.issues);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture16.output.ts
================================================
import * as v from 'valibot';

const flatErrors1 = v.flatten(error.issues);
const flatErrors2 = v.flatten([issue]);
const flatErrors3 = v.flatten(result.issues);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture17.input.ts
================================================
import * as v from 'valibot';

const Schema1 = v.union([v.string(), v.number()], [v.minValue(123)]);
const Schema2 = v.union([v.string(), v.number()], 'error', [v.minValue(123)]);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture17.output.ts
================================================
import * as v from 'valibot';

const Schema1 = v.pipe(v.union([v.string(), v.number()]), v.minValue(123));
const Schema2 = v.pipe(
  v.union([v.string(), v.number()], 'error'),
  v.minValue(123)
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture2.input.ts
================================================
import * as v from 'valibot';
import { type BaseSchema, toCustom } from 'valibot';

v.custom();
BaseSchema();
v.Input();
v.Output();
v.special();
toCustom();
toTrimmed();
v.toTrimmedEnd();
v.toTrimmedStart();


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture2.output.ts
================================================
import * as v from 'valibot';
import { type GenericSchema, transform } from 'valibot';

v.check();
GenericSchema();
v.InferInput();
v.InferOutput();
v.custom();
transform();
toTrimmed();
v.trimEnd();
v.trimStart();


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture3.input.ts
================================================
import * as v from 'valibot';

v.object({
  email: v.string([v.email(), v.endsWith('@gmail.com')]),
  password: v.string([v.minLength(8)]),
  other: v.union([v.string([v.decimal()]), v.number()]),
});


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture3.output.ts
================================================
import * as v from 'valibot';

v.object({
  email: v.pipe(v.string(), v.email(), v.endsWith('@gmail.com')),
  password: v.pipe(v.string(), v.minLength(8)),
  other: v.union([v.pipe(v.string(), v.decimal()), v.number()]),
});


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture4.input.ts
================================================
import * as v from 'valibot';
import { object, tuple } from 'valibot';

const ObjectSchema = object({ key: v.string() }, v.null_());
const TupleSchema = tuple([v.string()], v.null_());


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture4.output.ts
================================================
import * as v from 'valibot';
import { objectWithRest, tupleWithRest } from 'valibot';

const ObjectSchema = objectWithRest({ key: v.string() }, v.null_());
const TupleSchema = tupleWithRest([v.string()], v.null_());


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture5.input.ts
================================================
import { never, object, string, tuple, unknown } from 'valibot';

const LooseObjectSchema = object({ key: string() }, unknown());
const LooseTupleSchema = tuple([string()], unknown());
const StrictObjectSchema = object({ key: string() }, never());
const StrictTupleSchema = tuple([string()], never());


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture5.output.ts
================================================
import {
  looseObject,
  looseTuple,
  never,
  object,
  strictObject,
  strictTuple,
  string,
  tuple,
  unknown,
} from 'valibot';

const LooseObjectSchema = looseObject({ key: string() });
const LooseTupleSchema = looseTuple([string()]);
const StrictObjectSchema = strictObject({ key: string() });
const StrictTupleSchema = strictTuple([string()]);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture6.input.ts
================================================
import * as v from 'valibot';

const ObjectSchema1 = v.object({ foo: v.string() });
const ObjectSchema2 = v.object({ bar: v.number() });

const MergedObject = v.merge([ObjectSchema1, ObjectSchema2]);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture6.output.ts
================================================
import * as v from 'valibot';

const ObjectSchema1 = v.object({ foo: v.string() });
const ObjectSchema2 = v.object({ bar: v.number() });

const MergedObject = v.object({
  ...ObjectSchema1.entries,
  ...ObjectSchema2.entries,
});


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture7.input.ts
================================================
import * as v from 'valibot';

const BrandedSchema = v.brand(v.string(), 'foo');
const TransformedSchema = v.transform(v.string(), (input) => input.length);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture7.output.ts
================================================
import * as v from 'valibot';

const BrandedSchema = v.pipe(v.string(), v.brand('foo'));
const TransformedSchema = v.pipe(
  v.string(),
  v.transform((input) => input.length)
);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture8.input.ts
================================================
import * as v from 'valibot';

const Schema = v.string([v.toTrimmed(), v.url()]);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture8.output.ts
================================================
import * as v from 'valibot';

const Schema = v.pipe(v.string(), v.trim(), v.url());


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture9.input.ts
================================================
import { string, url } from 'valibot';

const Schema = string([url()]);


================================================
FILE: codemod/migrate-to-v0.31.0/__testfixtures__/fixture9.output.ts
================================================
import { pipe, string, url } from 'valibot';

const Schema = pipe(string(), url());


================================================
FILE: codemod/migrate-to-v0.31.0/package.json
================================================
{
  "name": "migrate-to-v0.31.0",
  "license": "MIT",
  "author": "Codemod, Inc.",
  "type": "module",
  "files": [
    "README.md",
    ".codemodrc.json",
    "./dist/index.cjs"
  ],
  "devDependencies": {
    "@codemod.com/workflow": "^0.0.31",
    "@types/node": "^24.10.1",
    "typescript": "^5.9.3"
  }
}


================================================
FILE: codemod/migrate-to-v0.31.0/src/index.ts
================================================
import type { Api } from '@codemod.com/workflow';

// List of all schema names
const SCHEMAS = [
  'any',
  'array',
  'bigint',
  'blob',
  'boolean',
  'custom',
  'date',
  'enum_',
  'instance',
  'intersect',
  'lazy',
  'literal',
  'looseObject',
  'looseTuple',
  'map',
  'nan',
  'never',
  'nonNullable',
  'nonNullish',
  'nonOptional',
  'null_',
  'nullable',
  'nullish',
  'number',
  'object',
  'objectWithRest',
  'optional',
  'picklist',
  'record',
  'set',
  'strictObject',
  'strictTuple',
  'string',
  'symbol',
  'tuple',
  'tupleWithRest',
  'undefined_',
  'union',
  'unknown',
  'variant',
  'void_',
];

// List of schema names with an mandatory array argument
const SCHEMAS_WITH_ARRAY_ARG = [
  'union',
  'intersect',
  'tuple',
  'looseTuple',
  'strictTuple',
  'picklist',
  'variant',
];

// List of names that have changed
const RENAMES: [string, string][] = [
  ['anyAsync', 'any'],
  ['BaseSchema', 'GenericSchema'],
  ['bigintAsync', 'bigint'],
  ['blobAsync', 'blob'],
  ['booleanAsync', 'boolean'],
  ['custom', 'check'],
  ['customAsync', 'checkAsync'],
  ['dateAsync', 'date'],
  ['enumAsync', 'enum_'],
  ['Input', 'InferInput'],
  ['instanceAsync', 'instance'],
  ['literalAsync', 'literal'],
  ['nanAsync', 'nan'],
  ['neverAsync', 'never'],
  ['nullAsync', 'null_'],
  ['numberAsync', 'number'],
  ['Output', 'InferOutput'],
  ['picklistAsync', 'picklist'],
  ['special', 'custom'],
  ['specialAsync', 'customAsync'],
  ['SchemaConfig', 'Config'],
  ['stringAsync', 'string'],
  ['symbolAsync', 'symbol'],
  ['undefinedAsync', 'undefined_'],
  ['unknownAsync', 'unknown'],
  ['toCustom', 'transform'],
  ['toTrimmed', 'trim'],
  ['toTrimmedEnd', 'trimEnd'],
  ['toTrimmedStart', 'trimStart'],
  ['voidAsync', 'void_'],
];

/**
 * Codemod workflow that migrates Valibot code to v0.31.0.
 */
export async function workflow({ jsFiles }: Api) {
  await jsFiles(async ({ astGrep, addImport, removeImport, getImports }) => {
    // Query wildcard import
    const wildcardImport = (
      await getImports('import * as $IMPORT from "valibot"').map(
        ({ getMatch }) => getMatch('IMPORT')?.text()
      )
    ).shift();

    // Query direct imports
    const directImports = (
      await getImports('import { $$$IMPORTS } from "valibot"').map(
        ({ getMultipleMatches }) =>
          getMultipleMatches('IMPORTS')
            .filter((node) => node.kind() === 'import_specifier')
            .map(
              (node) =>
                node.find({ rule: { kind: 'identifier' } })?.text() ??
                node.text()
            )
      )
    ).reduce((allImports, imports) => {
      allImports.push(...imports);
      return allImports;
    }, []);

    /**
     * Returns a function that checks if it is a valid wildcard or direct
     * import.
     */
    function createImportCheck() {
      return (name: string | undefined): boolean => {
        if (
          name &&
          ((wildcardImport && name.startsWith(`${wildcardImport}.`)) ||
            directImports.includes(name))
        ) {
          return true;
        }
        return false;
      };
    }

    /**
     * Returns a function that checks if it is a valid wildcard or direct
     * import of a specific name.
     */
    function createNameCheck(names: string[]) {
      const isImported = createImportCheck();
      return (name: string | undefined): boolean => {
        if (
          name &&
          isImported(name) &&
          ((wildcardImport &&
            names.includes(
              name.replace(new RegExp(`^${wildcardImport}.`), '')
            )) ||
            names.includes(name))
        ) {
          return true;
        }
        return false;
      };
    }

    /**
     * Deeply searches for specific patterns.
     */
    async function deepSearch(
      action: (continue_: () => void) => Promise<unknown>
    ) {
      let notDone = true;
      while (notDone) {
        notDone = false;
        await action(() => (notDone = true));
      }
    }

    // Create util functions
    const isImported = createImportCheck();
    const isSchema = createNameCheck(SCHEMAS);
    const isSchemaWithArrayArg = createNameCheck(SCHEMAS_WITH_ARRAY_ARG);
    const isObject = createNameCheck(['object']);
    const isTuple = createNameCheck(['tuple']);
    const isObjectOrTuple = createNameCheck(['object', 'tuple']);
    const isUnknown = createNameCheck(['unknown']);
    const isNever = createNameCheck(['never']);
    const isPipe = createNameCheck(['pipe']);
    const isMerge = createNameCheck(['merge']);
    const isBrandOrTransform = createNameCheck(['brand', 'transform']);
    const isCoerce = createNameCheck(['coerce']);
    const isFlatten = createNameCheck(['flatten']);

    // Create wildcard prefix
    const wildcardPrefix = wildcardImport ? `${wildcardImport}.` : '';

    // Rewrite names
    for (const [from, to] of [
      ...(wildcardImport
        ? RENAMES.map(([prev, next]) => [
            `${wildcardImport}.${prev}`,
            `${wildcardImport}.${next}`,
          ])
        : []),
      ...RENAMES,
    ]) {
      // Rewrite only if imported by Valibot
      if (isImported(from)) {
        await astGrep(from).replace(() => to);
        await astGrep({
          rule: { regex: from, kind: 'type_identifier' },
        }).replace(() => to);
      }
    }

    // Rewrite object merging
    await astGrep`$METHOD($$$ARGS)`.replace(
      ({ getMatch, getMultipleMatches }) => {
        // Get and process node
        const methodName = getMatch('METHOD')?.text();

        // Continue if it is merge method
        if (isMerge(methodName)) {
          // Get and process nodes
          const argsNodes = getMultipleMatches('ARGS');
          const entriesText = argsNodes[0]
            ?.children()
            .slice(1, -1)
            .filter((node) => node.kind() !== ',')
            .map((node) => `...${node.text()}.entries`)
            .join(', ');
          const restText = argsNodes
            .slice(1)
            .filter((node) => node.kind() !== ',')
            .map((node) => node.text())
            .join(', ');

          // Update imports if necessary
          if (!wildcardImport) {
            addImport(`import { object } from "valibot"`);
            removeImport(`import { merge } from "valibot"`);
            directImports.push(`object`);
          }

          // Return rewritten code
          return `${wildcardPrefix}object({${entriesText}}${restText ? `, ${restText}` : ''})`;
        }
      }
    );

    // Rewrite objects and tuples with rest
    await astGrep`$SCHEMA($SHAPE, $$$REST)`.replace(
      ({ getMatch, getMultipleMatches }) => {
        // Get and process nodes
        const schemaName = getMatch('SCHEMA')?.text();
        const shapeText = getMatch('SHAPE')?.text();
        const restNodes = getMultipleMatches('REST');
        const restSchemaName = restNodes[0]?.child(0)?.text();

        // Continue if it is object or tuple with rest
        if (
          isObjectOrTuple(schemaName) &&
          isSchema(restSchemaName) &&
          !isUnknown(restSchemaName) &&
          !isNever(restSchemaName)
        ) {
          // Process nodes
          const restText = restNodes
            .filter((node) => node.kind() !== ',')
            .map((node) => node.text())
            .join(', ');

          // Update imports if necessary
          // Hint: We do not remove the object or tuple import because we do
          // not know if it will be used elsewhere.
          if (schemaName && !schemaName.startsWith(`${wildcardImport}.`)) {
            addImport(`import { ${schemaName}WithRest } from "valibot"`);
            directImports.push(`${schemaName}WithRest`);
          }

          // Return rewritten code
          return `${schemaName}WithRest(${shapeText}, ${restText})`;
        }
      }
    );

    // Rewrite loose and strict objects and tuples
    await astGrep`$SCHEMA($SHAPE, $$$REST)`.replace(
      ({ getMatch, getMultipleMatches }) => {
        // Get and process nodes
        const schemaName = getMatch('SCHEMA')?.text();
        const shapeText = getMatch('SHAPE')?.text();
        const restNodes = getMultipleMatches('REST');
        const restSchemaName = restNodes[0]?.child(0)?.text();

        // Create necessary variables
        let schemaPrefix: string | undefined;
        let schemaSuffix: string | undefined;

        // Set schema suffix and imports
        if (isObject(schemaName)) {
          schemaSuffix = 'Object';
        } else if (isTuple(schemaName)) {
          schemaSuffix = 'Tuple';
        }

        // Set schema prefix and imports
        if (isUnknown(restSchemaName)) {
          schemaPrefix = 'loose';
        } else if (isNever(restSchemaName)) {
          schemaPrefix = 'strict';
        }

        // Continue if prefix and suffix are set
        if (schemaPrefix && schemaSuffix) {
          // Process nodes
          const restText = restNodes
            .slice(1)
            .filter((node) => node.kind() !== ',')
            .map((node) => node.text())
            .join(', ');

          // Update imports if necessary
          // Hint: We do not remove any imports because we do not know if it
          // will be used elsewhere.
          if (!wildcardImport) {
            addImport(
              `import { ${schemaPrefix}${schemaSuffix} } from "valibot"`
            );
            directImports.push(`${schemaPrefix}${schemaSuffix}`);
          }

          // Return rewritten code
          return `${wildcardPrefix}${schemaPrefix}${schemaSuffix}(${shapeText}${restText ? `, ${restText}` : ''})`;
        }
      }
    );

    // Rewrite coerce
    await astGrep`$METHOD($REMOVE, $LASTARG)`.replace(({ getMatch }) => {
      // Get and process nodes
      const methodName = getMatch('METHOD')?.text();
      const lastArgText = getMatch('LASTARG')?.text();

      // Continue if it is coerce method
      if (isCoerce(methodName)) {
        // Update imports if necessary
        if (!wildcardImport) {
          addImport(`import { pipe, unknown, transform } from "valibot"`);
          removeImport(`import { coerce } from "valibot"`);
        }

        // Return rewritten code
        return `${wildcardPrefix}pipe(${wildcardPrefix}unknown(), ${wildcardPrefix}transform(${lastArgText}))`;
      }
    });

    // Rewrite flatten
    await astGrep`$METHOD($ARG)`.replace(({ getMatch }) => {
      // Get and process node
      const methodName = getMatch('METHOD')?.text();
      const argChildLength = getMatch('ARG')?.children().length;

      // Continue if it is flatten method with error argument
      if (isFlatten(methodName) && !argChildLength) {
        // Return rewritten code
        return `$METHOD($ARG.issues)`;
      }
    });

    // Rewrite brand and transform
    await deepSearch((continue_) =>
      astGrep`$METHOD($SCHEMA, $LASTARG)`.replace(({ getMatch }) => {
        // Get and process nodes
        const methodName = getMatch('METHOD')?.text();
        const schemaText = getMatch('SCHEMA')?.text();
        const lastArgText = getMatch('LASTARG')?.text();

        // Continue if it is brand or transform method
        if (isBrandOrTransform(methodName)) {
          // Continue searching
          continue_();

          // Update imports if necessary
          if (!wildcardImport) {
            addImport(`import { pipe } from "valibot"`);
            directImports.push(`pipe`);
          }

          // Return rewritten code
          return `${wildcardPrefix}pipe(${schemaText}, ${methodName}(${lastArgText}))`;
        }
      })
    );

    // Rewrite pipelines for schemas with mandatory array argument
    await deepSearch((continue_) =>
      astGrep`$SCHEMA([$$$ITEMS], $$$REST, [$$$ACTIONS])`.replace(
        ({ getMatch, getMultipleMatches }) => {
          // Get and process nodes
          const schemaName = getMatch('SCHEMA')?.text();

          // Continue if it is schema with array argument
          if (isSchemaWithArrayArg(schemaName)) {
            // Get and process nodes
            const itemsText = getMultipleMatches('ITEMS')
              .filter((node) => node.kind() !== ',')
              .map((node) => node.text())
              .join(', ');
            const restText = getMultipleMatches('REST')
              .filter((node) => node.kind() !== ',')
              .map((node) => node.text())
              .join(', ');
            const actionNodes = getMultipleMatches('ACTIONS');

            // If pipe is not empty, rewrite it to new pipe method
            if (actionNodes.length) {
              // Continue searching
              continue_();

              const actionsText = actionNodes
                .filter((node) => node.kind() !== ',')
                .map((node) => node.text())
                .join(', ');

              // Update imports if necessary
              if (!wildcardImport) {
                addImport(`import { pipe } from "valibot"`);
                directImports.push(`pipe`);
              }

              // Return rewritten code
              return `${wildcardPrefix}pipe(${schemaName}([${itemsText}]${restText ? `, ${restText}` : ''}), ${actionsText})`;
            }

            // Otherwise, remove pipe argument from schema
            return `${schemaName}([${itemsText}]${restText ? `, ${restText}` : ''})`;
          }
        }
      )
    );

    // Rewrite pipelines for schemas without mandatory array argument
    await deepSearch((continue_) =>
      astGrep`$SCHEMA($$$REST, [$$$ACTIONS])`.replace(
        ({ getMatch, getMultipleMatches }) => {
          // Get and process nodes
          const schemaName = getMatch('SCHEMA')?.text();

          // Continue if it is schema without array argument
          if (isSchema(schemaName) && !isSchemaWithArrayArg(schemaName)) {
            // Get and process nodes
            const restText = getMultipleMatches('REST')
              .filter((node) => node.kind() !== ',')
              .map((node) => node.text())
              .join(', ');
            const actionNodes = getMultipleMatches('ACTIONS');

            // If pipe is not empty, rewrite it to new pipe method
            if (actionNodes.length) {
              // Continue searching
              continue_();

              // Get and process nodes
              const actionsText = actionNodes
                .map((node) => node.text())
                .join(' ');

              // Update imports if necessary
              if (!wildcardImport) {
                addImport(`import { pipe } from "valibot"`);
                directImports.push(`pipe`);
              }

              // Return rewritten code
              return `${wildcardPrefix}pipe(${schemaName}(${restText}), ${actionsText})`;
            }

            // Otherwise, remove pipe argument from schema
            return `${schemaName}(${restText})`;
          }
        }
      )
    );

    // Rewrite nested pipes
    await deepSearch((continue_) =>
      astGrep`$METHOD1($METHOD2($$$ARGS), $$$REST)`.replace(
        ({ getMatch, getMultipleMatches }) => {
          // Get and process nodes
          const method1Name = getMatch('METHOD1')?.text();
          const method2Name = getMatch('METHOD2')?.text();

          // Continue if both methods are pipes
          if (isPipe(method1Name) && isPipe(method2Name)) {
            // Continue searching
            continue_();

            // Get and process nodes
            const itemsText = [
              ...getMultipleMatches('ARGS').filter(
                (node) => node.kind() !== ','
              ),
              ...getMultipleMatches('REST').filter(
                (node) => node.kind() !== ','
              ),
            ]
              .map((node) => node.text())
              .join(', ');

            // Update imports if necessary
            if (!wildcardImport) {
              addImport(`import { pipe } from "valibot"`);
              directImports.push(`pipe`);
            }

            // Return rewritten code
            return `${wildcardPrefix}pipe(${itemsText})`;
          }
        }
      )
    );
  });
}


================================================
FILE: codemod/migrate-to-v0.31.0/tsconfig.json
================================================
{
  "compilerOptions": {
    "outDir": "./dist",
    "esModuleInterop": true,
    "forceConsistentCasingInFileNames": true,
    "isolatedModules": true,
    "module": "NodeNext",
    "skipLibCheck": true,
    "strict": true,
    "target": "ES6",
    "allowJs": true
  },
  "include": [
    "./src/**/*.ts",
    "./src/**/*.js",
    "./test/**/*.ts",
    "./test/**/*.js"
  ],
  "exclude": ["node_modules", "./dist/**/*"],
  "ts-node": {
    "transpileOnly": true
  }
}


================================================
FILE: codemod/zod-to-valibot/.gitignore
================================================
__testfixtures__/*/_actual.ts

================================================
FILE: codemod/zod-to-valibot/CHANGELOG.md
================================================
# Changelog

All notable changes to the library will be documented in this file.

## v0.1.2 (December 07, 2025)

- Fix CLI usage to use scoped package name `@valibot/zod-to-valibot`

## v0.1.1 (December 06, 2025)

- Fix CLI `jscodeshift` resolution when installed via `npx`

## v0.1.0 (December 06, 2025)

- Initial release


================================================
FILE: codemod/zod-to-valibot/LICENSE.md
================================================
MIT License

Copyright (c) Fabian Hiller and Elton Lobo

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.


================================================
FILE: codemod/zod-to-valibot/README.md
================================================
# Zod to Valibot Codemod

Official codemod for automatically converting Zod schemas to Valibot schemas.

## Usage

```bash
npx @valibot/zod-to-valibot src/**/*
```

## Options

```bash
# Dry run (preview changes)
npx @valibot/zod-to-valibot --dry src/**/*

# Verbose output
npx @valibot/zod-to-valibot --verbose=2 src/**/*

# Use a different parser (default is --parser=ts)
npx @valibot/zod-to-valibot --parser=babel src/**/*

# Use different extensions (default is --extensions=ts,tsx,js,jsx)
npx @valibot/zod-to-valibot --extensions=ts src/**/*
```

For all available options, see [jscodeshift documentation](https://github.com/facebook/jscodeshift#options).

## What Gets Converted

The codemod converts Zod schemas to Valibot, including:

- Basic schemas (`string`, `number`, `boolean`, `date`, `bigint`)
- Validation rules (`email`, `min`, `max`, etc.)
- Coercion (`z.coerce.*` → `v.pipe(v.unknown(), v.toX())`)
- Objects, arrays, unions, optionals, and more

## Support

For issues or questions, open an issue on the [Valibot repository](https://github.com/open-circle/valibot).


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/any-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.any();
const Schema2 = z.any({message: "some message"});
const Schema3 = z.any({description: "some description"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/any-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.any();
const Schema2 = v.any();
const Schema3 = v.pipe(v.any(), v.description("some description"));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-element/input.ts
================================================
import { z } from "zod";

const Schema1 = z.array(z.string());
const Schema2 = Schema1.element;
const Schema3 = z.array(z.number()).element;
const Schema4 = Schema1.element.trim().email();
const Schema5 = z.array(z.string()).element.trim().email();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-element/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.array(v.string());
const Schema2 = Schema1.item;
const Schema3 = v.array(v.number()).item;
const Schema4 = v.pipe(Schema1.item, v.trim(), v.email());
const Schema5 = v.pipe(v.array(v.string()).item, v.trim(), v.email());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-nonempty/input.ts
================================================
import { z } from "zod";

const Schema1 = z.array(z.string());
const Schema2 = Schema1.nonempty();
const Schema3 = z.array(z.number()).nonempty();
const Schema4 = z.array(z.boolean()).nonempty("cannot be empty");
const Schema5 = z.array(z.null()).nonempty({});
const Schema6 = z.array(z.unknown()).nonempty({message: "Cannot be empty."});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-nonempty/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.array(v.string());
const Schema2 = v.pipe(Schema1, v.nonEmpty());
const Schema3 = v.pipe(v.array(v.number()), v.nonEmpty());
const Schema4 = v.pipe(v.array(v.boolean()), v.nonEmpty("cannot be empty"));
const Schema5 = v.pipe(v.array(v.null()), v.nonEmpty());
const Schema6 = v.pipe(v.array(v.unknown()), v.nonEmpty("Cannot be empty."));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.array(z.string());
const Schema2 = z.array(z.string().email());
const Schema3 = z.array(z.string(), {message: "some message"});
const Schema4 = z.array(z.string(), {description: "some description"});
const Schema5 = z.string().array();
const Schema6 = z.string();
const Schema7 = Schema6.array();
const Schema8 = z.string().email().array();
const Schema9 = z.string().email().optional().array();
const Schema10 = z.string().email().array().optional();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.array(v.string());
const Schema2 = v.array(v.pipe(v.string(), v.email()));
const Schema3 = v.array(v.string(), "some message");
const Schema4 = v.pipe(v.array(v.string()), v.description("some description"));
const Schema5 = v.array(v.string());
const Schema6 = v.string();
const Schema7 = v.array(Schema6);
const Schema8 = v.array(v.pipe(v.string(), v.email()));
const Schema9 = v.array(v.optional(v.pipe(v.string(), v.email())));
const Schema10 = v.optional(v.array(v.pipe(v.string(), v.email())));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-validation-methods/input.ts
================================================
import { z } from "zod";

const Schema1 = z.array(z.string()).min(2);
const Schema2 = z.array(z.string()).max(3);
const Schema3 = z.array(z.string()).length(4);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/array-validation-methods/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.array(v.string()), v.minLength(2));
const Schema2 = v.pipe(v.array(v.string()), v.maxLength(3));
const Schema3 = v.pipe(v.array(v.string()), v.length(4));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/bigint-validation-methods/input.ts
================================================
import { z } from "zod";

const GteSchema = z.bigint().gte(1n);
const MinSchema = z.bigint().min(2n);
const GtSchema = z.bigint().gt(3n);
const LteSchema = z.bigint().lte(4n);
const MaxSchema = z.bigint().max(5n);
const LtSchema = z.bigint().lt(6n);
const MultipleOfSchema = z.bigint().multipleOf(7n);
const PositiveSchema = z.bigint().positive();
const NegativeSchema = z.bigint().negative();
const NonPositiveSchema = z.bigint().nonpositive();
const NonNegativeSchema = z.bigint().nonnegative();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/bigint-validation-methods/output.ts
================================================
import * as v from "valibot";

const GteSchema = v.pipe(v.bigint(), v.minValue(1n));
const MinSchema = v.pipe(v.bigint(), v.minValue(2n));
const GtSchema = v.pipe(v.bigint(), v.gtValue(3n));
const LteSchema = v.pipe(v.bigint(), v.maxValue(4n));
const MaxSchema = v.pipe(v.bigint(), v.maxValue(5n));
const LtSchema = v.pipe(v.bigint(), v.ltValue(6n));
const MultipleOfSchema = v.pipe(v.bigint(), v.multipleOf(7n));
const PositiveSchema = v.pipe(v.bigint(), v.gtValue(0n));
const NegativeSchema = v.pipe(v.bigint(), v.ltValue(0n));
const NonPositiveSchema = v.pipe(v.bigint(), v.maxValue(0n));
const NonNegativeSchema = v.pipe(v.bigint(), v.minValue(0n));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-bigint-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.coerce.bigint();
const Schema2 = z.bigint({ coerce: true });
const Schema3 = z.coerce.bigint().gt(1n);
const Schema4 = z.bigint({ coerce: true }).lt(2n);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-bigint-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.unknown(), v.toBigint());
const Schema2 = v.pipe(v.unknown(), v.toBigint());
const Schema3 = v.pipe(v.unknown(), v.toBigint(), v.gtValue(1n));
const Schema4 = v.pipe(v.unknown(), v.toBigint(), v.ltValue(2n));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-boolean-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.coerce.boolean();
const Schema2 = z.boolean({ coerce: true });

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-boolean-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.unknown(), v.toBoolean());
const Schema2 = v.pipe(v.unknown(), v.toBoolean());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-date-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.coerce.date();
const Schema2 = z.date({ coerce: true });
const Schema3 = z.coerce.date().min(new Date("1/10/23"));
const Schema4 = z.date({ coerce: true }).max(new Date("2023-01-10"));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-date-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.unknown(), v.toDate());
const Schema2 = v.pipe(v.unknown(), v.toDate());
const Schema3 = v.pipe(v.unknown(), v.toDate(), v.minValue(new Date("1/10/23")));
const Schema4 = v.pipe(v.unknown(), v.toDate(), v.maxValue(new Date("2023-01-10")));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-number-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.coerce.number();
const Schema2 = z.number({ coerce: true });
const Schema3 = z.coerce.number().finite();
const Schema4 = z.number({ coerce: true }).multipleOf(12);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-number-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.unknown(), v.toNumber());
const Schema2 = v.pipe(v.unknown(), v.toNumber());
const Schema3 = v.pipe(v.unknown(), v.toNumber(), v.finite());
const Schema4 = v.pipe(v.unknown(), v.toNumber(), v.multipleOf(12));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-string-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.coerce.string();
const Schema2 = z.string({ coerce: true });
const Schema3 = z.coerce.string().email();
const Schema4 = z.string({ coerce: true }).url();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/coerce-string-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.unknown(), v.toString());
const Schema2 = v.pipe(v.unknown(), v.toString());
const Schema3 = v.pipe(v.unknown(), v.toString(), v.email());
const Schema4 = v.pipe(v.unknown(), v.toString(), v.url());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/custom-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.custom<{value: string}>();
const Schema2 = z.custom<{value: string}>(input => input);
const Schema3 = z.custom<{value: string}>(input => input, "some message");
const Schema4 = z.custom<{value: string}>(input => input, {message: "some message"});
const Schema5 = z.custom<{value: string}>(input => input, {fatal: true});
const Schema6 = z.custom<{value: string}>(input => input, {fatal: true, message: "some message"});
const Schema7 = z.custom<{value: string}>(input => input, {params: {key: "value"}});
const Schema8 = z.custom<{value: string}>(input => input, {path: ["key"]});
const Schema9 = z.custom<{value: string}>(input => input, input => ({fatal: Boolean(input)}));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/custom-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.custom<{value: string}>(() => true);
const Schema2 = v.custom<{value: string}>(input => input);
const Schema3 = v.custom<{value: string}>(input => input, "some message");
const Schema4 = v.custom<{value: string}>(input => input, "some message");
const Schema5 = v.custom<{value: string}>(input => input, {fatal: true});
const Schema6 = v.custom<{value: string}>(input => input, {fatal: true, message: "some message"});
const Schema7 = v.custom<{value: string}>(input => input, {params: {key: "value"}});
const Schema8 = v.custom<{value: string}>(input => input, {path: ["key"]});
const Schema9 = v.custom<{value: string}>(input => input, input => ({fatal: Boolean(input)}));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/date-validation-methods/input.ts
================================================
import { z } from "zod";

const MinSchema = z.date().min(new Date("2025-04-04"));
const MaxSchema = z.date().max(new Date("1999-02-03"));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/date-validation-methods/output.ts
================================================
import * as v from "valibot";

const MinSchema = v.pipe(v.date(), v.minValue(new Date("2025-04-04")));
const MaxSchema = v.pipe(v.date(), v.maxValue(new Date("1999-02-03")));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default/input.ts
================================================
import { z } from "zod";

const Schema1 = z.boolean().default(false);
const Schema2 = z.number().default(() => Math.floor(Math.random() * 11));
const Schema3 = z.string().trim().email().default("valibot@example.com");
const Schema4 = z.number().min(0).max(5).default(() => Math.floor(Math.random() * 6));
const Schema5 = z.object({key: z.string().default("Valibot")});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.optional(v.boolean(), false);
const Schema2 = v.optional(v.number(), () => Math.floor(Math.random() * 11));
const Schema3 = v.optional(v.pipe(v.string(), v.trim(), v.email()), "valibot@example.com");
const Schema4 = v.optional(
  v.pipe(v.number(), v.minValue(0), v.maxValue(5)),
  () => Math.floor(Math.random() * 6)
);
const Schema5 = v.object({key: v.optional(v.string(), "Valibot")});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default-import/input.ts
================================================
import someName from "zod";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default-import/output.ts
================================================
import * as someName from "valibot";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default-import-with-alias/input.ts
================================================
import { default as someName } from "zod";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default-import-with-alias/output.ts
================================================
import * as someName from "valibot";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default-import-with-specific-alias/input.ts
================================================
import { default as z } from "zod";

const StringSchema = z.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/default-import-with-specific-alias/output.ts
================================================
import * as v from "valibot";

const StringSchema = v.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/describe/input.ts
================================================
import { z } from "zod";

const Schema = z.string().describe("some description");
const description = Schema.description;

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/describe/output.ts
================================================
import * as v from "valibot";

const Schema = v.pipe(v.string(), v.description("some description"));
const description = v.getDescription(Schema);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/discriminated-union-schema/input.ts
================================================
import { z } from "zod";

const ResultSchema1 = z.discriminatedUnion("status", [
  z.object({ status: z.literal("success"), data: z.number() }),
  z.object({ status: z.literal("failed"), error: z.string() }),
]);

const ResultSchema2 = z.discriminatedUnion("status", [
  z.object({ status: z.literal("success"), data: z.number() }),
  z.object({ status: z.literal("failed"), error: z.string() }),
], {message: "some message"});

const StateSchema = z.discriminatedUnion("status", [...ResultSchema1.options, z.object({status: z.literal("loading")})]);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/discriminated-union-schema/output.ts
================================================
import * as v from "valibot";

const ResultSchema1 = v.variant("status", [
  v.object({ status: v.literal("success"), data: v.number() }),
  v.object({ status: v.literal("failed"), error: v.string() }),
]);

const ResultSchema2 = v.variant("status", [
  v.object({ status: v.literal("success"), data: v.number() }),
  v.object({ status: v.literal("failed"), error: v.string() }),
], "some message");

const StateSchema = v.variant(
  "status",
  [...ResultSchema1.options, v.object({status: v.literal("loading")})]
);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/instanceof-schema/input.ts
================================================
import { z } from "zod";

const Schema = z.instanceof(Error);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/instanceof-schema/output.ts
================================================
import * as v from "valibot";

const Schema = v.instance(Error);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/intersection-schema/input.ts
================================================
import { z } from "zod";

const Person = z.object({
  name: z.string(),
});

const Employee = z.object({
  role: z.string(),
});

const Schema1 = z.intersection(Person, Employee);
const Schema2 = z.intersection(Person, Employee, {message: "some message"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/intersection-schema/output.ts
================================================
import * as v from "valibot";

const Person = v.object({
  name: v.string(),
});

const Employee = v.object({
  role: v.string(),
});

const Schema1 = v.intersect([Person, Employee]);
const Schema2 = v.intersect([Person, Employee], "some message");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/literal-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.literal("valibot");
const Schema2 = z.literal("valibot", {message: 'should be "valibot"'});
const Schema3 = z.literal(123);
const Schema4 = z.literal(Symbol("someSymbol"));
const Schema5 = z.literal(321n);
const Schema6 = z.literal(true);
const Schema7 = z.literal(null);
const Schema8 = z.literal(null, {message: "should be null"});
const Schema9 = z.literal(undefined);
const Schema10 = z.literal(undefined, {message: "should be undefined"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/literal-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.literal("valibot");
const Schema2 = v.literal("valibot", 'should be "valibot"');
const Schema3 = v.literal(123);
const Schema4 = v.literal(Symbol("someSymbol"));
const Schema5 = v.literal(321n);
const Schema6 = v.literal(true);
const Schema7 = v.null();
const Schema8 = v.null("should be null");
const Schema9 = v.undefined();
const Schema10 = v.undefined("should be undefined");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/map-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.map(z.number(), z.boolean());
const Schema2 = z.map(z.number(), z.boolean(), {message: "some message"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/map-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.map(v.number(), v.boolean());
const Schema2 = v.map(v.number(), v.boolean(), "some message");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/multiple-imports-from-zod/input.ts
================================================
import { z, ZodAnyType } from "zod";

const Schema1 = z.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/multiple-imports-from-zod/output.ts
================================================
/* @valibot-migrate: unable to transform imports from Zod to Valibot: Expected exactly one import specifier from "zod" or "zod/v4". */
import { z, ZodAnyType } from "zod";

const Schema1 = z.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/named-import/input.ts
================================================
import { z } from "zod";

const StringSchema = z.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/named-import/output.ts
================================================
import * as v from "valibot";

const StringSchema = v.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/named-import-with-alias/input.ts
================================================
import { z as someName } from "zod";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/named-import-with-alias/output.ts
================================================
import * as someName from "valibot";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/named-import-with-specific-alias/input.ts
================================================
import { z as z } from "zod";

const StringSchema = z.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/named-import-with-specific-alias/output.ts
================================================
import * as v from "valibot";

const StringSchema = v.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/namespace-import/input.ts
================================================
import * as someName from "zod";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/namespace-import/output.ts
================================================
import * as someName from "valibot";

const StringSchema = someName.string();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/nan-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.nan();
const Schema2 = z.nan({message: "some message"});
const Schema3 = z.nan({description: "some description"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/nan-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.nan();
const Schema2 = v.nan("some message");
const Schema3 = v.pipe(v.nan(), v.description("some description"));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/native-enum/input.ts
================================================
import { z } from "zod";

// TypeScript enum
enum Fruit {
	Orange,
	Apple = "apple",
	Banana = "banana",
}
const FruitEnum = z.nativeEnum(Fruit);

// object literal enum
const FruitObj = {
	Orange: 0,
	Apple: "apple",
	Banana: "banana",
} as const;
const FruitObjEnum = z.nativeEnum(FruitObj);

// access underlying object using `enum` property
enum Answer {
	Yes = "Yes",
	No = "No",
}
const NativeAnswerEnum = z.nativeEnum(Answer);
const AnswerEnum = NativeAnswerEnum.enum;

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/native-enum/output.ts
================================================
import * as v from "valibot";

// TypeScript enum
enum Fruit {
	Orange,
	Apple = "apple",
	Banana = "banana",
}
const FruitEnum = v.enum(Fruit);

// object literal enum
const FruitObj = {
	Orange: 0,
	Apple: "apple",
	Banana: "banana",
} as const;
const FruitObjEnum = v.enum(FruitObj);

// access underlying object using `enum` property
enum Answer {
	Yes = "Yes",
	No = "No",
}
const NativeAnswerEnum = v.enum(Answer);
const AnswerEnum = NativeAnswerEnum.enum;

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/never-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.never();
const Schema2 = z.never({message: "some message"});
const Schema3 = z.never({description: "some description"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/never-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.never();
const Schema2 = v.never("some message");
const Schema3 = v.pipe(v.never(), v.description("some description"));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/null-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.null();
const Schema2 = z.null({message: "some message"});
const Schema3 = z.null({description: "some description"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/null-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.null();
const Schema2 = v.null("some message");
const Schema3 = v.pipe(v.null(), v.description("some description"));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/nullable-schema/input.ts
================================================
import { z } from "zod";

// nullable outside object
const Schema1 = z.string().nullable();
const Schema2 = z.nullable(z.string());
const Schema3 = z.string();
const Schema4 = Schema3.nullable();

// nullable inside object
const Schema5 = z.object({key: z.string().nullable()});
const Schema6 = z.object({key: z.nullable(z.string())});
const Schema7 = z.object({key: z.string().email().nullable()});
const Schema8 = z.object({key: z.nullable(z.string().email())});
const Schema9 = z.object({key: z.number()});

// get the wrapped schema
const Schema10 = z.number().nullable();
const Schema11 = Schema10.unwrap();


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/nullable-schema/output.ts
================================================
import * as v from "valibot";

// nullable outside object
const Schema1 = v.nullable(v.string());
const Schema2 = v.nullable(v.string());
const Schema3 = v.string();
const Schema4 = v.nullable(Schema3);

// nullable inside object
const Schema5 = v.object({key: v.nullable(v.string())});
const Schema6 = v.object({key: v.nullable(v.string())});
const Schema7 = v.object({key: v.nullable(v.pipe(v.string(), v.email()))});
const Schema8 = v.object({key: v.nullable(v.pipe(v.string(), v.email()))});
const Schema9 = v.object({key: v.number()});

// get the wrapped schema
const Schema10 = v.nullable(v.number());
const Schema11 = v.unwrap(Schema10);


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/nullish-schema/input.ts
================================================
import { z } from "zod";

// nullish outside object
const Schema1 = z.string().nullish();
const Schema2 = z.string();
const Schema3 = Schema2.nullish();

// nullish inside object
const Schema4 = z.object({key: z.string().nullish()});
const Schema5 = z.object({key: z.string().email().nullish()});
const Schema6 = z.object({key: z.number()});

// get the wrapped schema
const Schema7 = z.number().nullish();
const Schema8 = Schema7.unwrap();
const Schema9 = Schema7.unwrap().unwrap();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/nullish-schema/output.ts
================================================
import * as v from "valibot";

// nullish outside object
const Schema1 = v.optional(v.nullable(v.string()));
const Schema2 = v.string();
const Schema3 = v.optional(v.nullable(Schema2));

// nullish inside object
const Schema4 = v.object({key: v.optional(v.nullable(v.string()))});
const Schema5 = v.object({key: v.optional(v.nullable(v.pipe(v.string(), v.email())))});
const Schema6 = v.object({key: v.number()});

// get the wrapped schema
const Schema7 = v.optional(v.nullable(v.number()));
const Schema8 = v.unwrap(Schema7);
const Schema9 = v.unwrap(v.unwrap(Schema7));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/number-validation-methods/input.ts
================================================
import { z } from "zod";

const GteSchema = z.number().gte(1);
const MinSchema = z.number().min(2);
const GtSchema = z.number().gt(3);
const LteSchema = z.number().lte(4);
const MaxSchema = z.number().max(5);
const LtSchema = z.number().lt(6);
const IntSchema = z.number().int();
const PositiveSchema = z.number().positive();
const NegativeSchema = z.number().negative();
const NonPositiveSchema = z.number().nonpositive();
const NonNegativeSchema = z.number().nonnegative();
const MultipleOfSchema = z.number().multipleOf(3);
const StepSchema = z.number().step(3);
const FiniteSchema = z.number().finite();
const SafeSchema = z.number().safe();


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/number-validation-methods/output.ts
================================================
import * as v from "valibot";

const GteSchema = v.pipe(v.number(), v.minValue(1));
const MinSchema = v.pipe(v.number(), v.minValue(2));
const GtSchema = v.pipe(v.number(), v.gtValue(3));
const LteSchema = v.pipe(v.number(), v.maxValue(4));
const MaxSchema = v.pipe(v.number(), v.maxValue(5));
const LtSchema = v.pipe(v.number(), v.ltValue(6));
const IntSchema = v.pipe(v.number(), v.integer());
const PositiveSchema = v.pipe(v.number(), v.gtValue(0));
const NegativeSchema = v.pipe(v.number(), v.ltValue(0));
const NonPositiveSchema = v.pipe(v.number(), v.maxValue(0));
const NonNegativeSchema = v.pipe(v.number(), v.minValue(0));
const MultipleOfSchema = v.pipe(v.number(), v.multipleOf(3));
const StepSchema = v.pipe(v.number(), v.multipleOf(3));
const FiniteSchema = v.pipe(v.number(), v.finite());
const SafeSchema = v.pipe(v.number(), v.safeInteger());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-catchall/input.ts
================================================
import { z } from "zod";

const Schema1 = z.object({key: z.string()}).catchall(z.null());
const Schema2 = z.object({key: z.string()}, {message: "some message"}).catchall(z.null());
const Schema3 = z.object({key: z.string()}, {description: "some description"}).catchall(z.null());
const Schema4 = z.object({key: z.string()});
const Schema5 = Schema4.catchall(z.null());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-catchall/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.objectWithRest({key: v.string()}, v.null());
const Schema2 = v.objectWithRest({key: v.string()}, v.null(), "some message");
const Schema3 = v.pipe(
  v.object({key: v.string()}),
  v.description("some description"),
  v.catchall(v.null())
);
const Schema4 = v.object({key: v.string()});
const Schema5 = v.pipe(Schema4, v.catchall(v.null()));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-deepPartial/input.ts
================================================
import { z } from "zod";

const Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});
const Schema2 = Schema1.deepPartial();
const Schema3 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).deepPartial();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-deepPartial/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});
const Schema2 = v.deepPartial(Schema1);
const Schema3 = v.deepPartial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-extend/input.ts
================================================
import { z } from "zod";

// plain
const Schema1 = z.object({foo: z.string()}).extend({bar: z.number()});
const Schema2 = z.object({foo: z.number()});
const Schema3 = Schema2.extend({bar: z.string()});

// passthrough
const Schema4 = z.object({foo: z.string()}).passthrough().extend({bar: z.number()});
const Schema5 = z.object({foo: z.number()}).passthrough();
const Schema6 = Schema5.extend({bar: z.string()});
const Schema7 = z.object({foo: z.string()}).extend({bar: z.number()}).passthrough();
const Schema8 = Schema2.extend({bar: z.string()}).passthrough();

// strict
const Schema9 = z.object({foo: z.string()}).strict().extend({bar: z.number()});
const Schema10 = z.object({foo: z.number()}).strict();
const Schema11 = Schema10.extend({bar: z.string()});
const Schema12 = z.object({foo: z.string()}).extend({bar: z.number()}).strict();
const Schema13 = Schema2.extend({bar: z.string()}).strict();

// strip
const Schema14 = z.object({foo: z.string()}).strict().strip().extend({bar: z.number()});
const Schema15 = z.object({foo: z.number()}).strict().strip();
const Schema16 = Schema15.extend({bar: z.string()});
const Schema17 = z.object({foo: z.string()}).extend({bar: z.number()}).strict().strip();
const Schema18 = Schema2.extend({bar: z.string()}).strict().strip();

// catchall
const Schema19 = z.object({foo: z.string()}).catchall(z.null()).extend({bar: z.number()});
const Schema20 = z.object({foo: z.number()}).catchall(z.null());
const Schema21 = Schema20.extend({bar: z.string()});
const Schema22 = z.object({foo: z.string()}).extend({bar: z.number()}).catchall(z.null());
const Schema23 = Schema2.extend({bar: z.string()}).catchall(z.null());

// i don't know which crazy person would do this, but it is valid
// and we support it so we might as well test it
const Schema24 = Schema23.extend(...[Schema22.shape]);

// ------------ Expected transform ------------
// // plain
// const Schema1 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema2 = v.object({foo: v.number()});
// const Schema3 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // passthrough
// const Schema4 = v.object({
//   ...v.looseObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema5 = v.looseObject({foo: v.number()});
// const Schema6 = v.object({
//   ...Schema5.entries,
//   bar: v.string()
// });
// const Schema7 = v.looseObject({
//   ...v.looseObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema8 = v.looseObject({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // strict
// const Schema9 = v.object({
//   ...v.strictObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema10 = v.strictObject({foo: v.number()});
// const Schema11 = v.object({
//   ...Schema10.entries,
//   bar: v.string()
// });
// const Schema12 = v.strictObject({
//   ...v.strictObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema13 = v.strictObject({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // strip
// const Schema14 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema15 = v.object({foo: v.number()});
// const Schema16 = v.object({
//   ...Schema15.entries,
//   bar: v.string()
// });
// const Schema17 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema18 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // catchall
// const Schema19 = v.object({
//   ...v.objectWithRest({foo: v.string()}, v.null()).entries,
//   bar: v.number()
// });
// const Schema20 = v.objectWithRest({foo: v.number()}, v.null());
// const Schema21 = v.object({
//   ...Schema20.entries,
//   bar: v.string()
// });
// const Schema22 = v.objectWithRest({
//   foo: v.string(),
//   bar: v.number()
// }, v.null());
// const Schema23 = v.objectWithRest({
//   ...Schema2.entries,
//   bar: v.string()
// }, v.null());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-extend/output.ts
================================================
import * as v from "valibot";

// plain
const Schema1 = v.object({
  foo: v.string(),
  bar: v.number()
});
const Schema2 = v.object({foo: v.number()});
const Schema3 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
});

// passthrough
const Schema4 = v.object({
  ...v.looseObject({foo: v.string()}).entries,
  bar: v.number()
});
const Schema5 = v.looseObject({foo: v.number()});
const Schema6 = v.object({
  .../*@valibot-migrate we can't detect if Schema5 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema5.entries,

  bar: v.string()
});
const Schema7 = v.looseObject({
  ...v.looseObject({foo: v.string()}).entries,
  bar: v.number()
});
const Schema8 = v.looseObject({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
});

// strict
const Schema9 = v.object({
  ...v.strictObject({foo: v.string()}).entries,
  bar: v.number()
});
const Schema10 = v.strictObject({foo: v.number()});
const Schema11 = v.object({
  .../*@valibot-migrate we can't detect if Schema10 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema10.entries,

  bar: v.string()
});
const Schema12 = v.strictObject({
  ...v.strictObject({foo: v.string()}).entries,
  bar: v.number()
});
const Schema13 = v.strictObject({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
});

// strip
const Schema14 = v.object({
  foo: v.string(),
  bar: v.number()
});
const Schema15 = v.object({foo: v.number()});
const Schema16 = v.object({
  .../*@valibot-migrate we can't detect if Schema15 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema15.entries,

  bar: v.string()
});
const Schema17 = v.object({
  foo: v.string(),
  bar: v.number()
});
const Schema18 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
});

// catchall
const Schema19 = v.object({
  ...v.objectWithRest({foo: v.string()}, v.null()).entries,
  bar: v.number()
});
const Schema20 = v.objectWithRest({foo: v.number()}, v.null());
const Schema21 = v.object({
  .../*@valibot-migrate we can't detect if Schema20 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema20.entries,

  bar: v.string()
});
const Schema22 = v.objectWithRest({
  foo: v.string(),
  bar: v.number()
}, v.null());
const Schema23 = v.objectWithRest({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
}, v.null());

// i don't know which crazy person would do this, but it is valid
// and we support it so we might as well test it
const Schema24 = v.object({
  .../*@valibot-migrate we can't detect if Schema23 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema23.entries,

  ...[Schema22.entries]
});

// ------------ Expected transform ------------
// // plain
// const Schema1 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema2 = v.object({foo: v.number()});
// const Schema3 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // passthrough
// const Schema4 = v.object({
//   ...v.looseObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema5 = v.looseObject({foo: v.number()});
// const Schema6 = v.object({
//   ...Schema5.entries,
//   bar: v.string()
// });
// const Schema7 = v.looseObject({
//   ...v.looseObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema8 = v.looseObject({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // strict
// const Schema9 = v.object({
//   ...v.strictObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema10 = v.strictObject({foo: v.number()});
// const Schema11 = v.object({
//   ...Schema10.entries,
//   bar: v.string()
// });
// const Schema12 = v.strictObject({
//   ...v.strictObject({foo: v.string()}).entries,
//   bar: v.number()
// });
// const Schema13 = v.strictObject({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // strip
// const Schema14 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema15 = v.object({foo: v.number()});
// const Schema16 = v.object({
//   ...Schema15.entries,
//   bar: v.string()
// });
// const Schema17 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema18 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });

// // catchall
// const Schema19 = v.object({
//   ...v.objectWithRest({foo: v.string()}, v.null()).entries,
//   bar: v.number()
// });
// const Schema20 = v.objectWithRest({foo: v.number()}, v.null());
// const Schema21 = v.object({
//   ...Schema20.entries,
//   bar: v.string()
// });
// const Schema22 = v.objectWithRest({
//   foo: v.string(),
//   bar: v.number()
// }, v.null());
// const Schema23 = v.objectWithRest({
//   ...Schema2.entries,
//   bar: v.string()
// }, v.null());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-keyof/input.ts
================================================
import { z } from "zod";

const ObjectSchema = z.object({apple: z.string(), banana: z.number(), orange: z.boolean()});
const FruitEnum1 = ObjectSchema.keyof();
const FruitEnum2 = z.object({apple: z.string(), banana: z.number(), orange: z.boolean()}).keyof();


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-keyof/output.ts
================================================
import * as v from "valibot";

const ObjectSchema = v.object({apple: v.string(), banana: v.number(), orange: v.boolean()});
const FruitEnum1 = v.keyof(ObjectSchema);
const FruitEnum2 = v.keyof(v.object({apple: v.string(), banana: v.number(), orange: v.boolean()}));


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-merge/input.ts
================================================
import { z } from "zod";

// plain
const Schema1 = z.object({foo: z.string()}).merge(z.object({bar: z.number()}));
const Schema2 = z.object({foo: z.number()});
const Schema3 = Schema2.merge(z.object({bar: z.string()}));
const Schema4 = z.object({bar: z.number()});
const Schema5 = z.object({foo: z.string()}).merge(Schema4);
const Schema6 = Schema2.merge(Schema4);

// passthrough
const Schema7 = z.object({foo: z.string()}).merge(z.object({bar: z.number()}).passthrough());
const Schema8 = Schema2.merge(z.object({bar: z.string()}).passthrough());
const Schema9 = z.object({bar: z.number()}).passthrough();
const Schema10 = z.object({foo: z.string()}).merge(Schema9);
const Schema11 = Schema2.merge(Schema9);

// strict
const Schema12 = z.object({foo: z.string()}).merge(z.object({bar: z.number()}).strict());
const Schema13 = Schema2.merge(z.object({bar: z.string()}).strict());
const Schema14 = z.object({bar: z.number()}).strict();
const Schema15 = z.object({foo: z.string()}).merge(Schema14);
const Schema16 = Schema2.merge(Schema14);

// strip
const Schema17 = z.object({foo: z.string()}).merge(z.object({bar: z.number()}).strict().strip());
const Schema18 = Schema2.merge(z.object({bar: z.string()}).strict().strip());
const Schema19 = z.object({bar: z.number()}).strict().strip();
const Schema20 = z.object({foo: z.string()}).merge(Schema19);
const Schema21 = Schema2.merge(Schema19);

// catchall
const Schema22 = z.object({foo: z.string()}).merge(z.object({bar: z.number()}).catchall(z.null()));
const Schema23 = Schema2.merge(z.object({bar: z.string()}).catchall(z.null()));
const Schema24 = z.object({bar: z.number()}).catchall(z.null());
const Schema25 = z.object({foo: z.string()}).merge(Schema24);
const Schema26 = Schema2.merge(Schema24);

// i don't know which crazy person would do this, but it is valid
// and we support it so we might as well test it
const Schema27 = Schema26.merge(...[Schema25]);

// ------------ Expected transform ------------
// // plain
// const Schema1 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema2 = v.object({foo: v.number()});
// const Schema3 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });
// const Schema4 = v.object({bar: v.number()});
// const Schema5 = v.object({
//   foo: v.string(),
//   ...Schema4.entries
// });
// const Schema6 = v.object({
//   ...Schema2.entries,
//   ...Schema4.entries
// });

// // passthrough
// const Schema7 = v.object({
//   foo: v.string(),
//   ...v.looseObject({bar: v.number()}).entries
// });
// const Schema8 = v.object({
//   ...Schema2.entries,
//   ...v.looseObject({bar: v.string()}).entries
// });
// const Schema9 = v.looseObject({bar: v.number()});
// const Schema10 = v.object({
//   foo: v.string(),
//   ...Schema9.entries
// });
// const Schema11 = v.object({
//   ...Schema2.entries,
//   ...Schema9.entries
// });

// // strict
// const Schema12 = v.object({
//   foo: v.string(),
//   ...v.strictObject({bar: v.number()}).entries
// });
// const Schema13 = v.object({
//   ...Schema2.entries,
//   ...v.strictObject({bar: v.string()}).entries
// });
// const Schema14 = v.strictObject({bar: v.number()});
// const Schema15 = v.object({
//   foo: v.string(),
//   ...Schema14.entries
// });
// const Schema16 = v.object({
//   ...Schema2.entries,
//   ...Schema14.entries
// });

// // strip
// const Schema17 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema18 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });
// const Schema19 = v.object({bar: v.number()});
// const Schema20 = v.object({
//   foo: v.string(),
//   ...Schema19.entries
// });
// const Schema21 = v.object({
//   ...Schema2.entries,
//   ...Schema19.entries
// });

// // catchall
// const Schema22 = v.object({
//   foo: v.string(),
//   ...v.objectWithRest({bar: v.number()}, v.null()).entries
// });
// const Schema23 = v.object({
//   ...Schema2.entries,
//   ...v.objectWithRest({bar: v.string()}, v.null()).entries
// });
// const Schema24 = v.objectWithRest({bar: v.number()}, v.null());
// const Schema25 = v.object({
//   foo: v.string(),
//   ...Schema24.entries
// });
// const Schema26 = v.object({
//   ...Schema2.entries,
//   ...Schema24.entries
// });

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-merge/output.ts
================================================
import * as v from "valibot";

// plain
const Schema1 = v.object({
  foo: v.string(),
  bar: v.number()
});
const Schema2 = v.object({foo: v.number()});
const Schema3 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
});
const Schema4 = v.object({bar: v.number()});
const Schema5 = v.object({
  foo: v.string(),

  .../*@valibot-migrate we can't detect if Schema4 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema4.entries
});
const Schema6 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  .../*@valibot-migrate we can't detect if Schema4 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema4.entries
});

// passthrough
const Schema7 = v.object({
  foo: v.string(),
  ...v.looseObject({bar: v.number()}).entries
});
const Schema8 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  ...v.looseObject({bar: v.string()}).entries
});
const Schema9 = v.looseObject({bar: v.number()});
const Schema10 = v.object({
  foo: v.string(),

  .../*@valibot-migrate we can't detect if Schema9 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema9.entries
});
const Schema11 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  .../*@valibot-migrate we can't detect if Schema9 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema9.entries
});

// strict
const Schema12 = v.object({
  foo: v.string(),
  ...v.strictObject({bar: v.number()}).entries
});
const Schema13 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  ...v.strictObject({bar: v.string()}).entries
});
const Schema14 = v.strictObject({bar: v.number()});
const Schema15 = v.object({
  foo: v.string(),

  .../*@valibot-migrate we can't detect if Schema14 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema14.entries
});
const Schema16 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  .../*@valibot-migrate we can't detect if Schema14 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema14.entries
});

// strip
const Schema17 = v.object({
  foo: v.string(),
  bar: v.number()
});
const Schema18 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  bar: v.string()
});
const Schema19 = v.object({bar: v.number()});
const Schema20 = v.object({
  foo: v.string(),

  .../*@valibot-migrate we can't detect if Schema19 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema19.entries
});
const Schema21 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  .../*@valibot-migrate we can't detect if Schema19 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema19.entries
});

// catchall
const Schema22 = v.object({
  foo: v.string(),
  ...v.objectWithRest({bar: v.number()}, v.null()).entries
});
const Schema23 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  ...v.objectWithRest({bar: v.string()}, v.null()).entries
});
const Schema24 = v.objectWithRest({bar: v.number()}, v.null());
const Schema25 = v.object({
  foo: v.string(),

  .../*@valibot-migrate we can't detect if Schema24 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema24.entries
});
const Schema26 = v.object({
  .../*@valibot-migrate we can't detect if Schema2 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema2.entries,

  .../*@valibot-migrate we can't detect if Schema24 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema24.entries
});

// i don't know which crazy person would do this, but it is valid
// and we support it so we might as well test it
const Schema27 = v.object({
  .../*@valibot-migrate we can't detect if Schema26 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema26.entries,

  ...[Schema25].entries
});

// ------------ Expected transform ------------
// // plain
// const Schema1 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema2 = v.object({foo: v.number()});
// const Schema3 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });
// const Schema4 = v.object({bar: v.number()});
// const Schema5 = v.object({
//   foo: v.string(),
//   ...Schema4.entries
// });
// const Schema6 = v.object({
//   ...Schema2.entries,
//   ...Schema4.entries
// });

// // passthrough
// const Schema7 = v.object({
//   foo: v.string(),
//   ...v.looseObject({bar: v.number()}).entries
// });
// const Schema8 = v.object({
//   ...Schema2.entries,
//   ...v.looseObject({bar: v.string()}).entries
// });
// const Schema9 = v.looseObject({bar: v.number()});
// const Schema10 = v.object({
//   foo: v.string(),
//   ...Schema9.entries
// });
// const Schema11 = v.object({
//   ...Schema2.entries,
//   ...Schema9.entries
// });

// // strict
// const Schema12 = v.object({
//   foo: v.string(),
//   ...v.strictObject({bar: v.number()}).entries
// });
// const Schema13 = v.object({
//   ...Schema2.entries,
//   ...v.strictObject({bar: v.string()}).entries
// });
// const Schema14 = v.strictObject({bar: v.number()});
// const Schema15 = v.object({
//   foo: v.string(),
//   ...Schema14.entries
// });
// const Schema16 = v.object({
//   ...Schema2.entries,
//   ...Schema14.entries
// });

// // strip
// const Schema17 = v.object({
//   foo: v.string(),
//   bar: v.number()
// });
// const Schema18 = v.object({
//   ...Schema2.entries,
//   bar: v.string()
// });
// const Schema19 = v.object({bar: v.number()});
// const Schema20 = v.object({
//   foo: v.string(),
//   ...Schema19.entries
// });
// const Schema21 = v.object({
//   ...Schema2.entries,
//   ...Schema19.entries
// });

// // catchall
// const Schema22 = v.object({
//   foo: v.string(),
//   ...v.objectWithRest({bar: v.number()}, v.null()).entries
// });
// const Schema23 = v.object({
//   ...Schema2.entries,
//   ...v.objectWithRest({bar: v.string()}, v.null()).entries
// });
// const Schema24 = v.objectWithRest({bar: v.number()}, v.null());
// const Schema25 = v.object({
//   foo: v.string(),
//   ...Schema24.entries
// });
// const Schema26 = v.object({
//   ...Schema2.entries,
//   ...Schema24.entries
// });

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-omit/input.ts
================================================
import { z } from "zod";

const Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});
const Schema2 = Schema1.omit({k1: true, k3: true});

const Schema3 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).omit({k2: true});

const Schema4 = z.object({key: z.string()}).omit({});

const Schema5 = Schema1.omit({});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-omit/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});
const Schema2 = v.omit(Schema1, ["k1", "k3"]);

const Schema3 = v.omit(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}), ["k2"]);

const Schema4 = v.object({key: v.string()});

const Schema5 = Schema1;

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-partial/input.ts
================================================
import { z } from "zod";

// make all keys optional
const Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});
const Schema2 = Schema1.partial();
const Schema3 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).partial();

// make none of the keys optional
const Schema4 = Schema1.partial({});
const Schema5 = z.object({key: z.string()}).partial({});

// make some keys optional
const Schema6 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});
const Schema7 = Schema6.partial({k1: true, k3: true});
const Schema8 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).partial({k2: true});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-partial/output.ts
================================================
import * as v from "valibot";

// make all keys optional
const Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});
const Schema2 = v.partial(Schema1);
const Schema3 = v.partial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}));

// make none of the keys optional
const Schema4 = Schema1;
const Schema5 = v.object({key: v.string()});

// make some keys optional
const Schema6 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});
const Schema7 = v.partial(Schema6, ["k1", "k3"]);
const Schema8 = v.partial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}), ["k2"]);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-passthrough/input.ts
================================================
import { z } from "zod";

const Schema1 = z.object({key: z.string()}).passthrough();
const Schema2 = z.object({key: z.string()}, {message: "some message"}).passthrough();
const Schema3 = z.object({key: z.string()}, {description: "some description"}).passthrough();
const Schema4 = z.object({key: z.string()});
const Schema5 = Schema4.passthrough();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-passthrough/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.looseObject({key: v.string()});
const Schema2 = v.looseObject({key: v.string()}, "some message");
const Schema3 = v.pipe(v.looseObject({key: v.string()}), v.description("some description"));
const Schema4 = v.object({key: v.string()});
const Schema5 = v.looseObject(
  /*@valibot-migrate we can't detect if Schema4 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema4.entries
);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-pick/input.ts
================================================
import { z } from "zod";

const Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});
const Schema2 = Schema1.pick({k1: true, k3: true});

const Schema3 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).pick({k2: true});

// todo: const Schema4 = z.object({key: z.string()}).pick({});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-pick/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});
const Schema2 = v.pick(Schema1, ["k1", "k3"]);

const Schema3 = v.pick(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}), ["k2"]);

// todo: const Schema4 = z.object({key: z.string()}).pick({});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-required/input.ts
================================================
import { z } from "zod";

// make all keys required
const Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).partial();
const Schema2 = Schema1.required();
const Schema3 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).partial().required();

// make none of the keys required
const Schema4 = Schema1.partial().required({});
const Schema5 = z.object({key: z.string()}).partial().required({});

// make some keys required
const Schema6 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).partial();
const Schema7 = Schema6.required({k1: true, k3: true});
const Schema8 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()}).partial().required({k2: true});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-required/output.ts
================================================
import * as v from "valibot";

// make all keys required
const Schema1 = v.partial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}));
const Schema2 = v.required(Schema1);
const Schema3 = v.required(v.partial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()})));

// make none of the keys required
const Schema4 = v.partial(Schema1);
const Schema5 = v.partial(v.object({key: v.string()}));

// make some keys required
const Schema6 = v.partial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()}));
const Schema7 = v.required(Schema6, ["k1", "k3"]);
const Schema8 = v.required(
  v.partial(v.object({k1: v.string(), k2: v.number(), k3: v.boolean()})),
  ["k2"]
);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-shape/input.ts
================================================
import { z } from "zod";

const ObjectSchema = z.object({key: z.string()});

const StringSchema = ObjectSchema.shape.key;


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-shape/output.ts
================================================
import * as v from "valibot";

const ObjectSchema = v.object({key: v.string()});

const StringSchema = ObjectSchema.entries.key;


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-strict/input.ts
================================================
import { z } from "zod";

const Schema1 = z.object({key: z.string()}).strict();
const Schema2 = z.object({key: z.string()}, {message: "some message"}).strict();
const Schema3 = z.object({key: z.string()}, {description: "some description"}).strict();
const Schema4 = z.object({key: z.string()});
const Schema5 = Schema4.strict();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-strict/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.strictObject({key: v.string()});
const Schema2 = v.strictObject({key: v.string()}, "some message");
const Schema3 = v.pipe(v.strictObject({key: v.string()}), v.description("some description"));
const Schema4 = v.object({key: v.string()});
const Schema5 = v.strictObject(
  /*@valibot-migrate we can't detect if Schema4 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema4.entries
);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-strip/input.ts
================================================
import { z } from "zod";

// passthrough
const Schema1 = z.object({key: z.string()}).passthrough().strip();
const Schema2 = z.object({key: z.string()}, {message: "some message"}).passthrough().strip();
const Schema3 = z.object({key: z.string()}, {description: "some description"}).passthrough().strip();
const Schema4 = z.object({key: z.string()}).passthrough();
const Schema5 = Schema4.strip();
const Schema6 = z.object({key: z.string()});
const Schema7 = Schema6.passthrough().strip();

// strict
const Schema8 = z.object({key: z.string()}).strict().strip();
const Schema9 = z.object({key: z.string()}, {message: "some message"}).strict().strip();
const Schema10 = z.object({key: z.string()}, {description: "some description"}).strict().strip();
const Schema11 = z.object({key: z.string()}).strict();
const Schema12 = Schema11.strip();
const Schema13 = z.object({key: z.string()});
const Schema14 = Schema13.strict().strip();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/object-strip/output.ts
================================================
import * as v from "valibot";

// passthrough
const Schema1 = v.object({key: v.string()});
const Schema2 = v.object({key: v.string()}, "some message");
const Schema3 = v.object(
  v.pipe(v.object({key: v.string()}), v.description("some description")).entries
);
const Schema4 = v.looseObject({key: v.string()});
const Schema5 = v.pipe(Schema4, v.strip());
const Schema6 = v.object({key: v.string()});
const Schema7 = v.object(
  /*@valibot-migrate we can't detect if Schema6 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema6.entries
);

// strict
const Schema8 = v.object({key: v.string()});
const Schema9 = v.object({key: v.string()}, "some message");
const Schema10 = v.object(
  v.pipe(v.object({key: v.string()}), v.description("some description")).entries
);
const Schema11 = v.strictObject({key: v.string()});
const Schema12 = v.pipe(Schema11, v.strip());
const Schema13 = v.object({key: v.string()});
const Schema14 = v.object(
  /*@valibot-migrate we can't detect if Schema13 has a `pipe` operator, if it does you might need to migrate this by hand otherwise it will loose it's pipeline*/
  Schema13.entries
);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/optional-schema/input.ts
================================================
import { z } from "zod";

// optional outside object
const Schema1 = z.string().optional();
const Schema2 = z.optional(z.string());
const Schema3 = z.string();
const Schema4 = Schema3.optional();

// optional inside object
const Schema5 = z.object({key: z.string().optional()});
const Schema6 = z.object({key: z.optional(z.string())});
const Schema7 = z.object({key: z.string().email().optional()});
const Schema8 = z.object({key: z.optional(z.string().email())});
const Schema9 = z.object({key: z.number()});

// get the wrapped schema
const Schema10 = z.number().optional();
const Schema11 = Schema10.unwrap();


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/optional-schema/output.ts
================================================
import * as v from "valibot";

// optional outside object
const Schema1 = v.optional(v.string());
const Schema2 = v.optional(v.string());
const Schema3 = v.string();
const Schema4 = v.optional(Schema3);

// optional inside object
const Schema5 = v.object({key: v.optional(v.string())});
const Schema6 = v.object({key: v.optional(v.string())});
const Schema7 = v.object({key: v.optional(v.pipe(v.string(), v.email()))});
const Schema8 = v.object({key: v.optional(v.pipe(v.string(), v.email()))});
const Schema9 = v.object({key: v.number()});

// get the wrapped schema
const Schema10 = v.optional(v.number());
const Schema11 = v.unwrap(Schema10);


================================================
FILE: codemod/zod-to-valibot/__testfixtures__/or/input.ts
================================================
import { z } from "zod";

const Schema1 = z.string().or(z.number());
const Schema2 = z.string().or(z.number()).or(z.boolean());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/or/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.union([v.string(), v.number()]);
const Schema2 = v.union([v.union([v.string(), v.number()]), v.boolean()]);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/parsing/input.ts
================================================
import { z } from "zod";

const Schema = z.string();

const output1 = Schema.parse("to parse");

const output2 = Schema.parseAsync("to parseAsync");

const result1 = Schema.safeParse("to safeParse");
if (result1.success) {
	const output = result1.data;
} else {
	const errors = result1.error;
}

const result2 = await Schema.safeParseAsync("to safeParseAsync");
if (result2.success) {
	const output = result2.data;
} else {
	const errors = result2.error;
}

const result3 = await Schema.spa("to spa");
if (result3.success) {
	const output = result3.data;
} else {
	const errors = result3.error;
}

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/parsing/output.ts
================================================
import * as v from "valibot";

const Schema = v.string();

const output1 = v.parse(Schema, "to parse");

const output2 = v.parseAsync(Schema, "to parseAsync");

const result1 = v.safeParse(Schema, "to safeParse");
if (result1.success) {
	const output = result1.output;
} else {
	const errors = result1.issues;
}

const result2 = await v.safeParseAsync(Schema, "to safeParseAsync");
if (result2.success) {
	const output = result2.output;
} else {
	const errors = result2.issues;
}

const result3 = await v.safeParseAsync(Schema, "to spa");
if (result3.success) {
	const output = result3.output;
} else {
	const errors = result3.issues;
}

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/readonly/input.ts
================================================
import { z } from "zod";

const Schema1 = z.array(z.string()).readonly();
const Schema2 = z.map(z.string(), z.date()).readonly();
const Schema3 = z.set(z.string()).min(3).readonly();
const Schema4 = z.object({key: z.string()}).readonly();

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/readonly/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.array(v.string()), v.readonly());
const Schema2 = v.pipe(v.map(v.string(), v.date()), v.readonly());
const Schema3 = v.pipe(v.set(v.string()), v.minSize(3), v.readonly());
const Schema4 = v.pipe(v.object({key: v.string()}), v.readonly());

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/record-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.record(z.number());
const Schema2 = z.record(z.number(), {message: "some message"});
const Schema3 = z.record(z.string(), z.boolean());
const Schema4 = z.record(z.string(), z.boolean(), {message: "some message"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/record-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.record(v.string(), v.number());
const Schema2 = v.record(v.string(), v.number(), "some message");
const Schema3 = v.record(v.string(), v.boolean());
const Schema4 = v.record(v.string(), v.boolean(), "some message");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/refine/input.ts
================================================
import { z } from "zod";

// Basic refine
const Schema1 = z.number().refine((val) => val < 100, "Must be less then 100");

// Refine with string schema
const Schema2 = z.string().refine((val) => val.length > 0, "Required");

// Refine after validator
const Schema3 = z.number().min(0).refine((val) => val % 2 === 0, "Must be even");

// Multiple refines
const Schema4 = z.string().refine((val) => val.length > 3).refine((val) => val.includes("@"));

// Refine with complex condition
const Schema5 = z.object({ name: z.string() }).refine((data) => data.name !== "admin", {
  message: "Cannot use admin"
});

// Refine on linked schema
const BaseSchema = z.string();
const RefinedSchema = BaseSchema.refine((val) => val.trim().length > 0);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/refine/output.ts
================================================
import * as v from "valibot";

// Basic refine
const Schema1 = v.pipe(v.number(), v.check((val) => val < 100, "Must be less then 100"));

// Refine with string schema
const Schema2 = v.pipe(v.string(), v.check((val) => val.length > 0, "Required"));

// Refine after validator
const Schema3 = v.pipe(v.number(), v.minValue(0), v.check((val) => val % 2 === 0, "Must be even"));

// Multiple refines
const Schema4 = v.pipe(
  v.string(),
  v.check((val) => val.length > 3),
  v.check((val) => val.includes("@"))
);

// Refine with complex condition
const Schema5 = v.pipe(
  v.object({ name: v.string() }),
  v.check((data) => data.name !== "admin", "Cannot use admin")
);

// Refine on linked schema
const BaseSchema = v.string();
const RefinedSchema = v.pipe(BaseSchema, v.check((val) => val.trim().length > 0));

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/schema-chain/input.ts
================================================
import { z } from "zod";

const Schema1 = z.string().trim().email();
const output1 = z.string().parse("valibot@example.com");
const output2 = z.string().trim().email().parse("valibot@example.com");
const Schema3 = z.string().optional();
const Schema4 = z.string().optional().nullable();
const Schema5 = z.string().email().optional();
const Schema6 = z.string().email().optional().nullable();
const Schema7 = z.string();
const Schema8 = Schema7.trim().email();
const output = Schema8.parse("valibot@example.com");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/schema-chain/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.pipe(v.string(), v.trim(), v.email());
const output1 = v.parse(v.string(), "valibot@example.com");
const output2 = v.parse(v.pipe(v.string(), v.trim(), v.email()), "valibot@example.com");
const Schema3 = v.optional(v.string());
const Schema4 = v.nullable(v.optional(v.string()));
const Schema5 = v.optional(v.pipe(v.string(), v.email()));
const Schema6 = v.nullable(v.optional(v.pipe(v.string(), v.email())));
const Schema7 = v.string();
const Schema8 = v.pipe(Schema7, v.trim(), v.email());
const output = v.parse(Schema8, "valibot@example.com");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/schema-options/input.ts
================================================
import { z } from "zod";

// ------------ single ------------
// invalid_type_error
const Schema1 = z.string({invalid_type_error: "must be a string"});
const Schema2 = z.literal("valibot", {invalid_type_error: 'must be "valibot"'});
// message
const Schema3 = z.string({message: "must be a string"});
const Schema4 = z.literal("foo", {message: 'must be "foo"'});
// required_error
const Schema5 = z.string({required_error: "is required"});
const Schema6 = z.literal("bar", {required_error: '"bar" is required'});
// description
const Schema7 = z.string({description: "some description"});
const schema7Description = Schema7.description;
const Schema8 = z.literal("hello", {description: 'some description (literal "hello")'});
const schema8Description = Schema8.description;
// coerce
const Schema9 = z.string({coerce: true});
const Schema10 = z.string({coerce: false});
// errorMap - supported by Valibot but incompatible
const Schema11 = z.string({errorMap: () => ({message: "some message"})});
const Schema12 = z.literal("world", {errorMap: () => ({message: 'some message (literal "world")'})});

// ------------ multiple ------------
// invalid_type_error + required_error
const Schema13 = z.string({invalid_type_error: "must be a string", required_error: "is required"});
const Schema14 = z.literal("bot", {invalid_type_error: 'must be "bot"', required_error: '"bot" is required'});
// invalid_type_error + message
const Schema15 = z.string({invalid_type_error: "must be a string", message: "must be a string (msg)"});
const Schema16 = z.literal("bot", {invalid_type_error: 'must be "bot"', message: 'must be "bot" (msg)'});
// required_error + message
const Schema17 = z.string({required_error: "is required", message: "must be a string (msg)"});
const Schema18 = z.literal("bot", {required_error: '"bot" is required', message: 'must be "bot" (msg)'});
// invalid_type_error + required_error + message
const Schema19 = z.string({invalid_type_error: "must be a string", required_error: "is required", message: "must be a string (msg)"});
const Schema20 = z.literal("bot", {invalid_type_error: 'must be "bot"', required_error: '"bot" is required', message: 'must be "bot" (msg)'});
// coerce + invalid_type_error
const Schema21 = z.string({coerce: true, invalid_type_error: "must be a string"});
const Schema22 = z.string({coerce: false, invalid_type_error: "must be a string"});
// coerce + description
const Schema23 = z.string({coerce: true, description: "some description"});
const schema23Description = Schema23.description;
const Schema24 = z.string({coerce: false, description: "some description"});
const schema24Description = Schema24.description;
// coerce + invalid_type_error + description
const Schema25 = z.string({coerce: true, invalid_type_error: "must be a string", description: "some description"});
const schema25Description = Schema25.description;
const Schema26 = z.string({coerce: false, invalid_type_error: "must be a string", description: "some description"});
const schema26Description = Schema26.description;

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/schema-options/output.ts
================================================
import * as v from "valibot";

// ------------ single ------------
// invalid_type_error
const Schema1 = v.string("must be a string");
const Schema2 = v.literal("valibot", 'must be "valibot"');
// message
const Schema3 = v.string("must be a string");
const Schema4 = v.literal("foo", 'must be "foo"');
// required_error
const Schema5 = v.string(issue => issue.input === undefined ? "is required" : issue.message);
const Schema6 = v.literal(
  "bar",
  issue => issue.input === undefined ? '"bar" is required' : issue.message
);
// description
const Schema7 = v.pipe(v.string(), v.description("some description"));
const schema7Description = v.getDescription(Schema7);
const Schema8 = v.pipe(v.literal("hello"), v.description('some description (literal "hello")'));
const schema8Description = v.getDescription(Schema8);
// coerce
const Schema9 = v.pipe(v.unknown(), v.toString());
const Schema10 = v.string();
// errorMap - supported by Valibot but incompatible
const Schema11 = v.string();
const Schema12 = v.literal("world");

// ------------ multiple ------------
// invalid_type_error + required_error
const Schema13 = v.string(issue => issue.input === undefined ? "is required" : "must be a string");
const Schema14 = v.literal(
  "bot",
  issue => issue.input === undefined ? '"bot" is required' : 'must be "bot"'
);
// invalid_type_error + message
const Schema15 = v.string("must be a string (msg)");
const Schema16 = v.literal("bot", 'must be "bot" (msg)');
// required_error + message
const Schema17 = v.string("must be a string (msg)");
const Schema18 = v.literal("bot", 'must be "bot" (msg)');
// invalid_type_error + required_error + message
const Schema19 = v.string("must be a string (msg)");
const Schema20 = v.literal("bot", 'must be "bot" (msg)');
// coerce + invalid_type_error
const Schema21 = v.pipe(v.unknown(), v.toString("must be a string"));
const Schema22 = v.string("must be a string");
// coerce + description
const Schema23 = v.pipe(v.unknown(), v.toString(), v.description("some description"));
const schema23Description = v.getDescription(Schema23);
const Schema24 = v.pipe(v.string(), v.description("some description"));
const schema24Description = v.getDescription(Schema24);
// coerce + invalid_type_error + description
const Schema25 = v.pipe(
  v.unknown(),
  v.toString("must be a string"),
  v.description("some description")
);
const schema25Description = v.getDescription(Schema25);
const Schema26 = v.pipe(v.string("must be a string"), v.description("some description"));
const schema26Description = v.getDescription(Schema26);

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/set-schema/input.ts
================================================
import { z } from "zod";

const Schema1 = z.set(z.number());
const Schema2 = z.set(z.number(), {message: "some message"});

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/set-schema/output.ts
================================================
import * as v from "valibot";

const Schema1 = v.set(v.number());
const Schema2 = v.set(v.number(), "some message");

================================================
FILE: codemod/zod-to-valibot/__testfixtures__/set-validation-methods/input.ts
================================================
import { z } from "zod";

const Schema1 = z.set(z.string()).nonempty();
const Schema2 = z.set(z.string()).nonempty("some message");
const Schema3 = z.set(z.string()).nonempty({message: "some message"});
const Schema4 = z.set(z.string()).min(5);
const Schema5 = z.set(z.string()).min(5, "some message");
const Schema6 = z.set(z.string()).min(5, {mes
Download .txt
gitextract_iir2u9y5/

├── .agents/
│   └── skills/
│       ├── repo-source-code-document/
│       │   └── SKILL.md
│       ├── repo-source-code-review/
│       │   └── SKILL.md
│       ├── repo-structure-navigate/
│       │   └── SKILL.md
│       ├── repo-website-api-create/
│       │   └── SKILL.md
│       ├── repo-website-api-update/
│       │   └── SKILL.md
│       └── repo-website-guide-create/
│           └── SKILL.md
├── .github/
│   ├── FUNDING.yml
│   ├── actions/
│   │   └── environment/
│   │       └── action.yml
│   └── workflows/
│       ├── ci.yml
│       └── publish.yml
├── .gitignore
├── .grit/
│   ├── .gitignore
│   ├── grit.yaml
│   └── patterns/
│       └── migrate_to_v0_31_0.md
├── .prettierignore
├── AGENTS.md
├── CODE_OF_CONDUCT.md
├── CONTRIBUTING.md
├── LICENSE.md
├── SECURITY.md
├── codemod/
│   ├── README.md
│   ├── migrate-to-v0.31.0/
│   │   ├── .codemodrc.json
│   │   ├── .gitignore
│   │   ├── LICENSE
│   │   ├── README.md
│   │   ├── __testfixtures__/
│   │   │   ├── fixture1.input.ts
│   │   │   ├── fixture1.output.ts
│   │   │   ├── fixture10.input.ts
│   │   │   ├── fixture10.output.ts
│   │   │   ├── fixture11.input.ts
│   │   │   ├── fixture11.output.ts
│   │   │   ├── fixture12.input.ts
│   │   │   ├── fixture12.output.ts
│   │   │   ├── fixture13.input.ts
│   │   │   ├── fixture13.output.ts
│   │   │   ├── fixture14.input.ts
│   │   │   ├── fixture14.output.ts
│   │   │   ├── fixture15.input.ts
│   │   │   ├── fixture15.output.ts
│   │   │   ├── fixture16.input.ts
│   │   │   ├── fixture16.output.ts
│   │   │   ├── fixture17.input.ts
│   │   │   ├── fixture17.output.ts
│   │   │   ├── fixture2.input.ts
│   │   │   ├── fixture2.output.ts
│   │   │   ├── fixture3.input.ts
│   │   │   ├── fixture3.output.ts
│   │   │   ├── fixture4.input.ts
│   │   │   ├── fixture4.output.ts
│   │   │   ├── fixture5.input.ts
│   │   │   ├── fixture5.output.ts
│   │   │   ├── fixture6.input.ts
│   │   │   ├── fixture6.output.ts
│   │   │   ├── fixture7.input.ts
│   │   │   ├── fixture7.output.ts
│   │   │   ├── fixture8.input.ts
│   │   │   ├── fixture8.output.ts
│   │   │   ├── fixture9.input.ts
│   │   │   └── fixture9.output.ts
│   │   ├── package.json
│   │   ├── src/
│   │   │   └── index.ts
│   │   └── tsconfig.json
│   └── zod-to-valibot/
│       ├── .gitignore
│       ├── CHANGELOG.md
│       ├── LICENSE.md
│       ├── README.md
│       ├── __testfixtures__/
│       │   ├── any-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-element/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-nonempty/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── array-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── bigint-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-bigint-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-boolean-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-date-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-number-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── coerce-string-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── custom-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── date-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default-import-with-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── default-import-with-specific-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── describe/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── discriminated-union-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── instanceof-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── intersection-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── literal-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── map-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── multiple-imports-from-zod/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── named-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── named-import-with-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── named-import-with-specific-alias/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── namespace-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── nan-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── native-enum/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── never-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── null-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── nullable-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── nullish-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── number-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-catchall/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-deepPartial/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-extend/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-keyof/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-merge/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-omit/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-partial/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-passthrough/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-pick/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-required/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-shape/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-strict/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── object-strip/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── optional-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── or/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── parsing/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── readonly/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── record-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── refine/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── schema-chain/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── schema-options/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── set-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── set-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── specific-default-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── specific-namespace-import/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── string-validation-methods/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── symbol-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── transform/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── tuple-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── type-inference/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── undefined-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── union-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── unknown-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── validation-error-msg/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   ├── void-schema/
│       │   │   ├── input.ts
│       │   │   └── output.ts
│       │   └── zod-enum/
│       │       ├── input.ts
│       │       └── output.ts
│       ├── cli.mjs
│       ├── package.json
│       ├── src/
│       │   ├── test-setup.test.ts
│       │   ├── transform/
│       │   │   ├── imports/
│       │   │   │   ├── imports.ts
│       │   │   │   └── index.ts
│       │   │   ├── index.ts
│       │   │   └── schemas-and-links/
│       │   │       ├── constants.ts
│       │   │       ├── helpers.ts
│       │   │       ├── index.ts
│       │   │       ├── methods/
│       │   │       │   ├── array/
│       │   │       │   │   ├── array.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── catchall/
│       │   │       │   │   ├── catchall.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── deepPartial/
│       │   │       │   │   ├── deepPartial.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── default/
│       │   │       │   │   ├── default.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── exclude/
│       │   │       │   │   ├── exclude.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── extend/
│       │   │       │   │   ├── extend.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── extract/
│       │   │       │   │   ├── extract.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── index.ts
│       │   │       │   ├── keyof/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── keyof.ts
│       │   │       │   ├── merge/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── merge.ts
│       │   │       │   ├── nullable/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nullable.ts
│       │   │       │   ├── nullish/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nullish.ts
│       │   │       │   ├── omit/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── omit.ts
│       │   │       │   ├── optional/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── optional.ts
│       │   │       │   ├── or/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── or.ts
│       │   │       │   ├── parse/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── parse.ts
│       │   │       │   ├── parseAsync/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── parseAsync.ts
│       │   │       │   ├── partial/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── partial.ts
│       │   │       │   ├── passthrough/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── passthrough.ts
│       │   │       │   ├── pick/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── pick.ts
│       │   │       │   ├── refine/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── refine.ts
│       │   │       │   ├── required/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── required.ts
│       │   │       │   ├── rest/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── rest.ts
│       │   │       │   ├── safeParse/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── safeParse.ts
│       │   │       │   ├── safeParseAsync/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── safeParseAsync.ts
│       │   │       │   ├── strict/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── strict.ts
│       │   │       │   ├── strip/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── strip.ts
│       │   │       │   ├── transform/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── transform.ts
│       │   │       │   └── unwrap/
│       │   │       │       ├── index.ts
│       │   │       │       └── unwrap.ts
│       │   │       ├── properties/
│       │   │       │   ├── description.ts
│       │   │       │   ├── element.ts
│       │   │       │   ├── index.ts
│       │   │       │   └── shape.ts
│       │   │       ├── schemas/
│       │   │       │   ├── any/
│       │   │       │   │   ├── any.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── array/
│       │   │       │   │   ├── array.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── bigint/
│       │   │       │   │   ├── bigint.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── boolean/
│       │   │       │   │   ├── boolean.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── custom/
│       │   │       │   │   ├── custom.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── date/
│       │   │       │   │   ├── date.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── discriminatedUnion/
│       │   │       │   │   ├── discriminatedUnion.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── enum/
│       │   │       │   │   ├── enum.ts
│       │   │       │   │   └── index.ts
│       │   │       │   ├── helpers.ts
│       │   │       │   ├── index.ts
│       │   │       │   ├── instanceof/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── instanceof.ts
│       │   │       │   ├── intersection/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── intersection.ts
│       │   │       │   ├── literal/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── literal.ts
│       │   │       │   ├── map/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── map.ts
│       │   │       │   ├── nan/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nan.ts
│       │   │       │   ├── nativeEnum/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nativeEnum.ts
│       │   │       │   ├── never/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── never.ts
│       │   │       │   ├── null/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── null.ts
│       │   │       │   ├── nullable/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── nullable.ts
│       │   │       │   ├── number/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── number.ts
│       │   │       │   ├── object/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── object.ts
│       │   │       │   ├── optional/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── optional.ts
│       │   │       │   ├── record/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── record.ts
│       │   │       │   ├── set/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── set.ts
│       │   │       │   ├── string/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── string.ts
│       │   │       │   ├── symbol/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── symbol.ts
│       │   │       │   ├── tuple/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── tuple.ts
│       │   │       │   ├── types.ts
│       │   │       │   ├── undefined/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── undefined.ts
│       │   │       │   ├── union/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── union.ts
│       │   │       │   ├── unknown/
│       │   │       │   │   ├── index.ts
│       │   │       │   │   └── unknown.ts
│       │   │       │   └── void/
│       │   │       │       ├── index.ts
│       │   │       │       └── void.ts
│       │   │       ├── schemas-and-links.ts
│       │   │       ├── types.ts
│       │   │       └── validators/
│       │   │           ├── base64/
│       │   │           │   ├── base64.ts
│       │   │           │   └── index.ts
│       │   │           ├── cuid2/
│       │   │           │   ├── cuid2.ts
│       │   │           │   └── index.ts
│       │   │           ├── date/
│       │   │           │   ├── date.ts
│       │   │           │   └── index.ts
│       │   │           ├── datetime/
│       │   │           │   ├── datetime.ts
│       │   │           │   └── index.ts
│       │   │           ├── describe/
│       │   │           │   ├── describe.ts
│       │   │           │   └── index.ts
│       │   │           ├── email/
│       │   │           │   ├── email.ts
│       │   │           │   └── index.ts
│       │   │           ├── emoji/
│       │   │           │   ├── emoji.ts
│       │   │           │   └── index.ts
│       │   │           ├── endsWith/
│       │   │           │   ├── endsWith.ts
│       │   │           │   └── index.ts
│       │   │           ├── finite/
│       │   │           │   ├── finite.ts
│       │   │           │   └── index.ts
│       │   │           ├── gt/
│       │   │           │   ├── gt.ts
│       │   │           │   └── index.ts
│       │   │           ├── gte/
│       │   │           │   ├── gte.ts
│       │   │           │   └── index.ts
│       │   │           ├── helpers.ts
│       │   │           ├── includes/
│       │   │           │   ├── includes.ts
│       │   │           │   └── index.ts
│       │   │           ├── index.ts
│       │   │           ├── int/
│       │   │           │   ├── index.ts
│       │   │           │   └── int.ts
│       │   │           ├── ip/
│       │   │           │   ├── index.ts
│       │   │           │   └── ip.ts
│       │   │           ├── length/
│       │   │           │   ├── index.ts
│       │   │           │   └── length.ts
│       │   │           ├── lt/
│       │   │           │   ├── index.ts
│       │   │           │   └── lt.ts
│       │   │           ├── lte/
│       │   │           │   ├── index.ts
│       │   │           │   └── lte.ts
│       │   │           ├── max/
│       │   │           │   ├── index.ts
│       │   │           │   └── max.ts
│       │   │           ├── min/
│       │   │           │   ├── index.ts
│       │   │           │   └── min.ts
│       │   │           ├── multipleOf/
│       │   │           │   ├── index.ts
│       │   │           │   └── multipleOf.ts
│       │   │           ├── nanoid/
│       │   │           │   ├── index.ts
│       │   │           │   └── nanoid.ts
│       │   │           ├── negative/
│       │   │           │   ├── index.ts
│       │   │           │   └── negative.ts
│       │   │           ├── nonempty/
│       │   │           │   ├── index.ts
│       │   │           │   └── nonempty.ts
│       │   │           ├── nonnegative/
│       │   │           │   ├── index.ts
│       │   │           │   └── nonnegative.ts
│       │   │           ├── nonpositive/
│       │   │           │   ├── index.ts
│       │   │           │   └── nonpositive.ts
│       │   │           ├── positive/
│       │   │           │   ├── index.ts
│       │   │           │   └── positive.ts
│       │   │           ├── readonly/
│       │   │           │   ├── index.ts
│       │   │           │   └── readonly.ts
│       │   │           ├── regex/
│       │   │           │   ├── index.ts
│       │   │           │   └── regex.ts
│       │   │           ├── safe/
│       │   │           │   ├── index.ts
│       │   │           │   └── safe.ts
│       │   │           ├── size/
│       │   │           │   ├── index.ts
│       │   │           │   └── size.ts
│       │   │           ├── startsWith/
│       │   │           │   ├── index.ts
│       │   │           │   └── startsWith.ts
│       │   │           ├── time/
│       │   │           │   ├── index.ts
│       │   │           │   └── time.ts
│       │   │           ├── toLowerCase/
│       │   │           │   ├── index.ts
│       │   │           │   └── toLowerCase.ts
│       │   │           ├── toUpperCase/
│       │   │           │   ├── index.ts
│       │   │           │   └── toUpperCase.ts
│       │   │           ├── trim/
│       │   │           │   ├── index.ts
│       │   │           │   └── trim.ts
│       │   │           ├── ulid/
│       │   │           │   ├── index.ts
│       │   │           │   └── ulid.ts
│       │   │           ├── url/
│       │   │           │   ├── index.ts
│       │   │           │   └── url.ts
│       │   │           └── uuid/
│       │   │               ├── index.ts
│       │   │               └── uuid.ts
│       │   └── utils.ts
│       ├── tsconfig.json
│       └── tsdown.config.ts
├── library/
│   ├── CHANGELOG.md
│   ├── LICENSE.md
│   ├── README.md
│   ├── eslint.config.js
│   ├── jsr.json
│   ├── mod.ts
│   ├── package.json
│   ├── playground.ts
│   ├── src/
│   │   ├── actions/
│   │   │   ├── args/
│   │   │   │   ├── args.test-d.ts
│   │   │   │   ├── args.test.ts
│   │   │   │   ├── args.ts
│   │   │   │   ├── argsAsync.test-d.ts
│   │   │   │   ├── argsAsync.test.ts
│   │   │   │   ├── argsAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── await/
│   │   │   │   ├── awaitAsync.test-d.ts
│   │   │   │   ├── awaitAsync.test.ts
│   │   │   │   ├── awaitAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── base64/
│   │   │   │   ├── base64.test-d.ts
│   │   │   │   ├── base64.test.ts
│   │   │   │   ├── base64.ts
│   │   │   │   └── index.ts
│   │   │   ├── bic/
│   │   │   │   ├── bic.test-d.ts
│   │   │   │   ├── bic.test.ts
│   │   │   │   ├── bic.ts
│   │   │   │   └── index.ts
│   │   │   ├── brand/
│   │   │   │   ├── brand.test-d.ts
│   │   │   │   ├── brand.test.ts
│   │   │   │   ├── brand.ts
│   │   │   │   └── index.ts
│   │   │   ├── bytes/
│   │   │   │   ├── bytes.test-d.ts
│   │   │   │   ├── bytes.test.ts
│   │   │   │   ├── bytes.ts
│   │   │   │   └── index.ts
│   │   │   ├── check/
│   │   │   │   ├── check.test-d.ts
│   │   │   │   ├── check.test.ts
│   │   │   │   ├── check.ts
│   │   │   │   ├── checkAsync.test-d.ts
│   │   │   │   ├── checkAsync.test.ts
│   │   │   │   ├── checkAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── checkItems/
│   │   │   │   ├── checkItems.test-d.ts
│   │   │   │   ├── checkItems.test.ts
│   │   │   │   ├── checkItems.ts
│   │   │   │   ├── checkItemsAsync.test-d.ts
│   │   │   │   ├── checkItemsAsync.test.ts
│   │   │   │   ├── checkItemsAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── creditCard/
│   │   │   │   ├── creditCard.test-d.ts
│   │   │   │   ├── creditCard.test.ts
│   │   │   │   ├── creditCard.ts
│   │   │   │   └── index.ts
│   │   │   ├── cuid2/
│   │   │   │   ├── cuid2.test-d.ts
│   │   │   │   ├── cuid2.test.ts
│   │   │   │   ├── cuid2.ts
│   │   │   │   └── index.ts
│   │   │   ├── decimal/
│   │   │   │   ├── decimal.test-d.ts
│   │   │   │   ├── decimal.test.ts
│   │   │   │   ├── decimal.ts
│   │   │   │   └── index.ts
│   │   │   ├── description/
│   │   │   │   ├── description.test-d.ts
│   │   │   │   ├── description.test.ts
│   │   │   │   ├── description.ts
│   │   │   │   └── index.ts
│   │   │   ├── digits/
│   │   │   │   ├── digits.test-d.ts
│   │   │   │   ├── digits.test.ts
│   │   │   │   ├── digits.ts
│   │   │   │   └── index.ts
│   │   │   ├── domain/
│   │   │   │   ├── domain.test-d.ts
│   │   │   │   ├── domain.test.ts
│   │   │   │   ├── domain.ts
│   │   │   │   └── index.ts
│   │   │   ├── email/
│   │   │   │   ├── email.test-d.ts
│   │   │   │   ├── email.test.ts
│   │   │   │   ├── email.ts
│   │   │   │   └── index.ts
│   │   │   ├── emoji/
│   │   │   │   ├── emoji.test-d.ts
│   │   │   │   ├── emoji.test.ts
│   │   │   │   ├── emoji.ts
│   │   │   │   └── index.ts
│   │   │   ├── empty/
│   │   │   │   ├── empty.test-d.ts
│   │   │   │   ├── empty.test.ts
│   │   │   │   ├── empty.ts
│   │   │   │   └── index.ts
│   │   │   ├── endsWith/
│   │   │   │   ├── endsWith.test-d.ts
│   │   │   │   ├── endsWith.test.ts
│   │   │   │   ├── endsWith.ts
│   │   │   │   └── index.ts
│   │   │   ├── entries/
│   │   │   │   ├── entries.test-d.ts
│   │   │   │   ├── entries.test.ts
│   │   │   │   ├── entries.ts
│   │   │   │   └── index.ts
│   │   │   ├── everyItem/
│   │   │   │   ├── everyItem.test-d.ts
│   │   │   │   ├── everyItem.test.ts
│   │   │   │   ├── everyItem.ts
│   │   │   │   └── index.ts
│   │   │   ├── examples/
│   │   │   │   ├── examples.test-d.ts
│   │   │   │   ├── examples.test.ts
│   │   │   │   ├── examples.ts
│   │   │   │   └── index.ts
│   │   │   ├── excludes/
│   │   │   │   ├── excludes.test-d.ts
│   │   │   │   ├── excludes.test.ts
│   │   │   │   ├── excludes.ts
│   │   │   │   └── index.ts
│   │   │   ├── filterItems/
│   │   │   │   ├── filterItems.test-d.ts
│   │   │   │   ├── filterItems.test.ts
│   │   │   │   ├── filterItems.ts
│   │   │   │   └── index.ts
│   │   │   ├── findItem/
│   │   │   │   ├── findItem.test-d.ts
│   │   │   │   ├── findItem.test.ts
│   │   │   │   ├── findItem.ts
│   │   │   │   └── index.ts
│   │   │   ├── finite/
│   │   │   │   ├── finite.test-d.ts
│   │   │   │   ├── finite.test.ts
│   │   │   │   ├── finite.ts
│   │   │   │   └── index.ts
│   │   │   ├── flavor/
│   │   │   │   ├── flavor.test-d.ts
│   │   │   │   ├── flavor.test.ts
│   │   │   │   ├── flavor.ts
│   │   │   │   └── index.ts
│   │   │   ├── graphemes/
│   │   │   │   ├── graphemes.test-d.ts
│   │   │   │   ├── graphemes.test.ts
│   │   │   │   ├── graphemes.ts
│   │   │   │   └── index.ts
│   │   │   ├── gtValue/
│   │   │   │   ├── gtValue.test.ts
│   │   │   │   ├── gtValue.ts
│   │   │   │   ├── gtValues.test-d.ts
│   │   │   │   └── index.ts
│   │   │   ├── guard/
│   │   │   │   ├── guard.test-d.ts
│   │   │   │   ├── guard.test.ts
│   │   │   │   ├── guard.ts
│   │   │   │   └── index.ts
│   │   │   ├── hash/
│   │   │   │   ├── hash.test-d.ts
│   │   │   │   ├── hash.test.ts
│   │   │   │   ├── hash.ts
│   │   │   │   └── index.ts
│   │   │   ├── hexColor/
│   │   │   │   ├── hexColor.test-d.ts
│   │   │   │   ├── hexColor.test.ts
│   │   │   │   ├── hexColor.ts
│   │   │   │   └── index.ts
│   │   │   ├── hexadecimal/
│   │   │   │   ├── hexadecimal.test-d.ts
│   │   │   │   ├── hexadecimal.test.ts
│   │   │   │   ├── hexadecimal.ts
│   │   │   │   └── index.ts
│   │   │   ├── imei/
│   │   │   │   ├── imei.test-d.ts
│   │   │   │   ├── imei.test.ts
│   │   │   │   ├── imei.ts
│   │   │   │   └── index.ts
│   │   │   ├── includes/
│   │   │   │   ├── includes.test-d.ts
│   │   │   │   ├── includes.test.ts
│   │   │   │   ├── includes.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── integer/
│   │   │   │   ├── index.ts
│   │   │   │   ├── integer.test-d.ts
│   │   │   │   ├── integer.test.ts
│   │   │   │   └── integer.ts
│   │   │   ├── ip/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ip.test-d.ts
│   │   │   │   ├── ip.test.ts
│   │   │   │   └── ip.ts
│   │   │   ├── ipv4/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ipv4.test-d.ts
│   │   │   │   ├── ipv4.test.ts
│   │   │   │   └── ipv4.ts
│   │   │   ├── ipv6/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ipv6.test-d.ts
│   │   │   │   ├── ipv6.test.ts
│   │   │   │   └── ipv6.ts
│   │   │   ├── isbn/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isbn.test-d.ts
│   │   │   │   ├── isbn.test.ts
│   │   │   │   ├── isbn.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _isIsbn10.test.ts
│   │   │   │       ├── _isIsbn10.ts
│   │   │   │       ├── _isIsbn13.test.ts
│   │   │   │       ├── _isIsbn13.ts
│   │   │   │       └── index.ts
│   │   │   ├── isoDate/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoDate.test-d.ts
│   │   │   │   ├── isoDate.test.ts
│   │   │   │   └── isoDate.ts
│   │   │   ├── isoDateTime/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoDateTime.test-d.ts
│   │   │   │   ├── isoDateTime.test.ts
│   │   │   │   └── isoDateTime.ts
│   │   │   ├── isoTime/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoTime.test-d.ts
│   │   │   │   ├── isoTime.test.ts
│   │   │   │   └── isoTime.ts
│   │   │   ├── isoTimeSecond/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoTimeSecond.test-d.ts
│   │   │   │   ├── isoTimeSecond.test.ts
│   │   │   │   └── isoTimeSecond.ts
│   │   │   ├── isoTimestamp/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoTimestamp.test-d.ts
│   │   │   │   ├── isoTimestamp.test.ts
│   │   │   │   └── isoTimestamp.ts
│   │   │   ├── isoWeek/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isoWeek.test-d.ts
│   │   │   │   ├── isoWeek.test.ts
│   │   │   │   └── isoWeek.ts
│   │   │   ├── isrc/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isrc.test-d.ts
│   │   │   │   ├── isrc.test.ts
│   │   │   │   └── isrc.ts
│   │   │   ├── jwsCompact/
│   │   │   │   ├── index.ts
│   │   │   │   ├── jwsCompact.test-d.ts
│   │   │   │   ├── jwsCompact.test.ts
│   │   │   │   └── jwsCompact.ts
│   │   │   ├── length/
│   │   │   │   ├── index.ts
│   │   │   │   ├── length.test-d.ts
│   │   │   │   ├── length.test.ts
│   │   │   │   └── length.ts
│   │   │   ├── ltValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ltValue.test-d.ts
│   │   │   │   ├── ltValue.test.ts
│   │   │   │   └── ltValue.ts
│   │   │   ├── mac/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mac.test-d.ts
│   │   │   │   ├── mac.test.ts
│   │   │   │   └── mac.ts
│   │   │   ├── mac48/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mac48.test-d.ts
│   │   │   │   ├── mac48.test.ts
│   │   │   │   └── mac48.ts
│   │   │   ├── mac64/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mac64.test-d.ts
│   │   │   │   ├── mac64.test.ts
│   │   │   │   └── mac64.ts
│   │   │   ├── mapItems/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mapItems.test-d.ts
│   │   │   │   ├── mapItems.test.ts
│   │   │   │   └── mapItems.ts
│   │   │   ├── maxBytes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxBytes.test-d.ts
│   │   │   │   ├── maxBytes.test.ts
│   │   │   │   └── maxBytes.ts
│   │   │   ├── maxEntries/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxEntries.test-d.ts
│   │   │   │   ├── maxEntries.test.ts
│   │   │   │   └── maxEntries.ts
│   │   │   ├── maxGraphemes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxGraphemes.test-d.ts
│   │   │   │   ├── maxGraphemes.test.ts
│   │   │   │   └── maxGraphemes.ts
│   │   │   ├── maxLength/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxLength.test-d.ts
│   │   │   │   ├── maxLength.test.ts
│   │   │   │   └── maxLength.ts
│   │   │   ├── maxSize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxSize.test-d.ts
│   │   │   │   ├── maxSize.test.ts
│   │   │   │   └── maxSize.ts
│   │   │   ├── maxValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxValue.test-d.ts
│   │   │   │   ├── maxValue.test.ts
│   │   │   │   └── maxValue.ts
│   │   │   ├── maxWords/
│   │   │   │   ├── index.ts
│   │   │   │   ├── maxWords.test-d.ts
│   │   │   │   ├── maxWords.test.ts
│   │   │   │   └── maxWords.ts
│   │   │   ├── metadata/
│   │   │   │   ├── index.ts
│   │   │   │   ├── metadata.test-d.ts
│   │   │   │   ├── metadata.test.ts
│   │   │   │   └── metadata.ts
│   │   │   ├── mimeType/
│   │   │   │   ├── index.ts
│   │   │   │   ├── mimeType.test-d.ts
│   │   │   │   ├── mimeType.test.ts
│   │   │   │   └── mimeType.ts
│   │   │   ├── minBytes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minBytes.test-d.ts
│   │   │   │   ├── minBytes.test.ts
│   │   │   │   └── minBytes.ts
│   │   │   ├── minEntries/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minEntries.test-d.ts
│   │   │   │   ├── minEntries.test.ts
│   │   │   │   └── minEntries.ts
│   │   │   ├── minGraphemes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minGraphemes.test-d.ts
│   │   │   │   ├── minGraphemes.test.ts
│   │   │   │   └── minGraphemes.ts
│   │   │   ├── minLength/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minLength.test-d.ts
│   │   │   │   ├── minLength.test.ts
│   │   │   │   └── minLength.ts
│   │   │   ├── minSize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minSize.test-d.ts
│   │   │   │   ├── minSize.test.ts
│   │   │   │   └── minSize.ts
│   │   │   ├── minValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minValue.test-d.ts
│   │   │   │   ├── minValue.test.ts
│   │   │   │   └── minValue.ts
│   │   │   ├── minWords/
│   │   │   │   ├── index.ts
│   │   │   │   ├── minWords.test-d.ts
│   │   │   │   ├── minWords.test.ts
│   │   │   │   └── minWords.ts
│   │   │   ├── multipleOf/
│   │   │   │   ├── index.ts
│   │   │   │   ├── multipleOf.test-d.ts
│   │   │   │   ├── multipleOf.test.ts
│   │   │   │   └── multipleOf.ts
│   │   │   ├── nanoid/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nanoid.test-d.ts
│   │   │   │   ├── nanoid.test.ts
│   │   │   │   └── nanoid.ts
│   │   │   ├── nonEmpty/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonEmpty.test-d.ts
│   │   │   │   ├── nonEmpty.test.ts
│   │   │   │   └── nonEmpty.ts
│   │   │   ├── normalize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── normalize.test-d.ts
│   │   │   │   ├── normalize.test.ts
│   │   │   │   └── normalize.ts
│   │   │   ├── notBytes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notBytes.test-d.ts
│   │   │   │   ├── notBytes.test.ts
│   │   │   │   └── notBytes.ts
│   │   │   ├── notEntries/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notEntries.test-d.ts
│   │   │   │   ├── notEntries.test.ts
│   │   │   │   └── notEntries.ts
│   │   │   ├── notGraphemes/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notGraphemes.test-d.ts
│   │   │   │   ├── notGraphemes.test.ts
│   │   │   │   └── notGraphemes.ts
│   │   │   ├── notLength/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notLength.test-d.ts
│   │   │   │   ├── notLength.test.ts
│   │   │   │   └── notLength.ts
│   │   │   ├── notSize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notSize.test-d.ts
│   │   │   │   ├── notSize.test.ts
│   │   │   │   └── notSize.ts
│   │   │   ├── notValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notValue.test-d.ts
│   │   │   │   ├── notValue.test.ts
│   │   │   │   └── notValue.ts
│   │   │   ├── notValues/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notValues.test-d.ts
│   │   │   │   ├── notValues.test.ts
│   │   │   │   └── notValues.ts
│   │   │   ├── notWords/
│   │   │   │   ├── index.ts
│   │   │   │   ├── notWords.test-d.ts
│   │   │   │   ├── notWords.test.ts
│   │   │   │   └── notWords.ts
│   │   │   ├── octal/
│   │   │   │   ├── index.ts
│   │   │   │   ├── octal.test-d.ts
│   │   │   │   ├── octal.test.ts
│   │   │   │   └── octal.ts
│   │   │   ├── parseBoolean/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parseBoolean.test-d.ts
│   │   │   │   ├── parseBoolean.test.ts
│   │   │   │   └── parseBoolean.ts
│   │   │   ├── parseJson/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parseJson.test-d.ts
│   │   │   │   ├── parseJson.test.ts
│   │   │   │   └── parseJson.ts
│   │   │   ├── partialCheck/
│   │   │   │   ├── index.ts
│   │   │   │   ├── partialCheck.test-d.ts
│   │   │   │   ├── partialCheck.test.ts
│   │   │   │   ├── partialCheck.ts
│   │   │   │   ├── partialCheckAsync.test-d.ts
│   │   │   │   ├── partialCheckAsync.test.ts
│   │   │   │   ├── partialCheckAsync.ts
│   │   │   │   ├── types.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _isPartiallyTyped/
│   │   │   │       │   ├── _isPartiallyTyped.test.ts
│   │   │   │       │   ├── _isPartiallyTyped.ts
│   │   │   │       │   └── index.ts
│   │   │   │       └── index.ts
│   │   │   ├── rawCheck/
│   │   │   │   ├── index.ts
│   │   │   │   ├── rawCheck.test-d.ts
│   │   │   │   ├── rawCheck.test.ts
│   │   │   │   ├── rawCheck.ts
│   │   │   │   ├── rawCheckAsync.test-d.ts
│   │   │   │   ├── rawCheckAsync.test.ts
│   │   │   │   ├── rawCheckAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── rawTransform/
│   │   │   │   ├── index.ts
│   │   │   │   ├── rawTransform.test-d.ts
│   │   │   │   ├── rawTransform.test.ts
│   │   │   │   ├── rawTransform.ts
│   │   │   │   ├── rawTransformAsync.test-d.ts
│   │   │   │   ├── rawTransformAsync.test.ts
│   │   │   │   ├── rawTransformAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── readonly/
│   │   │   │   ├── index.ts
│   │   │   │   ├── readonly.test-d.ts
│   │   │   │   ├── readonly.test.ts
│   │   │   │   └── readonly.ts
│   │   │   ├── reduceItems/
│   │   │   │   ├── index.ts
│   │   │   │   ├── reduceItems.test-d.ts
│   │   │   │   ├── reduceItems.test.ts
│   │   │   │   └── reduceItems.ts
│   │   │   ├── regex/
│   │   │   │   ├── index.ts
│   │   │   │   ├── regex.test-d.ts
│   │   │   │   ├── regex.test.ts
│   │   │   │   └── regex.ts
│   │   │   ├── returns/
│   │   │   │   ├── index.ts
│   │   │   │   ├── returns.test-d.ts
│   │   │   │   ├── returns.test.ts
│   │   │   │   ├── returns.ts
│   │   │   │   ├── returnsAsync.test-d.ts
│   │   │   │   ├── returnsAsync.test.ts
│   │   │   │   └── returnsAsync.ts
│   │   │   ├── rfcEmail/
│   │   │   │   ├── index.ts
│   │   │   │   ├── rfcEmail.test-d.ts
│   │   │   │   ├── rfcEmail.test.ts
│   │   │   │   └── rfcEmail.ts
│   │   │   ├── safeInteger/
│   │   │   │   ├── index.ts
│   │   │   │   ├── safeInteger.test-d.ts
│   │   │   │   ├── safeInteger.test.ts
│   │   │   │   └── safeInteger.ts
│   │   │   ├── size/
│   │   │   │   ├── index.ts
│   │   │   │   ├── size.test-d.ts
│   │   │   │   ├── size.test.ts
│   │   │   │   └── size.ts
│   │   │   ├── slug/
│   │   │   │   ├── index.ts
│   │   │   │   ├── slug.test-d.ts
│   │   │   │   ├── slug.test.ts
│   │   │   │   └── slug.ts
│   │   │   ├── someItem/
│   │   │   │   ├── index.ts
│   │   │   │   ├── someItem.test-d.ts
│   │   │   │   ├── someItem.test.ts
│   │   │   │   └── someItem.ts
│   │   │   ├── sortItems/
│   │   │   │   ├── index.ts
│   │   │   │   ├── sortItems.test-d.ts
│   │   │   │   ├── sortItems.test.ts
│   │   │   │   └── sortItems.ts
│   │   │   ├── startsWith/
│   │   │   │   ├── index.ts
│   │   │   │   ├── startsWith.test-d.ts
│   │   │   │   ├── startsWith.test.ts
│   │   │   │   └── startsWith.ts
│   │   │   ├── stringifyJson/
│   │   │   │   ├── index.ts
│   │   │   │   ├── stringifyJson.test-d.ts
│   │   │   │   ├── stringifyJson.test.ts
│   │   │   │   └── stringifyJson.ts
│   │   │   ├── title/
│   │   │   │   ├── index.ts
│   │   │   │   ├── title.test-d.ts
│   │   │   │   ├── title.test.ts
│   │   │   │   └── title.ts
│   │   │   ├── toBigint/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toBigint.test-d.ts
│   │   │   │   ├── toBigint.test.ts
│   │   │   │   └── toBigint.ts
│   │   │   ├── toBoolean/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toBoolean.test-d.ts
│   │   │   │   ├── toBoolean.test.ts
│   │   │   │   └── toBoolean.ts
│   │   │   ├── toDate/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toDate.test-d.ts
│   │   │   │   ├── toDate.test.ts
│   │   │   │   └── toDate.ts
│   │   │   ├── toLowerCase/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toLowerCase.test-d.ts
│   │   │   │   ├── toLowerCase.test.ts
│   │   │   │   └── toLowerCase.ts
│   │   │   ├── toMaxValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toMaxValue.test-d.ts
│   │   │   │   ├── toMaxValue.test.ts
│   │   │   │   └── toMaxValue.ts
│   │   │   ├── toMinValue/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toMinValue.test-d.ts
│   │   │   │   ├── toMinValue.test.ts
│   │   │   │   └── toMinValue.ts
│   │   │   ├── toNumber/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toNumber.test-d.ts
│   │   │   │   ├── toNumber.test.ts
│   │   │   │   └── toNumber.ts
│   │   │   ├── toString/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toString.test-d.ts
│   │   │   │   ├── toString.test.ts
│   │   │   │   └── toString.ts
│   │   │   ├── toUpperCase/
│   │   │   │   ├── index.ts
│   │   │   │   ├── toUpperCase.test-d.ts
│   │   │   │   ├── toUpperCase.test.ts
│   │   │   │   └── toUpperCase.ts
│   │   │   ├── transform/
│   │   │   │   ├── index.ts
│   │   │   │   ├── transform.test-d.ts
│   │   │   │   ├── transform.test.ts
│   │   │   │   ├── transform.ts
│   │   │   │   ├── transformAsync.test-d.ts
│   │   │   │   ├── transformAsync.test.ts
│   │   │   │   └── transformAsync.ts
│   │   │   ├── trim/
│   │   │   │   ├── index.ts
│   │   │   │   ├── trim.test-d.ts
│   │   │   │   ├── trim.test.ts
│   │   │   │   └── trim.ts
│   │   │   ├── trimEnd/
│   │   │   │   ├── index.ts
│   │   │   │   ├── trimEnd.test-d.ts
│   │   │   │   ├── trimEnd.test.ts
│   │   │   │   └── trimEnd.ts
│   │   │   ├── trimStart/
│   │   │   │   ├── index.ts
│   │   │   │   ├── trimStart.test-d.ts
│   │   │   │   ├── trimStart.test.ts
│   │   │   │   └── trimStart.ts
│   │   │   ├── types.ts
│   │   │   ├── ulid/
│   │   │   │   ├── index.ts
│   │   │   │   ├── ulid.test-d.ts
│   │   │   │   ├── ulid.test.ts
│   │   │   │   └── ulid.ts
│   │   │   ├── url/
│   │   │   │   ├── index.ts
│   │   │   │   ├── url.test-d.ts
│   │   │   │   ├── url.test.ts
│   │   │   │   └── url.ts
│   │   │   ├── uuid/
│   │   │   │   ├── index.ts
│   │   │   │   ├── uuid.test-d.ts
│   │   │   │   ├── uuid.test.ts
│   │   │   │   └── uuid.ts
│   │   │   ├── value/
│   │   │   │   ├── index.ts
│   │   │   │   ├── value.test-d.ts
│   │   │   │   ├── value.test.ts
│   │   │   │   └── value.ts
│   │   │   ├── values/
│   │   │   │   ├── index.ts
│   │   │   │   ├── values.test-d.ts
│   │   │   │   ├── values.test.ts
│   │   │   │   └── values.ts
│   │   │   └── words/
│   │   │       ├── index.ts
│   │   │       ├── words.test-d.ts
│   │   │       ├── words.test.ts
│   │   │       └── words.ts
│   │   ├── index.ts
│   │   ├── methods/
│   │   │   ├── assert/
│   │   │   │   ├── assert.test-d.ts
│   │   │   │   ├── assert.test.ts
│   │   │   │   ├── assert.ts
│   │   │   │   └── index.ts
│   │   │   ├── cache/
│   │   │   │   ├── _LruCache.test.ts
│   │   │   │   ├── _LruCache.ts
│   │   │   │   ├── cache.test-d.ts
│   │   │   │   ├── cache.test.ts
│   │   │   │   ├── cache.ts
│   │   │   │   ├── cacheAsync.test-d.ts
│   │   │   │   ├── cacheAsync.test.ts
│   │   │   │   ├── cacheAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── config/
│   │   │   │   ├── config.test-d.ts
│   │   │   │   ├── config.test.ts
│   │   │   │   ├── config.ts
│   │   │   │   └── index.ts
│   │   │   ├── fallback/
│   │   │   │   ├── fallback.test-d.ts
│   │   │   │   ├── fallback.test.ts
│   │   │   │   ├── fallback.ts
│   │   │   │   ├── fallbackAsync.test-d.ts
│   │   │   │   ├── fallbackAsync.test.ts
│   │   │   │   ├── fallbackAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── flatten/
│   │   │   │   ├── flatten.test-d.ts
│   │   │   │   ├── flatten.test.ts
│   │   │   │   ├── flatten.ts
│   │   │   │   └── index.ts
│   │   │   ├── forward/
│   │   │   │   ├── forward.test-d.ts
│   │   │   │   ├── forward.test.ts
│   │   │   │   ├── forward.ts
│   │   │   │   ├── forwardAsync.test-d.ts
│   │   │   │   ├── forwardAsync.test.ts
│   │   │   │   ├── forwardAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── getDefault/
│   │   │   │   ├── getDefault.test-d.ts
│   │   │   │   ├── getDefault.test.ts
│   │   │   │   ├── getDefault.ts
│   │   │   │   └── index.ts
│   │   │   ├── getDefaults/
│   │   │   │   ├── getDefaults.test-d.ts
│   │   │   │   ├── getDefaults.test.ts
│   │   │   │   ├── getDefaults.ts
│   │   │   │   ├── getDefaultsAsync.test-d.ts
│   │   │   │   ├── getDefaultsAsync.test.ts
│   │   │   │   ├── getDefaultsAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── getDescription/
│   │   │   │   ├── getDescription.test.ts
│   │   │   │   ├── getDescription.ts
│   │   │   │   └── index.ts
│   │   │   ├── getExamples/
│   │   │   │   ├── getExamples.test-d.ts
│   │   │   │   ├── getExamples.test.ts
│   │   │   │   ├── getExamples.ts
│   │   │   │   └── index.ts
│   │   │   ├── getFallback/
│   │   │   │   ├── getFallback.test-d.ts
│   │   │   │   ├── getFallback.test.ts
│   │   │   │   ├── getFallback.ts
│   │   │   │   └── index.ts
│   │   │   ├── getFallbacks/
│   │   │   │   ├── getFallbacks.test-d.ts
│   │   │   │   ├── getFallbacks.test.ts
│   │   │   │   ├── getFallbacks.ts
│   │   │   │   ├── getFallbacksAsync.test-d.ts
│   │   │   │   ├── getFallbacksAsync.test.ts
│   │   │   │   ├── getFallbacksAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── getMetadata/
│   │   │   │   ├── getMetadata.test-d.ts
│   │   │   │   ├── getMetadata.test.ts
│   │   │   │   ├── getMetadata.ts
│   │   │   │   └── index.ts
│   │   │   ├── getTitle/
│   │   │   │   ├── getTitle.test.ts
│   │   │   │   ├── getTitle.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── is/
│   │   │   │   ├── index.ts
│   │   │   │   ├── is.test-d.ts
│   │   │   │   ├── is.test.ts
│   │   │   │   └── is.ts
│   │   │   ├── keyof/
│   │   │   │   ├── index.ts
│   │   │   │   ├── keyof.test-d.ts
│   │   │   │   ├── keyof.test.ts
│   │   │   │   └── keyof.ts
│   │   │   ├── message/
│   │   │   │   ├── index.ts
│   │   │   │   ├── message.test-d.ts
│   │   │   │   ├── message.test.ts
│   │   │   │   └── message.ts
│   │   │   ├── omit/
│   │   │   │   ├── index.ts
│   │   │   │   ├── omit.test-d.ts
│   │   │   │   ├── omit.test.ts
│   │   │   │   └── omit.ts
│   │   │   ├── parse/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parse.test-d.ts
│   │   │   │   ├── parse.test.ts
│   │   │   │   ├── parse.ts
│   │   │   │   ├── parseAsync.test-d.ts
│   │   │   │   ├── parseAsync.test.ts
│   │   │   │   └── parseAsync.ts
│   │   │   ├── parser/
│   │   │   │   ├── index.ts
│   │   │   │   ├── parser.test-d.ts
│   │   │   │   ├── parser.test.ts
│   │   │   │   ├── parser.ts
│   │   │   │   ├── parserAsync.test-d.ts
│   │   │   │   ├── parserAsync.test.ts
│   │   │   │   └── parserAsync.ts
│   │   │   ├── partial/
│   │   │   │   ├── index.ts
│   │   │   │   ├── partial.test-d.ts
│   │   │   │   ├── partial.test.ts
│   │   │   │   ├── partial.ts
│   │   │   │   ├── partialAsync.test-d.ts
│   │   │   │   ├── partialAsync.test.ts
│   │   │   │   └── partialAsync.ts
│   │   │   ├── pick/
│   │   │   │   ├── index.ts
│   │   │   │   ├── pick.test-d.ts
│   │   │   │   ├── pick.test.ts
│   │   │   │   └── pick.ts
│   │   │   ├── pipe/
│   │   │   │   ├── index.ts
│   │   │   │   ├── pipe.test-d.ts
│   │   │   │   ├── pipe.test.ts
│   │   │   │   ├── pipe.ts
│   │   │   │   ├── pipeAsync.test-d.ts
│   │   │   │   ├── pipeAsync.test.ts
│   │   │   │   └── pipeAsync.ts
│   │   │   ├── required/
│   │   │   │   ├── index.ts
│   │   │   │   ├── required.test-d.ts
│   │   │   │   ├── required.test.ts
│   │   │   │   ├── required.ts
│   │   │   │   ├── requiredAsync.test-d.ts
│   │   │   │   ├── requiredAsync.test.ts
│   │   │   │   └── requiredAsync.ts
│   │   │   ├── safeParse/
│   │   │   │   ├── index.ts
│   │   │   │   ├── safeParse.test-d.ts
│   │   │   │   ├── safeParse.test.ts
│   │   │   │   ├── safeParse.ts
│   │   │   │   ├── safeParseAsync.test-d.ts
│   │   │   │   ├── safeParseAsync.test.ts
│   │   │   │   ├── safeParseAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── safeParser/
│   │   │   │   ├── index.ts
│   │   │   │   ├── safeParser.test-d.ts
│   │   │   │   ├── safeParser.test.ts
│   │   │   │   ├── safeParser.ts
│   │   │   │   ├── safeParserAsync.test-d.ts
│   │   │   │   ├── safeParserAsync.test.ts
│   │   │   │   └── safeParserAsync.ts
│   │   │   ├── summarize/
│   │   │   │   ├── index.ts
│   │   │   │   ├── summarize.test.ts
│   │   │   │   └── summarize.ts
│   │   │   └── unwrap/
│   │   │       ├── index.ts
│   │   │       ├── unwrap.test-d.ts
│   │   │       ├── unwrap.test.ts
│   │   │       └── unwrap.ts
│   │   ├── regex.ts
│   │   ├── schemas/
│   │   │   ├── any/
│   │   │   │   ├── any.test-d.ts
│   │   │   │   ├── any.test.ts
│   │   │   │   ├── any.ts
│   │   │   │   └── index.ts
│   │   │   ├── array/
│   │   │   │   ├── array.test-d.ts
│   │   │   │   ├── array.test.ts
│   │   │   │   ├── array.ts
│   │   │   │   ├── arrayAsync.test-d.ts
│   │   │   │   ├── arrayAsync.test.ts
│   │   │   │   ├── arrayAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── bigint/
│   │   │   │   ├── bigint.test-d.ts
│   │   │   │   ├── bigint.test.ts
│   │   │   │   ├── bigint.ts
│   │   │   │   └── index.ts
│   │   │   ├── blob/
│   │   │   │   ├── blob.test-d.ts
│   │   │   │   ├── blob.test.ts
│   │   │   │   ├── blob.ts
│   │   │   │   └── index.ts
│   │   │   ├── boolean/
│   │   │   │   ├── boolean.test-d.ts
│   │   │   │   ├── boolean.test.ts
│   │   │   │   ├── boolean.ts
│   │   │   │   └── index.ts
│   │   │   ├── custom/
│   │   │   │   ├── custom.test-d.ts
│   │   │   │   ├── custom.test.ts
│   │   │   │   ├── custom.ts
│   │   │   │   ├── customAsync.test-d.ts
│   │   │   │   ├── customAsync.test.ts
│   │   │   │   ├── customAsync.ts
│   │   │   │   ├── index.ts
│   │   │   │   └── types.ts
│   │   │   ├── date/
│   │   │   │   ├── date.test-d.ts
│   │   │   │   ├── date.test.ts
│   │   │   │   ├── date.ts
│   │   │   │   └── index.ts
│   │   │   ├── enum/
│   │   │   │   ├── enum.test-d.ts
│   │   │   │   ├── enum.test.ts
│   │   │   │   ├── enum.ts
│   │   │   │   └── index.ts
│   │   │   ├── exactOptional/
│   │   │   │   ├── exactOptional.test-d.ts
│   │   │   │   ├── exactOptional.test.ts
│   │   │   │   ├── exactOptional.ts
│   │   │   │   ├── exactOptionalAsync.test-d.ts
│   │   │   │   ├── exactOptionalAsync.test.ts
│   │   │   │   ├── exactOptionalAsync.ts
│   │   │   │   └── index.ts
│   │   │   ├── file/
│   │   │   │   ├── file.test-d.ts
│   │   │   │   ├── file.test.ts
│   │   │   │   ├── file.ts
│   │   │   │   └── index.ts
│   │   │   ├── function/
│   │   │   │   ├── function.test-d.ts
│   │   │   │   ├── function.test.ts
│   │   │   │   ├── function.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── instance/
│   │   │   │   ├── index.ts
│   │   │   │   ├── instance.test-d.ts
│   │   │   │   ├── instance.test.ts
│   │   │   │   └── instance.ts
│   │   │   ├── intersect/
│   │   │   │   ├── index.ts
│   │   │   │   ├── intersect.test-d.ts
│   │   │   │   ├── intersect.test.ts
│   │   │   │   ├── intersect.ts
│   │   │   │   ├── intersectAsync.test-d.ts
│   │   │   │   ├── intersectAsync.test.ts
│   │   │   │   ├── intersectAsync.ts
│   │   │   │   ├── types.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _merge/
│   │   │   │       │   ├── _merge.test.ts
│   │   │   │       │   ├── _merge.ts
│   │   │   │       │   └── index.ts
│   │   │   │       └── index.ts
│   │   │   ├── lazy/
│   │   │   │   ├── index.ts
│   │   │   │   ├── lazy.test-d.ts
│   │   │   │   ├── lazy.test.ts
│   │   │   │   ├── lazy.ts
│   │   │   │   ├── lazyAsync.test-d.ts
│   │   │   │   ├── lazyAsync.test.ts
│   │   │   │   └── lazyAsync.ts
│   │   │   ├── literal/
│   │   │   │   ├── index.ts
│   │   │   │   ├── literal.test-d.ts
│   │   │   │   ├── literal.test.ts
│   │   │   │   └── literal.ts
│   │   │   ├── looseObject/
│   │   │   │   ├── index.ts
│   │   │   │   ├── looseObject.test-d.ts
│   │   │   │   ├── looseObject.test.ts
│   │   │   │   ├── looseObject.ts
│   │   │   │   ├── looseObjectAsync.test-d.ts
│   │   │   │   ├── looseObjectAsync.test.ts
│   │   │   │   ├── looseObjectAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── looseTuple/
│   │   │   │   ├── index.ts
│   │   │   │   ├── looseTuple.test-d.ts
│   │   │   │   ├── looseTuple.test.ts
│   │   │   │   ├── looseTuple.ts
│   │   │   │   ├── looseTupleAsync.test-d.ts
│   │   │   │   ├── looseTupleAsync.test.ts
│   │   │   │   ├── looseTupleAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── map/
│   │   │   │   ├── index.ts
│   │   │   │   ├── map.test-d.ts
│   │   │   │   ├── map.test.ts
│   │   │   │   ├── map.ts
│   │   │   │   ├── mapAsync.test-d.ts
│   │   │   │   ├── mapAsync.test.ts
│   │   │   │   ├── mapAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nan/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nan.test-d.ts
│   │   │   │   ├── nan.test.ts
│   │   │   │   └── nan.ts
│   │   │   ├── never/
│   │   │   │   ├── index.ts
│   │   │   │   ├── never.test-d.ts
│   │   │   │   ├── never.test.ts
│   │   │   │   └── never.ts
│   │   │   ├── nonNullable/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonNullable.test-d.ts
│   │   │   │   ├── nonNullable.test.ts
│   │   │   │   ├── nonNullable.ts
│   │   │   │   ├── nonNullableAsync.test-d.ts
│   │   │   │   ├── nonNullableAsync.test.ts
│   │   │   │   ├── nonNullableAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nonNullish/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonNullish.test-d.ts
│   │   │   │   ├── nonNullish.test.ts
│   │   │   │   ├── nonNullish.ts
│   │   │   │   ├── nonNullishAsync.test-d.ts
│   │   │   │   ├── nonNullishAsync.test.ts
│   │   │   │   ├── nonNullishAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nonOptional/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nonOptional.test-d.ts
│   │   │   │   ├── nonOptional.test.ts
│   │   │   │   ├── nonOptional.ts
│   │   │   │   ├── nonOptionalAsync.test-d.ts
│   │   │   │   ├── nonOptionalAsync.test.ts
│   │   │   │   ├── nonOptionalAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── null/
│   │   │   │   ├── index.ts
│   │   │   │   ├── null.test-d.ts
│   │   │   │   ├── null.test.ts
│   │   │   │   └── null.ts
│   │   │   ├── nullable/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nullable.test-d.ts
│   │   │   │   ├── nullable.test.ts
│   │   │   │   ├── nullable.ts
│   │   │   │   ├── nullableAsync.test-d.ts
│   │   │   │   ├── nullableAsync.test.ts
│   │   │   │   ├── nullableAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── nullish/
│   │   │   │   ├── index.ts
│   │   │   │   ├── nullish.test-d.ts
│   │   │   │   ├── nullish.test.ts
│   │   │   │   ├── nullish.ts
│   │   │   │   ├── nullishAsync.test-d.ts
│   │   │   │   ├── nullishAsync.test.ts
│   │   │   │   ├── nullishAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── number/
│   │   │   │   ├── index.ts
│   │   │   │   ├── number.test-d.ts
│   │   │   │   ├── number.test.ts
│   │   │   │   └── number.ts
│   │   │   ├── object/
│   │   │   │   ├── index.ts
│   │   │   │   ├── object.test-d.ts
│   │   │   │   ├── object.test.ts
│   │   │   │   ├── object.ts
│   │   │   │   ├── objectAsync.test-d.ts
│   │   │   │   ├── objectAsync.test.ts
│   │   │   │   ├── objectAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── objectWithRest/
│   │   │   │   ├── index.ts
│   │   │   │   ├── objectWithRest.test-d.ts
│   │   │   │   ├── objectWithRest.test.ts
│   │   │   │   ├── objectWithRest.ts
│   │   │   │   ├── objectWithRestAsync.test-d.ts
│   │   │   │   ├── objectWithRestAsync.test.ts
│   │   │   │   ├── objectWithRestAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── optional/
│   │   │   │   ├── index.ts
│   │   │   │   ├── optional.test-d.ts
│   │   │   │   ├── optional.test.ts
│   │   │   │   ├── optional.ts
│   │   │   │   ├── optionalAsync.test-d.ts
│   │   │   │   ├── optionalAsync.test.ts
│   │   │   │   ├── optionalAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── picklist/
│   │   │   │   ├── index.ts
│   │   │   │   ├── picklist.test-d.ts
│   │   │   │   ├── picklist.test.ts
│   │   │   │   └── picklist.ts
│   │   │   ├── promise/
│   │   │   │   ├── index.ts
│   │   │   │   ├── promise.test-d.ts
│   │   │   │   ├── promise.test.ts
│   │   │   │   └── promise.ts
│   │   │   ├── record/
│   │   │   │   ├── index.ts
│   │   │   │   ├── record.test-d.ts
│   │   │   │   ├── record.test.ts
│   │   │   │   ├── record.ts
│   │   │   │   ├── recordAsync.test-d.ts
│   │   │   │   ├── recordAsync.test.ts
│   │   │   │   ├── recordAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── set/
│   │   │   │   ├── index.ts
│   │   │   │   ├── set.test-d.ts
│   │   │   │   ├── set.test.ts
│   │   │   │   ├── set.ts
│   │   │   │   ├── setAsync.test-d.ts
│   │   │   │   ├── setAsync.test.ts
│   │   │   │   ├── setAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── strictObject/
│   │   │   │   ├── index.ts
│   │   │   │   ├── strictObject.test-d.ts
│   │   │   │   ├── strictObject.test.ts
│   │   │   │   ├── strictObject.ts
│   │   │   │   ├── strictObjectAsync.test-d.ts
│   │   │   │   ├── strictObjectAsync.test.ts
│   │   │   │   ├── strictObjectAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── strictTuple/
│   │   │   │   ├── index.ts
│   │   │   │   ├── strictTuple.test-d.ts
│   │   │   │   ├── strictTuple.test.ts
│   │   │   │   ├── strictTuple.ts
│   │   │   │   ├── strictTupleAsync.test-d.ts
│   │   │   │   ├── strictTupleAsync.test.ts
│   │   │   │   ├── strictTupleAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── string/
│   │   │   │   ├── index.ts
│   │   │   │   ├── string.test-d.ts
│   │   │   │   ├── string.test.ts
│   │   │   │   └── string.ts
│   │   │   ├── symbol/
│   │   │   │   ├── index.ts
│   │   │   │   ├── symbol.test-d.ts
│   │   │   │   ├── symbol.test.ts
│   │   │   │   └── symbol.ts
│   │   │   ├── tuple/
│   │   │   │   ├── index.ts
│   │   │   │   ├── tuple.test-d.ts
│   │   │   │   ├── tuple.test.ts
│   │   │   │   ├── tuple.ts
│   │   │   │   ├── tupleAsync.test-d.ts
│   │   │   │   ├── tupleAsync.test.ts
│   │   │   │   ├── tupleAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── tupleWithRest/
│   │   │   │   ├── index.ts
│   │   │   │   ├── tupleWithRest.test-d.ts
│   │   │   │   ├── tupleWithRest.test.ts
│   │   │   │   ├── tupleWithRest.ts
│   │   │   │   ├── tupleWithRestAsync.test-d.ts
│   │   │   │   ├── tupleWithRestAsync.test.ts
│   │   │   │   ├── tupleWithRestAsync.ts
│   │   │   │   └── types.ts
│   │   │   ├── undefined/
│   │   │   │   ├── index.ts
│   │   │   │   ├── undefined.test-d.ts
│   │   │   │   ├── undefined.test.ts
│   │   │   │   └── undefined.ts
│   │   │   ├── undefinedable/
│   │   │   │   ├── index.ts
│   │   │   │   ├── types.ts
│   │   │   │   ├── undefinedable.test-d.ts
│   │   │   │   ├── undefinedable.test.ts
│   │   │   │   ├── undefinedable.ts
│   │   │   │   ├── undefinedableAsync.test-d.ts
│   │   │   │   ├── undefinedableAsync.test.ts
│   │   │   │   └── undefinedableAsync.ts
│   │   │   ├── union/
│   │   │   │   ├── index.ts
│   │   │   │   ├── types.ts
│   │   │   │   ├── union.test-d.ts
│   │   │   │   ├── union.test.ts
│   │   │   │   ├── union.ts
│   │   │   │   ├── unionAsync.test-d.ts
│   │   │   │   ├── unionAsync.test.ts
│   │   │   │   ├── unionAsync.ts
│   │   │   │   └── utils/
│   │   │   │       ├── _subIssues/
│   │   │   │       │   ├── _subIssues.test.ts
│   │   │   │       │   ├── _subIssues.ts
│   │   │   │       │   └── index.ts
│   │   │   │       └── index.ts
│   │   │   ├── unknown/
│   │   │   │   ├── index.ts
│   │   │   │   ├── unknown.test-d.ts
│   │   │   │   ├── unknown.test.ts
│   │   │   │   └── unknown.ts
│   │   │   ├── variant/
│   │   │   │   ├── index.ts
│   │   │   │   ├── types.ts
│   │   │   │   ├── variant.test-d.ts
│   │   │   │   ├── variant.test.ts
│   │   │   │   ├── variant.ts
│   │   │   │   ├── variantAsync.test-d.ts
│   │   │   │   ├── variantAsync.test.ts
│   │   │   │   └── variantAsync.ts
│   │   │   └── void/
│   │   │       ├── index.ts
│   │   │       ├── void.test-d.ts
│   │   │       ├── void.test.ts
│   │   │       └── void.ts
│   │   ├── storages/
│   │   │   ├── globalConfig/
│   │   │   │   ├── globalConfig.test.ts
│   │   │   │   ├── globalConfig.ts
│   │   │   │   └── index.ts
│   │   │   ├── globalMessage/
│   │   │   │   ├── globalMessage.test.ts
│   │   │   │   ├── globalMessage.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── schemaMessage/
│   │   │   │   ├── index.ts
│   │   │   │   ├── schemaMessage.test.ts
│   │   │   │   └── schemaMessage.ts
│   │   │   └── specificMessage/
│   │   │       ├── index.ts
│   │   │       ├── specificMessage.test.ts
│   │   │       └── specificMessage.ts
│   │   ├── types/
│   │   │   ├── config.ts
│   │   │   ├── dataset.ts
│   │   │   ├── index.ts
│   │   │   ├── infer.ts
│   │   │   ├── issue.ts
│   │   │   ├── metadata.ts
│   │   │   ├── object.ts
│   │   │   ├── other.ts
│   │   │   ├── pipe.ts
│   │   │   ├── schema.ts
│   │   │   ├── standard.ts
│   │   │   ├── transformation.ts
│   │   │   ├── tuple.ts
│   │   │   ├── utils.ts
│   │   │   └── validation.ts
│   │   ├── utils/
│   │   │   ├── ValiError/
│   │   │   │   ├── ValiError.test-d.ts
│   │   │   │   ├── ValiError.test.ts
│   │   │   │   ├── ValiError.ts
│   │   │   │   └── index.ts
│   │   │   ├── _addIssue/
│   │   │   │   ├── _addIssue.test.ts
│   │   │   │   ├── _addIssue.ts
│   │   │   │   └── index.ts
│   │   │   ├── _cloneDataset/
│   │   │   │   ├── _cloneDataset.test.ts
│   │   │   │   ├── _cloneDataset.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getByteCount/
│   │   │   │   ├── _getByteCount.test.ts
│   │   │   │   ├── _getByteCount.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getGraphemeCount/
│   │   │   │   ├── _getGraphemeCount.test.ts
│   │   │   │   ├── _getGraphemeCount.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getLastMetadata/
│   │   │   │   ├── _getLastMetadata.test.ts
│   │   │   │   ├── _getLastMetadata.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getStandardProps/
│   │   │   │   ├── _getStandardProps.test-d.ts
│   │   │   │   ├── _getStandardProps.test.ts
│   │   │   │   ├── _getStandardProps.ts
│   │   │   │   └── index.ts
│   │   │   ├── _getWordCount/
│   │   │   │   ├── _getWordCount.test.ts
│   │   │   │   ├── _getWordCount.ts
│   │   │   │   └── index.ts
│   │   │   ├── _isLuhnAlgo/
│   │   │   │   ├── _isLuhnAlgo.test.ts
│   │   │   │   ├── _isLuhnAlgo.ts
│   │   │   │   └── index.ts
│   │   │   ├── _isValidObjectKey/
│   │   │   │   ├── _isValidObjectKey.test.ts
│   │   │   │   ├── _isValidObjectKey.ts
│   │   │   │   └── index.ts
│   │   │   ├── _joinExpects/
│   │   │   │   ├── _joinExpects.test.ts
│   │   │   │   ├── _joinExpects.ts
│   │   │   │   └── index.ts
│   │   │   ├── _stringify/
│   │   │   │   ├── _stringify.test.ts
│   │   │   │   ├── _stringify.ts
│   │   │   │   └── index.ts
│   │   │   ├── entriesFromList/
│   │   │   │   ├── entriesFromList.test-d.ts
│   │   │   │   ├── entriesFromList.test.ts
│   │   │   │   ├── entriesFromList.ts
│   │   │   │   └── index.ts
│   │   │   ├── entriesFromObjects/
│   │   │   │   ├── entriesFromObjects.test-d.ts
│   │   │   │   ├── entriesFromObjects.test.ts
│   │   │   │   ├── entriesFromObjects.ts
│   │   │   │   └── index.ts
│   │   │   ├── getDotPath/
│   │   │   │   ├── getDotPath.test-d.ts
│   │   │   │   ├── getDotPath.test.ts
│   │   │   │   ├── getDotPath.ts
│   │   │   │   └── index.ts
│   │   │   ├── index.ts
│   │   │   ├── isOfKind/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isOfKind.test.ts
│   │   │   │   └── isOfKind.ts
│   │   │   ├── isOfType/
│   │   │   │   ├── index.ts
│   │   │   │   ├── isOfType.test.ts
│   │   │   │   └── isOfType.ts
│   │   │   └── isValiError/
│   │   │       ├── index.ts
│   │   │       ├── isValiError.test.ts
│   │   │       └── isValiError.ts
│   │   └── vitest/
│   │       ├── expectActionIssue.ts
│   │       ├── expectActionIssueAsync.ts
│   │       ├── expectNoActionIssue.ts
│   │       ├── expectNoActionIssueAsync.ts
│   │       ├── expectNoSchemaIssue.ts
│   │       ├── expectNoSchemaIssueAsync.ts
│   │       ├── expectSchemaIssue.ts
│   │       ├── expectSchemaIssueAsync.ts
│   │       └── index.ts
│   ├── tsconfig.json
│   ├── tsdown.config.ts
│   └── vitest.config.ts
├── package.json
├── packages/
│   ├── i18n/
│   │   ├── .gitignore
│   │   ├── CHANGELOG.md
│   │   ├── LICENSE.md
│   │   ├── README.md
│   │   ├── jsr.json
│   │   ├── package.json
│   │   ├── scripts/
│   │   │   ├── build-jsr.ts
│   │   │   └── build-npm.ts
│   │   ├── src/
│   │   │   ├── ar.ts
│   │   │   ├── az.ts
│   │   │   ├── ca.ts
│   │   │   ├── cs.ts
│   │   │   ├── de.ts
│   │   │   ├── el.ts
│   │   │   ├── en.ts
│   │   │   ├── es.ts
│   │   │   ├── fa.ts
│   │   │   ├── fi.ts
│   │   │   ├── fr.ts
│   │   │   ├── hu.ts
│   │   │   ├── id.ts
│   │   │   ├── it.ts
│   │   │   ├── ja.ts
│   │   │   ├── ko.ts
│   │   │   ├── kr.ts
│   │   │   ├── mn.ts
│   │   │   ├── nb.ts
│   │   │   ├── nl.ts
│   │   │   ├── pl.ts
│   │   │   ├── pt.ts
│   │   │   ├── ro.ts
│   │   │   ├── ru.ts
│   │   │   ├── sk.ts
│   │   │   ├── sl.ts
│   │   │   ├── sv.ts
│   │   │   ├── tr.ts
│   │   │   ├── types.ts
│   │   │   ├── uk.ts
│   │   │   ├── vi.ts
│   │   │   ├── zh-CN.ts
│   │   │   └── zh-TW.ts
│   │   └── tsconfig.json
│   └── to-json-schema/
│       ├── CHANGELOG.md
│       ├── LICENSE.md
│       ├── README.md
│       ├── eslint.config.js
│       ├── jsr.json
│       ├── package.json
│       ├── src/
│       │   ├── converters/
│       │   │   ├── convertAction/
│       │   │   │   ├── convertAction.test.ts
│       │   │   │   ├── convertAction.ts
│       │   │   │   └── index.ts
│       │   │   ├── convertSchema/
│       │   │   │   ├── convertSchema.test.ts
│       │   │   │   ├── convertSchema.ts
│       │   │   │   └── index.ts
│       │   │   └── index.ts
│       │   ├── functions/
│       │   │   ├── index.ts
│       │   │   ├── toJsonSchema/
│       │   │   │   ├── index.ts
│       │   │   │   ├── toJsonSchema.test.ts
│       │   │   │   └── toJsonSchema.ts
│       │   │   ├── toJsonSchemaDefs/
│       │   │   │   ├── index.ts
│       │   │   │   ├── toJsonSchemaDefs.test.ts
│       │   │   │   └── toJsonSchemaDefs.ts
│       │   │   └── toStandardJsonSchema/
│       │   │       ├── index.ts
│       │   │       ├── toStandardJsonSchema.test.ts
│       │   │       └── toStandardJsonSchema.ts
│       │   ├── index.ts
│       │   ├── storages/
│       │   │   ├── globalDefs/
│       │   │   │   ├── globalDefs.test.ts
│       │   │   │   ├── globalDefs.ts
│       │   │   │   └── index.ts
│       │   │   └── index.ts
│       │   ├── types/
│       │   │   ├── config.ts
│       │   │   ├── index.ts
│       │   │   ├── schema.ts
│       │   │   └── standard.ts
│       │   ├── utils/
│       │   │   ├── addError.ts
│       │   │   ├── escapeRegExp.ts
│       │   │   ├── handleError.ts
│       │   │   ├── index.ts
│       │   │   ├── isJsonConstValue.ts
│       │   │   └── isJsonEnumValues.ts
│       │   └── vitest/
│       │       ├── createContext.ts
│       │       └── index.ts
│       ├── tsconfig.json
│       ├── tsdown.config.ts
│       └── vitest.config.ts
├── pnpm-workspace.yaml
├── prettier.config.cjs
└── website/
    ├── .gitignore
    ├── .node-version
    ├── .prettierignore
    ├── README.md
    ├── adapters/
    │   └── vercel-edge/
    │       └── vite.config.ts
    ├── eslint.config.js
    ├── package.json
    ├── public/
    │   ├── manifest.json
    │   └── robots.txt
    ├── scripts/
    │   ├── contributors.ts
    │   ├── llms.ts
    │   ├── sitemap.ts
    │   ├── sources.ts
    │   └── utils/
    │       ├── findNestedFiles.ts
    │       └── index.ts
    ├── src/
    │   ├── components/
    │   │   ├── ActionButton.tsx
    │   │   ├── ApiList.tsx
    │   │   ├── ButtonGroup.tsx
    │   │   ├── Chapters.tsx
    │   │   ├── CodeEditor.tsx
    │   │   ├── Credits.tsx
    │   │   ├── DiscordIconLink.tsx
    │   │   ├── DocSearch.tsx
    │   │   ├── DocsLayout.tsx
    │   │   ├── Expandable.tsx
    │   │   ├── Footer.tsx
    │   │   ├── GitHubIconLink.tsx
    │   │   ├── Head.tsx
    │   │   ├── Header.tsx
    │   │   ├── IconButton.tsx
    │   │   ├── Link.tsx
    │   │   ├── MainMenuToggle.tsx
    │   │   ├── Navigation.tsx
    │   │   ├── PostCover.tsx
    │   │   ├── PostList.tsx
    │   │   ├── PostMeta.tsx
    │   │   ├── Property.tsx
    │   │   ├── RoutingIndicator.tsx
    │   │   ├── SearchToggle.tsx
    │   │   ├── SideBar.tsx
    │   │   ├── SpeedInsights.tsx
    │   │   ├── Spinner.tsx
    │   │   ├── SystemIcon.tsx
    │   │   ├── TextLink.tsx
    │   │   ├── ThemeToggle.tsx
    │   │   ├── UnstyledButton.tsx
    │   │   └── index.ts
    │   ├── entry.dev.tsx
    │   ├── entry.preview.tsx
    │   ├── entry.ssr.tsx
    │   ├── entry.vercel-edge.tsx
    │   ├── hooks/
    │   │   ├── index.ts
    │   │   ├── useFocusTrap.ts
    │   │   ├── useMDXComponents.tsx
    │   │   ├── useResetSignal.ts
    │   │   └── useStorageSignal.ts
    │   ├── icons/
    │   │   ├── AngleRightIcon.tsx
    │   │   ├── AngleUpIcon.tsx
    │   │   ├── ArrowLeftIcon.tsx
    │   │   ├── ArrowRrightIcon.tsx
    │   │   ├── BinIcon.tsx
    │   │   ├── CheckIcon.tsx
    │   │   ├── CloseIcon.tsx
    │   │   ├── CopyIcon.tsx
    │   │   ├── DiscordIcon.tsx
    │   │   ├── GitHubIcon.tsx
    │   │   ├── HashtagIcon.tsx
    │   │   ├── LogoIcon.tsx
    │   │   ├── MarkdownIcon.tsx
    │   │   ├── MenuIcon.tsx
    │   │   ├── NightIcon.tsx
    │   │   ├── PageIcon.tsx
    │   │   ├── PenIcon.tsx
    │   │   ├── PlayIcon.tsx
    │   │   ├── PlusIcon.tsx
    │   │   ├── SearchIcon.tsx
    │   │   ├── ShareIcon.tsx
    │   │   ├── SunIcon.tsx
    │   │   └── index.ts
    │   ├── images/
    │   │   └── index.ts
    │   ├── json/
    │   │   └── TypeScript.tmLanguage.json
    │   ├── logos/
    │   │   ├── AlgoliaLogo.tsx
    │   │   ├── BoltLogo.tsx
    │   │   ├── BuilderLogo.tsx
    │   │   ├── DailyDevLogo.tsx
    │   │   ├── DigitalOceanLogo.tsx
    │   │   ├── HdmLogo.tsx
    │   │   ├── LambdaTestLogo.tsx
    │   │   ├── MotionLogo.tsx
    │   │   ├── NetlifyLogo.tsx
    │   │   ├── PaceLogo.tsx
    │   │   ├── StainlessLogo.tsx
    │   │   ├── TestMuAiLogo.tsx
    │   │   ├── VercelLogo.tsx
    │   │   └── index.ts
    │   ├── root.tsx
    │   ├── routes/
    │   │   ├── (legal)/
    │   │   │   ├── contact/
    │   │   │   │   └── index.mdx
    │   │   │   ├── layout.tsx
    │   │   │   └── privacy/
    │   │   │       └── index.mdx
    │   │   ├── 404.tsx
    │   │   ├── api/
    │   │   │   ├── (actions)/
    │   │   │   │   ├── args/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── base64/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── bic/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── brand/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── bytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── check/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── checkItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── creditCard/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── cuid2/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── decimal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── description/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── digits/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── domain/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── email/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── emoji/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── empty/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── endsWith/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── entries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── everyItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── examples/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── excludes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── filterItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── findItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── finite/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── flavor/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── graphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── gtValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── guard/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── hash/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── hexColor/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── hexadecimal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── imei/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── includes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── integer/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ip/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ipv4/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ipv6/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isbn/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoDate/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoDateTime/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoTime/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoTimeSecond/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoTimestamp/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isoWeek/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isrc/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── jwsCompact/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── length/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ltValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mac/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mac48/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mac64/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mapItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxBytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxGraphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxLength/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxSize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── maxWords/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── metadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mimeType/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minBytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minGraphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minLength/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minSize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── minWords/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── multipleOf/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nanoid/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonEmpty/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── normalize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notBytes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notGraphemes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notLength/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notSize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notValues/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── notWords/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── octal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parseBoolean/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parseJson/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partialCheck/
    │   │   │   │   │   ├── ValidPaths/
    │   │   │   │   │   │   └── index.mdx
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawCheck/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawTransform/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── readonly/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── reduceItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── regex/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── returns/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rfcEmail/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeInteger/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── size/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── slug/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── someItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── sortItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── startsWith/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── stringifyJson/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── title/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toBigint/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toBoolean/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toDate/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toLowerCase/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toMaxValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toMinValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toNumber/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toString/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── toUpperCase/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── transform/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── trim/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── trimEnd/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── trimStart/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ulid/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── url/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── uuid/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── value/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── values/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── words/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (async)/
    │   │   │   │   ├── argsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── arrayAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── awaitAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── cacheAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── checkAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── checkItemsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── customAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── exactOptionalAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── fallbackAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── forwardAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDefaultsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getFallbacksAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── intersectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── lazyAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseObjectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseTupleAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── mapAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullableAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullishAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonOptionalAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullableAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullishAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── objectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── objectWithRestAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── optionalAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parseAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partialAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partialCheckAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── pipeAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawCheckAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── rawTransformAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── recordAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── requiredAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── returnsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParseAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictObjectAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictTupleAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── transformAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tupleAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tupleWithRestAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── undefinedableAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── unionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── variantAsync/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (methods)/
    │   │   │   │   ├── assert/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── cache/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── config/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── fallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── flatten/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── forward/
    │   │   │   │   │   ├── ValidPath/
    │   │   │   │   │   │   └── index.mdx
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDefault/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDefaults/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDescription/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getExamples/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getFallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getFallbacks/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getMetadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getTitle/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── is/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── keyof/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── message/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── omit/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parse/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── parser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── partial/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── pick/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── pipe/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── required/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParse/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── safeParser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── summarize/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── unwrap/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (schemas)/
    │   │   │   │   ├── any/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── array/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── bigint/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── blob/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── boolean/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── custom/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── date/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── enum/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── exactOptional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── file/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── function/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── instance/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── intersect/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── lazy/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── literal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseObject/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── looseTuple/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── map/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nan/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── never/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonNullish/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nonOptional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── null/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── nullish/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── number/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── object/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── objectWithRest/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── optional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── picklist/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── promise/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── record/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── set/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictObject/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── strictTuple/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── string/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── symbol/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tuple/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── tupleWithRest/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── undefined/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── undefinedable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── union/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── unknown/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── variant/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── void/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (storages)/
    │   │   │   │   ├── deleteGlobalConfig/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── deleteGlobalMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── deleteSchemaMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── deleteSpecificMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getGlobalConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getGlobalMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getSchemaMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getSpecificMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setGlobalConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setGlobalMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── setSchemaMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── setSpecificMessage/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (types)/
    │   │   │   │   ├── AnySchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArgsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArgsActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayRequirement/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArrayRequirementAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArraySchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ArraySchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── AwaitActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Base64Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Base64Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseMetadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseTransformation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseTransformationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseValidation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BaseValidationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BicAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BicIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BigintIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BigintSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BlobIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BlobSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BooleanIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BooleanSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Brand/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BrandAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BrandName/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── BytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Cache/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CacheConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckItemsActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CheckItemsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Class/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Config/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ContentInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ContentRequirement/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CreditCardAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CreditCardIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Cuid2Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Cuid2Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CustomIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CustomSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── CustomSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DateIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DateSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DecimalAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DecimalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DeepPickN/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── Default/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DefaultAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DefaultValue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DescriptionAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DigitsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DigitsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DomainAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── DomainIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmailAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmailIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmojiAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmojiIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmptyAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EmptyIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EndsWithAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EndsWithIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EntriesInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Enum/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EnumIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EnumSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ErrorMessage/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EveryItemAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── EveryItemIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExactOptionalSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExactOptionalSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExamplesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExcludesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ExcludesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FailureDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Fallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FallbackAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FileIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FileSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FilterItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FindItemAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FiniteAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FiniteIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FirstTupleItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FlatErrors/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── Flavor/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FlavorAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FlavorName/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FunctionIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── FunctionSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericMetadata/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericPipeItemAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericTransformation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericTransformationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericValidation/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GenericValidationAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GlobalConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GtValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GtValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GuardAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GuardFunction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── GuardIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HashAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HashIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HashType/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexColorAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexColorIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexadecimalAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── HexadecimalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ImeiAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ImeiIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IncludesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IncludesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferDefault/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferDefaults/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferExamples/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferFallback/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferFallbacks/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferGuardOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferIntersectInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferIntersectOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferMapInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferMapOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferMetadata/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullableInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullableIssue/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullableOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullishInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullishIssue/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonNullishOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonOptionalInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonOptionalIssue/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNonOptionalOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferNullableOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferNullishOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferObjectInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferObjectOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferOptionalOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferRecordInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferRecordOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferSetInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferSetOutput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferTupleInput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferTupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InferTupleOutput/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── InferVariantIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InstanceIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── InstanceSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntegerAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntegerIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectOptionsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IntersectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IpAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IpIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv4Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv4Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv6Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Ipv6Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsbnAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsbnIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateTimeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoDateTimeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeSecondAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimeSecondIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimestampAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoTimestampIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoWeekAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsoWeekIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsrcAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IsrcIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── IssueDotPath/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── IssuePathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── JwsCompactAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── JwsCompactIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LastTupleItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LazySchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LazySchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LengthInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Literal/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LiteralIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LiteralSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseObjectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseObjectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseTupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseTupleSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LooseTupleSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LtValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── LtValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac48Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac48Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac64Action/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Mac64Issue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MacAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MacIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MapSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxBytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxBytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxEntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxEntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxGraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxGraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxLengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxLengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxSizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxSizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxWordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaxWordsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaybePromise/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MaybeReadonly/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MetadataAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MimeTypeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MimeTypeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinBytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinBytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinEntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinEntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinGraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinGraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinLengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinLengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinSizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinSizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinWordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MinWordsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MultipleOfAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── MultipleOfIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NanIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NanSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NeverIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NeverSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonEmptyAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonEmptyIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullable/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullableIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullableSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullableSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullish/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullishIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullishSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonNullishSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptional/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptionalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptionalSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NonOptionalSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NormalizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NormalizeForm/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotBytesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotBytesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotEntriesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotEntriesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotGraphemesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotGraphemesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotLengthAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotLengthIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotSizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotSizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValuesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotValuesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotWordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NotWordsIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullableSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullableSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullishSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NullishSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NumberIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── NumberSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectEntries/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectEntriesAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectKeys/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectWithRestIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectWithRestSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ObjectWithRestSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OctalAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OctalIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OptionalSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OptionalSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── OutputDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseBooleanAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseBooleanConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseBooleanIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseJsonAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseJsonConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParseJsonIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Parser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ParserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialCheckAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialCheckActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialCheckIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PartialInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Path/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PicklistIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PicklistOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PicklistSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PipeItemAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PromiseIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── PromiseSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckAddIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckContext/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawCheckIssueInfo/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformAddIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformContext/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RawTransformIssueInfo/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReadonlyAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RecordIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RecordSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RecordSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReduceItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── Reference/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RegexAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RegexIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RequiredPath/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RequiredPaths/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReturnsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ReturnsActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RfcEmailAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── RfcEmailIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeIntegerAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeIntegerIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeParseResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeParser/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SafeParserAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithCache/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithCacheAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithFallback/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithFallbackAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithPartial/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithPartialAsync/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithPipe/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithPipeAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SchemaWithRequired/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithRequiredAsync/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── SchemaWithoutPipe/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SetSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SizeAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SizeInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SizeIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SlugAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SlugIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SomeItemAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SomeItemIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SortItemsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardFailureResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardProps/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardSuccessResult/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StandardTypes/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StartsWithAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StartsWithIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictObjectIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictObjectSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictObjectSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictTupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictTupleSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StrictTupleSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringifyJsonAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringifyJsonConfig/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── StringifyJsonIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SuccessDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SymbolIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── SymbolSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TitleAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToBigintAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToBigintIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToBooleanAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToDateAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToDateIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToLowerCaseAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToMaxValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToMinValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToNumberAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToNumberIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToStringAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToStringIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ToUpperCaseAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TransformAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TransformActionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TrimAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TrimEndAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TrimStartAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleItems/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleItemsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleWithRestIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleWithRestSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── TupleWithRestSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UlidAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UlidIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedableSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UndefinedableSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionOptionsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnionSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnknownDataset/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnknownPathItem/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UnknownSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UrlAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UrlIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UuidAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── UuidIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValueAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValueInput/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValueIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValuesAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── ValuesIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOption/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOptionAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOptions/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantOptionsAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VariantSchemaAsync/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VoidIssue/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── VoidSchema/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── WordsAction/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── WordsIssue/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── (utils)/
    │   │   │   │   ├── ValiError/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── entriesFromList/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── entriesFromObjects/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── getDotPath/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isOfKind/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   ├── isOfType/
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── properties.ts
    │   │   │   │   └── isValiError/
    │   │   │   │       ├── index.mdx
    │   │   │   │       └── properties.ts
    │   │   │   ├── index.tsx
    │   │   │   ├── layout.tsx
    │   │   │   └── menu.md
    │   │   ├── blog/
    │   │   │   ├── (posts)/
    │   │   │   │   ├── first-draft-of-the-new-pipe-function/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── how-valibot-has-evolved-this-year/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── introducing-open-circle/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── json-schema-package-upgrade/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── layout.tsx
    │   │   │   │   ├── should-we-change-the-object-schema/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── should-we-change-valibots-api/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v0.31.0-is-finally-available/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1-rc-is-available/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1-the-1-kb-schema-library/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1.1-release-notes/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── valibot-v1.2-release-notes/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── valibot-v1.3-release-notes/
    │   │   │   │       └── index.mdx
    │   │   │   └── index.tsx
    │   │   ├── guides/
    │   │   │   ├── (advanced)/
    │   │   │   │   ├── async-validation/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── extend-valibot/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── integrate-valibot/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── internal-architecture/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── internationalization/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── json-schema/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── naming-convention/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (get-started)/
    │   │   │   │   ├── comparison/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── ecosystem/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── installation/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── introduction/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── llms-txt/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── quick-start/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── use-cases/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (main-concepts)/
    │   │   │   │   ├── errors/
    │   │   │   │   │   └── index.tsx
    │   │   │   │   ├── infer-types/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── issues/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── mental-model/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── methods/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── parse-data/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── pipelines/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── schemas/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (migration)/
    │   │   │   │   ├── migrate-from-v0.30.0/
    │   │   │   │   │   └── index.ts
    │   │   │   │   ├── migrate-from-zod/
    │   │   │   │   │   ├── CodemodEditor.tsx
    │   │   │   │   │   ├── index.mdx
    │   │   │   │   │   └── zod/
    │   │   │   │   │       ├── code.ts
    │   │   │   │   │       ├── v3/
    │   │   │   │   │       │   ├── index.d.ts
    │   │   │   │   │       │   └── package.json
    │   │   │   │   │       └── v4/
    │   │   │   │   │           ├── index.d.ts
    │   │   │   │   │           └── package.json
    │   │   │   │   └── migrate-to-v0.31.0/
    │   │   │   │       └── index.mdx
    │   │   │   ├── (schemas)/
    │   │   │   │   ├── arrays/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── enums/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── intersections/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── objects/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── optionals/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   ├── other/
    │   │   │   │   │   └── index.mdx
    │   │   │   │   └── unions/
    │   │   │   │       └── index.mdx
    │   │   │   ├── index.tsx
    │   │   │   ├── layout.tsx
    │   │   │   └── menu.md
    │   │   ├── index.tsx
    │   │   ├── layout.tsx
    │   │   ├── og-image/
    │   │   │   └── index.ts
    │   │   ├── playground/
    │   │   │   ├── editorCode.ts
    │   │   │   ├── iframeCode.js
    │   │   │   └── index.tsx
    │   │   ├── plugin@chapters.ts
    │   │   └── plugin@theme.ts
    │   ├── styles/
    │   │   ├── pace.css
    │   │   └── root.css
    │   └── utils/
    │       ├── disableTransitions.ts
    │       ├── index.ts
    │       └── trackEvent.ts
    ├── tsconfig.json
    ├── vercel.json
    └── vite.config.ts
Download .txt
Showing preview only (233K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (2524 symbols across 772 files)

FILE: codemod/migrate-to-v0.31.0/src/index.ts
  constant SCHEMAS (line 4) | const SCHEMAS = [
  constant SCHEMAS_WITH_ARRAY_ARG (line 49) | const SCHEMAS_WITH_ARRAY_ARG = [
  constant RENAMES (line 60) | const RENAMES: [string, string][] = [
  function workflow (line 96) | async function workflow({ jsFiles }: Api) {

FILE: codemod/zod-to-valibot/__testfixtures__/native-enum/input.ts
  type Fruit (line 4) | enum Fruit {
  type Answer (line 20) | enum Answer {

FILE: codemod/zod-to-valibot/__testfixtures__/native-enum/output.ts
  type Fruit (line 4) | enum Fruit {
  type Answer (line 20) | enum Answer {

FILE: codemod/zod-to-valibot/__testfixtures__/type-inference/input.ts
  type Input (line 5) | type Input = z.input<typeof Schema>;
  type Output1 (line 6) | type Output1 = z.output<typeof Schema>;
  type Output2 (line 7) | type Output2 = z.infer<typeof Schema>;

FILE: codemod/zod-to-valibot/__testfixtures__/type-inference/output.ts
  type Input (line 5) | type Input = v.InferInput<typeof Schema>;
  type Output1 (line 6) | type Output1 = v.InferOutput<typeof Schema>;
  type Output2 (line 7) | type Output2 = v.InferOutput<typeof Schema>;

FILE: codemod/zod-to-valibot/__testfixtures__/zod-enum/input.ts
  constant VALUES (line 7) | const VALUES = ["Valibot", "ModularForms"] as const;

FILE: codemod/zod-to-valibot/__testfixtures__/zod-enum/output.ts
  constant VALUES (line 7) | const VALUES = ["Valibot", "ModularForms"] as const;

FILE: codemod/zod-to-valibot/src/transform/imports/imports.ts
  type TransformImportsReturn (line 3) | type TransformImportsReturn =
  function transformImports (line 11) | function transformImports(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/constants.ts
  constant ZOD_SCHEMAS (line 3) | const ZOD_SCHEMAS = [
  constant ZOD_SCHEMA_TO_TYPE (line 35) | const ZOD_SCHEMA_TO_TYPE: Record<
  constant ZOD_VALUE_TYPE_SCHEMAS (line 70) | const ZOD_VALUE_TYPE_SCHEMAS: readonly (typeof ZOD_SCHEMAS)[number][] = [
  constant ZOD_VALIDATORS (line 76) | const ZOD_VALIDATORS = [
  constant ZOD_SCHEMA_PROPERTIES (line 123) | const ZOD_SCHEMA_PROPERTIES = [
  constant ZOD_RESULT_PROPERTIES (line 129) | const ZOD_RESULT_PROPERTIES = ['data', 'error'] as const;
  constant ZOD_PROPERTIES (line 131) | const ZOD_PROPERTIES = [
  constant ZOD_METHODS (line 136) | const ZOD_METHODS = [
  constant ZOD_TYPES (line 168) | const ZOD_TYPES = ['infer', 'input', 'output'] as const;

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/helpers.ts
  function splitLastArg (line 3) | function splitLastArg(
  function addToPipe (line 24) | function addToPipe(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/array/array.ts
  function transformArray (line 3) | function transformArray(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/catchall/catchall.ts
  function transformCatchall (line 4) | function transformCatchall(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/deepPartial/deepPartial.ts
  function transformDeepPartial (line 3) | function transformDeepPartial(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/default/default.ts
  function transformDefault (line 3) | function transformDefault(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/exclude/exclude.ts
  function transformExclude (line 3) | function transformExclude(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/extend/extend.ts
  function isInlineObjectCall (line 3) | function isInlineObjectCall(exp: j.CallExpression): boolean {
  function extractObjectProperties (line 11) | function extractObjectProperties(
  function transformExtend (line 21) | function transformExtend(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/extract/extract.ts
  function transformExtract (line 3) | function transformExtract(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/keyof/keyof.ts
  function transformKeyof (line 3) | function transformKeyof(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/merge/merge.ts
  function isInlineObjectCall (line 3) | function isInlineObjectCall(exp: j.CallExpression): boolean {
  function extractObjectProperties (line 11) | function extractObjectProperties(
  function transformMerge (line 21) | function transformMerge(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/nullable/nullable.ts
  function transformNullable (line 3) | function transformNullable(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/nullish/nullish.ts
  function transformNullish (line 3) | function transformNullish(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/omit/omit.ts
  function toValiOmitArg (line 3) | function toValiOmitArg(omitArg: j.CallExpression['arguments'][number]) {
  function transformOmit (line 17) | function transformOmit(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/optional/optional.ts
  function transformOptional (line 3) | function transformOptional(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/or/or.ts
  function transformOr (line 3) | function transformOr(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/parse/parse.ts
  function transformParse (line 3) | function transformParse(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/parseAsync/parseAsync.ts
  function transformParseAsync (line 3) | function transformParseAsync(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/partial/partial.ts
  function toValiPartialArg (line 3) | function toValiPartialArg(partialArg: j.CallExpression['arguments'][numb...
  function transformPartial (line 17) | function transformPartial(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/passthrough/passthrough.ts
  function transformPassthrough (line 4) | function transformPassthrough(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/pick/pick.ts
  function toValiPickArg (line 3) | function toValiPickArg(pickArg: j.CallExpression['arguments'][number]) {
  function transformPick (line 17) | function transformPick(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/refine/refine.ts
  function transformRefine (line 4) | function transformRefine(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/required/required.ts
  function toValiRequiredArg (line 3) | function toValiRequiredArg(requiredArg: j.CallExpression['arguments'][nu...
  function transformRequired (line 17) | function transformRequired(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/rest/rest.ts
  function transformRest (line 4) | function transformRest(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/safeParse/safeParse.ts
  function transformSafeParse (line 3) | function transformSafeParse(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/safeParseAsync/safeParseAsync.ts
  function transformSafeParseAsync (line 3) | function transformSafeParseAsync(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/strict/strict.ts
  function transformStrict (line 4) | function transformStrict(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/strip/strip.ts
  function transformStrip (line 4) | function transformStrip(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/transform/transform.ts
  function transformTransform (line 4) | function transformTransform(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/methods/unwrap/unwrap.ts
  function transformUnwrap (line 3) | function transformUnwrap(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/properties/description.ts
  function transformDescription (line 3) | function transformDescription(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/properties/element.ts
  function transformElement (line 3) | function transformElement(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/properties/shape.ts
  function transformShape (line 3) | function transformShape(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas-and-links.ts
  type UnknownPath (line 121) | type UnknownPath = j.ASTPath<{ type: unknown }>;
  type ZodSchemaName (line 122) | type ZodSchemaName = (typeof ZOD_SCHEMAS)[number];
  type ZodValidatorName (line 123) | type ZodValidatorName = (typeof ZOD_VALIDATORS)[number];
  type ZodMethodName (line 124) | type ZodMethodName = (typeof ZOD_METHODS)[number];
  type ZodPropertyName (line 125) | type ZodPropertyName = (typeof ZOD_PROPERTIES)[number];
  type ZodTypeName (line 126) | type ZodTypeName = (typeof ZOD_TYPES)[number];
  function isCallExp (line 128) | function isCallExp(path: UnknownPath): path is j.ASTPath<j.CallExpressio...
  function isMemberExp (line 132) | function isMemberExp(path: UnknownPath): path is j.ASTPath<j.MemberExpre...
  function checkForObjectModifierInChain (line 142) | function checkForObjectModifierInChain(
  function toValibotSchemaExp (line 174) | function toValibotSchemaExp(
  function toValibotActionExp (line 250) | function toValibotActionExp(
  function toValiPropExp (line 351) | function toValiPropExp(
  function toValibotMethodExp (line 372) | function toValibotMethodExp(
  function getValiType (line 442) | function getValiType(
  function toValiTypeExp (line 453) | function toValiTypeExp(
  function transformSchemasAndLinksHelper (line 469) | function transformSchemasAndLinksHelper(
  function transformSchemasAndLinks (line 641) | function transformSchemasAndLinks(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/any/any.ts
  function transformAny (line 4) | function transformAny(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/array/array.ts
  function transformArray (line 4) | function transformArray(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/bigint/bigint.ts
  function transformBigint (line 10) | function transformBigint(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/boolean/boolean.ts
  function transformBoolean (line 10) | function transformBoolean(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/custom/custom.ts
  function transformCustom (line 5) | function transformCustom(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/date/date.ts
  function transformDate (line 10) | function transformDate(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/discriminatedUnion/discriminatedUnion.ts
  function transformDiscriminatedUnion (line 4) | function transformDiscriminatedUnion(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/enum/enum.ts
  function transformEnum (line 4) | function transformEnum(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/helpers.ts
  function getTransformedMsgs (line 5) | function getTransformedMsgs(schemaOptions: SchemaOptionsToASTVal) {
  function getOption (line 36) | function getOption(
  function getOptions (line 66) | function getOptions(
  function getSchemaComps (line 84) | function getSchemaComps(
  function getDescription (line 107) | function getDescription(
  function getSchemaWithOptionalDescription (line 120) | function getSchemaWithOptionalDescription(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/instanceof/instanceof.ts
  function transformInstanceof (line 4) | function transformInstanceof(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/intersection/intersection.ts
  function transformIntersection (line 9) | function transformIntersection(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/literal/literal.ts
  function transformLiteral (line 4) | function transformLiteral(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/map/map.ts
  function transformMap (line 4) | function transformMap(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/nan/nan.ts
  function transformNan (line 4) | function transformNan(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/nativeEnum/nativeEnum.ts
  function transformNativeEnum (line 4) | function transformNativeEnum(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/never/never.ts
  function transformNever (line 4) | function transformNever(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/null/null.ts
  function transformNull (line 4) | function transformNull(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/nullable/nullable.ts
  function transformNullable (line 4) | function transformNullable(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/number/number.ts
  function transformNumber (line 10) | function transformNumber(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/object/object.ts
  function transformObject (line 5) | function transformObject(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/optional/optional.ts
  function transformOptional (line 4) | function transformOptional(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/record/record.ts
  function transformRecord (line 7) | function transformRecord(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/set/set.ts
  function transformSet (line 4) | function transformSet(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/string/string.ts
  function transformString (line 10) | function transformString(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/symbol/symbol.ts
  function transformSymbol (line 4) | function transformSymbol(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/tuple/tuple.ts
  function transformTuple (line 4) | function transformTuple(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/types.ts
  type SchemaOptionASTVal (line 3) | type SchemaOptionASTVal = ReturnType<typeof getOption>;
  type SchemaOptionsToASTVal (line 5) | type SchemaOptionsToASTVal = Partial<

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/undefined/undefined.ts
  function transformUndefined (line 4) | function transformUndefined(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/union/union.ts
  function transformUnion (line 4) | function transformUnion(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/unknown/unknown.ts
  function transformUnknown (line 4) | function transformUnknown(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/schemas/void/void.ts
  function transformVoid (line 4) | function transformVoid(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/types.ts
  type ZodSchemaType (line 1) | type ZodSchemaType = 'value' | 'length' | 'size' | 'none';
  type ObjectModifier (line 3) | type ObjectModifier = 'strict' | 'passthrough' | null;

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/base64/base64.ts
  function transformBase64 (line 5) | function transformBase64(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/cuid2/cuid2.ts
  function transformCUID2 (line 5) | function transformCUID2(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/date/date.ts
  function transformDate (line 5) | function transformDate(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/datetime/datetime.ts
  function transformDateTime (line 5) | function transformDateTime(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/describe/describe.ts
  function transformDescribe (line 3) | function transformDescribe(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/email/email.ts
  function transformEmail (line 5) | function transformEmail(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/emoji/emoji.ts
  function transformEmoji (line 5) | function transformEmoji(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/endsWith/endsWith.ts
  function transformEndsWith (line 5) | function transformEndsWith(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/finite/finite.ts
  function transformFinite (line 5) | function transformFinite(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/gt/gt.ts
  function transformGt (line 5) | function transformGt(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/gte/gte.ts
  function transformGte (line 5) | function transformGte(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/helpers.ts
  function getValidatorMsg (line 3) | function getValidatorMsg(
  function transformUnimplemented (line 35) | function transformUnimplemented(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/includes/includes.ts
  function transformIncludes (line 5) | function transformIncludes(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/int/int.ts
  function transformInt (line 5) | function transformInt(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/ip/ip.ts
  function getVersion (line 5) | function getVersion(
  function transformIp (line 29) | function transformIp(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/length/length.ts
  function transformLength (line 5) | function transformLength(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/lt/lt.ts
  function transformLt (line 5) | function transformLt(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/lte/lte.ts
  function transformLte (line 5) | function transformLte(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/max/max.ts
  function transformMax (line 6) | function transformMax(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/min/min.ts
  function transformMin (line 6) | function transformMin(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/multipleOf/multipleOf.ts
  function transformMultipleOf (line 5) | function transformMultipleOf(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/nanoid/nanoid.ts
  function transformNanoid (line 5) | function transformNanoid(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/negative/negative.ts
  function transformNegative (line 5) | function transformNegative(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/nonempty/nonempty.ts
  function transformNonEmpty (line 5) | function transformNonEmpty(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/nonnegative/nonnegative.ts
  function transformNonNegative (line 5) | function transformNonNegative(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/nonpositive/nonpositive.ts
  function transformNonPositive (line 5) | function transformNonPositive(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/positive/positive.ts
  function transformPositive (line 5) | function transformPositive(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/readonly/readonly.ts
  function transformReadonly (line 3) | function transformReadonly(valibotIdentifier: string) {

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/regex/regex.ts
  function transformRegex (line 5) | function transformRegex(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/safe/safe.ts
  function transformSafe (line 5) | function transformSafe(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/size/size.ts
  function transformSize (line 5) | function transformSize(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/startsWith/startsWith.ts
  function transformStartsWith (line 5) | function transformStartsWith(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/time/time.ts
  function transformTime (line 5) | function transformTime(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/toLowerCase/toLowerCase.ts
  function transformToLowerCase (line 3) | function transformToLowerCase(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/toUpperCase/toUpperCase.ts
  function transformToUpperCase (line 3) | function transformToUpperCase(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/trim/trim.ts
  function transformTrim (line 3) | function transformTrim(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/ulid/ulid.ts
  function transformULID (line 5) | function transformULID(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/url/url.ts
  function transformUrl (line 5) | function transformUrl(

FILE: codemod/zod-to-valibot/src/transform/schemas-and-links/validators/uuid/uuid.ts
  function transformUUID (line 5) | function transformUUID(

FILE: codemod/zod-to-valibot/src/utils.ts
  constant ALLOWED_EXTENSIONS (line 6) | const ALLOWED_EXTENSIONS = ['.ts', '.tsx'];
  type ElementFrom (line 7) | type ElementFrom<T extends unknown[]> = T[number];
  function defineTests (line 9) | function defineTests(transform: Transform, selectedTests?: string[]) {
  function getIsTypeFn (line 79) | function getIsTypeFn<T extends string[]>(
  function assertNever (line 86) | function assertNever(x: never): never {

FILE: library/src/actions/args/args.test-d.ts
  type Input (line 7) | type Input = (...args: unknown[]) => number;
  type Schema (line 9) | type Schema = typeof schema;
  type Action (line 10) | type Action = ArgsAction<Input, Schema>;

FILE: library/src/actions/args/args.test.ts
  type Input (line 6) | type Input = (...args: unknown[]) => number;
  type Schema (line 8) | type Schema = typeof schema;

FILE: library/src/actions/args/args.ts
  type Schema (line 24) | type Schema =
  type ArgsAction (line 37) | interface ArgsAction<
  function args (line 74) | function args(

FILE: library/src/actions/args/argsAsync.test-d.ts
  type Input (line 12) | type Input = (...args: unknown[]) => Promise<number>;
  type Schema (line 14) | type Schema = typeof schema;
  type Action (line 15) | type Action = ArgsActionAsync<Input, Schema>;

FILE: library/src/actions/args/argsAsync.test.ts
  type Input (line 11) | type Input = (...args: unknown[]) => Promise<number>;
  type Schema (line 13) | type Schema = typeof schema;

FILE: library/src/actions/args/argsAsync.ts
  type Schema (line 31) | type Schema =
  type ArgsActionAsync (line 59) | interface ArgsActionAsync<
  function argsAsync (line 96) | function argsAsync(

FILE: library/src/actions/await/awaitAsync.test-d.ts
  type Input (line 6) | type Input = Promise<string>;
  type Action (line 7) | type Action = AwaitActionAsync<Promise<string>>;

FILE: library/src/actions/await/awaitAsync.test.ts
  type Input (line 5) | type Input = Promise<string>;

FILE: library/src/actions/await/awaitAsync.ts
  type AwaitActionAsync (line 9) | interface AwaitActionAsync<TInput extends Promise<unknown>>
  function awaitAsync (line 27) | function awaitAsync<

FILE: library/src/actions/base64/base64.test-d.ts
  type Action (line 8) | type Action = Base64Action<string, undefined>;
  type Action (line 29) | type Action = Base64Action<string, undefined>;

FILE: library/src/actions/base64/base64.ts
  type Base64Issue (line 12) | interface Base64Issue<TInput extends string> extends BaseIssue<TInput> {
  type Base64Action (line 38) | interface Base64Action<
  function base64 (line 87) | function base64(

FILE: library/src/actions/bic/bic.test-d.ts
  type Action (line 8) | type Action = BicAction<string, undefined>;
  type Action (line 27) | type Action = BicAction<string, undefined>;

FILE: library/src/actions/bic/bic.ts
  type BicIssue (line 12) | interface BicIssue<TInput extends string> extends BaseIssue<TInput> {
  type BicAction (line 38) | interface BicAction<
  function bic (line 84) | function bic(

FILE: library/src/actions/brand/brand.test-d.ts
  type Action (line 6) | type Action = BrandAction<string, 'foo'>;
  type Output (line 29) | type Output = InferOutput<Action>;

FILE: library/src/actions/brand/brand.ts
  type BrandName (line 11) | type BrandName = string | number | symbol;
  type Brand (line 16) | interface Brand<TName extends BrandName> {
  type BrandAction (line 23) | interface BrandAction<TInput, TName extends BrandName>
  function brand (line 47) | function brand<TInput, TName extends BrandName>(

FILE: library/src/actions/bytes/bytes.test-d.ts
  type Action (line 8) | type Action = BytesAction<string, 10, undefined>;
  type Action (line 29) | type Action = BytesAction<string, 10, undefined>;

FILE: library/src/actions/bytes/bytes.ts
  type BytesIssue (line 11) | interface BytesIssue<TInput extends string, TRequirement extends number>
  type BytesAction (line 38) | interface BytesAction<
  function bytes (line 96) | function bytes(

FILE: library/src/actions/check/check.test-d.ts
  type Action (line 11) | type Action = CheckAction<string, undefined>;
  type Input (line 32) | type Input = ['foo', 123, true];
  type Action (line 33) | type Action = CheckAction<Input, undefined>;

FILE: library/src/actions/check/check.ts
  type CheckAction (line 8) | interface CheckAction<
  function check (line 62) | function check(

FILE: library/src/actions/check/checkAsync.test-d.ts
  type Action (line 11) | type Action = CheckActionAsync<string, undefined>;
  type Input (line 32) | type Input = ['foo', 123, true];
  type Action (line 33) | type Action = CheckActionAsync<Input, undefined>;

FILE: library/src/actions/check/checkAsync.ts
  type CheckActionAsync (line 12) | interface CheckActionAsync<
  function checkAsync (line 66) | function checkAsync(

FILE: library/src/actions/check/types.ts
  type CheckIssue (line 6) | interface CheckIssue<TInput> extends BaseIssue<TInput> {

FILE: library/src/actions/checkItems/checkItems.test-d.ts
  type Action (line 11) | type Action = CheckItemsAction<string[], undefined>;
  type Input (line 32) | type Input = ['foo', 123, true];
  type Action (line 33) | type Action = CheckItemsAction<Input, undefined>;

FILE: library/src/actions/checkItems/checkItems.ts
  type CheckItemsAction (line 9) | interface CheckItemsAction<
  function checkItems (line 63) | function checkItems(

FILE: library/src/actions/checkItems/checkItemsAsync.test-d.ts
  type Action (line 14) | type Action = CheckItemsActionAsync<string[], undefined>;
  type Input (line 37) | type Input = ['foo', 123, true];
  type Action (line 38) | type Action = CheckItemsActionAsync<Input, undefined>;

FILE: library/src/actions/checkItems/checkItemsAsync.ts
  type CheckItemsActionAsync (line 9) | interface CheckItemsActionAsync<
  function checkItemsAsync (line 63) | function checkItemsAsync(

FILE: library/src/actions/checkItems/types.ts
  type CheckItemsIssue (line 7) | interface CheckItemsIssue<TInput extends ArrayInput>

FILE: library/src/actions/creditCard/creditCard.test-d.ts
  type Action (line 12) | type Action = CreditCardAction<string, undefined>;
  type Action (line 33) | type Action = CreditCardAction<string, undefined>;

FILE: library/src/actions/creditCard/creditCard.ts
  type CreditCardIssue (line 11) | interface CreditCardIssue<TInput extends string>
  type CreditCardAction (line 38) | interface CreditCardAction<
  constant CREDIT_CARD_REGEX (line 67) | const CREDIT_CARD_REGEX =
  constant SANITIZE_REGEX (line 73) | const SANITIZE_REGEX = /[- ]/gu;
  constant PROVIDER_REGEX_LIST (line 78) | const PROVIDER_REGEX_LIST = [
  function creditCard (line 119) | function creditCard(

FILE: library/src/actions/cuid2/cuid2.test-d.ts
  type Action (line 8) | type Action = Cuid2Action<string, undefined>;
  type Action (line 27) | type Action = Cuid2Action<string, undefined>;

FILE: library/src/actions/cuid2/cuid2.ts
  type Cuid2Issue (line 12) | interface Cuid2Issue<TInput extends string> extends BaseIssue<TInput> {
  type Cuid2Action (line 38) | interface Cuid2Action<
  function cuid2 (line 84) | function cuid2(

FILE: library/src/actions/decimal/decimal.test-d.ts
  type Action (line 8) | type Action = DecimalAction<string, undefined>;
  type Action (line 27) | type Action = DecimalAction<string, undefined>;

FILE: library/src/actions/decimal/decimal.ts
  type DecimalIssue (line 12) | interface DecimalIssue<TInput extends string> extends BaseIssue<TInput> {
  type DecimalAction (line 38) | interface DecimalAction<
  function decimal (line 95) | function decimal(

FILE: library/src/actions/description/description.test-d.ts
  type Action (line 6) | type Action = DescriptionAction<string, 'text'>;

FILE: library/src/actions/description/description.ts
  type DescriptionAction (line 6) | interface DescriptionAction<TInput, TDescription extends string>
  function description (line 30) | function description<TInput, TDescription extends string>(

FILE: library/src/actions/digits/digits.test-d.ts
  type Action (line 8) | type Action = DigitsAction<string, undefined>;
  type Action (line 27) | type Action = DigitsAction<string, undefined>;

FILE: library/src/actions/digits/digits.ts
  type DigitsIssue (line 12) | interface DigitsIssue<TInput extends string> extends BaseIssue<TInput> {
  type DigitsAction (line 38) | interface DigitsAction<
  function digits (line 95) | function digits(

FILE: library/src/actions/domain/domain.test-d.ts
  type Action (line 8) | type Action = DomainAction<string, undefined>;
  type Action (line 27) | type Action = DomainAction<string, undefined>;

FILE: library/src/actions/domain/domain.ts
  type DomainIssue (line 14) | interface DomainIssue<TInput extends string> extends BaseIssue<TInput> {
  type DomainAction (line 42) | interface DomainAction<
  function domain (line 103) | function domain(

FILE: library/src/actions/email/email.test-d.ts
  type Action (line 8) | type Action = EmailAction<string, undefined>;
  type Action (line 27) | type Action = EmailAction<string, undefined>;

FILE: library/src/actions/email/email.ts
  type EmailIssue (line 12) | interface EmailIssue<TInput extends string> extends BaseIssue<TInput> {
  type EmailAction (line 38) | interface EmailAction<
  function email (line 94) | function email(

FILE: library/src/actions/emoji/emoji.test-d.ts
  type Action (line 8) | type Action = EmojiAction<string, undefined>;
  type Action (line 27) | type Action = EmojiAction<string, undefined>;

FILE: library/src/actions/emoji/emoji.ts
  type EmojiIssue (line 12) | interface EmojiIssue<TInput extends string> extends BaseIssue<TInput> {
  type EmojiAction (line 38) | interface EmojiAction<
  function emoji (line 84) | function emoji(

FILE: library/src/actions/empty/empty.test-d.ts
  type Action (line 8) | type Action = EmptyAction<string, undefined>;
  type Action (line 27) | type Action = EmptyAction<string, undefined>;

FILE: library/src/actions/empty/empty.ts
  type EmptyIssue (line 12) | interface EmptyIssue<TInput extends LengthInput>
  type EmptyAction (line 35) | interface EmptyAction<
  function empty (line 80) | function empty(

FILE: library/src/actions/endsWith/endsWith.test-d.ts
  type Action (line 12) | type Action = EndsWithAction<string, 'foo', undefined>;
  type Action (line 33) | type Action = EndsWithAction<string, 'foo', undefined>;

FILE: library/src/actions/endsWith/endsWith.ts
  type EndsWithIssue (line 11) | interface EndsWithIssue<
  type EndsWithAction (line 40) | interface EndsWithAction<
  function endsWith (line 101) | function endsWith(

FILE: library/src/actions/entries/entries.test-d.ts
  type Input (line 6) | type Input = Record<string, number>;
  type Action (line 10) | type Action = EntriesAction<Input, 10, undefined>;
  type Action (line 31) | type Action = EntriesAction<Input, 10, undefined>;

FILE: library/src/actions/entries/entries.test.ts
  type Input (line 7) | type Input = Record<string, number>;

FILE: library/src/actions/entries/entries.ts
  type EntriesIssue (line 14) | interface EntriesIssue<
  type EntriesAction (line 45) | interface EntriesAction<
  function entries (line 108) | function entries(

FILE: library/src/actions/everyItem/everyItem.test-d.ts
  type Action (line 12) | type Action = EveryItemAction<string[], undefined>;
  type Input (line 44) | type Input = ['foo', 123, true];
  type Action (line 45) | type Action = EveryItemAction<Input, undefined>;

FILE: library/src/actions/everyItem/everyItem.ts
  type EveryItemIssue (line 12) | interface EveryItemIssue<TInput extends ArrayInput>
  type EveryItemAction (line 35) | interface EveryItemAction<
  function everyItem (line 89) | function everyItem(

FILE: library/src/actions/examples/examples.test-d.ts
  type Action (line 9) | type Action = ExamplesAction<string, ['foo', 'bar']>;
  type Input (line 26) | type Input = 'foo' | 'bar';
  type Action (line 27) | type Action = ExamplesAction<Input, ['foo', 'bar']>;

FILE: library/src/actions/examples/examples.ts
  type ExamplesAction (line 6) | interface ExamplesAction<TInput, TExamples extends readonly TInput[]>
  function examples (line 32) | function examples<TInput, const TExamples extends readonly TInput[]>(

FILE: library/src/actions/excludes/excludes.test-d.ts
  type Action (line 12) | type Action = ExcludesAction<string, 'foo', undefined>;
  type Input (line 33) | type Input = ['foo', 123, true];
  type Action (line 34) | type Action = ExcludesAction<Input, 'foo', undefined>;

FILE: library/src/actions/excludes/excludes.ts
  type ExcludesIssue (line 12) | interface ExcludesIssue<
  type ExcludesAction (line 37) | interface ExcludesAction<
  function excludes (line 98) | function excludes(

FILE: library/src/actions/filterItems/filterItems.test-d.ts
  type Input (line 13) | type Input = (string | number)[];
  type Action (line 14) | type Action = FilterItemsAction<Input>;

FILE: library/src/actions/filterItems/filterItems.ts
  type FilterItemsAction (line 7) | interface FilterItemsAction<TInput extends ArrayInput>
  function filterItems (line 35) | function filterItems(

FILE: library/src/actions/findItem/findItem.test-d.ts
  type Dog (line 7) | type Dog = { type: 'dog' };
  type Cat (line 8) | type Cat = { type: 'cat' };
  type Animal (line 9) | type Animal = Dog | Cat;
  type Input (line 10) | type Input = Animal[];
  type Action1 (line 12) | type Action1 = FindItemAction<Input, Animal>;
  type Action2 (line 13) | type Action2 = FindItemAction<Input, Dog>;

FILE: library/src/actions/findItem/findItem.ts
  type ArrayRequirement (line 7) | type ArrayRequirement<
  type FindItemAction (line 17) | interface FindItemAction<
  function findItem (line 48) | function findItem(

FILE: library/src/actions/finite/finite.test-d.ts
  type Action (line 8) | type Action = FiniteAction<number, undefined>;
  type Action (line 27) | type Action = FiniteAction<number, undefined>;

FILE: library/src/actions/finite/finite.ts
  type FiniteIssue (line 11) | interface FiniteIssue<TInput extends number> extends BaseIssue<TInput> {
  type FiniteAction (line 37) | interface FiniteAction<
  function finite (line 86) | function finite(

FILE: library/src/actions/flavor/flavor.test-d.ts
  type Action (line 6) | type Action = FlavorAction<string, 'foo'>;
  type Output (line 29) | type Output = InferOutput<Action>;

FILE: library/src/actions/flavor/flavor.ts
  type FlavorName (line 15) | type FlavorName = string | number | symbol;
  type Flavor (line 22) | interface Flavor<TName extends FlavorName> {
  type FlavorAction (line 31) | interface FlavorAction<TInput, TName extends FlavorName>
  function flavor (line 57) | function flavor<TInput, TName extends FlavorName>(

FILE: library/src/actions/graphemes/graphemes.test-d.ts
  type Action (line 12) | type Action = GraphemesAction<string, 10, undefined>;
  type Input (line 33) | type Input = 'example string';
  type Action (line 34) | type Action = GraphemesAction<Input, 5, undefined>;

FILE: library/src/actions/graphemes/graphemes.ts
  type GraphemesIssue (line 11) | interface GraphemesIssue<
  type GraphemesAction (line 40) | interface GraphemesAction<
  function graphemes (line 101) | function graphemes(

FILE: library/src/actions/gtValue/gtValue.ts
  type GtValueIssue (line 12) | interface GtValueIssue<
  type GtValueAction (line 37) | interface GtValueAction<
  function gtValue (line 96) | function gtValue(

FILE: library/src/actions/gtValue/gtValues.test-d.ts
  type Action (line 8) | type Action = GtValueAction<number, 10, undefined>;
  type Action (line 29) | type Action = GtValueAction<number, 10, undefined>;

FILE: library/src/actions/guard/guard.test-d.ts
  type PixelString (line 9) | type PixelString = `${number}px`;

FILE: library/src/actions/guard/guard.test.ts
  type PixelString (line 7) | type PixelString = `${number}px`;

FILE: library/src/actions/guard/guard.ts
  type GuardFunction (line 13) | type GuardFunction<TInput> = (
  type InferGuardOutput (line 24) | type InferGuardOutput<TGuard extends GuardFunction<any>> =
  type GuardIssue (line 33) | interface GuardIssue<TInput, TGuard extends GuardFunction<TInput>>
  type GuardAction (line 54) | interface GuardAction<
  function guard (line 154) | function guard(

FILE: library/src/actions/hash/hash.test-d.ts
  type Action (line 8) | type Action = HashAction<string, undefined>;
  type Action (line 27) | type Action = HashAction<string, undefined>;

FILE: library/src/actions/hash/hash.ts
  constant HASH_LENGTHS (line 11) | const HASH_LENGTHS = {
  type HashType (line 31) | type HashType = keyof typeof HASH_LENGTHS;
  type HashIssue (line 36) | interface HashIssue<TInput extends string> extends BaseIssue<TInput> {
  type HashAction (line 62) | interface HashAction<
  function hash (line 116) | function hash(

FILE: library/src/actions/hexColor/hexColor.test-d.ts
  type Action (line 12) | type Action = HexColorAction<string, undefined>;
  type Action (line 31) | type Action = HexColorAction<string, undefined>;

FILE: library/src/actions/hexColor/hexColor.ts
  type HexColorIssue (line 12) | interface HexColorIssue<TInput extends string>
  type HexColorAction (line 39) | interface HexColorAction<
  function hexColor (line 88) | function hexColor(

FILE: library/src/actions/hexadecimal/hexadecimal.test-d.ts
  type Action (line 12) | type Action = HexadecimalAction<string, undefined>;
  type Action (line 31) | type Action = HexadecimalAction<string, undefined>;

FILE: library/src/actions/hexadecimal/hexadecimal.ts
  type HexadecimalIssue (line 12) | interface HexadecimalIssue<TInput extends string>
  type HexadecimalAction (line 39) | interface HexadecimalAction<
  function hexadecimal (line 88) | function hexadecimal(

FILE: library/src/actions/imei/imei.test-d.ts
  type Action (line 8) | type Action = ImeiAction<string, undefined>;
  type Action (line 27) | type Action = ImeiAction<string, undefined>;

FILE: library/src/actions/imei/imei.ts
  type ImeiIssue (line 12) | interface ImeiIssue<TInput extends string> extends BaseIssue<TInput> {
  type ImeiAction (line 38) | interface ImeiAction<
  function imei (line 92) | function imei(

FILE: library/src/actions/includes/includes.test-d.ts
  type Action (line 12) | type Action = IncludesAction<string, 'foo', undefined>;
  type Input (line 33) | type Input = ['foo', 123, true];
  type Action (line 34) | type Action = IncludesAction<Input, 123, undefined>;

FILE: library/src/actions/includes/includes.ts
  type IncludesIssue (line 12) | interface IncludesIssue<
  type IncludesAction (line 37) | interface IncludesAction<
  function includes (line 98) | function includes(

FILE: library/src/actions/integer/integer.test-d.ts
  type Action (line 8) | type Action = IntegerAction<number, undefined>;
  type Action (line 27) | type Action = IntegerAction<number, undefined>;

FILE: library/src/actions/integer/integer.ts
  type IntegerIssue (line 11) | interface IntegerIssue<TInput extends number> extends BaseIssue<TInput> {
  type IntegerAction (line 37) | interface IntegerAction<
  function integer (line 86) | function integer(

FILE: library/src/actions/ip/ip.test-d.ts
  type Action (line 8) | type Action = IpAction<string, undefined>;
  type Action (line 27) | type Action = IpAction<string, undefined>;

FILE: library/src/actions/ip/ip.ts
  type IpIssue (line 12) | interface IpIssue<TInput extends string> extends BaseIssue<TInput> {
  type IpAction (line 38) | interface IpAction<
  function ip (line 84) | function ip(

FILE: library/src/actions/ipv4/ipv4.test-d.ts
  type Action (line 8) | type Action = Ipv4Action<string, undefined>;
  type Action (line 27) | type Action = Ipv4Action<string, undefined>;

FILE: library/src/actions/ipv4/ipv4.ts
  type Ipv4Issue (line 12) | interface Ipv4Issue<TInput extends string> extends BaseIssue<TInput> {
  type Ipv4Action (line 38) | interface Ipv4Action<
  function ipv4 (line 84) | function ipv4(

FILE: library/src/actions/ipv6/ipv6.test-d.ts
  type Action (line 8) | type Action = Ipv6Action<string, undefined>;
  type Action (line 27) | type Action = Ipv6Action<string, undefined>;

FILE: library/src/actions/ipv6/ipv6.ts
  type Ipv6Issue (line 12) | interface Ipv6Issue<TInput extends string> extends BaseIssue<TInput> {
  type Ipv6Action (line 38) | interface Ipv6Action<
  function ipv6 (line 84) | function ipv6(

FILE: library/src/actions/isbn/isbn.test-d.ts
  type Action (line 8) | type Action = IsbnAction<string, undefined>;
  type Action (line 27) | type Action = IsbnAction<string, undefined>;

FILE: library/src/actions/isbn/isbn.ts
  type IsbnIssue (line 12) | interface IsbnIssue<TInput extends string> extends BaseIssue<TInput> {
  type IsbnAction (line 38) | interface IsbnAction<
  constant ISBN_SEPARATOR_REGEX (line 67) | const ISBN_SEPARATOR_REGEX = /[- ]/gu;
  constant ISBN_10_DETECTION_REGEX (line 72) | const ISBN_10_DETECTION_REGEX = /^\d{9}[\dX]$/u;
  constant ISBN_13_DETECTION_REGEX (line 77) | const ISBN_13_DETECTION_REGEX = /^\d{13}$/u;
  function isbn (line 103) | function isbn(

FILE: library/src/actions/isbn/utils/_isIsbn10.ts
  function _isIsbn10 (line 10) | function _isIsbn10(input: string): boolean {

FILE: library/src/actions/isbn/utils/_isIsbn13.ts
  function _isIsbn13 (line 10) | function _isIsbn13(input: string): boolean {

FILE: library/src/actions/isoDate/isoDate.test-d.ts
  type Action (line 8) | type Action = IsoDateAction<string, undefined>;
  type Action (line 29) | type Action = IsoDateAction<string, undefined>;

FILE: library/src/actions/isoDate/isoDate.ts
  type IsoDateIssue (line 12) | interface IsoDateIssue<TInput extends string> extends BaseIssue<TInput> {
  type IsoDateAction (line 38) | interface IsoDateAction<
  function isoDate (line 99) | function isoDate(

FILE: library/src/actions/isoDateTime/isoDateTime.test-d.ts
  type Action (line 12) | type Action = IsoDateTimeAction<string, undefined>;
  type Action (line 33) | type Action = IsoDateTimeAction<string, undefined>;

FILE: library/src/actions/isoDateTime/isoDateTime.ts
  type IsoDateTimeIssue (line 12) | interface IsoDateTimeIssue<TInput extends string>
  type IsoDateTimeAction (line 39) | interface IsoDateTimeAction<
  function isoDateTime (line 106) | function isoDateTime(

FILE: library/src/actions/isoTime/isoTime.test-d.ts
  type Action (line 8) | type Action = IsoTimeAction<string, undefined>;
  type Action (line 29) | type Action = IsoTimeAction<string, undefined>;

FILE: library/src/actions/isoTime/isoTime.ts
  type IsoTimeIssue (line 12) | interface IsoTimeIssue<TInput extends string> extends BaseIssue<TInput> {
  type IsoTimeAction (line 38) | interface IsoTimeAction<
  function isoTime (line 91) | function isoTime(

FILE: library/src/actions/isoTimeSecond/isoTimeSecond.test-d.ts
  type Action (line 12) | type Action = IsoTimeSecondAction<string, undefined>;
  type Action (line 33) | type Action = IsoTimeSecondAction<string, undefined>;

FILE: library/src/actions/isoTimeSecond/isoTimeSecond.ts
  type IsoTimeSecondIssue (line 12) | interface IsoTimeSecondIssue<TInput extends string>
  type IsoTimeSecondAction (line 39) | interface IsoTimeSecondAction<
  function isoTimeSecond (line 92) | function isoTimeSecond(

FILE: library/src/actions/isoTimestamp/isoTimestamp.test-d.ts
  type Action (line 9) | type Action = IsoTimestampAction<string, undefined>;
  type Action (line 30) | type Action = IsoTimestampAction<string, undefined>;

FILE: library/src/actions/isoTimestamp/isoTimestamp.ts
  type IsoTimestampIssue (line 12) | interface IsoTimestampIssue<TInput extends string>
  type IsoTimestampAction (line 39) | interface IsoTimestampAction<
  function isoTimestamp (line 127) | function isoTimestamp(

FILE: library/src/actions/isoWeek/isoWeek.test-d.ts
  type Action (line 8) | type Action = IsoWeekAction<string, undefined>;
  type Action (line 29) | type Action = IsoWeekAction<string, undefined>;

FILE: library/src/actions/isoWeek/isoWeek.ts
  type IsoWeekIssue (line 12) | interface IsoWeekIssue<TInput extends string> extends BaseIssue<TInput> {
  type IsoWeekAction (line 38) | interface IsoWeekAction<
  function isoWeek (line 97) | function isoWeek(

FILE: library/src/actions/isrc/isrc.test-d.ts
  type Action (line 8) | type Action = IsrcAction<string, undefined>;
  type Action (line 27) | type Action = IsrcAction<string, undefined>;

FILE: library/src/actions/isrc/isrc.ts
  type IsrcIssue (line 12) | interface IsrcIssue<TInput extends string> extends BaseIssue<TInput> {
  type IsrcAction (line 38) | interface IsrcAction<
  function isrc (line 92) | function isrc(

FILE: library/src/actions/jwsCompact/jwsCompact.test-d.ts
  type Action (line 12) | type Action = JwsCompactAction<string, undefined>;
  type Action (line 33) | type Action = JwsCompactAction<string, undefined>;

FILE: library/src/actions/jwsCompact/jwsCompact.ts
  type JwsCompactIssue (line 14) | interface JwsCompactIssue<TInput extends string>
  type JwsCompactAction (line 43) | interface JwsCompactAction<
  function jwsCompact (line 106) | function jwsCompact(

FILE: library/src/actions/length/length.test-d.ts
  type Action (line 8) | type Action = LengthAction<string, 10, undefined>;
  type Input (line 29) | type Input = [1, 'two', { value: 'three' }];
  type Action (line 30) | type Action = LengthAction<Input, 3, undefined>;

FILE: library/src/actions/length/length.ts
  type LengthIssue (line 12) | interface LengthIssue<
  type LengthAction (line 41) | interface LengthAction<
  function length (line 100) | function length(

FILE: library/src/actions/ltValue/ltValue.test-d.ts
  type Action (line 8) | type Action = LtValueAction<number, 10, undefined>;
  type Action (line 29) | type Action = LtValueAction<number, 10, undefined>;

FILE: library/src/actions/ltValue/ltValue.ts
  type LtValueIssue (line 12) | interface LtValueIssue<
  type LtValueAction (line 37) | interface LtValueAction<
  function ltValue (line 96) | function ltValue(

FILE: library/src/actions/mac/mac.test-d.ts
  type Action (line 8) | type Action = MacAction<string, undefined>;
  type Action (line 27) | type Action = MacAction<string, undefined>;

FILE: library/src/actions/mac/mac.ts
  type MacIssue (line 12) | interface MacIssue<TInput extends string> extends BaseIssue<TInput> {
  type MacAction (line 38) | interface MacAction<
  function mac (line 84) | function mac(

FILE: library/src/actions/mac48/mac48.test-d.ts
  type Action (line 8) | type Action = Mac48Action<string, undefined>;
  type Action (line 27) | type Action = Mac48Action<string, undefined>;

FILE: library/src/actions/mac48/mac48.ts
  type Mac48Issue (line 12) | interface Mac48Issue<TInput extends string> extends BaseIssue<TInput> {
  type Mac48Action (line 38) | interface Mac48Action<
  function mac48 (line 84) | function mac48(

FILE: library/src/actions/mac64/mac64.test-d.ts
  type Action (line 8) | type Action = Mac64Action<string, undefined>;
  type Action (line 27) | type Action = Mac64Action<string, undefined>;

FILE: library/src/actions/mac64/mac64.ts
  type Mac64Issue (line 12) | interface Mac64Issue<TInput extends string> extends BaseIssue<TInput> {
  type Mac64Action (line 38) | interface Mac64Action<
  function mac64 (line 84) | function mac64(

FILE: library/src/actions/mapItems/mapItems.test-d.ts
  type Action (line 13) | type Action = MapItemsAction<number[], { item: number }>;

FILE: library/src/actions/mapItems/mapItems.ts
  type ArrayAction (line 7) | type ArrayAction<TInput extends ArrayInput, TOutput> = (
  type MapItemsAction (line 16) | interface MapItemsAction<TInput extends ArrayInput, TOutput>
  function mapItems (line 44) | function mapItems(

FILE: library/src/actions/maxBytes/maxBytes.test-d.ts
  type Action (line 12) | type Action = MaxBytesAction<string, 10, undefined>;
  type Action (line 33) | type Action = MaxBytesAction<string, 10, undefined>;

FILE: library/src/actions/maxBytes/maxBytes.ts
  type MaxBytesIssue (line 11) | interface MaxBytesIssue<
  type MaxBytesAction (line 40) | interface MaxBytesAction<
  function maxBytes (line 101) | function maxBytes(

FILE: library/src/actions/maxEntries/maxEntries.test-d.ts
  type Input (line 10) | type Input = Record<string, number>;
  type Action (line 14) | type Action = MaxEntriesAction<Input, 10, undefined>;
  type Action (line 35) | type Action = MaxEntriesAction<Input, 10, undefined>;

FILE: library/src/actions/maxEntries/maxEntries.test.ts
  type Input (line 11) | type Input = Record<string, number>;

FILE: library/src/actions/maxEntries/maxEntries.ts
  type MaxEntriesIssue (line 14) | interface MaxEntriesIssue<
  type MaxEntriesAction (line 45) | interface MaxEntriesAction<
  function maxEntries (line 114) | function maxEntries(

FILE: library/src/actions/maxGraphemes/maxGraphemes.test-d.ts
  type Action (line 12) | type Action = MaxGraphemesAction<string, 10, undefined>;
  type Input (line 33) | type Input = 'example string';
  type Action (line 34) | type Action = MaxGraphemesAction<Input, 10, undefined>;

FILE: library/src/actions/maxGraphemes/maxGraphemes.ts
  type MaxGraphemesIssue (line 11) | interface MaxGraphemesIssue<
  type MaxGraphemesAction (line 40) | interface MaxGraphemesAction<
  function maxGraphemes (line 107) | function maxGraphemes(

FILE: library/src/actions/maxLength/maxLength.test-d.ts
  type Action (line 12) | type Action = MaxLengthAction<string, 10, undefined>;
  type Action (line 33) | type Action = MaxLengthAction<string, 10, undefined>;

FILE: library/src/actions/maxLength/maxLength.ts
  type MaxLengthIssue (line 12) | interface MaxLengthIssue<
  type MaxLengthAction (line 41) | interface MaxLengthAction<
  function maxLength (line 102) | function maxLength(

FILE: library/src/actions/maxSize/maxSize.test-d.ts
  type Action (line 8) | type Action = MaxSizeAction<Blob, 10, undefined>;
  type Action (line 29) | type Action = MaxSizeAction<Map<string, number>, 10, undefined>;

FILE: library/src/actions/maxSize/maxSize.ts
  type MaxSizeIssue (line 12) | interface MaxSizeIssue<
  type MaxSizeAction (line 41) | interface MaxSizeAction<
  function maxSize (line 100) | function maxSize(

FILE: library/src/actions/maxValue/maxValue.test-d.ts
  type Action (line 12) | type Action = MaxValueAction<number, 10, undefined>;
  type Action (line 33) | type Action = MaxValueAction<number, 10, undefined>;

FILE: library/src/actions/maxValue/maxValue.ts
  type MaxValueIssue (line 12) | interface MaxValueIssue<
  type MaxValueAction (line 37) | interface MaxValueAction<
  function maxValue (line 98) | function maxValue(

FILE: library/src/actions/maxWords/maxWords.test-d.ts
  type Action (line 12) | type Action = MaxWordsAction<string, 'en', 3, undefined>;
  type Input (line 33) | type Input = 'foo bar baz';
  type Action (line 34) | type Action = MaxWordsAction<Input, 'en', 3, undefined>;

FILE: library/src/actions/maxWords/maxWords.ts
  type MaxWordsIssue (line 11) | interface MaxWordsIssue<
  type MaxWordsAction (line 40) | interface MaxWordsAction<
  function maxWords (line 114) | function maxWords(

FILE: library/src/actions/metadata/metadata.test-d.ts
  type Action (line 6) | type Action = MetadataAction<string, { key: 'foo' }>;

FILE: library/src/actions/metadata/metadata.ts
  type MetadataAction (line 6) | interface MetadataAction<
  function metadata (line 32) | function metadata<

FILE: library/src/actions/mimeType/mimeType.test-d.ts
  type Requirement (line 11) | type Requirement = typeof requirement;
  type Action (line 15) | type Action = MimeTypeAction<Blob, Requirement, undefined>;
  type Action (line 34) | type Action = MimeTypeAction<Blob, Requirement, undefined>;

FILE: library/src/actions/mimeType/mimeType.test.ts
  type Requirement (line 12) | type Requirement = typeof requirement;

FILE: library/src/actions/mimeType/mimeType.ts
  type Requirement (line 11) | type Requirement = readonly `${string}/${string}`[];
  type MimeTypeIssue (line 16) | interface MimeTypeIssue<
  type MimeTypeAction (line 45) | interface MimeTypeAction<
  function mimeType (line 106) | function mimeType(

FILE: library/src/actions/minBytes/minBytes.test-d.ts
  type Action (line 12) | type Action = MinBytesAction<string, 10, undefined>;
  type Action (line 33) | type Action = MinBytesAction<string, 10, undefined>;

FILE: library/src/actions/minBytes/minBytes.ts
  type MinBytesIssue (line 11) | interface MinBytesIssue<
  type MinBytesAction (line 40) | interface MinBytesAction<
  function minBytes (line 101) | function minBytes(

FILE: library/src/actions/minEntries/minEntries.test-d.ts
  type Input (line 10) | type Input = Record<string, number>;
  type Action (line 14) | type Action = MinEntriesAction<Input, 10, undefined>;
  type Action (line 35) | type Action = MinEntriesAction<Input, 10, undefined>;

FILE: library/src/actions/minEntries/minEntries.test.ts
  type Input (line 11) | type Input = Record<string, number>;

FILE: library/src/actions/minEntries/minEntries.ts
  type MinEntriesIssue (line 14) | interface MinEntriesIssue<
  type MinEntriesAction (line 45) | interface MinEntriesAction<
  function minEntries (line 114) | function minEntries(

FILE: library/src/actions/minGraphemes/minGraphemes.test-d.ts
  type Action (line 12) | type Action = MinGraphemesAction<string, 10, undefined>;
  type Input (line 33) | type Input = 'example string';
  type Action (line 34) | type Action = MinGraphemesAction<Input, 10, undefined>;

FILE: library/src/actions/minGraphemes/minGraphemes.ts
  type MinGraphemesIssue (line 11) | interface MinGraphemesIssue<
  type MinGraphemesAction (line 40) | interface MinGraphemesAction<
  function minGraphemes (line 107) | function minGraphemes(

FILE: library/src/actions/minLength/minLength.test-d.ts
  type Action (line 12) | type Action = MinLengthAction<string, 10, undefined>;
  type Action (line 33) | type Action = MinLengthAction<string, 10, undefined>;

FILE: library/src/actions/minLength/minLength.ts
  type MinLengthIssue (line 12) | interface MinLengthIssue<
  type MinLengthAction (line 41) | interface MinLengthAction<
  function minLength (line 102) | function minLength(

FILE: library/src/actions/minSize/minSize.test-d.ts
  type Action (line 8) | type Action = MinSizeAction<Blob, 10, undefined>;
  type Action (line 29) | type Action = MinSizeAction<Map<string, number>, 10, undefined>;

FILE: library/src/actions/minSize/minSize.ts
  type MinSizeIssue (line 12) | interface MinSizeIssue<
  type MinSizeAction (line 41) | interface MinSizeAction<
  function minSize (line 100) | function minSize(

FILE: library/src/actions/minValue/minValue.test-d.ts
  type Action (line 12) | type Action = MinValueAction<number, 10, undefined>;
  type Action (line 33) | type Action = MinValueAction<number, 10, undefined>;

FILE: library/src/actions/minValue/minValue.ts
  type MinValueIssue (line 12) | interface MinValueIssue<
  type MinValueAction (line 37) | interface MinValueAction<
  function minValue (line 98) | function minValue(

FILE: library/src/actions/minWords/minWords.test-d.ts
  type Action (line 12) | type Action = MinWordsAction<string, 'en', 3, undefined>;
  type Input (line 33) | type Input = 'foo bar baz';
  type Action (line 34) | type Action = MinWordsAction<Input, 'en', 3, undefined>;

FILE: library/src/actions/minWords/minWords.ts
  type MinWordsIssue (line 11) | interface MinWordsIssue<
  type MinWordsAction (line 40) | interface MinWordsAction<
  function minWords (line 114) | function minWords(

FILE: library/src/actions/multipleOf/multipleOf.test-d.ts
  type Action (line 12) | type Action = MultipleOfAction<number, 10, undefined>;
  type Action1 (line 33) | type Action1 = MultipleOfAction<number, 10, undefined>;
  type Action2 (line 34) | type Action2 = MultipleOfAction<bigint, 10n, undefined>;

FILE: library/src/actions/multipleOf/multipleOf.ts
  type Input (line 11) | type Input = number | bigint;
  type MultipleOfIssue (line 16) | interface MultipleOfIssue<
  type MultipleOfAction (line 45) | interface MultipleOfAction<
  function multipleOf (line 141) | function multipleOf(

FILE: library/src/actions/nanoid/nanoid.test-d.ts
  type Action (line 8) | type Action = NanoIdAction<string, undefined>;
  type Action (line 29) | type Action = NanoIdAction<string, undefined>;

FILE: library/src/actions/nanoid/nanoid.ts
  type NanoIdIssue (line 12) | interface NanoIdIssue<TInput extends string> extends BaseIssue<TInput> {
  type NanoIDIssue (line 40) | type NanoIDIssue<TInput extends string> = NanoIdIssue<TInput>;
  type NanoIdAction (line 45) | interface NanoIdAction<
  type NanoIDAction (line 76) | type NanoIDAction<
  function nanoid (line 104) | function nanoid(

FILE: library/src/actions/nonEmpty/nonEmpty.test-d.ts
  type Action (line 12) | type Action = NonEmptyAction<string, undefined>;
  type Action (line 33) | type Action = NonEmptyAction<string, undefined>;

FILE: library/src/actions/nonEmpty/nonEmpty.ts
  type NonEmptyIssue (line 12) | interface NonEmptyIssue<TInput extends LengthInput>
  type NonEmptyAction (line 35) | interface NonEmptyAction<
  function nonEmpty (line 80) | function nonEmpty(

FILE: library/src/actions/normalize/normalize.test-d.ts
  type Action (line 17) | type Action = NormalizeAction<undefined>;

FILE: library/src/actions/normalize/normalize.ts
  type NormalizeForm (line 6) | type NormalizeForm = 'NFC' | 'NFD' | 'NFKC' | 'NFKD';
  type NormalizeAction (line 11) | interface NormalizeAction<TForm extends NormalizeForm | undefined>
  function normalize (line 46) | function normalize(

FILE: library/src/actions/notBytes/notBytes.test-d.ts
  type Action (line 12) | type Action = NotBytesAction<string, 10, undefined>;
  type Action (line 33) | type Action = NotBytesAction<string, 10, undefined>;

FILE: library/src/actions/notBytes/notBytes.ts
  type NotBytesIssue (line 11) | interface NotBytesIssue<
  type NotBytesAction (line 40) | interface NotBytesAction<
  function notBytes (line 101) | function notBytes(

FILE: library/src/actions/notEntries/notEntries.test-d.ts
  type Input (line 10) | type Input = Record<string, number>;
  type Action (line 14) | type Action = NotEntriesAction<Input, 10, undefined>;
  type Action (line 35) | type Action = NotEntriesAction<Input, 10, undefined>;

FILE: library/src/actions/notEntries/notEntries.test.ts
  type Input (line 11) | type Input = Record<string, number>;

FILE: library/src/actions/notEntries/notEntries.ts
  type NotEntriesIssue (line 14) | interface NotEntriesIssue<
  type NotEntriesAction (line 45) | interface NotEntriesAction<
  function notEntries (line 114) | function notEntries(

FILE: library/src/actions/notGraphemes/notGraphemes.test-d.ts
  type Action (line 12) | type Action = NotGraphemesAction<string, 10, undefined>;
  type Input (line 33) | type Input = 'example string';
  type Action (line 34) | type Action = NotGraphemesAction<Input, 10, undefined>;

FILE: library/src/actions/notGraphemes/notGraphemes.ts
  type NotGraphemesIssue (line 11) | interface NotGraphemesIssue<
  type NotGraphemesAction (line 40) | interface NotGraphemesAction<
  function notGraphemes (line 107) | function notGraphemes(

FILE: library/src/actions/notLength/notLength.test-d.ts
  type Action (line 12) | type Action = NotLengthAction<string, 10, undefined>;
  type Input (line 33) | type Input = [1, 'two', { value: 'three' }];
  type Action (line 34) | type Action = NotLengthAction<Input, 3, undefined>;

FILE: library/src/actions/notLength/notLength.ts
  type NotLengthIssue (line 12) | interface NotLengthIssue<
  type NotLengthAction (line 41) | interface NotLengthAction<
  function notLength (line 102) | function notLength(

FILE: library/src/actions/notSize/notSize.test-d.ts
  type Action (line 8) | type Action = NotSizeAction<Blob, 10, undefined>;
  type Action (line 29) | type Action = NotSizeAction<Map<string, number>, 10, undefined>;

FILE: library/src/actions/notSize/notSize.ts
  type NotSizeIssue (line 12) | interface NotSizeIssue<
  type NotSizeAction (line 41) | interface NotSizeAction<
  function notSize (line 100) | function notSize(

FILE: library/src/actions/notValue/notValue.test-d.ts
  type Action (line 12) | type Action = NotValueAction<number, 10, undefined>;
  type Action (line 33) | type Action = NotValueAction<number, 10, undefined>;

FILE: library/src/actions/notValue/notValue.ts
  type NotValueIssue (line 12) | interface NotValueIssue<
  type NotValueAction (line 37) | interface NotValueAction<
  function notValue (line 98) | function notValue(

FILE: library/src/actions/notValues/notValues.test-d.ts
  type Action (line 12) | type Action = NotValuesAction<number, [7, 12], undefined>;
  type Action (line 33) | type Action = NotValuesAction<number, [7, 12], undefined>;

FILE: library/src/actions/notValues/notValues.ts
  type NotValuesIssue (line 12) | interface NotValuesIssue<
  type NotValuesAction (line 37) | interface NotValuesAction<
  function notValues (line 98) | function notValues(

FILE: library/src/actions/notWords/notWords.test-d.ts
  type Action (line 12) | type Action = NotWordsAction<string, 'en', 3, undefined>;
  type Input (line 33) | type Input = 'foo bar baz';
  type Action (line 34) | type Action = NotWordsAction<Input, 'en', 3, undefined>;

FILE: library/src/actions/notWords/notWords.ts
  type NotWordsIssue (line 11) | interface NotWordsIssue<
  type NotWordsAction (line 40) | interface NotWordsAction<
  function notWords (line 114) | function notWords(

FILE: library/src/actions/octal/octal.test-d.ts
  type Action (line 8) | type Action = OctalAction<string, undefined>;
  type Action (line 27) | type Action = OctalAction<string, undefined>;

FILE: library/src/actions/octal/octal.ts
  type OctalIssue (line 12) | interface OctalIssue<TInput extends string> extends BaseIssue<TInput> {
  type OctalAction (line 38) | interface OctalAction<
  function octal (line 84) | function octal(

FILE: library/src/actions/parseBoolean/parseBoolean.test-d.ts
  type Action (line 18) | type Action = ParseBooleanAction<unknown, undefined, undefined>;
  type Action (line 37) | type Action = ParseBooleanAction<unknown, ParseBooleanConfig, undefined>;
  type Action (line 59) | type Action = ParseBooleanAction<unknown, ParseBooleanConfig, undefined>;
  type Input (line 65) | type Input = 'foo';
  type Action (line 66) | type Action = ParseBooleanAction<Input, ParseBooleanConfig, 'message'>;

FILE: library/src/actions/parseBoolean/parseBoolean.ts
  constant TRUTHY (line 10) | const TRUTHY = [true, 1, 'true', '1', 'yes', 'y', 'on', 'enabled'];
  constant FALSY (line 11) | const FALSY = [false, 0, 'false', '0', 'no', 'n', 'off', 'disabled'];
  type ParseBooleanConfig (line 18) | interface ParseBooleanConfig {
  type ParseBooleanIssue (line 34) | interface ParseBooleanIssue<TInput> extends BaseIssue<TInput> {
  type ParseBooleanAction (line 54) | interface ParseBooleanAction<
  function parseBoolean (line 130) | function parseBoolean(

FILE: library/src/actions/parseJson/parseJson.test-d.ts
  type Action (line 17) | type Action = ParseJsonAction<string, undefined, undefined>;
  type Action (line 36) | type Action = ParseJsonAction<string, ParseJsonConfig, undefined>;
  type Input (line 55) | type Input = 'foo';
  type Action (line 56) | type Action = ParseJsonAction<Input, ParseJsonConfig, 'message'>;

FILE: library/src/actions/parseJson/parseJson.ts
  type ParseJsonConfig (line 13) | interface ParseJsonConfig {
  type ParseJsonIssue (line 26) | interface ParseJsonIssue<TInput extends string>
  type ParseJsonAction (line 51) | interface ParseJsonAction<
  function parseJson (line 121) | function parseJson(

FILE: library/src/actions/partialCheck/partialCheck.test-d.ts
  type Input (line 8) | type Input = { nested: { key1: number; key2: string; key3: boolean } };
  type PathList (line 10) | type PathList = typeof paths;
  type Selection (line 11) | type Selection = DeepPickN<Input, PathList>;
  type Action (line 16) | type Action = PartialCheckAction<Input, PathList, Selection, undefined>;
  type Action (line 55) | type Action = PartialCheckAction<Input, PathList, Selection, undefined>;

FILE: library/src/actions/partialCheck/partialCheck.test.ts
  type Input (line 19) | type Input = { nested: { key1: number; key2: string; key3: boolean } };
  type PathList (line 21) | type PathList = typeof paths;
  type Selection (line 22) | type Selection = DeepPickN<Input, PathList>;
  type Input (line 91) | type Input = {
  type PathList (line 96) | type PathList = [['nested', 'key'], ['tuple', 1, 'key']];
  type Selection (line 97) | type Selection = DeepPickN<Input, PathList>;

FILE: library/src/actions/partialCheck/partialCheck.ts
  type PartialCheckAction (line 16) | interface PartialCheckAction<
  function partialCheck (line 88) | function partialCheck(

FILE: library/src/actions/partialCheck/partialCheckAsync.test-d.ts
  type Input (line 11) | type Input = { nested: { key1: number; key2: string; key3: boolean } };
  type PathList (line 13) | type PathList = typeof paths;
  type Selection (line 14) | type Selection = DeepPickN<Input, PathList>;
  type Action (line 20) | type Action = PartialCheckActionAsync<
  type Action (line 64) | type Action = PartialCheckActionAsync<

FILE: library/src/actions/partialCheck/partialCheckAsync.test.ts
  type Input (line 22) | type Input = { nested: { key1: number; key2: string; key3: boolean } };
  type PathList (line 24) | type PathList = typeof paths;
  type Selection (line 25) | type Selection = DeepPickN<Input, PathList>;
  type Input (line 104) | type Input = {
  type PathList (line 109) | type PathList = [['nested', 'key'], ['tuple', 1, 'key']];
  type Selection (line 110) | type Selection = DeepPickN<Input, PathList>;

FILE: library/src/actions/partialCheck/partialCheckAsync.ts
  type PartialCheckActionAsync (line 20) | interface PartialCheckActionAsync<
  function partialCheckAsync (line 92) | function partialCheckAsync(

FILE: library/src/actions/partialCheck/types.ts
  type PartialInput (line 11) | type PartialInput = Record<string, unknown> | ArrayLike<unknown>;
  type PartialCheckIssue (line 16) | interface PartialCheckIssue<TInput extends PartialInput>
  type KeyOf (line 39) | type KeyOf<TValue> =
  type Path (line 57) | type Path = readonly (string | number)[];
  type RequiredPath (line 62) | type RequiredPath = readonly [string | number, ...Path];
  type Paths (line 67) | type Paths = readonly RequiredPath[];
  type RequiredPaths (line 72) | type RequiredPaths = readonly [RequiredPath, ...RequiredPath[]];
  type LazyPath (line 77) | type LazyPath<
  type ValidPath (line 111) | type ValidPath<TValue, TPath extends RequiredPath> =
  type ValidPaths (line 117) | type ValidPaths<TValue, TPaths extends RequiredPaths> = {
  type DeepPick (line 127) | type DeepPick<TValue, TPath extends Path> = TPath extends readonly [
  type DeepMerge (line 155) | type DeepMerge<TValue1, TValue2> = TValue1 extends readonly unknown[]
  type DeepPickN (line 184) | type DeepPickN<TInput, TPaths extends Paths> = TPaths extends readonly [

FILE: library/src/actions/partialCheck/utils/_isPartiallyTyped/_isPartiallyTyped.test.ts
  type Input (line 15) | type Input = {

FILE: library/src/actions/partialCheck/utils/_isPartiallyTyped/_isPartiallyTyped.ts
  function _isPartiallyTyped (line 15) | function _isPartiallyTyped(

FILE: library/src/actions/rawCheck/rawCheck.test-d.ts
  type Input (line 17) | type Input = ['foo', 123, true];
  type Action (line 18) | type Action = RawCheckAction<Input>;

FILE: library/src/actions/rawCheck/rawCheck.ts
  type RawCheckAction (line 8) | interface RawCheckAction<TInput>
  function rawCheck (line 32) | function rawCheck<TInput>(

FILE: library/src/actions/rawCheck/rawCheckAsync.test-d.ts
  type Input (line 17) | type Input = ['foo', 123, true];
  type Action (line 18) | type Action = RawCheckActionAsync<Input>;

FILE: library/src/actions/rawCheck/rawCheckAsync.ts
  type RawCheckActionAsync (line 8) | interface RawCheckActionAsync<TInput>
  function rawCheckAsync (line 32) | function rawCheckAsync<TInput>(

FILE: library/src/actions/rawCheck/types.ts
  type RawCheckIssue (line 12) | interface RawCheckIssue<TInput> extends BaseIssue<TInput> {
  type RawCheckIssueInfo (line 26) | interface RawCheckIssueInfo<TInput> {
  type RawCheckAddIssue (line 38) | type RawCheckAddIssue<TInput> = (
  type RawCheckContext (line 45) | interface RawCheckContext<TInput> {

FILE: library/src/actions/rawTransform/rawTransform.test-d.ts
  type Action (line 14) | type Action = RawTransformAction<string, number>;

FILE: library/src/actions/rawTransform/rawTransform.ts
  type RawTransformAction (line 12) | interface RawTransformAction<TInput, TOutput>
  function rawTransform (line 32) | function rawTransform<TInput, TOutput>(

FILE: library/src/actions/rawTransform/rawTransformAsync.test-d.ts
  type Action (line 19) | type Action = RawTransformActionAsync<string, number>;

FILE: library/src/actions/rawTransform/rawTransformAsync.ts
  type RawTransformActionAsync (line 13) | interface RawTransformActionAsync<TInput, TOutput>
  function rawTransformAsync (line 33) | function rawTransformAsync<TInput, TOutput>(

FILE: library/src/actions/rawTransform/types.ts
  type RawTransformIssue (line 12) | interface RawTransformIssue<TInput> extends BaseIssue<TInput> {
  type RawTransformIssueInfo (line 26) | interface RawTransformIssueInfo<TInput> {
  type RawTransformAddIssue (line 38) | type RawTransformAddIssue<TInput> = (
  type RawTransformContext (line 45) | interface RawTransformContext<TInput> {

FILE: library/src/actions/readonly/readonly.test-d.ts
  type Input (line 8) | type Input = { key: string };
  type Action (line 9) | type Action = ReadonlyAction<Input>;
  type Input1 (line 15) | type Input1 = { for: string; bar: number };
  type Action1 (line 16) | type Action1 = ReadonlyAction<Input1>;
  type Input2 (line 17) | type Input2 = [string, number];
  type Action2 (line 18) | type Action2 = ReadonlyAction<Input2>;
  type Input3 (line 19) | type Input3 = Map<string, number>;
  type Action3 (line 20) | type Action3 = ReadonlyAction<Input3>;
  type Input4 (line 21) | type Input4 = Set<string>;
  type Action4 (line 22) | type Action4 = ReadonlyAction<Input4>;

FILE: library/src/actions/readonly/readonly.ts
  type ReadonlyOutput (line 6) | type ReadonlyOutput<TInput> =
  type ReadonlyAction (line 16) | interface ReadonlyAction<TInput>
  function readonly (line 36) | function readonly(): ReadonlyAction<unknown> {

FILE: library/src/actions/reduceItems/reduceItems.test-d.ts
  type Action (line 13) | type Action = ReduceItemsAction<number[], number>;

FILE: library/src/actions/reduceItems/reduceItems.ts
  type ArrayAction (line 7) | type ArrayAction<TInput extends ArrayInput, TOutput> = (
  type ReduceItemsAction (line 17) | interface ReduceItemsAction<TInput extends ArrayInput, TOutput>
  function reduceItems (line 51) | function reduceItems(

FILE: library/src/actions/regex/regex.test-d.ts
  type Action (line 10) | type Action = RegexAction<string, undefined>;
  type Action (line 29) | type Action = RegexAction<string, undefined>;

FILE: library/src/actions/regex/regex.ts
  type RegexIssue (line 11) | interface RegexIssue<TInput extends string> extends BaseIssue<TInput> {
  type RegexAction (line 37) | interface RegexAction<
  function regex (line 92) | function regex(

FILE: library/src/actions/returns/returns.test-d.ts
  type Input (line 7) | type Input = (arg1: string, arg2: number, ...rest: boolean[]) => unknown;
  type Schema (line 9) | type Schema = typeof schema;
  type Action (line 10) | type Action = ReturnsAction<Input, Schema>;

FILE: library/src/actions/returns/returns.test.ts
  type Input (line 6) | type Input = (arg1: unknown) => unknown;
  type Schema (line 8) | type Schema = typeof schema;

FILE: library/src/actions/returns/returns.ts
  type ReturnsAction (line 12) | interface ReturnsAction<
  function returns (line 49) | function returns(

FILE: library/src/actions/returns/returnsAsync.test-d.ts
  type Input (line 9) | type Input = (
  type Schema (line 15) | type Schema = typeof schema;
  type Action (line 16) | type Action = ReturnsActionAsync<Input, Schema>;

FILE: library/src/actions/returns/returnsAsync.test.ts
  type Input (line 8) | type Input = (arg1: unknown) => Promise<unknown>;
  type Schema (line 10) | type Schema = typeof schema;

FILE: library/src/actions/returns/returnsAsync.ts
  type ReturnsActionAsync (line 14) | interface ReturnsActionAsync<
  function returnsAsync (line 55) | function returnsAsync(

FILE: library/src/actions/rfcEmail/rfcEmail.test-d.ts
  type Action (line 13) | type Action = RfcEmailAction<string, undefined>;
  type Action (line 32) | type Action = RfcEmailAction<string, undefined>;

FILE: library/src/actions/rfcEmail/rfcEmail.ts
  type RfcEmailIssue (line 12) | interface RfcEmailIssue<TInput extends string>
  type RfcEmailAction (line 39) | interface RfcEmailAction<
  function rfcEmail (line 98) | function rfcEmail(

FILE: library/src/actions/safeInteger/safeInteger.test-d.ts
  type Action (line 12) | type Action = SafeIntegerAction<number, undefined>;
  type Action (line 31) | type Action = SafeIntegerAction<number, undefined>;

FILE: library/src/actions/safeInteger/safeInteger.ts
  type SafeIntegerIssue (line 11) | interface SafeIntegerIssue<TInput extends number>
  type SafeIntegerAction (line 38) | interface SafeIntegerAction<
  function safeInteger (line 87) | function safeInteger(

FILE: library/src/actions/size/size.test-d.ts
  type Action (line 8) | type Action = SizeAction<Blob, 10, undefined>;
  type Action (line 29) | type Action = SizeAction<Map<string, number>, 10, undefined>;

FILE: library/src/actions/size/size.ts
  type SizeIssue (line 12) | interface SizeIssue<
  type SizeAction (line 41) | interface SizeAction<
  function size (line 100) | function size(

FILE: library/src/actions/slug/slug.test-d.ts
  type Action (line 8) | type Action = SlugAction<string, undefined>;
  type Action (line 27) | type Action = SlugAction<string, undefined>;

FILE: library/src/actions/slug/slug.ts
  type SlugIssue (line 12) | interface SlugIssue<TInput extends string> extends BaseIssue<TInput> {
  type SlugAction (line 38) | interface SlugAction<
  function slug (line 84) | function slug(

FILE: library/src/actions/someItem/someItem.test-d.ts
  type Action (line 12) | type Action = SomeItemAction<string[], undefined>;
  type Input (line 44) | type Input = ['foo', 123, true];
  type Action (line 45) | type Action = SomeItemAction<Input, undefined>;

FILE: library/src/actions/someItem/someItem.ts
  type SomeItemIssue (line 12) | interface SomeItemIssue<TInput extends ArrayInput>
  type SomeItemAction (line 35) | interface SomeItemAction<
  function someItem (line 89) | function someItem(

FILE: library/src/actions/sortItems/sortItems.test-d.ts
  type Input (line 15) | type Input = (string | number)[];
  type Action (line 16) | type Action = SortItemsAction<Input>;

FILE: library/src/actions/sortItems/sortItems.ts
  type ArrayAction (line 7) | type ArrayAction<TInput extends ArrayInput> = (
  type SortItemsAction (line 15) | interface SortItemsAction<TInput extends ArrayInput>
  function sortItems (line 43) | function sortItems(

FILE: library/src/actions/startsWith/startsWith.test-d.ts
  type Action (line 12) | type Action = StartsWithAction<string, 'foo', undefined>;
  type Action (line 33) | type Action = StartsWithAction<string, 'foo', undefined>;

FILE: library/src/actions/startsWith/startsWith.ts
  type StartsWithIssue (line 11) | interface StartsWithIssue<
  type StartsWithAction (line 40) | interface StartsWithAction<
  function startsWith (line 105) | function startsWith(

FILE: library/src/actions/stringifyJson/stringifyJson.test-d.ts
  type Action (line 17) | type Action = StringifyJsonAction<unknown, undefined, undefined>;
  type Action (line 36) | type Action = StringifyJsonAction<
  type Input (line 60) | type Input = { foo: string };
  type Action (line 61) | type Action = StringifyJsonAction<Input, undefined, undefined>;

FILE: library/src/actions/stringifyJson/stringifyJson.ts
  type StringifyJsonConfig (line 14) | interface StringifyJsonConfig {
  type StringifyJsonIssue (line 31) | interface StringifyJsonIssue<TInput> extends BaseIssue<TInput> {
  type StringifyJsonAction (line 55) | interface StringifyJsonAction<
  function stringifyJson (line 125) | function stringifyJson(

FILE: library/src/actions/title/title.test-d.ts
  type Action (line 6) | type Action = TitleAction<string, 'text'>;

FILE: library/src/actions/title/title.ts
  type TitleAction (line 6) | interface TitleAction<TInput, TTitle extends string>
  function title (line 30) | function title<TInput, TTitle extends string>(

FILE: library/src/actions/toBigint/toBigint.test-d.ts
  type Action (line 25) | type Action = ToBigintAction<'123', undefined>;

FILE: library/src/actions/toBigint/toBigint.ts
  type ToBigintIssue (line 12) | interface ToBigintIssue<TInput> extends BaseIssue<TInput> {
  type ToBigintAction (line 30) | interface ToBigintAction<
  function toBigint (line 72) | function toBigint(

FILE: library/src/actions/toBoolean/toBoolean.test-d.ts
  type Action (line 11) | type Action = ToBooleanAction<'foo'>;

FILE: library/src/actions/toBoolean/toBoolean.ts
  type ToBooleanAction (line 6) | interface ToBooleanAction<TInput>
  function toBoolean (line 26) | function toBoolean<TInput>(): ToBooleanAction<TInput> {

FILE: library/src/actions/toDate/toDate.test-d.ts
  type Action (line 13) | type Action = ToDateAction<'123', undefined>;

FILE: library/src/actions/toDate/toDate.ts
  type ToDateIssue (line 12) | interface ToDateIssue<TInput> extends BaseIssue<TInput | Date> {
  type ToDateAction (line 30) | interface ToDateAction<
  function toDate (line 72) | function toDate(

FILE: library/src/actions/toLowerCase/toLowerCase.ts
  type ToLowerCaseAction (line 6) | interface ToLowerCaseAction
  function toLowerCase (line 24) | function toLowerCase(): ToLowerCaseAction {

FILE: library/src/actions/toMaxValue/toMaxValue.test-d.ts
  type Action (line 13) | type Action = ToMaxValueAction<number, 10>;

FILE: library/src/actions/toMaxValue/toMaxValue.ts
  type ToMaxValueAction (line 7) | interface ToMaxValueAction<
  function toMaxValue (line 33) | function toMaxValue<

FILE: library/src/actions/toMinValue/toMinValue.test-d.ts
  type Action (line 13) | type Action = ToMinValueAction<number, 10>;

FILE: library/src/actions/toMinValue/toMinValue.ts
  type ToMinValueAction (line 7) | interface ToMinValueAction<
  function toMinValue (line 33) | function toMinValue<

FILE: library/src/actions/toNumber/toNumber.test-d.ts
  type Action (line 17) | type Action = ToNumberAction<'123', undefined>;

FILE: library/src/actions/toNumber/toNumber.ts
  type ToNumberIssue (line 12) | interface ToNumberIssue<TInput> extends BaseIssue<TInput | number> {
  type ToNumberAction (line 30) | interface ToNumberAction<
  function toNumber (line 72) | function toNumber(

FILE: library/src/actions/toString/toString.test-d.ts
  type Action (line 17) | type Action = ToStringAction<'foo', undefined>;

FILE: library/src/actions/toString/toString.test.ts
  method toString (line 108) | toString() {

FILE: library/src/actions/toString/toString.ts
  type ToStringIssue (line 12) | interface ToStringIssue<TInput> extends BaseIssue<TInput> {
  type ToStringAction (line 30) | interface ToStringAction<
  function toString (line 72) | function toString(

FILE: library/src/actions/toUpperCase/toUpperCase.ts
  type ToUpperCaseAction (line 6) | interface ToUpperCaseAction
  function toUpperCase (line 24) | function toUpperCase(): ToUpperCaseAction {

FILE: library/src/actions/transform/transform.test-d.ts
  type Action (line 6) | type Action = TransformAction<string, number>;

FILE: library/src/actions/transform/transform.ts
  type TransformAction (line 6) | interface TransformAction<TInput, TOutput>
  function transform (line 30) | function transform<TInput, TOutput>(

FILE: library/src/actions/transform/transformAsync.test-d.ts
  type Action (line 6) | type Action = TransformActionAsync<string, number>;

FILE: library/src/actions/transform/transformAsync.ts
  type TransformActionAsync (line 9) | interface TransformActionAsync<TInput, TOutput>
  function transformAsync (line 33) | function transformAsync<TInput, TOutput>(

FILE: library/src/actions/trim/trim.ts
  type TrimAction (line 6) | interface TrimAction extends BaseTransformation<string, string, never> {
  function trim (line 23) | function trim(): TrimAction {

FILE: library/src/actions/trimEnd/trimEnd.ts
  type TrimEndAction (line 6) | interface TrimEndAction
  function trimEnd (line 24) | function trimEnd(): TrimEndAction {

FILE: library/src/actions/trimStart/trimStart.ts
  type TrimStartAction (line 6) | interface TrimStartAction
  function trimStart (line 24) | function trimStart(): TrimStartAction {

FILE: library/src/actions/types.ts
  type ArrayInput (line 6) | type ArrayInput = MaybeReadonly<unknown[]>;
  type ArrayRequirement (line 11) | type ArrayRequirement<TInput extends ArrayInput> = (
  type ArrayRequirementAsync (line 20) | type ArrayRequirementAsync<TInput extends ArrayInput> = (
  type ContentInput (line 29) | type ContentInput = string | MaybeReadonly<unknown[]>;
  type ContentRequirement (line 34) | type ContentRequirement<TInput extends ContentInput> =
  type EntriesInput (line 40) | type EntriesInput = Record<string | number, unknown>;
  type LengthInput (line 45) | type LengthInput = string | ArrayLike<unknown>;
  type SizeInput (line 50) | type SizeInput = Blob | Map<unknown, unknown> | Set<unknown>;
  type ValueInput (line 55) | type ValueInput = string | number | bigint | boolean | Date;

FILE: library/src/actions/ulid/ulid.test-d.ts
  type Action (line 8) | type Action = UlidAction<string, undefined>;
  type Action (line 27) | type Action = UlidAction<string, undefined>;

FILE: library/src/actions/ulid/ulid.ts
  type UlidIssue (line 12) | interface UlidIssue<TInput extends string> extends BaseIssue<TInput> {
  type UlidAction (line 38) | interface UlidAction<
  function ulid (line 84) | function ulid(

FILE: library/src/actions/url/url.test-d.ts
  type Action (line 8) | type Action = UrlAction<string, undefined>;
  type Action (line 27) | type Action = UrlAction<string, undefined>;

FILE: library/src/actions/url/url.ts
  type UrlIssue (line 11) | interface UrlIssue<TInput extends string> extends BaseIssue<TInput> {
  type UrlAction (line 37) | interface UrlAction<
  function url (line 89) | function url(

FILE: library/src/actions/uuid/uuid.test-d.ts
  type Action (line 8) | type Action = UuidAction<string, undefined>;
  type Action (line 27) | type Action = UuidAction<string, undefined>;

FILE: library/src/actions/uuid/uuid.ts
  type UuidIssue (line 12) | interface UuidIssue<TInput extends string> extends BaseIssue<TInput> {
  type UuidAction (line 38) | interface UuidAction<
  function uuid (line 84) | function uuid(

FILE: library/src/actions/value/value.test-d.ts
  type Action (line 8) | type Action = ValueAction<number, 10, undefined>;
  type Action (line 29) | type Action = ValueAction<number, 10, undefined>;

FILE: library/src/actions/value/value.ts
  type ValueIssue (line 12) | interface ValueIssue<
  type ValueAction (line 37) | interface ValueAction<
  function value (line 96) | function value(

FILE: library/src/actions/values/values.test-d.ts
  type Action (line 8) | type Action = ValuesAction<number, [2, 4, 6], undefined>;
  type Action (line 31) | type Action = ValuesAction<number, [2, 4, 6], undefined>;

FILE: library/src/actions/values/values.ts
  type ValuesIssue (line 12) | interface ValuesIssue<
  type ValuesAction (line 37) | interface ValuesAction<
  function values (line 96) | function values(

FILE: library/src/actions/words/words.test-d.ts
  type Action (line 8) | type Action = WordsAction<string, 'en', 3, undefined>;
  type Input (line 29) | type Input = 'foo bar baz';
  type Action (line 30) | type Action = WordsAction<Input, 'en', 3, undefined>;

FILE: library/src/actions/words/words.ts
  type WordsIssue (line 11) | interface WordsIssue<TInput extends string, TRequirement extends number>
  type WordsAction (line 38) | interface WordsAction<
  function words (line 110) | function words(

FILE: library/src/methods/assert/assert.ts
  function assert (line 11) | function assert<

FILE: library/src/methods/cache/_LruCache.ts
  class _LruCache (line 7) | class _LruCache<TValue> implements Cache<TValue> {
    method constructor (line 22) | constructor(config?: CacheConfig) {
    method #stringify (line 35) | #stringify(input: unknown): string {
    method key (line 69) | key(input: unknown, config: Config<BaseIssue<unknown>> = {}): string {
    method get (line 84) | get(key: string): TValue | undefined {
    method set (line 113) | set(key: string, value: TValue): void {
    method clear (line 132) | clear(): void {

FILE: library/src/methods/cache/cache.test-d.ts
  type Schema (line 38) | type Schema = SchemaWithCache<StringSchema<undefined>, undefined>;

FILE: library/src/methods/cache/cache.test.ts
  type Schema (line 10) | type Schema = typeof schema;

FILE: library/src/methods/cache/cache.ts
  type SchemaWithCache (line 17) | type SchemaWithCache<
  function cache (line 75) | function cache(

FILE: library/src/methods/cache/cacheAsync.test-d.ts
  type Schema (line 37) | type Schema = SchemaWithCacheAsync<StringSchema<undefined>, undefined>;

FILE: library/src/methods/cache/cacheAsync.test.ts
  type Schema (line 10) | type Schema = typeof schema;

FILE: library/src/methods/cache/cacheAsync.ts
  type SchemaWithCacheAsync (line 22) | type SchemaWithCacheAsync<
  function cacheAsync (line 118) | function cacheAsync(

FILE: library/src/methods/cache/types.ts
  type Cache (line 8) | interface Cache<TValue> {
  type CacheConfig (line 35) | interface CacheConfig {

FILE: library/src/methods/config/config.ts
  function config (line 19) | function config<

FILE: library/src/methods/fallback/fallback.test-d.ts
  type Schema (line 19) | type Schema = typeof schema;
  type Schema1 (line 35) | type Schema1 = SchemaWithFallback<
  type Schema2 (line 41) | type Schema2 = SchemaWithFallback<
  type Schema3 (line 48) | type Schema3 = SchemaWithFallback<

FILE: library/src/methods/fallback/fallback.test.ts
  type Schema (line 10) | type Schema = typeof schema;

FILE: library/src/methods/fallback/fallback.ts
  type Fallback (line 16) | type Fallback<
  type SchemaWithFallback (line 28) | type SchemaWithFallback<
  function fallback (line 47) | function fallback<

FILE: library/src/methods/fallback/fallbackAsync.test-d.ts
  type Schema (line 22) | type Schema = typeof schema;
  type Schema1 (line 44) | type Schema1 = SchemaWithFallbackAsync<
  type Schema2 (line 50) | type Schema2 = SchemaWithFallbackAsync<
  type Schema3 (line 57) | type Schema3 = SchemaWithFallbackAsync<
  type Schema4 (line 64) | type Schema4 = SchemaWithFallbackAsync<

FILE: library/src/methods/fallback/fallbackAsync.test.ts
  type Schema (line 16) | type Schema = typeof schema;

FILE: library/src/methods/fallback/fallbackAsync.ts
  type FallbackAsync (line 21) | type FallbackAsync<
  type SchemaWithFallbackAsync (line 35) | type SchemaWithFallbackAsync<
  function fallbackAsync (line 83) | function fallbackAsync<

FILE: library/src/methods/flatten/flatten.test-d.ts
  type Schema (line 61) | type Schema = ObjectSchema<

FILE: library/src/methods/flatten/flatten.ts
  type FlatErrors (line 14) | type FlatErrors<
  function flatten (line 83) | function flatten(

FILE: library/src/methods/forward/forward.test-d.ts
  type Input (line 13) | type Input = { nested: { key: string }[] };
  type Path (line 14) | type Path = ['nested', 1, 'key'];
  type Action (line 27) | type Action = typeof action;

FILE: library/src/methods/forward/forward.test.ts
  type Input (line 13) | type Input = typeof input;
  type Path (line 14) | type Path = ['nested', 1, 'key'];
  type Input (line 68) | type Input = typeof input;
  type Path (line 69) | type Path = ['nested', 6, 'key'];
  type Input (line 116) | type Input = typeof input;
  type Path (line 117) | type Path = ['nested', 1, 'key'];
  type Input (line 206) | type Input = typeof input;
  type Path (line 207) | type Path = ['nested', 6, 'key'];

FILE: library/src/methods/forward/forward.ts
  function forward (line 24) | function forward<

FILE: library/src/methods/forward/forwardAsync.test-d.ts
  type Input (line 13) | type Input = { nested: { key: string }[] };
  type Path (line 14) | type Path = ['nested', 1, 'key'];
  type Action (line 27) | type Action = typeof action;

FILE: library/src/methods/forward/forwardAsync.test.ts
  type Input (line 13) | type Input = typeof input;
  type Path (line 14) | type Path = ['nested', 1, 'key'];
  type Input (line 67) | type Input = typeof input;
  type Path (line 68) | type Path = ['nested', 6, 'key'];
  type Input (line 114) | type Input = typeof input;
  type Path (line 115) | type Path = ['nested', 1, 'key'];
  type Input (line 203) | type Input = typeof input;
  type Path (line 204) | type Path = ['nested', 6, 'key'];

FILE: library/src/methods/forward/forwardAsync.ts
  function forwardAsync (line 25) | function forwardAsync<

FILE: library/src/methods/forward/types.ts
  type KeyOf (line 6) | type KeyOf<TValue> =
  type Path (line 24) | type Path = readonly (string | number)[];
  type RequiredPath (line 29) | type RequiredPath = readonly [string | number, ...Path];
  type LazyPath (line 34) | type LazyPath<
  type ValidPath (line 62) | type ValidPath<

FILE: library/src/methods/getDefault/getDefault.ts
  type SchemaWithDefault (line 25) | type SchemaWithDefault =
  type SchemaWithDefaultAsync (line 41) | type SchemaWithDefaultAsync =
  type InferDefault (line 71) | type InferDefault<
  function getDefault (line 94) | function getDefault<

FILE: library/src/methods/getDefaults/getDefaults.ts
  function getDefaults (line 41) | function getDefaults<

FILE: library/src/methods/getDefaults/getDefaultsAsync.ts
  function getDefaultsAsync (line 52) | async function getDefaultsAsync<

FILE: library/src/methods/getDefaults/types.ts
  type InferDefaults (line 38) | type InferDefaults<

FILE: library/src/methods/getDescription/getDescription.ts
  type Schema (line 15) | type Schema =
  function getDescription (line 55) | function getDescription(schema: Schema): string | undefined {

FILE: library/src/methods/getExamples/getExamples.ts
  type Schema (line 14) | type Schema =
  type RecursiveConcat (line 43) | type RecursiveConcat<
  type InferExamples (line 75) | type InferExamples<TSchema extends Schema> = TSchema extends
  function getExamples (line 94) | function getExamples<const TSchema extends Schema>(

FILE: library/src/methods/getFallback/getFallback.ts
  type InferFallback (line 20) | type InferFallback<
  function getFallback (line 53) | function getFallback<

FILE: library/src/methods/getFallbacks/getFallbacks.ts
  function getFallbacks (line 41) | function getFallbacks<

FILE: library/src/methods/getFallbacks/getFallbacksAsync.ts
  function getFallbacksAsync (line 52) | async function getFallbacksAsync<

FILE: library/src/methods/getFallbacks/types.ts
  type InferFallbacks (line 38) | type InferFallbacks<

FILE: library/src/methods/getMetadata/getMetadata.ts
  type Schema (line 16) | type Schema =
  type BasicPipeItem (line 45) | type BasicPipeItem =
  type RecursiveMerge (line 55) | type RecursiveMerge<
  type InferMetadata (line 77) | type InferMetadata<TSchema extends Schema> =
  function getMetadata (line 104) | function getMetadata<const TSchema extends Schema>(

FILE: library/src/methods/getTitle/getTitle.ts
  type Schema (line 15) | type Schema =
  function getTitle (line 55) | function getTitle(schema: Schema): string | undefined {

FILE: library/src/methods/is/is.ts
  function is (line 13) | function is<

FILE: library/src/methods/keyof/keyof.test-d.ts
  type Options (line 16) | type Options = ['foo', 'bar', 'baz'];
  type Schema (line 20) | type Schema = PicklistSchema<Options, undefined>;
  type Schema (line 39) | type Schema = PicklistSchema<Options, undefined>;

FILE: library/src/methods/keyof/keyof.test.ts
  type Options (line 15) | type Options = typeof options;

FILE: library/src/methods/keyof/keyof.ts
  type Schema (line 30) | type Schema =
  type ForceTuple (line 60) | type ForceTuple<T> = T extends [string, ...string[]] ? T : [];
  type ObjectKeys (line 65) | type ObjectKeys<TSchema extends Schema> = ForceTuple<
  function keyof (line 97) | function keyof(

FILE: library/src/methods/message/message.ts
  function message (line 19) | function message<

FILE: library/src/methods/omit/omit.test-d.ts
  type Schema (line 24) | type Schema = SchemaWithOmit<
  type Schema (line 75) | type Schema = SchemaWithOmit<

FILE: library/src/methods/omit/omit.ts
  type Schema (line 40) | type Schema = SchemaWithoutPipe<
  type SchemaWithOmit (line 72) | type SchemaWithOmit<
  function omit (line 467) | function omit<

FILE: library/src/methods/parse/parse.ts
  function parse (line 20) | function parse<

FILE: library/src/methods/parse/parseAsync.ts
  function parseAsync (line 21) | async function parseAsync<

FILE: library/src/methods/parser/parser.test-d.ts
  type Schema (line 16) | type Schema = typeof schema;

FILE: library/src/methods/parser/parser.ts
  type Parser (line 13) | interface Parser<
  function parser (line 56) | function parser(

FILE: library/src/methods/parser/parserAsync.test-d.ts
  type Schema (line 16) | type Schema = typeof schema;

FILE: library/src/methods/parser/parserAsync.ts
  type ParserAsync (line 14) | interface ParserAsync<
  function parserAsync (line 63) | function parserAsync(

FILE: library/src/methods/partial/partial.test-d.ts
  type Wrapped (line 28) | type Wrapped = typeof wrapped;
  type Schema1 (line 29) | type Schema1 = SchemaWithPartial<Wrapped, undefined>;
  type Schema2 (line 30) | type Schema2 = SchemaWithPartial<Wrapped, ['key1', 'key3']>;
  type Wrapped (line 88) | type Wrapped = typeof wrapped;
  type Schema1 (line 89) | type Schema1 = SchemaWithPartial<Wrapped, undefined>;
  type Schema2 (line 90) | type Schema2 = SchemaWithPartial<Wrapped, ['key2', 'key3']>;

FILE: library/src/methods/partial/partial.ts
  type Schema (line 35) | type Schema = SchemaWithoutPipe<
  type PartialEntries (line 52) | type PartialEntries<
  type SchemaWithPartial (line 66) | type SchemaWithPartial<
  function partial (line 270) | function partial(

FILE: library/src/methods/partial/partialAsync.test-d.ts
  type Wrapped (line 28) | type Wrapped = typeof wrapped;
  type Schema1 (line 29) | type Schema1 = SchemaWithPartialAsync<Wrapped, undefined>;
  type Schema2 (line 30) | type Schema2 = SchemaWithPartialAsync<Wrapped, ['key1', 'key3']>;
  type Wrapped (line 88) | type Wrapped = typeof wrapped;
  type Schema1 (line 89) | type Schema1 = SchemaWithPartialAsync<Wrapped, undefined>;
  type Schema2 (line 90) | type Schema2 = SchemaWithPartialAsync<Wrapped, ['key2', 'key3']>;

FILE: library/src/methods/partial/partialAsync.ts
  type Schema (line 36) | type Schema = SchemaWithoutPipe<
  type PartialEntries (line 57) | type PartialEntries<
  type SchemaWithPartialAsync (line 71) | type SchemaWithPartialAsync<
  function partialAsync (line 281) | function partialAsync(

FILE: library/src/methods/pick/pick.test-d.ts
  type Schema (line 24) | type Schema = SchemaWithPick<
  type Schema (line 75) | type Schema = SchemaWithPick<

FILE: library/src/methods/pick/pick.ts
  type Schema (line 40) | type Schema = SchemaWithoutPipe<
  type SchemaWithPick (line 72) | type SchemaWithPick<
  function pick (line 467) | function pick<

FILE: library/src/methods/pipe/pipe.test-d.ts
  type Schema (line 60) | type Schema = typeof schema;

FILE: library/src/methods/pipe/pipe.ts
  type SchemaWithPipe (line 21) | type SchemaWithPipe<
  function pipe (line 2685) | function pipe<

FILE: library/src/methods/pipe/pipeAsync.test-d.ts
  type Schema (line 60) | type Schema = typeof schema;

FILE: library/src/methods/pipe/pipeAsync.ts
  type SchemaWithPipeAsync (line 24) | type SchemaWithPipeAsync<
  function pipeAsync (line 3073) | function pipeAsync<

FILE: library/src/methods/required/required.test-d.ts
  type Wrapped (line 30) | type Wrapped = typeof wrapped;
  type Schema1 (line 31) | type Schema1 = SchemaWithRequired<Wrapped, undefined, undefined>;
  type Schema2 (line 32) | type Schema2 = SchemaWithRequired<Wrapped, ['key1', 'key3'], undefined>;
  type Wrapped (line 110) | type Wrapped = typeof wrapped;
  type Schema1 (line 111) | type Schema1 = SchemaWithRequired<Wrapped, undefined, undefined>;
  type Schema2 (line 112) | type Schema2 = SchemaWithRequired<Wrapped, ['key2', 'key3'], undefined>;

FILE: library/src/methods/required/required.ts
  type Schema (line 36) | type Schema = SchemaWithoutPipe<
  type RequiredEntries (line 53) | type RequiredEntries<
  type SchemaWithRequired (line 68) | type SchemaWithRequired<
  function required (line 315) | function required(

FILE: library/src/methods/required/requiredAsync.test-d.ts
  type Wrapped (line 34) | type Wrapped = typeof wrapped;
  type Schema1 (line 35) | type Schema1 = SchemaWithRequiredAsync<Wrapped, undefined, undefined>;
  type Schema2 (line 36) | type Schema2 = SchemaWithRequiredAsync<
  type Wrapped (line 120) | type Wrapped = typeof wrapped;
  type Schema1 (line 121) | type Schema1 = SchemaWithRequiredAsync<Wrapped, undefined, undefined>;
  type Schema2 (line 122) | type Schema2 = SchemaWithRequiredAsync<

FILE: library/src/methods/required/requiredAsync.ts
  type Schema (line 37) | type Schema = SchemaWithoutPipe<
  type RequiredEntries (line 58) | type RequiredEntries<
  type SchemaWithRequiredAsync (line 73) | type SchemaWithRequiredAsync<
  function requiredAsync (line 329) | function requiredAsync(

FILE: library/src/methods/safeParse/safeParse.ts
  function safeParse (line 20) | function safeParse<

FILE: library/src/methods/safeParse/safeParseAsync.ts
  function safeParseAsync (line 21) | async function safeParseAsync<

FILE: library/src/methods/safeParse/types.ts
  type SafeParseResult (line 12) | type SafeParseResult<

FILE: library/src/methods/safeParser/safeParser.test-d.ts
  type Schema (line 17) | type Schema = typeof schema;

FILE: library/src/methods/safeParser/safeParser.ts
  type SafeParser (line 12) | interface SafeParser<
  function safeParser (line 55) | function safeParser(

FILE: library/src/methods/safeParser/safeParserAsync.test-d.ts
  type Schema (line 17) | type Schema = typeof schema;

FILE: library/src/methods/safeParser/safeParserAsync.ts
  type SafeParserAsync (line 13) | interface SafeParserAsync<
  function safeParserAsync (line 62) | function safeParserAsync(

FILE: library/src/methods/summarize/summarize.ts
  function summarize (line 14) | function summarize(

FILE: library/src/methods/unwrap/unwrap.test-d.ts
  type Wrapped (line 27) | type Wrapped = typeof wrapped;

FILE: library/src/methods/unwrap/unwrap.ts
  function unwrap (line 37) | function unwrap<

FILE: library/src/regex.ts
  constant BASE64_REGEX (line 4) | const BASE64_REGEX: RegExp =
  constant BIC_REGEX (line 10) | const BIC_REGEX: RegExp = /^[A-Z]{6}(?!00)[\dA-Z]{2}(?:[\dA-Z]{3})?$/u;
  constant CUID2_REGEX (line 15) | const CUID2_REGEX: RegExp = /^[a-z][\da-z]*$/u;
  constant DECIMAL_REGEX (line 21) | const DECIMAL_REGEX: RegExp = /^[+-]?(?:\d*\.)?\d+$/u;
  constant DIGITS_REGEX (line 26) | const DIGITS_REGEX: RegExp = /^\d+$/u;
  constant DOMAIN_REGEX (line 35) | const DOMAIN_REGEX: RegExp =
  constant EMAIL_REGEX (line 41) | const EMAIL_REGEX: RegExp =
  constant EMOJI_REGEX (line 50) | const EMOJI_REGEX: RegExp =
  constant HEXADECIMAL_REGEX (line 59) | const HEXADECIMAL_REGEX: RegExp = /^(?:0[hx])?[\da-fA-F]+$/u;
  constant HEX_COLOR_REGEX (line 66) | const HEX_COLOR_REGEX: RegExp =
  constant IMEI_REGEX (line 72) | const IMEI_REGEX: RegExp = /^\d{15}$|^\d{2}-\d{6}-\d{6}-\d$/u;
  constant IPV4_REGEX (line 77) | const IPV4_REGEX: RegExp =
  constant IPV6_REGEX (line 84) | const IPV6_REGEX: RegExp =
  constant IP_REGEX (line 90) | const IP_REGEX: RegExp =
  constant ISO_DATE_REGEX (line 96) | const ISO_DATE_REGEX: RegExp =
  constant ISO_DATE_TIME_REGEX (line 102) | const ISO_DATE_TIME_REGEX: RegExp =
  constant ISO_TIME_REGEX (line 108) | const ISO_TIME_REGEX: RegExp = /^(?:0\d|1\d|2[0-3]):[0-5]\d$/u;
  constant ISO_TIME_SECOND_REGEX (line 113) | const ISO_TIME_SECOND_REGEX: RegExp =
  constant ISO_TIMESTAMP_REGEX (line 120) | const ISO_TIMESTAMP_REGEX: RegExp =
  constant ISO_WEEK_REGEX (line 126) | const ISO_WEEK_REGEX: RegExp = /^\d{4}-W(?:0[1-9]|[1-4]\d|5[0-3])$/u;
  constant JWS_COMPACT_REGEX (line 136) | const JWS_COMPACT_REGEX: RegExp =
  constant ISRC_REGEX (line 142) | const ISRC_REGEX: RegExp =
  constant MAC48_REGEX (line 150) | const MAC48_REGEX: RegExp =
  constant MAC64_REGEX (line 158) | const MAC64_REGEX: RegExp =
  constant MAC_REGEX (line 166) | const MAC_REGEX: RegExp =
  constant NANO_ID_REGEX (line 172) | const NANO_ID_REGEX: RegExp = /^[\w-]+$/u;
  constant OCTAL_REGEX (line 177) | const OCTAL_REGEX: RegExp = /^(?:0o)?[0-7]+$/u;
  constant RFC_EMAIL_REGEX (line 184) | const RFC_EMAIL_REGEX: RegExp =
  constant SLUG_REGEX (line 191) | const SLUG_REGEX: RegExp = /^[\da-z]+(?:[-_][\da-z]+)*$/u;
  constant ULID_REGEX (line 198) | const ULID_REGEX: RegExp = /^[\da-hjkmnp-tv-zA-HJKMNP-TV-Z]{26}$/u;
  constant UUID_REGEX (line 203) | const UUID_REGEX: RegExp =

FILE: library/src/schemas/any/any.ts
  type AnySchema (line 8) | interface AnySchema extends BaseSchema<any, any, never> {
  function any (line 33) | function any(): AnySchema {

FILE: library/src/schemas/array/array.test-d.ts
  type Item (line 15) | type Item = typeof item;
  type Schema (line 18) | type Schema = ArraySchema<Item, undefined>;
  type Schema (line 37) | type Schema = ArraySchema<

FILE: library/src/schemas/array/array.test.ts
  type Item (line 11) | type Item = typeof item;

FILE: library/src/schemas/array/array.ts
  type ArraySchema (line 17) | interface ArraySchema<
  function array (line 72) | function array(

FILE: library/src/schemas/array/arrayAsync.test-d.ts
  type Item (line 15) | type Item = typeof item;
  type Schema (line 18) | type Schema = ArraySchemaAsync<Item, undefined>;
  type Schema (line 37) | type Schema = ArraySchemaAsync<

FILE: library/src/schemas/array/arrayAsync.test.ts
  type Item (line 14) | type Item = typeof item;

FILE: library/src/schemas/array/arrayAsync.ts
  type ArraySchemaAsync (line 19) | interface ArraySchemaAsync<
  function arrayAsync (line 80) | function arrayAsync(

FILE: library/src/schemas/array/types.ts
  type ArrayIssue (line 6) | interface ArrayIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/bigint/bigint.test-d.ts
  type Schema (line 8) | type Schema = BigintSchema<undefined>;
  type Schema (line 25) | type Schema = BigintSchema<undefined>;

FILE: library/src/schemas/bigint/bigint.ts
  type BigintIssue (line 12) | interface BigintIssue extends BaseIssue<unknown> {
  type BigintSchema (line 30) | interface BigintSchema<
  function bigint (line 70) | function bigint(

FILE: library/src/schemas/blob/blob.test-d.ts
  type Schema (line 8) | type Schema = BlobSchema<undefined>;
  type Schema (line 25) | type Schema = BlobSchema<undefined>;

FILE: library/src/schemas/blob/blob.ts
  type BlobIssue (line 12) | interface BlobIssue extends BaseIssue<unknown> {
  type BlobSchema (line 30) | interface BlobSchema<
  function blob (line 70) | function blob(

FILE: library/src/schemas/boolean/boolean.test-d.ts
  type Schema (line 8) | type Schema = BooleanSchema<undefined>;
  type Schema (line 27) | type Schema = BooleanSchema<undefined>;

FILE: library/src/schemas/boolean/boolean.ts
  type BooleanIssue (line 12) | interface BooleanIssue extends BaseIssue<unknown> {
  type BooleanSchema (line 30) | interface BooleanSchema<
  function boolean (line 70) | function boolean(

FILE: library/src/schemas/custom/custom.test-d.ts
  type PixelString (line 7) | type PixelString = `${number}px`;
  type Schema (line 13) | type Schema = CustomSchema<PixelString, undefined>;
  type Schema (line 34) | type Schema = CustomSchema<PixelString, undefined>;

FILE: library/src/schemas/custom/custom.test.ts
  type PixelString (line 7) | type PixelString = `${number}px`;

FILE: library/src/schemas/custom/custom.ts
  type Check (line 12) | type Check = (input: unknown) => boolean;
  type CustomSchema (line 17) | interface CustomSchema<
  function custom (line 68) | function custom<TInput>(

FILE: library/src/schemas/custom/customAsync.test-d.ts
  type PixelString (line 7) | type PixelString = `${number}px`;
  type Schema (line 13) | type Schema = CustomSchemaAsync<PixelString, undefined>;
  type Schema (line 36) | type Schema = CustomSchemaAsync<PixelString, undefined>;

FILE: library/src/schemas/custom/customAsync.test.ts
  type PixelString (line 10) | type PixelString = `${number}px`;

FILE: library/src/schemas/custom/customAsync.ts
  type CheckAsync (line 14) | type CheckAsync = (input: unknown) => MaybePromise<boolean>;
  type CustomSchemaAsync (line 19) | interface CustomSchemaAsync<
  function customAsync (line 72) | function customAsync<TInput>(

FILE: library/src/schemas/custom/types.ts
  type CustomIssue (line 6) | interface CustomIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/date/date.test-d.ts
  type Schema (line 8) | type Schema = DateSchema<undefined>;
  type Schema (line 25) | type Schema = DateSchema<undefined>;

FILE: library/src/schemas/date/date.ts
  type DateIssue (line 12) | interface DateIssue extends BaseIssue<unknown> {
  type DateSchema (line 30) | interface DateSchema<
  function date (line 70) | function date(

FILE: library/src/schemas/enum/enum.test-d.ts
  type normalEnum (line 6) | enum normalEnum {
  type NormalEnum (line 11) | type NormalEnum = typeof normalEnum;
  type Schema (line 15) | type Schema = EnumSchema<NormalEnum, undefined>;
  type NormalEnumSchema (line 34) | type NormalEnumSchema = EnumSchema<NormalEnum, undefined>;
  type specialEnum (line 51) | enum specialEnum {
  type SpecialEnum (line 59) | type SpecialEnum = typeof specialEnum;
  type SpecialEnumSchema (line 60) | type SpecialEnumSchema = EnumSchema<SpecialEnum, undefined>;
  type NormalEnumLike (line 91) | type NormalEnumLike = typeof normalEnumLike;
  type NormalEnumLikeSchema (line 92) | type NormalEnumLikeSchema = EnumSchema<NormalEnumLike, undefined>;
  type SpecialEnumLike (line 136) | type SpecialEnumLike = typeof specialEnumLike;
  type SpecialEnumLikeSchema (line 137) | type SpecialEnumLikeSchema = EnumSchema<SpecialEnumLike, undefined>;

FILE: library/src/schemas/enum/enum.test.ts
  type normalEnum (line 6) | enum normalEnum {
  type Options (line 11) | type Options = typeof normalEnum;
  type Empty (line 82) | enum Empty {}
  type specialEnum (line 142) | enum specialEnum {

FILE: library/src/schemas/enum/enum.ts
  type Enum (line 17) | interface Enum {
  type EnumValues (line 24) | type EnumValues<TEnum extends Enum> = {
  type EnumIssue (line 51) | interface EnumIssue extends BaseIssue<unknown> {
  type EnumSchema (line 69) | interface EnumSchema<
  function enum_ (line 120) | function enum_(

FILE: library/src/schemas/exactOptional/exactOptional.test-d.ts
  type Schema (line 17) | type Schema = ExactOptionalSchema<StringSchema<undefined>, undefined>;
  type Schema1 (line 36) | type Schema1 = ExactOptionalSchema<StringSchema<undefined>, undefined>;
  type Schema2 (line 37) | type Schema2 = ExactOptionalSchema<StringSchema<undefined>, 'foo'>;
  type Schema3 (line 38) | type Schema3 = ExactOptionalSchema<StringSchema<undefined>, () => 'foo'>;
  type Schema4 (line 39) | type Schema4 = ExactOptionalSchema<
  type Schema5 (line 45) | type Schema5 = ExactOptionalSchema<
  type Schema6 (line 52) | type Schema6 = ExactOptionalSchema<

FILE: library/src/schemas/exactOptional/exactOptional.ts
  type ExactOptionalSchema (line 14) | interface ExactOptionalSchema<
  function exactOptional (line 72) | function exactOptional(

FILE: library/src/schemas/exactOptional/exactOptionalAsync.test-d.ts
  type Schema (line 20) | type Schema = ExactOptionalSchemaAsync<
  type Schema1 (line 52) | type Schema1 = ExactOptionalSchemaAsync<StringSchema<undefined>, undefin...
  type Schema2 (line 53) | type Schema2 = ExactOptionalSchemaAsync<StringSchema<undefined>, 'foo'>;
  type Schema3 (line 54) | type Schema3 = ExactOptionalSchemaAsync<
  type Schema4 (line 58) | type Schema4 = ExactOptionalSchemaAsync<
  type Schema5 (line 62) | type Schema5 = ExactOptionalSchemaAsync<
  type Schema6 (line 68) | type Schema6 = ExactOptionalSchemaAsync<
  type Schema7 (line 75) | type Schema7 = ExactOptionalSchemaAsync<
  type Schema8 (line 82) | type Schema8 = ExactOptionalSchemaAsync<

FILE: library/src/schemas/exactOptional/exactOptionalAsync.ts
  type ExactOptionalSchemaAsync (line 16) | interface ExactOptionalSchemaAsync<
  function exactOptionalAsync (line 80) | function exactOptionalAsync(

FILE: library/src/schemas/file/file.test-d.ts
  type Schema (line 8) | type Schema = FileSchema<undefined>;
  type Schema (line 25) | type Schema = FileSchema<undefined>;

FILE: library/src/schemas/file/file.ts
  type FileIssue (line 12) | interface FileIssue extends BaseIssue<unknown> {
  type FileSchema (line 30) | interface FileSchema<
  function file (line 70) | function file(

FILE: library/src/schemas/function/function.test-d.ts
  type Schema (line 12) | type Schema = FunctionSchema<undefined>;
  type Schema (line 31) | type Schema = FunctionSchema<undefined>;

FILE: library/src/schemas/function/function.ts
  type FunctionIssue (line 12) | interface FunctionIssue extends BaseIssue<unknown> {
  type FunctionSchema (line 30) | interface FunctionSchema<
  function function_ (line 74) | function function_(

FILE: library/src/schemas/instance/instance.test-d.ts
  type Schema (line 12) | type Schema = InstanceSchema<DateConstructor, undefined>;
  type Schema (line 31) | type Schema = InstanceSchema<DateConstructor, undefined>;

FILE: library/src/schemas/instance/instance.ts
  type Class (line 13) | type Class = new (...args: any[]) => any;
  type InstanceIssue (line 18) | interface InstanceIssue extends BaseIssue<unknown> {
  type InstanceSchema (line 36) | interface InstanceSchema<
  function instance (line 87) | function instance(

FILE: library/src/schemas/intersect/intersect.test-d.ts
  type Options (line 16) | type Options = typeof options;
  type Schema (line 20) | type Schema = IntersectSchema<Options, undefined>;
  type Schema (line 39) | type Schema = IntersectSchema<Options, undefined>;

FILE: library/src/schemas/intersect/intersect.test.ts
  type Options (line 24) | type Options = typeof options;
  type Schema (line 136) | type Schema = typeof schema;

FILE: library/src/schemas/intersect/intersect.ts
  type IntersectSchema (line 24) | interface IntersectSchema<
  function intersect (line 75) | function intersect(

FILE: library/src/schemas/intersect/intersectAsync.test-d.ts
  type Options (line 16) | type Options = typeof options;
  type Schema (line 20) | type Schema = IntersectSchemaAsync<Options, undefined>;
  type Schema (line 39) | type Schema = IntersectSchemaAsync<Options, undefined>;

FILE: library/src/schemas/intersect/intersectAsync.test.ts
  type Options (line 25) | type Options = typeof options;
  type Schema (line 137) | type Schema = typeof schema;

FILE: library/src/schemas/intersect/intersectAsync.ts
  type IntersectSchemaAsync (line 25) | interface IntersectSchemaAsync<
  function intersectAsync (line 79) | function intersectAsync(

FILE: library/src/schemas/intersect/types.ts
  type IntersectIssue (line 11) | interface IntersectIssue extends BaseIssue<unknown> {
  type IntersectOptions (line 29) | type IntersectOptions = MaybeReadonly<
  type IntersectOptionsAsync (line 36) | type IntersectOptionsAsync = MaybeReadonly<
  type InferOption (line 46) | type InferOption<TInput, TOutput> =
  type InferIntersectInput (line 53) | type InferIntersectInput<
  type InferIntersectOutput (line 70) | type InferIntersectOutput<

FILE: library/src/schemas/intersect/utils/_merge/_merge.ts
  type MergeDataset (line 4) | type MergeDataset =
  function _merge (line 19) | function _merge(value1: unknown, value2: unknown): MergeDataset {

FILE: library/src/schemas/lazy/lazy.test-d.ts
  type Schema (line 18) | type Schema = LazySchema<StringSchema<undefined>>;

FILE: library/src/schemas/lazy/lazy.ts
  type LazySchema (line 13) | interface LazySchema<
  function lazy (line 46) | function lazy<

FILE: library/src/schemas/lazy/lazyAsync.test-d.ts
  type Schema (line 18) | type Schema = LazySchemaAsync<StringSchema<undefined>>;

FILE: library/src/schemas/lazy/lazyAsync.ts
  type LazySchemaAsync (line 16) | interface LazySchemaAsync<
  function lazyAsync (line 51) | function lazyAsync<

FILE: library/src/schemas/literal/literal.test-d.ts
  type Schema (line 8) | type Schema = LiteralSchema<'foo', undefined>;
  type Schema (line 27) | type Schema = LiteralSchema<'foo', undefined>;

FILE: library/src/schemas/literal/literal.ts
  type Literal (line 12) | type Literal = bigint | boolean | number | string | symbol;
  type LiteralIssue (line 17) | interface LiteralIssue extends BaseIssue<unknown> {
  type LiteralSchema (line 35) | interface LiteralSchema<
  function literal (line 82) | function literal(

FILE: library/src/schemas/looseObject/looseObject.test-d.ts
  type Entries (line 31) | type Entries = typeof entries;
  type Schema (line 34) | type Schema = LooseObjectSchema<Entries, undefined>;
  type Schema (line 53) | type Schema = LooseObjectSchema<

FILE: library/src/schemas/looseObject/looseObject.test.ts
  type Entries (line 19) | type Entries = typeof entries;

FILE: library/src/schemas/looseObject/looseObject.ts
  type LooseObjectSchema (line 22) | interface LooseObjectSchema<
  function looseObject (line 77) | function looseObject(

FILE: library/src/schemas/looseObject/looseObjectAsync.test-d.ts
  type Entries (line 40) | type Entries = typeof entries;
  type Schema (line 43) | type Schema = LooseObjectSchemaAsync<Entries, undefined>;
  type Schema (line 64) | type Schema = LooseObjectSchemaAsync<

FILE: library/src/schemas/looseObject/looseObjectAsync.test.ts
  type Entries (line 25) | type Entries = typeof entries;

FILE: library/src/schemas/looseObject/looseObjectAsync.ts
  type LooseObjectSchemaAsync (line 23) | interface LooseObjectSchemaAsync<
  function looseObjectAsync (line 81) | function looseObjectAsync(

FILE: library/src/schemas/looseObject/types.ts
  type LooseObjectIssue (line 6) | interface LooseObjectIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/looseTuple/looseTuple.test-d.ts
  type Items (line 21) | type Items = typeof items;
  type Schema (line 24) | type Schema = LooseTupleSchema<Items, undefined>;
  type Schema (line 43) | type Schema = LooseTupleSchema<

FILE: library/src/schemas/looseTuple/looseTuple.test.ts
  type Items (line 14) | type Items = typeof items;

FILE: library/src/schemas/looseTuple/looseTuple.ts
  type LooseTupleSchema (line 18) | interface LooseTupleSchema<
  function looseTuple (line 73) | function looseTuple(

FILE: library/src/schemas/looseTuple/looseTupleAsync.test-d.ts
  type Items (line 24) | type Items = typeof items;
  type Schema (line 27) | type Schema = LooseTupleSchemaAsync<Items, undefined>;
  type Schema (line 46) | type Schema = LooseTupleSchemaAsync<

FILE: library/src/schemas/looseTuple/looseTupleAsync.test.ts
  type Items (line 20) | type Items = typeof items;

FILE: library/src/schemas/looseTuple/looseTupleAsync.ts
  type LooseTupleSchemaAsync (line 19) | interface LooseTupleSchemaAsync<
  function looseTupleAsync (line 74) | function looseTupleAsync(

FILE: library/src/schemas/looseTuple/types.ts
  type LooseTupleIssue (line 6) | interface LooseTupleIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/map/map.test-d.ts
  type Key (line 20) | type Key = typeof key;
  type Value (line 22) | type Value = typeof value;
  type Schema (line 25) | type Schema = MapSchema<Key, Value, undefined>;
  type Schema (line 44) | type Schema = MapSchema<

FILE: library/src/schemas/map/map.test.ts
  type Key (line 12) | type Key = typeof key;
  type Value (line 14) | type Value = typeof value;

FILE: library/src/schemas/map/map.ts
  type MapSchema (line 15) | interface MapSchema<
  function map (line 83) | function map(

FILE: library/src/schemas/map/mapAsync.test-d.ts
  type Key (line 20) | type Key = typeof key;
  type Value (line 22) | type Value = typeof value;
  type Schema (line 25) | type Schema = MapSchemaAsync<Key, Value, undefined>;
  type Schema (line 44) | type Schema = MapSchemaAsync<

FILE: library/src/schemas/map/mapAsync.test.ts
  type Key (line 15) | type Key = typeof key;
  type Value (line 17) | type Value = typeof value;

FILE: library/src/schemas/map/mapAsync.ts
  type MapSchemaAsync (line 17) | interface MapSchemaAsync<
  function mapAsync (line 97) | function mapAsync(

FILE: library/src/schemas/map/types.ts
  type MapIssue (line 12) | interface MapIssue extends BaseIssue<unknown> {
  type InferMapInput (line 30) | type InferMapInput<
  type InferMapOutput (line 42) | type InferMapOutput<

FILE: library/src/schemas/nan/nan.test-d.ts
  type Schema (line 8) | type Schema = NanSchema<undefined>;
  type Schema (line 25) | type Schema = NanSchema<undefined>;

FILE: library/src/schemas/nan/nan.ts
  type NanIssue (line 12) | interface NanIssue extends BaseIssue<unknown> {
  type NanSchema (line 30) | interface NanSchema<TMessage extends ErrorMessage<NanIssue> | undefined>
  function nan (line 69) | function nan(

FILE: library/src/schemas/never/never.test-d.ts
  type Schema (line 8) | type Schema = NeverSchema<undefined>;
  type Schema (line 25) | type Schema = NeverSchema<undefined>;

FILE: library/src/schemas/never/never.ts
  type NeverIssue (line 12) | interface NeverIssue extends BaseIssue<unknown> {
  type NeverSchema (line 30) | interface NeverSchema<
  function never (line 70) | function never(

FILE: library/src/schemas/nonNullable/nonNullable.test-d.ts
  type Schema (line 21) | type Schema = NonNullableSchema<
  type Schema (line 53) | type Schema = NonNullableSchema<

FILE: library/src/schemas/nonNullable/nonNullable.ts
  type NonNullableSchema (line 18) | interface NonNullableSchema<
  function nonNullable (line 73) | function nonNullable(

FILE: library/src/schemas/nonNullable/nonNullableAsync.test-d.ts
  type Schema (line 24) | type Schema = NonNullableSchemaAsync<
  type Schema (line 60) | type Schema = NonNullableSchemaAsync<

FILE: library/src/schemas/nonNullable/nonNullableAsync.ts
  type NonNullableSchemaAsync (line 20) | interface NonNullableSchemaAsync<
  function nonNullableAsync (line 84) | function nonNullableAsync(

FILE: library/src/schemas/nonNullable/types.ts
  type NonNullableIssue (line 22) | interface NonNullableIssue extends BaseIssue<unknown> {
  type InferNonNullableInput (line 40) | type InferNonNullableInput<
  type InferNonNullableOutput (line 49) | type InferNonNullableOutput<
  type InferNonNullableIssue (line 58) | type InferNonNullableIssue<

FILE: library/src/schemas/nonNullish/nonNullish.test-d.ts
  type Schema (line 18) | type Schema = NonNullishSchema<
  type Schema (line 50) | type Schema = NonNullishSchema<

FILE: library/src/schemas/nonNullish/nonNullish.ts
  type NonNullishSchema (line 18) | interface NonNullishSchema<
  function nonNullish (line 73) | function nonNullish(

FILE: library/src/schemas/nonNullish/nonNullishAsync.test-d.ts
  type Schema (line 21) | type Schema = NonNullishSchemaAsync<
  type Schema (line 57) | type Schema = NonNullishSchemaAsync<

FILE: library/src/schemas/nonNullish/nonNullishAsync.ts
  type NonNullishSchemaAsync (line 20) | interface NonNullishSchemaAsync<
  function nonNullishAsync (line 84) | function nonNullishAsync(

FILE: library/src/schemas/nonNullish/types.ts
  type NonNullishIssue (line 22) | interface NonNullishIssue extends BaseIssue<unknown> {
  type InferNonNullishInput (line 40) | type InferNonNullishInput<
  type InferNonNullishOutput (line 49) | type InferNonNullishOutput<
  type InferNonNullishIssue (line 58) | type InferNonNullishIssue<

FILE: library/src/schemas/nonOptional/nonOptional.test-d.ts
  type Schema (line 18) | type Schema = NonOptionalSchema<
  type Schema (line 50) | type Schema = NonOptionalSchema<

FILE: library/src/schemas/nonOptional/nonOptional.ts
  type NonOptionalSchema (line 18) | interface NonOptionalSchema<
  function nonOptional (line 73) | function nonOptional(

FILE: library/src/schemas/nonOptional/nonOptionalAsync.test-d.ts
  type Schema (line 21) | type Schema = NonOptionalSchemaAsync<
  type Schema (line 57) | type Schema = NonOptionalSchemaAsync<

FILE: library/src/schemas/nonOptional/nonOptionalAsync.ts
  type NonOptionalSchemaAsync (line 20) | interface NonOptionalSchemaAsync<
  function nonOptionalAsync (line 84) | function nonOptionalAsync(

FILE: library/src/schemas/nonOptional/types.ts
  type NonOptionalIssue (line 22) | interface NonOptionalIssue extends BaseIssue<unknown> {
  type InferNonOptionalInput (line 40) | type InferNonOptionalInput<
  type InferNonOptionalOutput (line 49) | type InferNonOptionalOutput<
  type InferNonOptionalIssue (line 58) | type InferNonOptionalIssue<

FILE: library/src/schemas/null/null.test-d.ts
  type Schema (line 8) | type Schema = NullSchema<undefined>;
  type Schema (line 25) | type Schema = NullSchema<undefined>;

FILE: library/src/schemas/null/null.ts
  type NullIssue (line 12) | interface NullIssue extends BaseIssue<unknown> {
  type NullSchema (line 30) | interface NullSchema<
  function null_ (line 70) | function null_(

FILE: library/src/schemas/nullable/nullable.test-d.ts
  type Schema (line 17) | type Schema = NullableSchema<StringSchema<undefined>, undefined>;
  type Schema1 (line 48) | type Schema1 = NullableSchema<StringSchema<undefined>, undefined>;
  type Schema2 (line 49) | type Schema2 = NullableSchema<StringSchema<undefined>, null>;
  type Schema3 (line 50) | type Schema3 = NullableSchema<StringSchema<undefined>, 'foo'>;
  type Schema4 (line 51) | type Schema4 = NullableSchema<StringSchema<undefined>, () => null>;
  type Schema5 (line 52) | type Schema5 = NullableSchema<StringSchema<undefined>, () => 'foo'>;
  type Schema6 (line 53) | type Schema6 = NullableSchema<
  type Schema7 (line 59) | type Schema7 = NullableSchema<
  type Schema8 (line 66) | type Schema8 = NullableSchema<
  type Input (line 75) | type Input = string | null;

FILE: library/src/schemas/nullable/nullable.ts
  type NullableSchema (line 16) | interface NullableSchema<
  function nullable (line 71) | function nullable(

FILE: library/src/schemas/nullable/nullableAsync.test-d.ts
  type Schema (line 17) | type Schema = NullableSchemaAsync<StringSchema<undefined>, undefined>;
  type Schema1 (line 60) | type Schema1 = NullableSchemaAsync<StringSchema<undefined>, undefined>;
  type Schema2 (line 61) | type Schema2 = NullableSchemaAsync<StringSchema<undefined>, null>;
  type Schema3 (line 62) | type Schema3 = NullableSchemaAsync<StringSchema<undefined>, 'foo'>;
  type Schema4 (line 63) | type Schema4 = NullableSchemaAsync<StringSchema<undefined>, () => null>;
  type Schema5 (line 64) | type Schema5 = NullableSchemaAsync<StringSchema<undefined>, () => 'foo'>;
  type Schema6 (line 65) | type Schema6 = NullableSchemaAsync<
  type Schema7 (line 69) | type Schema7 = NullableSchemaAsync<
  type Schema8 (line 73) | type Schema8 = NullableSchemaAsync<
  type Schema9 (line 79) | type Schema9 = NullableSchemaAsync<
  type Schema10 (line 86) | type Schema10 = NullableSchemaAsync<
  type Schema11 (line 93) | type Schema11 = NullableSchemaAsync<
  type Input (line 102) | type Input = string | null;

FILE: library/src/schemas/nullable/nullableAsync.ts
  type NullableSchemaAsync (line 18) | interface NullableSchemaAsync<
  function nullableAsync (line 82) | function nullableAsync(

FILE: library/src/schemas/nullable/types.ts
  type InferNullableOutput (line 13) | type InferNullableOutput<

FILE: library/src/schemas/nullish/nullish.test-d.ts
  type Schema (line 17) | type Schema = NullishSchema<StringSchema<undefined>, undefined>;
  type Schema1 (line 54) | type Schema1 = NullishSchema<StringSchema<undefined>, undefined>;
  type Schema2 (line 55) | type Schema2 = NullishSchema<StringSchema<undefined>, null>;
  type Schema3 (line 56) | type Schema3 = NullishSchema<StringSchema<undefined>, 'foo'>;
  type Schema4 (line 57) | type Schema4 = NullishSchema<StringSchema<undefined>, () => undefined>;
  type Schema5 (line 58) | type Schema5 = NullishSchema<StringSchema<undefined>, () => null>;
  type Schema6 (line 59) | type Schema6 = NullishSchema<StringSchema<undefined>, () => 'foo'>;
  type Schema7 (line 60) | type Schema7 = NullishSchema<
  type Schema8 (line 66) | type Schema8 = NullishSchema<
  type Schema9 (line 73) | type Schema9 = NullishSchema<
  type Input (line 82) | type Input = string | null | undefined;

FILE: library/src/schemas/nullish/nullish.ts
  type NullishSchema (line 16) | interface NullishSchema<
  function nullish (line 71) | function nullish(

FILE: library/src/schemas/nullish/nullishAsync.test-d.ts
  type Schema (line 17) | type Schema = NullishSchemaAsync<StringSchema<undefined>, undefined>;
  type Schema1 (line 72) | type Schema1 = NullishSchemaAsync<StringSchema<undefined>, undefined>;
  type Schema2 (line 73) | type Schema2 = NullishSchemaAsync<StringSchema<undefined>, null>;
  type Schema3 (line 74) | type Schema3 = NullishSchemaAsync<StringSchema<undefined>, 'foo'>;
  type Schema4 (line 75) | type Schema4 = NullishSchemaAsync<StringSchema<undefined>, () => undefin...
  type Schema5 (line 76) | type Schema5 = NullishSchemaAsync<StringSchema<undefined>, () => null>;
  type Schema6 (line 77) | type Schema6 = NullishSchemaAsync<StringSchema<undefined>, () => 'foo'>;
  type Schema7 (line 78) | type Schema7 = NullishSchemaAsync<
  type Schema8 (line 82) | type Schema8 = NullishSchemaAsync<
  type Schema9 (line 86) | type Schema9 = NullishSchemaAsync<
  type Schema10 (line 90) | type Schema10 = NullishSchemaAsync<
  type Schema11 (line 96) | type Schema11 = NullishSchemaAsync<
  type Schema12 (line 103) | type Schema12 = NullishSchemaAsync<
  type Schema13 (line 110) | type Schema13 = NullishSchemaAsync<
  type Input (line 119) | type Input = string | null | undefined;

FILE: library/src/schemas/nullish/nullishAsync.ts
  type NullishSchemaAsync (line 18) | interface NullishSchemaAsync<
  function nullishAsync (line 82) | function nullishAsync(

FILE: library/src/schemas/nullish/types.ts
  type InferNullishOutput (line 13) | type InferNullishOutput<

FILE: library/src/schemas/number/number.test-d.ts
  type Schema (line 8) | type Schema = NumberSchema<undefined>;
  type Schema (line 25) | type Schema = NumberSchema<undefined>;

FILE: library/src/schemas/number/number.ts
  type NumberIssue (line 12) | interface NumberIssue extends BaseIssue<unknown> {
  type NumberSchema (line 30) | interface NumberSchema<
  function number (line 70) | function number(

FILE: library/src/schemas/object/object.test-d.ts
  type Entries (line 30) | type Entries = typeof entries;
  type Schema (line 33) | type Schema = ObjectSchema<Entries, undefined>;
  type Schema (line 52) | type Schema = ObjectSchema<

FILE: library/src/schemas/object/object.test.ts
  type Entries (line 18) | type Entries = typeof entries;

FILE: library/src/schemas/object/object.ts
  type ObjectSchema (line 18) | interface ObjectSchema<
  function object (line 83) | function object(

FILE: library/src/schemas/object/objectAsync.test-d.ts
  type Entries (line 36) | type Entries = typeof entries;
  type Schema (line 39) | type Schema = ObjectSchemaAsync<Entries, undefined>;
  type Schema (line 58) | type Schema = ObjectSchemaAsync<

FILE: library/src/schemas/object/objectAsync.test.ts
  type Entries (line 21) | type Entries = typeof entries;

FILE: library/src/schemas/object/objectAsync.ts
  type ObjectSchemaAsync (line 19) | interface ObjectSchemaAsync<
  function objectAsync (line 84) | function objectAsync(

FILE: library/src/schemas/object/types.ts
  type ObjectIssue (line 6) | interface ObjectIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/objectWithRest/objectWithRest.test-d.ts
  type Entries (line 36) | type Entries = typeof entries;
  type Rest (line 38) | type Rest = typeof rest;
  type Schema (line 41) | type Schema = ObjectWithRestSchema<Entries, Rest, undefined>;
  type Schema (line 62) | type Schema = ObjectWithRestSchema<

FILE: library/src/schemas/objectWithRest/objectWithRest.test.ts
  type Entries (line 23) | type Entries = typeof entries;
  type Rest (line 25) | type Rest = typeof rest;

FILE: library/src/schemas/objectWithRest/objectWithRest.ts
  type ObjectWithRestSchema (line 26) | interface ObjectWithRestSchema<
  function objectWithRest (line 97) | function objectWithRest(

FILE: library/src/schemas/objectWithRest/objectWithRestAsync.test-d.ts
  type Entries (line 45) | type Entries = typeof entries;
  type Rest (line 47) | type Rest = typeof rest;
  type Schema (line 50) | type Schema = ObjectWithRestSchemaAsync<Entries, Rest, undefined>;
  type Schema (line 71) | type Schema = ObjectWithRestSchemaAsync<

FILE: library/src/schemas/objectWithRest/objectWithRestAsync.test.ts
  type Entries (line 29) | type Entries = typeof entries;
  type Rest (line 31) | type Rest = typeof rest;

FILE: library/src/schemas/objectWithRest/objectWithRestAsync.ts
  type ObjectWithRestSchemaAsync (line 28) | interface ObjectWithRestSchemaAsync<
  function objectWithRestAsync (line 105) | function objectWithRestAsync(

FILE: library/src/schemas/objectWithRest/types.ts
  type ObjectWithRestIssue (line 6) | interface ObjectWithRestIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/optional/optional.test-d.ts
  type Schema (line 17) | type Schema = OptionalSchema<StringSchema<undefined>, undefined>;
  type Schema1 (line 42) | type Schema1 = OptionalSchema<StringSchema<undefined>, undefined>;
  type Schema2 (line 43) | type Schema2 = OptionalSchema<StringSchema<undefined>, 'foo'>;
  type Schema3 (line 44) | type Schema3 = OptionalSchema<StringSchema<undefined>, () => undefined>;
  type Schema4 (line 45) | type Schema4 = OptionalSchema<StringSchema<undefined>, () => 'foo'>;
  type Schema5 (line 46) | type Schema5 = OptionalSchema<
  type Schema6 (line 52) | type Schema6 = OptionalSchema<
  type Schema7 (line 59) | type Schema7 = OptionalSchema<
  type Input (line 68) | type Input = string | undefined;

FILE: library/src/schemas/optional/optional.ts
  type OptionalSchema (line 16) | interface OptionalSchema<
  function optional (line 71) | function optional(

FILE: library/src/schemas/optional/optionalAsync.test-d.ts
  type Schema (line 17) | type Schema = OptionalSchemaAsync<StringSchema<undefined>, undefined>;
  type Schema1 (line 56) | type Schema1 = OptionalSchemaAsync<StringSchema<undefined>, undefined>;
  type Schema2 (line 57) | type Schema2 = OptionalSchemaAsync<StringSchema<undefined>, 'foo'>;
  type Schema3 (line 58) | type Schema3 = OptionalSchemaAsync<
  type Schema4 (line 62) | type Schema4 = OptionalSchemaAsync<StringSchema<undefined>, () => 'foo'>;
  type Schema5 (line 63) | type Schema5 = OptionalSchemaAsync<
  type Schema6 (line 67) | type Schema6 = OptionalSchemaAsync<
  type Schema7 (line 71) | type Schema7 = OptionalSchemaAsync<
  type Schema8 (line 77) | type Schema8 = OptionalSchemaAsync<
  type Schema9 (line 84) | type Schema9 = OptionalSchemaAsync<
  type Schema10 (line 91) | type Schema10 = OptionalSchemaAsync<
  type Input (line 100) | type Input = string | undefined;

FILE: library/src/schemas/optional/optionalAsync.ts
  type OptionalSchemaAsync (line 18) | interface OptionalSchemaAsync<
  function optionalAsync (line 82) | function optionalAsync(

FILE: library/src/schemas/optional/types.ts
  type InferOptionalOutput (line 13) | type InferOptionalOutput<

FILE: library/src/schemas/picklist/picklist.test-d.ts
  type Options (line 11) | type Options = typeof options;
  type Schema (line 15) | type Schema = PicklistSchema<Options, undefined>;
  type Schema (line 34) | type Schema = PicklistSchema<Options, undefined>;

FILE: library/src/schemas/picklist/picklist.test.ts
  type Options (line 11) | type Options = typeof options;

FILE: library/src/schemas/picklist/picklist.ts
  type PicklistOptions (line 18) | type PicklistOptions = MaybeReadonly<(string | number | bigint)[]>;
  type PicklistIssue (line 23) | interface PicklistIssue extends BaseIssue<unknown> {
  type PicklistSchema (line 41) | interface PicklistSchema<
  function picklist (line 88) | function picklist(

FILE: library/src/schemas/promise/promise.test-d.ts
  type Schema (line 8) | type Schema = PromiseSchema<undefined>;
  type Schema (line 27) | type Schema = PromiseSchema<undefined>;

FILE: library/src/schemas/promise/promise.ts
  type PromiseIssue (line 12) | interface PromiseIssue extends BaseIssue<unknown> {
  type PromiseSchema (line 30) | interface PromiseSchema<
  function promise (line 70) | function promise(

FILE: library/src/schemas/record/record.test-d.ts
  type Key (line 23) | type Key = typeof key;
  type Value (line 25) | type Value = typeof value;
  type Schema (line 28) | type Schema = RecordSchema<Key, Value, undefined>;
  type Schema1 (line 47) | type Schema1 = RecordSchema<
  type Schema2 (line 52) | type Schema2 = RecordSchema<
  type Schema3 (line 57) | type Schema3 = RecordSchema<

FILE: library/src/schemas/record/record.test.ts
  type Key (line 14) | type Key = typeof key;
  type Value (line 16) | type Value = typeof value;

FILE: library/src/schemas/record/record.ts
  type RecordSchema (line 23) | interface RecordSchema<
  function record (line 99) | function record(

FILE: library/src/schemas/record/recordAsync.test-d.ts
  type Key (line 23) | type Key = typeof key;
  type Value (line 25) | type Value = typeof value;
  type Schema (line 28) | type Schema = RecordSchemaAsync<Key, Value, undefined>;
  type Schema1 (line 47) | type Schema1 = RecordSchemaAsync<
  type Schema2 (line 52) | type Schema2 = RecordSchemaAsync<
  type Schema3 (line 57) | type Schema3 = RecordSchemaAsync<

FILE: library/src/schemas/record/recordAsync.test.ts
  type Key (line 17) | type Key = typeof key;
  type Value (line 19) | type Value = typeof value;

FILE: library/src/schemas/record/recordAsync.ts
  type RecordSchemaAsync (line 25) | interface RecordSchemaAsync<
  function recordAsync (line 105) | function recordAsync(

FILE: library/src/schemas/record/types.ts
  type RecordIssue (line 19) | interface RecordIssue extends BaseIssue<unknown> {
  type IsLiteral (line 37) | type IsLiteral<TKey extends string | number | symbol> = string extends TKey
  type OptionalKeys (line 50) | type OptionalKeys<TObject extends Record<string | number | symbol, unkno...
  type WithQuestionMarks (line 66) | type WithQuestionMarks<
  type WithReadonly (line 73) | type WithReadonly<
  type InferRecordInput (line 90) | type InferRecordInput<
  type InferRecordOutput (line 102) | type InferRecordOutput<

FILE: library/src/schemas/set/set.test-d.ts
  type Value (line 15) | type Value = typeof value;
  type Schema (line 18) | type Schema = SetSchema<Value, undefined>;
  type Schema (line 37) | type Schema = SetSchema<

FILE: library/src/schemas/set/set.test.ts
  type Value (line 11) | type Value = typeof value;

FILE: library/src/schemas/set/set.ts
  type SetSchema (line 15) | interface SetSchema<
  function set (line 70) | function set(

FILE: library/src/schemas/set/setAsync.test-d.ts
  type Value (line 15) | type Value = typeof value;
  type Schema (line 18) | type Schema = SetSchemaAsync<Value, undefined>;
  type Schema (line 37) | type Schema = SetSchemaAsync<

FILE: library/src/schemas/set/setAsync.test.ts
  type Value (line 14) | type Value = typeof value;

FILE: library/src/schemas/set/setAsync.ts
  type SetSchemaAsync (line 17) | interface SetSchemaAsync<
  function setAsync (line 78) | function setAsync(

FILE: library/src/schemas/set/types.ts
  type SetIssue (line 12) | interface SetIssue extends BaseIssue<unknown> {
  type InferSetInput (line 30) | type InferSetInput<
  type InferSetOutput (line 39) | type InferSetOutput<

FILE: library/src/schemas/strictObject/strictObject.test-d.ts
  type Entries (line 31) | type Entries = typeof entries;
  type Schema (line 34) | type Schema = StrictObjectSchema<Entries, undefined>;
  type Schema (line 53) | type Schema = StrictObjectSchema<

FILE: library/src/schemas/strictObject/strictObject.test.ts
  type Entries (line 19) | type Entries = typeof entries;

FILE: library/src/schemas/strictObject/strictObject.ts
  type StrictObjectSchema (line 18) | interface StrictObjectSchema<
  function strictObject (line 73) | function strictObject(

FILE: library/src/schemas/strictObject/strictObjectAsync.test-d.ts
  type Entries (line 40) | type Entries = typeof entries;
  type Schema (line 43) | type Schema = StrictObjectSchemaAsync<Entries, undefined>;
  type Schema (line 64) | type Schema = StrictObjectSchemaAsync<

FILE: library/src/schemas/strictObject/strictObjectAsync.test.ts
  type Entries (line 25) | type Entries = typeof entries;

FILE: library/src/schemas/strictObject/strictObjectAsync.ts
  type StrictObjectSchemaAsync (line 19) | interface StrictObjectSchemaAsync<
  function strictObjectAsync (line 77) | function strictObjectAsync(

FILE: library/src/schemas/strictObject/types.ts
  type StrictObjectIssue (line 6) | interface StrictObjectIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/strictTuple/strictTuple.test-d.ts
  type Items (line 21) | type Items = typeof items;
  type Schema (line 24) | type Schema = StrictTupleSchema<Items, undefined>;
  type Schema (line 43) | type Schema = StrictTupleSchema<

FILE: library/src/schemas/strictTuple/strictTuple.test.ts
  type Items (line 14) | type Items = typeof items;

FILE: library/src/schemas/strictTuple/strictTuple.ts
  type StrictTupleSchema (line 18) | interface StrictTupleSchema<
  function strictTuple (line 73) | function strictTuple(

FILE: library/src/schemas/strictTuple/strictTupleAsync.test-d.ts
  type Items (line 24) | type Items = typeof items;
  type Schema (line 27) | type Schema = StrictTupleSchemaAsync<Items, undefined>;
  type Schema (line 46) | type Schema = StrictTupleSchemaAsync<

FILE: library/src/schemas/strictTuple/strictTupleAsync.test.ts
  type Items (line 20) | type Items = typeof items;

FILE: library/src/schemas/strictTuple/strictTupleAsync.ts
  type StrictTupleSchemaAsync (line 19) | interface StrictTupleSchemaAsync<
  function strictTupleAsync (line 74) | function strictTupleAsync(

FILE: library/src/schemas/strictTuple/types.ts
  type StrictTupleIssue (line 6) | interface StrictTupleIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/string/string.test-d.ts
  type Schema (line 8) | type Schema = StringSchema<undefined>;
  type Schema (line 25) | type Schema = StringSchema<undefined>;

FILE: library/src/schemas/string/string.ts
  type StringIssue (line 12) | interface StringIssue extends BaseIssue<unknown> {
  type StringSchema (line 30) | interface StringSchema<
  function string (line 70) | function string(

FILE: library/src/schemas/symbol/symbol.test-d.ts
  type Schema (line 8) | type Schema = SymbolSchema<undefined>;
  type Schema (line 25) | type Schema = SymbolSchema<undefined>;

FILE: library/src/schemas/symbol/symbol.ts
  type SymbolIssue (line 12) | interface SymbolIssue extends BaseIssue<unknown> {
  type SymbolSchema (line 30) | interface SymbolSchema<
  function symbol (line 70) | function symbol(

FILE: library/src/schemas/tuple/tuple.test-d.ts
  type Items (line 21) | type Items = typeof items;
  type Schema (line 24) | type Schema = TupleSchema<Items, undefined>;
  type Schema (line 43) | type Schema = TupleSchema<

FILE: library/src/schemas/tuple/tuple.test.ts
  type Items (line 14) | type Items = typeof items;

FILE: library/src/schemas/tuple/tuple.ts
  type TupleSchema (line 18) | interface TupleSchema<
  function tuple (line 83) | function tuple(

FILE: library/src/schemas/tuple/tupleAsync.test-d.ts
  type Items (line 21) | type Items = typeof items;
  type Schema (line 24) | type Schema = TupleSchemaAsync<Items, undefined>;
  type Schema (line 43) | type Schema = TupleSchemaAsync<

FILE: library/src/schemas/tuple/tupleAsync.test.ts
  type Items (line 17) | type Items = typeof items;

FILE: library/src/schemas/tuple/tupleAsync.ts
  type TupleSchemaAsync (line 19) | interface TupleSchemaAsync<
  function tupleAsync (line 84) | function tupleAsync(

FILE: library/src/schemas/tuple/types.ts
  type TupleIssue (line 6) | interface TupleIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/tupleWithRest/tupleWithRest.test-d.ts
  type Items (line 26) | type Items = typeof items;
  type Rest (line 28) | type Rest = typeof rest;
  type Schema (line 31) | type Schema = TupleWithRestSchema<Items, Rest, undefined>;
  type Schema (line 52) | type Schema = TupleWithRestSchema<

FILE: library/src/schemas/tupleWithRest/tupleWithRest.test.ts
  type Items (line 16) | type Items = typeof items;
  type Rest (line 18) | type Rest = typeof rest;

FILE: library/src/schemas/tupleWithRest/tupleWithRest.ts
  type TupleWithRestSchema (line 21) | interface TupleWithRestSchema<
  function tupleWithRest (line 89) | function tupleWithRest(

FILE: library/src/schemas/tupleWithRest/tupleWithRestAsync.test-d.ts
  type Items (line 29) | type Items = typeof items;
  type Rest (line 31) | type Rest = typeof rest;
  type Schema (line 34) | type Schema = TupleWithRestSchemaAsync<Items, Rest, undefined>;
  type Schema (line 55) | type Schema = TupleWithRestSchemaAsync<

FILE: library/src/schemas/tupleWithRest/tupleWithRestAsync.test.ts
  type Items (line 22) | type Items = typeof items;
  type Rest (line 24) | type Rest = typeof rest;

FILE: library/src/schemas/tupleWithRest/tupleWithRestAsync.ts
  type TupleWithRestSchemaAsync (line 23) | interface TupleWithRestSchemaAsync<
  function tupleWithRestAsync (line 100) | function tupleWithRestAsync(

FILE: library/src/schemas/tupleWithRest/types.ts
  type TupleWithRestIssue (line 6) | interface TupleWithRestIssue extends BaseIssue<unknown> {

FILE: library/src/schemas/undefined/undefined.test-d.ts
  type Schema (line 12) | type Schema = UndefinedSchema<undefined>;
  type Schema (line 31) | type Schema = UndefinedSchema<undefined>;

FILE: library/src/schemas/undefined/undefined.ts
  type UndefinedIssue (line 12) | interface UndefinedIssue extends BaseIssue<unknown> {
  type UndefinedSchema (line 30) | interface UndefinedSchema<
  function undefined_ (line 70) | function undefined_(

FILE: library/src/schemas/undefinedable/types.ts
  type InferUndefinedableOutput (line 13) | type InferUndefinedableOutput<

FILE: library/src/schemas/undefinedable/undefinedable.test-d.ts
  type Schema (line 15) | type Schema = UndefinedableSchema<StringSchema<undefined>, undefined>;
  type Schema1 (line 40) | type Schema1 = UndefinedableSchema<StringSchema<undefined>, undefined>;
  type Schema2 (line 41) | type Schema2 = UndefinedableSchema<StringSchema<undefined>, 'foo'>;
  type Schema3 (line 42) | type Schema3 = UndefinedableSchema<
  type Schema4 (line 46) | type Schema4 = UndefinedableSchema<StringSchema<undefined>, () => 'foo'>;
  type Schema5 (line 47) | type Schema5 = UndefinedableSchema<
  type Input (line 55) | type Input = string | undefined;

FILE: library/src/schemas/undefinedable/undefinedable.ts
  type UndefinedableSchema (line 16) | interface UndefinedableSchema<
  function undefinedable (line 74) | function undefinedable(

FILE: library/src/schemas/undefinedable/undefinedableAsync.test-d.ts
  type Schema (line 18) | type Schema = UndefinedableSchemaAsync<
  type Schema1 (line 67) | type Schema1 = UndefinedableSchemaAsync<StringSchema<undefined>, undefin...
  type Schema2 (line 68) | type Schema2 = UndefinedableSchemaAsync<StringSchema<undefined>, 'foo'>;
  type Schema3 (line 69) | type Schema3 = UndefinedableSchemaAsync<
  type Schema4 (line 73) | type Schema4 = UndefinedableSchemaAsync<
  type Schema5 (line 77) | type Schema5 = UndefinedableSchemaAsync<
  type Schema6 (line 81) | type Schema6 = UndefinedableSchemaAsync<
  type Schema7 (line 85) | type Schema7 = UndefinedableSchemaAsync<
  type Input (line 93) | type Input = string | undefined;

FILE: library/src/schemas/undefinedable/undefinedableAsync.ts
  type UndefinedableSchemaAsync (line 18) | interface UndefinedableSchemaAsync<
  function undefinedableAsync (line 82) | function undefinedableAsync(

FILE: library/src/schemas/union/types.ts
  type UnionIssue (line 6) | interface UnionIssue<TSubIssue extends BaseIssue<unknown>>

FILE: library/src/schemas/union/union.test-d.ts
  type Options (line 10) | type Options = typeof options;
  type Schema (line 14) | type Schema = UnionSchema<Options, undefined>;
  type Schema (line 33) | type Schema = UnionSchema<Options, undefined>;

FILE: library/src/schemas/union/union.test.ts
  type Options (line 19) | type Options = typeof options;
  type Schema (line 83) | type Schema = typeof schema;
  type Schema (line 103) | type Schema = typeof schema;

FILE: library/src/schemas/union/union.ts
  type UnionOptions (line 25) | type UnionOptions = MaybeReadonly<
  type UnionSchema (line 32) | interface UnionSchema<
  function union (line 87) | function union(

FILE: library/src/schemas/union/unionAsync.test-d.ts
  type Options (line 10) | type Options = typeof options;
  type Schema (line 14) | type Schema = UnionSchemaAsync<Options, undefined>;
  type Schema (line 33) | type Schema = UnionSchemaAsync<Options, undefined>;

FILE: library/src/schemas/union/unionAsync.test.ts
  type Options (line 22) | type Options = typeof options;
  type Schema (line 85) | type Schema = typeof schema;
  type Schema (line 108) | type Schema = typeof schema;

FILE: library/src/schemas/union/unionAsync.ts
  type UnionOptionsAsync (line 27) | type UnionOptionsAsync = MaybeReadonly<
  type UnionSchemaAsync (line 37) | interface UnionSchemaAsync<
  function unionAsync (line 92) | function unionAsync(

FILE: library/src/schemas/union/utils/_subIssues/_subIssues.ts
  function _subIssues (line 13) | function _subIssues(

FILE: library/src/schemas/unknown/unknown.ts
  type UnknownSchema (line 7) | interface UnknownSchema extends BaseSchema<unknown, unknown, never> {
  function unknown (line 28) | function unknown(): UnknownSchema {

FILE: library/src/schemas/variant/types.ts
  type VariantIssue (line 39) | interface VariantIssue extends BaseIssue<unknown> {
  type VariantOptionSchema (line 57) | interface VariantOptionSchema<TKey extends string>
  type VariantOptionSchemaAsync (line 69) | interface VariantOptionSchemaAsync<TKey extends string>
  type VariantObjectEntries (line 81) | type VariantObjectEntries<TKey extends string> = Record<
  type VariantObjectEntriesAsync (line 90) | type VariantObjectEntriesAsync<TKey extends string> = Record<
  type VariantOption (line 102) | type VariantOption<TKey extends string> =
  type VariantOptionAsync (line 125) | type VariantOptionAsync<TKey extends string> =
  type VariantOptions (line 149) | type VariantOptions<TKey extends string> = MaybeReadonly<
  type VariantOptionsAsync (line 156) | type VariantOptionsAsync<TKey extends string> = MaybeReadonly<
  type InferVariantIssue (line 163) | type InferVariantIssue<

FILE: library/src/schemas/variant/variant.test-d.ts
  type Key (line 11) | type Key = typeof key;
  type Options (line 16) | type Options = typeof options;
  type Schema (line 20) | type Schema = VariantSchema<Key, Options, undefined>;
  type Schema (line 39) | type Schema = VariantSchema<Key, Options, undefined>;

FILE: library/src/schemas/variant/variant.test.ts
  type Key (line 28) | type Key = typeof key;
  type Options (line 33) | type Options = typeof options;
  type Schema (line 840) | type Schema = typeof schema;
  type Schema (line 876) | type Schema = typeof schema;
  type Schema (line 912) | type Schema = typeof schema;

FILE: library/src/schemas/variant/variant.ts
  type VariantSchema (line 24) | interface VariantSchema<
  function variant (line 92) | function variant(

FILE: library/src/schemas/variant/variantAsync.test-d.ts
  type Key (line 14) | type Key = typeof key;
  type Options (line 19) | type Options = typeof options;
  type Schema (line 23) | type Schema = VariantSchemaAsync<Key, Options, undefined>;
  type Schema (line 44) | type Schema = VariantSchemaAsync<Key, Options, undefined>;

FILE: library/src/schemas/variant/variantAsync.test.ts
  type Key (line 28) | type Key = typeof key;
  type Options (line 33) | type Options = typeof options;
  type Schema (line 867) | type Schema = typeof schema;
  type Schema (line 903) | type Schema = typeof schema;
  type Schema (line 939) | type Schema = typeof schema;

FILE: library/src/schemas/variant/variantAsync.ts
  type VariantSchemaAsync (line 26) | interface VariantSchemaAsync<
  function variantAsync (line 94) | function variantAsync(

FILE: library/src/schemas/void/void.test-d.ts
  type Schema (line 8) | type Schema = VoidSchema<undefined>;
  type Schema (line 25) | type Schema = VoidSchema<undefined>;

FILE: library/src/schemas/void/void.ts
  type VoidIssue (line 12) | interface VoidIssue extends BaseIssue<unknown> {
  type VoidSchema (line 30) | interface VoidSchema<
  function void_ (line 70) | function void_(

FILE: library/src/storages/globalConfig/globalConfig.ts
  type GlobalConfig (line 6) | type GlobalConfig = Omit<Config<never>, 'message'>;
  function setGlobalConfig (line 16) | function setGlobalConfig(config: GlobalConfig): void {
  function getGlobalConfig (line 28) | function getGlobalConfig<const TIssue extends BaseIssue<unknown>>(
  function deleteGlobalConfig (line 44) | function deleteGlobalConfig(): void {

FILE: library/src/storages/globalMessage/globalMessage.ts
  function setGlobalMessage (line 12) | function setGlobalMessage(
  function getGlobalMessage (line 28) | function getGlobalMessage(
  function deleteGlobalMessage (line 39) | function deleteGlobalMessage(lang?: string): void {

FILE: library/src/storages/schemaMessage/schemaMessage.ts
  function setSchemaMessage (line 12) | function setSchemaMessage(
  function getSchemaMessage (line 28) | function getSchemaMessage(
  function deleteSchemaMessage (line 39) | function deleteSchemaMessage(lang?: string): void {

FILE: library/src/storages/specificMessage/specificMessage.ts
  type Reference (line 16) | type Reference = (
  function setSpecificMessage (line 40) | function setSpecificMessage<const TReference extends Reference>(
  function getSpecificMessage (line 59) | function getSpecificMessage<const TReference extends Reference>(
  function deleteSpecificMessage (line 72) | function deleteSpecificMessage(

FILE: library/src/types/config.ts
  type Config (line 7) | interface Config<TIssue extends BaseIssue<unknown>> {

FILE: library/src/types/dataset.ts
  type UnknownDataset (line 6) | interface UnknownDataset {
  type SuccessDataset (line 24) | interface SuccessDataset<TValue> {
  type PartialDataset (line 42) | interface PartialDataset<TValue, TIssue extends BaseIssue<unknown>> {
  type FailureDataset (line 60) | interface FailureDataset<TIssue extends BaseIssue<unknown>> {
  type OutputDataset (line 78) | type OutputDataset<TValue, TIssue extends BaseIssue<unknown>> =

FILE: library/src/types/infer.ts
  type InferInput (line 14) | type InferInput<
  type InferOutput (line 28) | type InferOutput<
  type InferIssue (line 42) | type InferIssue<

FILE: library/src/types/issue.ts
  type ArrayPathItem (line 81) | interface ArrayPathItem {
  type MapPathItem (line 107) | interface MapPathItem {
  type ObjectPathItem (line 133) | interface ObjectPathItem {
  type SetPathItem (line 159) | interface SetPathItem {
  type UnknownPathItem (line 185) | interface UnknownPathItem {
  type IssuePathItem (line 211) | type IssuePathItem =
  type BaseIssue (line 221) | interface BaseIssue<TInput> extends Config<BaseIssue<TInput>> {
  type GenericIssue (line 263) | type GenericIssue<TInput = unknown> = BaseIssue<TInput>;
  type DotPath (line 268) | type DotPath<
  type ObjectPath (line 280) | type ObjectPath<TEntries extends ObjectEntries | ObjectEntriesAsync> = {
  type TupleKeys (line 287) | type TupleKeys<TItems extends TupleItems | TupleItemsAsync> = Exclude<
  type TuplePath (line 295) | type TuplePath<TItems extends TupleItems | TupleItemsAsync> = {
  type IssueDotPath (line 306) | type IssueDotPath<

FILE: library/src/types/metadata.ts
  type BaseMetadata (line 4) | interface BaseMetadata<TInput> {
  type GenericMetadata (line 39) | type GenericMetadata<TInput = any> = BaseMetadata<TInput>;

FILE: library/src/types/object.ts
  type OptionalEntrySchema (line 37) | type OptionalEntrySchema =
  type OptionalEntrySchemaAsync (line 48) | type OptionalEntrySchemaAsync =
  type ObjectEntries (line 68) | interface ObjectEntries {
  type ObjectEntriesAsync (line 81) | interface ObjectEntriesAsync {
  type ObjectKeys (line 101) | type ObjectKeys<
  type InferEntriesInput (line 140) | type InferEntriesInput<TEntries extends ObjectEntries | ObjectEntriesAsy...
  type InferEntriesOutput (line 147) | type InferEntriesOutput<TEntries extends ObjectEntries | ObjectEntriesAs...
  type OptionalInputKeys (line 154) | type OptionalInputKeys<TEntries extends ObjectEntries | ObjectEntriesAsy...
  type OptionalOutputKeys (line 165) | type OptionalOutputKeys<TEntries extends ObjectEntries | ObjectEntriesAs...
  type InputWithQuestionMarks (line 178) | type InputWithQuestionMarks<
  type OutputWithQuestionMarks (line 186) | type OutputWithQuestionMarks<
  type ReadonlyOutputKeys (line 194) | type ReadonlyOutputKeys<TEntries extends ObjectEntries | ObjectEntriesAs...
  type OutputWithReadonly (line 208) | type OutputWithReadonly<
  type InferObjectInput (line 220) | type InferObjectInput<
  type InferObjectOutput (line 227) | type InferObjectOutput<
  type InferObjectIssue (line 239) | type InferObjectIssue<

FILE: library/src/types/other.ts
  type ErrorMessage (line 11) | type ErrorMessage<TIssue extends BaseIssue<unknown>> =
  type Default (line 18) | type Default<
  type DefaultAsync (line 32) | type DefaultAsync<
  type DefaultValue (line 48) | type DefaultValue<

FILE: library/src/types/pipe.ts
  type PipeAction (line 13) | type PipeAction<TInput, TOutput, TIssue extends BaseIssue<unknown>> =
  type PipeActionAsync (line 21) | type PipeActionAsync<
  type PipeItem (line 32) | type PipeItem<TInput, TOutput, TIssue extends BaseIssue<unknown>> =
  type PipeItemAsync (line 39) | type PipeItemAsync<TInput, TOutput, TIssue extends BaseIssue<unknown>> =
  type SchemaWithoutPipe (line 46) | type SchemaWithoutPipe<
  type GenericPipeAction (line 55) | type GenericPipeAction<
  type GenericPipeActionAsync (line 65) | type GenericPipeActionAsync<
  type GenericPipeItem (line 75) | type GenericPipeItem<
  type GenericPipeItemAsync (line 85) | type GenericPipeItemAsync<

FILE: library/src/types/schema.ts
  type BaseSchema (line 9) | interface BaseSchema<
  type BaseSchemaAsync (line 74) | interface BaseSchemaAsync<
  type GenericSchema (line 114) | type GenericSchema<
  type GenericSchemaAsync (line 123) | type GenericSchemaAsync<

FILE: library/src/types/standard.ts
  type StandardProps (line 4) | interface StandardProps<TInput, TOutput> {
  type StandardResult (line 28) | type StandardResult<TOutput> =
  type StandardSuccessResult (line 35) | interface StandardSuccessResult<TOutput> {
  type StandardFailureResult (line 49) | interface StandardFailureResult {
  type StandardIssue (line 59) | interface StandardIssue {
  type StandardPathItem (line 73) | interface StandardPathItem {
  type StandardTypes (line 83) | interface StandardTypes<TInput, TOutput> {

FILE: library/src/types/transformation.ts
  type BaseTransformation (line 8) | interface BaseTransformation<
  type BaseTransformationAsync (line 64) | interface BaseTransformationAsync<
  type GenericTransformation (line 105) | type GenericTransformation<
  type GenericTransformationAsync (line 115) | type GenericTransformationAsync<

FILE: library/src/types/tuple.ts
  type TupleItems (line 9) | type TupleItems = MaybeReadonly<
  type TupleItemsAsync (line 16) | type TupleItemsAsync = MaybeReadonly<
  type InferTupleInput (line 26) | type InferTupleInput<TItems extends TupleItems | TupleItemsAsync> = {
  type InferTupleOutput (line 33) | type InferTupleOutput<TItems extends TupleItems | TupleItemsAsync> = {
  type InferTupleIssue (line 40) | type InferTupleIssue<TItems extends TupleItems | TupleItemsAsync> =

FILE: library/src/types/utils.ts
  type IsAny (line 4) | type IsAny<Type> = 0 extends 1 & Type ? true : false;
  type IsNever (line 9) | type IsNever<Type> = [Type] extends [never] ? true : false;
  type NonNullable (line 14) | type NonNullable<TValue> = TValue extends null ? never : TValue;
  type NonNullish (line 19) | type NonNullish<TValue> = TValue extends null | undefined
  type NonOptional (line 26) | type NonOptional<TValue> = TValue extends undefined ? never : TValue;
  type MaybeReadonly (line 31) | type MaybeReadonly<TValue> = TValue | Readonly<TValue>;
  type DeepReadonly (line 36) | type DeepReadonly<TValue> = TValue extends
  type MaybeDeepReadonly (line 45) | type MaybeDeepReadonly<TValue> = TValue | DeepReadonly<TValue>;
  type MaybePromise (line 50) | type MaybePromise<TValue> = TValue | Promise<TValue>;
  type Prettify (line 58) | type Prettify<TObject> = { [TKey in keyof TObject]: TObject[TKey] } & {};
  type MarkOptional (line 63) | type MarkOptional<TObject, TKeys extends keyof TObject> =
  type Merge (line 72) | type Merge<TFirstObject, TSecondObject> = Omit<
  type FirstTupleItem (line 81) | type FirstTupleItem<TTuple extends readonly [unknown, ...unknown[]]> =
  type LastTupleItem (line 87) | type LastTupleItem<TTuple extends readonly [unknown, ...unknown[]]> =
  type UnionToIntersect (line 95) | type UnionToIntersect<TUnion> =
  type UnionToTupleHelper (line 108) | type UnionToTupleHelper<TUnion, TResult extends unknown[]> =
  type UnionToTuple (line 118) | type UnionToTuple<TUnion> = UnionToTupleHelper<TUnion, []>;

FILE: library/src/types/validation.ts
  type BaseValidation (line 8) | interface BaseValidation<
  type BaseValidationAsync (line 68) | interface BaseValidationAsync<
  type GenericValidation (line 109) | type GenericValidation<
  type GenericValidationAsync (line 119) | type GenericValidationAsync<

FILE: library/src/utils/ValiError/ValiError.test-d.ts
  type Issue (line 27) | type Issue = StringIssue | MinLengthIssue<string, 10> | UrlIssue<string>;

FILE: library/src/utils/ValiError/ValiError.ts
  class ValiError (line 11) | class ValiError<
    method constructor (line 27) | constructor(issues: [InferIssue<TSchema>, ...InferIssue<TSchema>[]]) {

FILE: library/src/utils/_addIssue/_addIssue.test.ts
  type MinLength1Issue (line 39) | type MinLength1Issue = MinLengthIssue<string, 1>;

FILE: library/src/utils/_addIssue/_addIssue.ts
  type Context (line 27) | type Context =
  type Other (line 42) | interface Other<TContext extends Context> {
  function _addIssue (line 64) | function _addIssue<const TContext extends Context>(

FILE: library/src/utils/_cloneDataset/_cloneDataset.ts
  function _cloneDataset (line 16) | function _cloneDataset<TValue, TIssue extends BaseIssue<unknown>>(

FILE: library/src/utils/_getByteCount/_getByteCount.ts
  function _getByteCount (line 13) | function _getByteCount(input: string): number {

FILE: library/src/utils/_getGraphemeCount/_getGraphemeCount.ts
  function _getGraphemeCount (line 13) | function _getGraphemeCount(input: string): number {

FILE: library/src/utils/_getLastMetadata/_getLastMetadata.ts
  type MetadataAction (line 17) | type MetadataAction =
  type Schema (line 24) | type Schema =
  function _getLastMetadata (line 60) | function _getLastMetadata(

FILE: library/src/utils/_getStandardProps/_getStandardProps.ts
  function _getStandardProps (line 20) | function _getStandardProps<

FILE: library/src/utils/_getWordCount/_getWordCount.ts
  function _getWordCount (line 14) | function _getWordCount(

FILE: library/src/utils/_isLuhnAlgo/_isLuhnAlgo.ts
  constant NON_DIGIT_REGEX (line 4) | const NON_DIGIT_REGEX = /\D/gu;
  function _isLuhnAlgo (line 16) | function _isLuhnAlgo(input: string): boolean {

FILE: library/src/utils/_isValidObjectKey/_isValidObjectKey.ts
  function _isValidObjectKey (line 13) | function _isValidObjectKey(object: object, key: string): boolean {

FILE: library/src/utils/_joinExpects/_joinExpects.ts
  function _joinExpects (line 12) | function _joinExpects(values: string[], separator: '&' | '|'): string {

FILE: library/src/utils/_stringify/_stringify.test.ts
  function EmptyObject (line 51) | function EmptyObject() {}

FILE: library/src/utils/_stringify/_stringify.ts
  function _stringify (line 11) | function _stringify(input: unknown): string {

FILE: library/src/utils/entriesFromList/entriesFromList.ts
  function entriesFromList (line 16) | function entriesFromList<

FILE: library/src/utils/entriesFromObjects/entriesFromObjects.ts
  type Schema (line 29) | type Schema =
  type RecursiveMerge (line 60) | type RecursiveMerge<TSchemas extends readonly [Schema, ...Schema[]]> =
  type MergedEntries (line 73) | type MergedEntries<TSchemas extends readonly [Schema, ...Schema[]]> = Pr...
  function entriesFromObjects (line 89) | function entriesFromObjects(

FILE: library/src/utils/getDotPath/getDotPath.test-d.ts
  type Schema (line 53) | type Schema = ObjectSchema<

FILE: library/src/utils/getDotPath/getDotPath.ts
  function getDotPath (line 32) | function getDotPath(issue: BaseIssue<unknown>): string | null {

FILE: library/src/utils/isOfKind/isOfKind.ts
  function isOfKind (line 10) | function isOfKind<

FILE: library/src/utils/isOfType/isOfType.ts
  function isOfType (line 10) | function isOfType<

FILE: library/src/utils/isValiError/isValiError.ts
  function isValiError (line 16) | function isValiError<

FILE: library/src/vitest/expectActionIssue.ts
  function expectActionIssue (line 19) | function expectActionIssue<

FILE: library/src/vitest/expectActionIssueAsync.ts
  function expectActionIssueAsync (line 19) | async function expectActionIssueAsync<

FILE: library/src/vitest/expectNoActionIssue.ts
  function expectNoActionIssue (line 10) | function expectNoActionIssue<

FILE: library/src/vitest/expectNoActionIssueAsync.ts
  function expectNoActionIssueAsync (line 14) | async function expectNoActionIssueAsync<

FILE: library/src/vitest/expectNoSchemaIssue.ts
  function expectNoSchemaIssue (line 10) | function expectNoSchemaIssue<

FILE: library/src/vitest/expectNoSchemaIssueAsync.ts
  function expectNoSchemaIssueAsync (line 10) | async function expectNoSchemaIssueAsync<

FILE: library/src/vitest/expectSchemaIssue.ts
  function expectSchemaIssue (line 18) | function expectSchemaIssue<

FILE: library/src/vitest/expectSchemaIssueAsync.ts
  function expectSchemaIssueAsync (line 17) | async function expectSchemaIssueAsync<

FILE: packages/i18n/scripts/build-npm.ts
  type Exports (line 89) | type Exports = Record<

FILE: packages/i18n/src/types.ts
  type Language (line 3) | type Language = {

FILE: packages/to-json-schema/src/converters/convertAction/convertAction.test.ts
  method overrideAction (line 1515) | overrideAction({ valibotAction }) {
  method overrideAction (line 1526) | overrideAction({ valibotAction, jsonSchema }) {
  method overrideAction (line 1542) | overrideAction({ valibotAction, jsonSchema }) {

FILE: packages/to-json-schema/src/converters/convertAction/convertAction.ts
  type Action (line 14) | type Action =
  function convertAction (line 185) | function convertAction(

FILE: packages/to-json-schema/src/converters/convertSchema/convertSchema.test.ts
  method overrideRef (line 100) | overrideRef({ referenceId }) {
  type TestEnum (line 1077) | enum TestEnum {
  type TestOnlyNumbersEnum (line 1096) | enum TestOnlyNumbersEnum {
  type TestOnlyStringsEnum (line 1113) | enum TestOnlyStringsEnum {
  type TestEnum (line 1132) | enum TestEnum {
  type TestOnlyNumbersEnum (line 1150) | enum TestOnlyNumbersEnum {
  type TestOnlyStringsEnum (line 1167) | enum TestOnlyStringsEnum {
  method overrideRef (line 1472) | overrideRef({ valibotSchema }) {
  method overrideSchema (line 1536) | overrideSchema({ valibotSchema }) {

FILE: packages/to-json-schema/src/converters/convertSchema/convertSchema.ts
  type Schema (line 13) | type Schema =
  type Pipe (line 106) | type Pipe = readonly (Schema | v.PipeAction<any, any, v.BaseIssue<unknow...
  type SchemaOrPipe (line 111) | type SchemaOrPipe = Schema | v.SchemaWithPipe<readonly [Schema, ...Pipe]>;
  function flattenPipe (line 120) | function flattenPipe(pipe: Pipe): Pipe {
  function convertSchema (line 140) | function convertSchema(

FILE: packages/to-json-schema/src/functions/toJsonSchema/toJsonSchema.ts
  function toJsonSchema (line 18) | function toJsonSchema(

FILE: packages/to-json-schema/src/functions/toJsonSchemaDefs/toJsonSchemaDefs.ts
  function toJsonSchemaDefs (line 17) | function toJsonSchemaDefs<

FILE: packages/to-json-schema/src/functions/toStandardJsonSchema/toStandardJsonSchema.ts
  type Target (line 5) | type Target = 'draft-07' | 'draft-2020-12' | 'openapi-3.0';
  constant SUPPORTED_TARGETS (line 6) | const SUPPORTED_TARGETS = ['draft-07', 'draft-2020-12', 'openapi-3.0'];
  function toStandardJsonSchema (line 15) | function toStandardJsonSchema<

FILE: packages/to-json-schema/src/storages/globalDefs/globalDefs.ts
  function addGlobalDefs (line 15) | function addGlobalDefs(
  function getGlobalDefs (line 31) | function getGlobalDefs():

FILE: packages/to-json-schema/src/types/config.ts
  type ConversionContext (line 7) | interface ConversionContext {
  type OverrideSchemaContext (line 35) | interface OverrideSchemaContext extends ConversionContext {
  type OverrideActionContext (line 59) | interface OverrideActionContext {
  type OverrideRefContext (line 80) | interface OverrideRefContext extends ConversionContext {
  type ConversionConfig (line 98) | interface ConversionConfig {

FILE: packages/to-json-schema/src/types/schema.ts
  type JsonSchemaTypeName (line 1) | type JsonSchemaTypeName =
  type JsonSchemaType (line 10) | type JsonSchemaType =
  type JsonSchemaObject (line 18) | interface JsonSchemaObject {
  type JsonSchemaArray (line 23) | interface JsonSchemaArray extends Array<JsonSchemaType> {}
  type JsonSchemaDefinition (line 25) | type JsonSchemaDefinition = JsonSchema | boolean;
  type JsonSchema (line 30) | interface JsonSchema {
  type JSONSchema7 (line 88) | interface JSONSchema7 extends JsonSchema {}

FILE: packages/to-json-schema/src/types/standard.ts
  type StandardJsonSchema (line 6) | interface StandardJsonSchema<TInput, TOutput> {
  type StandardJsonProps (line 16) | interface StandardJsonProps<TInput, TOutput>
  type StandardJsonConverter (line 27) | interface StandardJsonConverter {
  type StandardJsonTarget (line 41) | type StandardJsonTarget =
  type StandardJsonOptions (line 50) | interface StandardJsonOptions {

FILE: packages/to-json-schema/src/utils/addError.ts
  function addError (line 9) | function addError(

FILE: packages/to-json-schema/src/utils/escapeRegExp.ts
  constant ESCAPE_REGEX (line 2) | const ESCAPE_REGEX = /[.*+?^${}()|[\]\\]/g;
  function escapeRegExp (line 11) | function escapeRegExp(string: string): string {

FILE: packages/to-json-schema/src/utils/handleError.ts
  function handleError (line 9) | function handleError(

FILE: packages/to-json-schema/src/utils/isJsonConstValue.ts
  function isJsonConstValue (line 8) | function isJsonConstValue(

FILE: packages/to-json-schema/src/utils/isJsonEnumValues.ts
  function isJsonEnumValues (line 10) | function isJsonEnumValues(

FILE: packages/to-json-schema/src/vitest/createContext.ts
  function createContext (line 10) | function createContext(

FILE: website/scripts/contributors.ts
  constant GITHUB_PERSONAL_ACCESS_TOKEN (line 16) | const GITHUB_PERSONAL_ACCESS_TOKEN = process.env.GITHUB_PERSONAL_ACCESS_...
  constant EXCLUDED_COMMITS (line 18) | const EXCLUDED_COMMITS = ['2cc351f6db7798cf60276225abcbacbc1ea491db'];
  function updateContributors (line 23) | async function updateContributors() {

FILE: website/scripts/llms.ts
  function convertMenuToLlms (line 22) | function convertMenuToLlms(markdown: string): string {
  function extractFilePathsOfMenu (line 49) | function extractFilePathsOfMenu(

FILE: website/scripts/sitemap.ts
  constant ORIGIN (line 5) | const ORIGIN = 'https://valibot.dev';

FILE: website/scripts/utils/findNestedFiles.ts
  function findNestedFiles (line 12) | function findNestedFiles(

FILE: website/src/components/ActionButton.tsx
  type ActionButtonProps (line 5) | type ActionButtonProps = DefaultButtonProps & {

FILE: website/src/components/ApiList.tsx
  type ApiListProps (line 4) | type ApiListProps = {

FILE: website/src/components/ButtonGroup.tsx
  type ButtonGroupProps (line 4) | type ButtonGroupProps = {

FILE: website/src/components/CodeEditor.tsx
  type CodeEditorProps (line 33) | type CodeEditorProps = {
  function setupMonaco (line 191) | async function setupMonaco() {
  function initializeMonaco (line 442) | async function initializeMonaco() {

FILE: website/src/components/DocSearch.tsx
  type HitType (line 27) | type HitType = 'lvl2' | 'lvl3' | 'lvl4' | 'lvl5' | 'content';
  type AlgoliaResult (line 29) | type AlgoliaResult = {
  type SearchItem (line 57) | type SearchItem = {
  type SearchStorage (line 66) | type SearchStorage = {
  type DocSearchProps (line 75) | type DocSearchProps = {
  type SearchItemProps (line 500) | type SearchItemProps = SearchItem & {

FILE: website/src/components/DocsLayout.tsx
  constant MDX_PATH_REGEX (line 32) | const MDX_PATH_REGEX = /^\/(?:[\w-]+\/){2}$/;
  type NavItem (line 34) | type NavItem = ContentMenu & { group: string };
  type NavButtonsProps (line 195) | type NavButtonsProps = {

FILE: website/src/components/Expandable.tsx
  type ExpandableProps (line 5) | type ExpandableProps = {

FILE: website/src/components/Header.tsx
  type HeaderProps (line 28) | type HeaderProps = {

FILE: website/src/components/IconButton.tsx
  type IconButtonProps (line 5) | type IconButtonProps = DefaultButtonProps & {

FILE: website/src/components/MainMenuToggle.tsx
  type MainMenuToggleProps (line 5) | type MainMenuToggleProps = {

FILE: website/src/components/Navigation.tsx
  type NavigationProps (line 15) | type NavigationProps = {
  type NavItemProps (line 42) | type NavItemProps = {

FILE: website/src/components/PostCover.tsx
  type PostCoverProps (line 4) | type PostCoverProps = {

FILE: website/src/components/PostList.tsx
  type BlogPostData (line 6) | interface BlogPostData {
  type PostListProps (line 14) | interface PostListProps {

FILE: website/src/components/PostMeta.tsx
  type PostCoverProps (line 4) | type PostCoverProps = {

FILE: website/src/components/Property.tsx
  type DefinitionData (line 5) | type DefinitionData =
  type PropertyProps (line 104) | type PropertyProps = {
  type DefinitionProps (line 133) | type DefinitionProps = {

FILE: website/src/components/RoutingIndicator.tsx
  type State (line 5) | type State = 'start' | 'loading' | 'end';

FILE: website/src/components/SearchToggle.tsx
  type SearchToggleProps (line 5) | type SearchToggleProps = {

FILE: website/src/components/SideBar.tsx
  type SideBarProps (line 29) | type SideBarProps = {

FILE: website/src/components/Spinner.tsx
  type SpinnerProps (line 3) | type SpinnerProps = {

FILE: website/src/components/SystemIcon.tsx
  type SystemIconProps (line 6) | type SystemIconProps = DefaultButtonProps & {

FILE: website/src/components/TextLink.tsx
  type TextLinkProps (line 5) | type TextLinkProps = Omit<LinkButtonProps, 'type'> & {

FILE: website/src/components/ThemeToggle.tsx
  type ThemeToggleProps (line 8) | type ThemeToggleProps = {

FILE: website/src/components/UnstyledButton.tsx
  type LinkButtonProps (line 4) | type LinkButtonProps = {
  type NormalButtonProps (line 12) | type NormalButtonProps = {
  type DefaultButtonProps (line 21) | type DefaultButtonProps = LinkButtonProps | NormalButtonProps;
  type UnstyledButtonProps (line 23) | type UnstyledButtonProps = DefaultButtonProps & {

FILE: website/src/entry.vercel-edge.tsx
  type QwikCityPlatform (line 20) | interface QwikCityPlatform extends PlatformVercel {}

FILE: website/src/hooks/useFocusTrap.ts
  function useFocusTrap (line 10) | function useFocusTrap(

FILE: website/src/hooks/useMDXComponents.tsx
  type PreProps (line 14) | type PreProps = {
  function useMDXComponents (line 104) | function useMDXComponents() {

FILE: website/src/hooks/useResetSignal.ts
  function useResetSignal (line 11) | function useResetSignal<T>(initialValue: T, delay = 1000) {

FILE: website/src/hooks/useStorageSignal.ts
  function useStorageSignal (line 12) | function useStorageSignal<T>(key: string, initialValue: T) {

FILE: website/src/routes/blog/(posts)/layout.tsx
  type PostFrontmatter (line 6) | type PostFrontmatter = {

FILE: website/src/routes/blog/index.tsx
  type PostFrontmatter (line 20) | type PostFrontmatter = {
  type PostData (line 27) | type PostData = PostFrontmatter & {
  type PostSection (line 31) | interface PostSection {

FILE: website/src/routes/guides/(migration)/migrate-from-zod/CodemodEditor.tsx
  function setupMonaco (line 120) | async function setupMonaco() {
  function initializeMonaco (line 145) | async function initializeMonaco() {

FILE: website/src/routes/guides/(migration)/migrate-from-zod/zod/v3/index.d.ts
  type Primitive (line 1) | type Primitive=string|number|symbol|bigint|boolean|null|undefined;
  type Scalars (line 1) | type Scalars=Primitive|Primitive[];
  type AssertEqual (line 1) | type AssertEqual<T,U>=(<V>()=>V extends T?1:2)extends<V>()=>V extends U?...
  type isAny (line 1) | type isAny<T>=0
  type Omit (line 1) | type Omit<T,K extends keyof T>=Pick<T,Exclude<keyof T,K>>;
  type OmitKeys (line 1) | type OmitKeys<T,K extends string>=Pick<T,Exclude<keyof T,K>>;
  type MakePartial (line 1) | type MakePartial<T,K extends keyof T>=Omit<T,K>&Partial<Pick<T,K>>;
  type Exactly (line 1) | type Exactly<T,X>=T&Record<Exclude<keyof X,keyof T>,never>;
  type InexactPartial (line 1) | type InexactPartial<T>={[k in keyof T]?:T[k]|undefined;};
  type identity (line 1) | type identity<T>=objectUtil.identity<T>;
  type flatten (line 1) | type flatten<T>=objectUtil.flatten<T>;
  type noUndefined (line 1) | type noUndefined<T>=T extends undefined?never:T;
  type MergeShapes (line 1) | type MergeShapes<U,V>=keyof U&keyof V extends never?U&V:{[k in Exclude<k...
  type optionalKeys (line 1) | type optionalKeys<T extends object>={[k in keyof T]:undefined extends T[...
  type requiredKeys (line 1) | type requiredKeys<T extends object>={[k in keyof T]:undefined extends T[...
  type addQuestionMarks (line 1) | type addQuestionMarks<T extends object,_O=any>={[K in requiredKeys<T>]:T...
  type identity (line 1) | type identity<T>=T;
  type flatten (line 1) | type flatten<T>=identity<{[k in keyof T]:T[k];}>;
  type noNeverKeys (line 1) | type noNeverKeys<T>={[k in keyof T]:[T[k]]extends[never]?never:k;}[keyof...
  type noNever (line 1) | type noNever<T>=identity<{[k in noNeverKeys<T>]:k extends keyof T?T[k]:n...
  type extendShape (line 1) | type extendShape<A extends object,B extends object>=keyof A&keyof B exte...
  type ZodParsedType (line 1) | type ZodParsedType=keyof typeof ZodParsedType;
  type allKeys (line 1) | type allKeys<T>=T extends any?keyof T:never;
  type inferFlattenedErrors (line 1) | type inferFlattenedErrors<T extends ZodType<any,any,any>,U=string>=typeT...
  type typeToFlattenedError (line 1) | type typeToFlattenedError<T,U=string>={formErrors:U[];fieldErrors:{[P in...
  type ZodIssueCode (line 1) | type ZodIssueCode=keyof typeof ZodIssueCode;
  type ZodIssueBase (line 1) | type ZodIssueBase={path:(string|number)[];message?:string|undefined;};
  type ZodInvalidTypeIssue (line 1) | interface ZodInvalidTypeIssue extends ZodIssueBase{code:typeof ZodIssueC...
  type ZodInvalidLiteralIssue (line 1) | interface ZodInvalidLiteralIssue extends ZodIssueBase{code:typeof ZodIss...
  type ZodUnrecognizedKeysIssue (line 1) | interface ZodUnrecognizedKeysIssue extends ZodIssueBase{code:typeof ZodI...
  type ZodInvalidUnionIssue (line 1) | interface ZodInvalidUnionIssue extends ZodIssueBase{code:typeof ZodIssue...
  type ZodInvalidUnionDiscriminatorIssue (line 1) | interface ZodInvalidUnionDiscriminatorIssue extends ZodIssueBase{code:ty...
  type ZodInvalidEnumValueIssue (line 1) | interface ZodInvalidEnumValueIssue extends ZodIssueBase{received:string|...
  type ZodInvalidArgumentsIssue (line 1) | interface ZodInvalidArgumentsIssue extends ZodIssueBase{code:typeof ZodI...
  type ZodInvalidReturnTypeIssue (line 1) | interface ZodInvalidReturnTypeIssue extends ZodIssueBase{code:typeof Zod...
  type ZodInvalidDateIssue (line 1) | interface ZodInvalidDateIssue extends ZodIssueBase{code:typeof ZodIssueC...
  type StringValidation (line 1) | type StringValidation="email"|"url"|"emoji"|"uuid"|"nanoid"|"regex"|"cui...
  type ZodInvalidStringIssue (line 1) | interface ZodInvalidStringIssue extends ZodIssueBase{code:typeof ZodIssu...
  type ZodTooSmallIssue (line 1) | interface ZodTooSmallIssue extends ZodIssueBase{code:typeof ZodIssueCode...
  type ZodTooBigIssue (line 1) | interface ZodTooBigIssue extends ZodIssueBase{code:typeof ZodIssueCode.t...
  type ZodInvalidIntersectionTypesIssue (line 1) | interface ZodInvalidIntersectionTypesIssue extends ZodIssueBase{code:typ...
  type ZodNotMultipleOfIssue (line 1) | interface ZodNotMultipleOfIssue extends ZodIssueBase{code:typeof ZodIssu...
  type ZodNotFiniteIssue (line 1) | interface ZodNotFiniteIssue extends ZodIssueBase{code:typeof ZodIssueCod...
  type ZodCustomIssue (line 1) | interface ZodCustomIssue extends ZodIssueBase{code:typeof ZodIssueCode.c...
  type DenormalizedError (line 1) | type DenormalizedError={[k:string]:DenormalizedError|string[];};
  type ZodIssueOptionalMessage (line 1) | type ZodIssueOptionalMessage=ZodInvalidTypeIssue|ZodInvalidLiteralIssue|...
  type ZodIssue (line 1) | type ZodIssue=ZodIssueOptionalMessage&{fatal?:boolean|undefined;message:...
  type recursiveZodFormattedError (line 1) | type recursiveZodFormattedError<T>=T extends[any,...any[]]?{[K in keyof ...
  type ZodFormattedError (line 1) | type ZodFormattedError<T,U=string>={_errors:U[];}&recursiveZodFormattedE...
  type inferFormattedError (line 1) | type inferFormattedError<T extends ZodType<any,any,any>,U=string>=ZodFor...
  class ZodError (line 1) | class ZodError<T=any>extends Error{issues:ZodIssue[];get errors():ZodIss...
  type stripPath (line 1) | type stripPath<T extends object>=T extends any?util.OmitKeys<T,"path">:n...
  type IssueData (line 1) | type IssueData=stripPath<ZodIssueOptionalMessage>&{path?:(string|number)...
  type ErrorMapCtx (line 1) | type ErrorMapCtx={defaultError:string;data:any;};
  type ZodErrorMap (line 1) | type ZodErrorMap=(issue:ZodIssueOptionalMessage,_ctx:ErrorMapCtx)=>{mess...
  type ParseParams (line 1) | type ParseParams={path:(string|number)[];errorMap:ZodErrorMap;async:bool...
  type ParsePathComponent (line 1) | type ParsePathComponent=string|number;
  type ParsePath (line 1) | type ParsePath=ParsePathComponent[];
  type ParseContext (line 1) | interface ParseContext{readonly common:{readonly issues:ZodIssue[];reado...
  type ParseInput (line 1) | type ParseInput={data:any;path:(string|number)[];parent:ParseContext;};
  type ObjectPair (line 1) | type ObjectPair={key:SyncParseReturnType<any>;value:SyncParseReturnType<...
  class ParseStatus (line 1) | class ParseStatus{value:"aborted"|"dirty"|"valid";dirty():void;abort():v...
  type ParseResult (line 1) | interface ParseResult{status:"aborted"|"dirty"|"valid";data:any;}
  type INVALID (line 1) | type INVALID={status:"aborted";};
  type DIRTY (line 1) | type DIRTY<T>={status:"dirty";value:T;};
  type OK (line 1) | type OK<T>={status:"valid";value:T;};
  type SyncParseReturnType (line 1) | type SyncParseReturnType<T=any>=OK<T>|DIRTY<T>|INVALID;
  type AsyncParseReturnType (line 1) | type AsyncParseReturnType<T>=Promise<SyncParseReturnType<T>>;
  type ParseReturnType (line 1) | type ParseReturnType<T>=SyncParseReturnType<T>|AsyncParseReturnType<T>;
  type UnionToIntersectionFn (line 1) | type UnionToIntersectionFn<T>=(T extends unknown?(k:()=>T)=>void:never)e...
  type GetUnionLast (line 1) | type GetUnionLast<T>=UnionToIntersectionFn<T>extends()=>infer Last?Last:...
  type UnionToTuple (line 1) | type UnionToTuple<T,Tuple extends unknown[]=[]>=[T]extends[never]?Tuple:...
  type CastToStringTuple (line 1) | type CastToStringTuple<T>=T extends[string,...string[]]?T:never;
  type UnionToTupleString (line 1) | type UnionToTupleString<T>=CastToStringTuple<UnionToTuple<T>>;
  type ErrMessage (line 1) | type ErrMessage=string|{message?:string|undefined;};
  type DeepPartial (line 1) | type DeepPartial<T extends ZodTypeAny>=T extends ZodObject<ZodRawShape>?...
  type StandardSchemaV1 (line 1) | type StandardSchemaV1<Input=unknown,Output=Input>={readonly"~standard":S...
  type Props (line 1) | interface Props<Input=unknown,Output=Input>{readonly version:1;readonly ...
  type Result (line 1) | type Result<Output>=SuccessResult<Output>|FailureResult;
  type SuccessResult (line 1) | interface SuccessResult<Output>{readonly value:Output;readonly issues?:u...
  type FailureResult (line 1) | interface FailureResult{readonly issues:ReadonlyArray<Issue>;}
  type Issue (line 1) | interface Issue{readonly message:string;readonly path?:ReadonlyArray<Pro...
  type PathSegment (line 1) | interface PathSegment{readonly key:PropertyKey;}
  type Types (line 1) | interface Types<Input=unknown,Output=Input>{readonly input:Input;readonl...
  type InferInput (line 1) | type InferInput<Schema extends StandardSchemaV1>=NonNullable<Schema["~st...
  type InferOutput (line 1) | type InferOutput<Schema extends StandardSchemaV1>=NonNullable<Schema["~s...
  type RefinementCtx (line 1) | interface RefinementCtx{addIssue:(arg:IssueData)=>void;path:(string|numb...
  type ZodRawShape (line 1) | type ZodRawShape={[k:string]:ZodTypeAny;};
  type ZodTypeAny (line 1) | type ZodTypeAny=ZodType<any,any,any>;
  type TypeOf (line 1) | type TypeOf<T extends ZodType<any,any,any>>=T["_output"];
  type input (line 1) | type input<T extends ZodType<any,any,any>>=T["_input"];
  type output (line 1) | type output<T extends ZodType<any,any,any>>=T["_output"];
  type CustomErrorParams (line 1) | type CustomErrorParams=Partial<util.Omit<ZodCustomIssue,"code">>;
  type ZodTypeDef (line 1) | interface ZodTypeDef{errorMap?:ZodErrorMap|undefined;description?:string...
  type RawCreateParams (line 1) | type RawCreateParams={errorMap?:ZodErrorMap|undefined;invalid_type_error...
  type ProcessedCreateParams (line 1) | type ProcessedCreateParams={errorMap?:ZodErrorMap|undefined;description?...
  type SafeParseSuccess (line 1) | type SafeParseSuccess<Output>={success:true;data:Output;error?:never;};
  type SafeParseError (line 1) | type SafeParseError<Input>={success:false;error:ZodError<Input>;data?:ne...
  type SafeParseReturnType (line 1) | type SafeParseReturnType<Input,Output>=SafeParseSuccess<Output>|SafePars...
  type IpVersion (line 1) | type IpVersion="v4"|"v6";
  type ZodStringCheck (line 1) | type ZodStringCheck={kind:"min";value:number;message?:string|undefined;}...
  type ZodStringDef (line 1) | interface ZodStringDef extends ZodTypeDef{checks:ZodStringCheck[];typeNa...
  class ZodString (line 1) | class ZodString extends ZodType<string,ZodStringDef,string>{_parse(input...
  type ZodNumberCheck (line 1) | type ZodNumberCheck={kind:"min";value:number;inclusive:boolean;message?:...
  type ZodNumberDef (line 1) | interface ZodNumberDef extends ZodTypeDef{checks:ZodNumberCheck[];typeNa...
  class ZodNumber (line 1) | class ZodNumber extends ZodType<number,ZodNumberDef,number>{_parse(input...
  type ZodBigIntCheck (line 1) | type ZodBigIntCheck={kind:"min";value:bigint;inclusive:boolean;message?:...
  type ZodBigIntDef (line 1) | interface ZodBigIntDef extends ZodTypeDef{checks:ZodBigIntCheck[];typeNa...
  class ZodBigInt (line 1) | class ZodBigInt extends ZodType<bigint,ZodBigIntDef,bigint>{_parse(input...
  type ZodBooleanDef (line 1) | interface ZodBooleanDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKin...
  class ZodBoolean (line 1) | class ZodBoolean extends ZodType<boolean,ZodBooleanDef,boolean>{_parse(i...
  type ZodDateCheck (line 1) | type ZodDateCheck={kind:"min";value:number;message?:string|undefined;}|{...
  type ZodDateDef (line 1) | interface ZodDateDef extends ZodTypeDef{checks:ZodDateCheck[];coerce:boo...
  class ZodDate (line 1) | class ZodDate extends ZodType<Date,ZodDateDef,Date>{_parse(input:ParseIn...
  type ZodSymbolDef (line 1) | interface ZodSymbolDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKind...
  class ZodSymbol (line 1) | class ZodSymbol extends ZodType<symbol,ZodSymbolDef,symbol>{_parse(input...
  type ZodUndefinedDef (line 1) | interface ZodUndefinedDef extends ZodTypeDef{typeName:ZodFirstPartyTypeK...
  class ZodUndefined (line 1) | class ZodUndefined extends ZodType<undefined,ZodUndefinedDef,undefined>{...
  type ZodNullDef (line 1) | interface ZodNullDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKind.Z...
  class ZodNull (line 1) | class ZodNull extends ZodType<null,ZodNullDef,null>{_parse(input:ParseIn...
  type ZodAnyDef (line 1) | interface ZodAnyDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKind.Zo...
  class ZodAny (line 1) | class ZodAny extends ZodType<any,ZodAnyDef,any>{_any:true;_parse(input:P...
  type ZodUnknownDef (line 1) | interface ZodUnknownDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKin...
  class ZodUnknown (line 1) | class ZodUnknown extends ZodType<unknown,ZodUnknownDef,unknown>{_unknown...
  type ZodNeverDef (line 1) | interface ZodNeverDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKind....
  class ZodNever (line 1) | class ZodNever extends ZodType<never,ZodNeverDef,never>{_parse(input:Par...
  type ZodVoidDef (line 1) | interface ZodVoidDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKind.Z...
  class ZodVoid (line 1) | class ZodVoid extends ZodType<void,ZodVoidDef,void>{_parse(input:ParseIn...
  type ZodArrayDef (line 1) | interface ZodArrayDef<T extends ZodTypeAny=ZodTypeAny>extends ZodTypeDef...
  type ArrayCardinality (line 1) | type ArrayCardinality="many"|"atleastone";
  type arrayOutputType (line 1) | type arrayOutputType<T extends ZodTypeAny,Cardinality extends ArrayCardi...
  class ZodArray (line 1) | class ZodArray<T extends ZodTypeAny,Cardinality extends ArrayCardinality...
  type ZodNonEmptyArray (line 1) | type ZodNonEmptyArray<T extends ZodTypeAny>=ZodArray<T,"atleastone">;
  type UnknownKeysParam (line 1) | type UnknownKeysParam="passthrough"|"strict"|"strip";
  type ZodObjectDef (line 1) | interface ZodObjectDef<T extends ZodRawShape=ZodRawShape,UnknownKeys ext...
  type mergeTypes (line 1) | type mergeTypes<A,B>={[k in keyof A|keyof B]:k extends keyof B?B[k]:k ex...
  type objectOutputType (line 1) | type objectOutputType<Shape extends ZodRawShape,Catchall extends ZodType...
  type baseObjectOutputType (line 1) | type baseObjectOutputType<Shape extends ZodRawShape>={[k in keyof Shape]...
  type objectInputType (line 1) | type objectInputType<Shape extends ZodRawShape,Catchall extends ZodTypeA...
  type baseObjectInputType (line 1) | type baseObjectInputType<Shape extends ZodRawShape>=objectUtil.addQuesti...
  type CatchallOutput (line 1) | type CatchallOutput<T extends ZodType>=ZodType extends T?unknown:{[k:str...
  type CatchallInput (line 1) | type CatchallInput<T extends ZodType>=ZodType extends T?unknown:{[k:stri...
  type PassthroughType (line 1) | type PassthroughType<T extends UnknownKeysParam>=T extends"passthrough"?...
  type deoptional (line 1) | type deoptional<T extends ZodTypeAny>=T extends ZodOptional<infer U>?deo...
  type SomeZodObject (line 1) | type SomeZodObject=ZodObject<ZodRawShape,UnknownKeysParam,ZodTypeAny>;
  type noUnrecognized (line 1) | type noUnrecognized<Obj extends object,Shape extends object>={[k in keyo...
  class ZodObject (line 1) | class ZodObject<T extends ZodRawShape,UnknownKeys extends UnknownKeysPar...
  type AnyZodObject (line 1) | type AnyZodObject=ZodObject<any,any,any>;
  type ZodUnionOptions (line 1) | type ZodUnionOptions=Readonly<[ZodTypeAny,...ZodTypeAny[]]>;
  type ZodUnionDef (line 1) | interface ZodUnionDef<T extends ZodUnionOptions=Readonly<[ZodTypeAny,Zod...
  class ZodUnion (line 1) | class ZodUnion<T extends ZodUnionOptions>extends ZodType<T[number]["_out...
  type ZodDiscriminatedUnionOption (line 1) | type ZodDiscriminatedUnionOption<Discriminator extends string>=ZodObject...
  type ZodDiscriminatedUnionDef (line 1) | interface ZodDiscriminatedUnionDef<Discriminator extends string,Options ...
  class ZodDiscriminatedUnion (line 1) | class ZodDiscriminatedUnion<Discriminator extends string,Options extends...
  type ZodIntersectionDef (line 2) | interface ZodIntersectionDef<T extends ZodTypeAny=ZodTypeAny,U extends Z...
  class ZodIntersection (line 2) | class ZodIntersection<T extends ZodTypeAny,U extends ZodTypeAny>extends ...
  type ZodTupleItems (line 2) | type ZodTupleItems=[ZodTypeAny,...ZodTypeAny[]];
  type AssertArray (line 2) | type AssertArray<T>=T extends any[]?T:never;
  type OutputTypeOfTuple (line 2) | type OutputTypeOfTuple<T extends ZodTupleItems|[]>=AssertArray<{[k in ke...
  type OutputTypeOfTupleWithRest (line 2) | type OutputTypeOfTupleWithRest<T extends ZodTupleItems|[],Rest extends Z...
  type InputTypeOfTuple (line 2) | type InputTypeOfTuple<T extends ZodTupleItems|[]>=AssertArray<{[k in key...
  type InputTypeOfTupleWithRest (line 2) | type InputTypeOfTupleWithRest<T extends ZodTupleItems|[],Rest extends Zo...
  type ZodTupleDef (line 2) | interface ZodTupleDef<T extends ZodTupleItems|[]=ZodTupleItems,Rest exte...
  type AnyZodTuple (line 2) | type AnyZodTuple=ZodTuple<[ZodTypeAny,...ZodTypeAny[]]|[],ZodTypeAny|null>;
  class ZodTuple (line 2) | class ZodTuple<T extends ZodTupleItems|[]=ZodTupleItems,Rest extends Zod...
  type ZodRecordDef (line 2) | interface ZodRecordDef<Key extends KeySchema=ZodString,Value extends Zod...
  type KeySchema (line 2) | type KeySchema=ZodType<string|number|symbol,any,any>;
  type RecordType (line 2) | type RecordType<K extends string|number|symbol,V>=[string]extends[K]?Rec...
  class ZodRecord (line 2) | class ZodRecord<Key extends KeySchema=ZodString,Value extends ZodTypeAny...
  type ZodMapDef (line 2) | interface ZodMapDef<Key extends ZodTypeAny=ZodTypeAny,Value extends ZodT...
  class ZodMap (line 2) | class ZodMap<Key extends ZodTypeAny=ZodTypeAny,Value extends ZodTypeAny=...
  type ZodSetDef (line 2) | interface ZodSetDef<Value extends ZodTypeAny=ZodTypeAny>extends ZodTypeD...
  class ZodSet (line 2) | class ZodSet<Value extends ZodTypeAny=ZodTypeAny>extends ZodType<Set<Val...
  type ZodFunctionDef (line 2) | interface ZodFunctionDef<Args extends ZodTuple<any,any>=ZodTuple<any,any...
  type OuterTypeOfFunction (line 2) | type OuterTypeOfFunction<Args extends ZodTuple<any,any>,Returns extends ...
  type InnerTypeOfFunction (line 2) | type InnerTypeOfFunction<Args extends ZodTuple<any,any>,Returns extends ...
  class ZodFunction (line 2) | class ZodFunction<Args extends ZodTuple<any,any>,Returns extends ZodType...
  type ZodLazyDef (line 2) | interface ZodLazyDef<T extends ZodTypeAny=ZodTypeAny>extends ZodTypeDef{...
  class ZodLazy (line 2) | class ZodLazy<T extends ZodTypeAny>extends ZodType<output<T>,ZodLazyDef<...
  type ZodLiteralDef (line 2) | interface ZodLiteralDef<T=any>extends ZodTypeDef{value:T;typeName:ZodFir...
  class ZodLiteral (line 2) | class ZodLiteral<T>extends ZodType<T,ZodLiteralDef<T>,T>{_parse(input:Pa...
  type ArrayKeys (line 2) | type ArrayKeys=keyof any[];
  type Indices (line 2) | type Indices<T>=Exclude<keyof T,ArrayKeys>;
  type EnumValues (line 2) | type EnumValues<T extends string=string>=readonly[T,...T[]];
  type Values (line 2) | type Values<T extends EnumValues>={[k in T[number]]:k;};
  type ZodEnumDef (line 2) | interface ZodEnumDef<T extends EnumValues=EnumValues>extends ZodTypeDef{...
  type Writeable (line 2) | type Writeable<T>={-readonly[P in keyof T]:T[P];};
  type FilterEnum (line 2) | type FilterEnum<Values,ToExclude>=Values extends[]?[]:Values extends[inf...
  type typecast (line 2) | type typecast<A,T>=A extends T?A:never;
  class ZodEnum (line 2) | class ZodEnum<T extends[string,...string[]]>extends ZodType<T[number],Zo...
  type ZodNativeEnumDef (line 2) | interface ZodNativeEnumDef<T extends EnumLike=EnumLike>extends ZodTypeDe...
  type EnumLike (line 2) | type EnumLike={[k:string]:string|number;[nu:number]:string;};
  class ZodNativeEnum (line 2) | class ZodNativeEnum<T extends EnumLike>extends ZodType<T[keyof T],ZodNat...
  type ZodPromiseDef (line 2) | interface ZodPromiseDef<T extends ZodTypeAny=ZodTypeAny>extends ZodTypeD...
  class ZodPromise (line 2) | class ZodPromise<T extends ZodTypeAny>extends ZodType<Promise<T["_output...
  type Refinement (line 2) | type Refinement<T>=(arg:T,ctx:RefinementCtx)=>any;
  type SuperRefinement (line 2) | type SuperRefinement<T>=(arg:T,ctx:RefinementCtx)=>void|Promise<void>;
  type RefinementEffect (line 2) | type RefinementEffect<T>={type:"refinement";refinement:(arg:T,ctx:Refine...
  type TransformEffect (line 2) | type TransformEffect<T>={type:"transform";transform:(arg:T,ctx:Refinemen...
  type PreprocessEffect (line 2) | type PreprocessEffect<T>={type:"preprocess";transform:(arg:T,ctx:Refinem...
  type Effect (line 2) | type Effect<T>=RefinementEffect<T>|TransformEffect<T>|PreprocessEffect<T>;
  type ZodEffectsDef (line 2) | interface ZodEffectsDef<T extends ZodTypeAny=ZodTypeAny>extends ZodTypeD...
  class ZodEffects (line 2) | class ZodEffects<T extends ZodTypeAny,Output=output<T>,Input=input<T>>ex...
  type ZodOptionalDef (line 2) | interface ZodOptionalDef<T extends ZodTypeAny=ZodTypeAny>extends ZodType...
  type ZodOptionalType (line 2) | type ZodOptionalType<T extends ZodTypeAny>=ZodOptional<T>;
  class ZodOptional (line 2) | class ZodOptional<T extends ZodTypeAny>extends ZodType<T["_output"]|unde...
  type ZodNullableDef (line 2) | interface ZodNullableDef<T extends ZodTypeAny=ZodTypeAny>extends ZodType...
  type ZodNullableType (line 2) | type ZodNullableType<T extends ZodTypeAny>=ZodNullable<T>;
  class ZodNullable (line 2) | class ZodNullable<T extends ZodTypeAny>extends ZodType<T["_output"]|null...
  type ZodDefaultDef (line 2) | interface ZodDefaultDef<T extends ZodTypeAny=ZodTypeAny>extends ZodTypeD...
  class ZodDefault (line 2) | class ZodDefault<T extends ZodTypeAny>extends ZodType<util.noUndefined<T...
  type ZodCatchDef (line 2) | interface ZodCatchDef<T extends ZodTypeAny=ZodTypeAny>extends ZodTypeDef...
  class ZodCatch (line 2) | class ZodCatch<T extends ZodTypeAny>extends ZodType<T["_output"],ZodCatc...
  type ZodNaNDef (line 2) | interface ZodNaNDef extends ZodTypeDef{typeName:ZodFirstPartyTypeKind.Zo...
  class ZodNaN (line 2) | class ZodNaN extends ZodType<number,ZodNaNDef,number>{_parse(input:Parse...
  type ZodBrandedDef (line 2) | interface ZodBrandedDef<T extends ZodTypeAny>extends ZodTypeDef{type:T;t...
  type BRAND (line 2) | type BRAND<T extends string|number|symbol>={[BRAND]:{[k in T]:true;};};
  class ZodBranded (line 2) | class ZodBranded<T extends ZodTypeAny,B extends string|number|symbol>ext...
  type ZodPipelineDef (line 2) | interface ZodPipelineDef<A extends ZodTypeAny,B extends ZodTypeAny>exten...
  class ZodPipeline (line 2) | class ZodPipeline<A extends ZodTypeAny,B extends ZodTypeAny>extends ZodT...
  type BuiltIn (line 2) | type BuiltIn=(((...args:any[])=>any)|(new(...args:any[])=>any))|{readonl...
  type MakeReadonly (line 2) | type MakeReadonly<T>=T extends Map<infer K,infer V>?ReadonlyMap<K,V>:T e...
  type ZodReadonlyDef (line 2) | interface ZodReadonlyDef<T extends ZodTypeAny=ZodTypeAny>extends ZodType...
  class ZodReadonly (line 2) | class ZodReadonly<T extends ZodTypeAny>extends ZodType<MakeReadonly<T["_...
  type CustomParams (line 2) | type CustomParams=CustomErrorParams&{fatal?:boolean;};
  type ZodFirstPartyTypeKind (line 2) | enum ZodFirstPartyTypeKind{ZodString="ZodString",ZodNumber="ZodNumber",Z...
  type ZodFirstPartySchemaTypes (line 2) | type ZodFirstPartySchemaTypes=ZodString|ZodNumber|ZodNaN|ZodBigInt|ZodBo...
  type z_AnyZodObject (line 2) | type z_AnyZodObject=AnyZodObject;
  type z_AnyZodTuple (line 2) | type z_AnyZodTuple=AnyZodTuple;
  type z_ArrayCardinality (line 2) | type z_ArrayCardinality=ArrayCardinality;
  type z_ArrayKeys (line 2) | type z_ArrayKeys=ArrayKeys;
  type z_AssertArray (line 2) | type z_AssertArray<T>=AssertArray<T>;
  type z_AsyncParseReturnType (line 2) | type z_AsyncParseReturnType<T>=AsyncParseReturnType<T>;
  type z_BRAND (line 2) | type z_BRAND<T extends string|number|symbol>=BRAND<T>;
  type z_CatchallInput (line 2) | type z_CatchallInput<T extends ZodType>=CatchallInput<T>;
  type z_CatchallOutput (line 2) | type z_CatchallOutput<T extends ZodType>=CatchallOutput<T>;
  type z_CustomErrorParams (line 2) | type z_CustomErrorParams=CustomErrorParams;
  type z_DenormalizedError (line 2) | type z_DenormalizedError=DenormalizedError;
  type z_Effect (line 2) | type z_Effect<T>=Effect<T>;
  type z_EnumLike (line 2) | type z_EnumLike=EnumLike;
  type z_EnumValues (line 2) | type z_EnumValues<T extends string=string>=EnumValues<T>;
  type z_ErrorMapCtx (line 2) | type z_ErrorMapCtx=ErrorMapCtx;
  type z_FilterEnum (line 2) | type z_FilterEnum<Values,ToExclude>=FilterEnum<Values,ToExclude>;
  type z_Indices (line 2) | type z_Indices<T>=Indices<T>;
  type z_InnerTypeOfFunction (line 2) | type z_InnerTypeOfFunction<Args extends ZodTuple<any,any>,Returns extend...
  type z_InputTypeOfTuple (line 2) | type z_InputTypeOfTuple<T extends ZodTupleItems|[]>=InputTypeOfTuple<T>;
  type z_InputTypeOfTupleWithRest (line 2) | type z_InputTypeOfTupleWithRest<T extends ZodTupleItems|[],Rest extends ...
  type z_IpVersion (line 2) | type z_IpVersion=IpVersion;
  type z_IssueData (line 2) | type z_IssueData=IssueData;
  type z_KeySchema (line 2) | type z_KeySchema=KeySchema;
  type z_ObjectPair (line 2) | type z_ObjectPair=ObjectPair;
  type z_OuterTypeOfFunction (line 2) | type z_OuterTy
Condensed preview — 3219 files, each showing path, character count, and a content snippet. Download the .json file or copy for the full structured content (7,945K chars).
[
  {
    "path": ".agents/skills/repo-source-code-document/SKILL.md",
    "chars": 8044,
    "preview": "---\nname: repo-source-code-document\ndescription: Write JSDoc comments and inline documentation for Valibot library sourc"
  },
  {
    "path": ".agents/skills/repo-source-code-review/SKILL.md",
    "chars": 5578,
    "preview": "---\nname: repo-source-code-review\ndescription: Review pull requests and source code changes in /library/src/. Use when r"
  },
  {
    "path": ".agents/skills/repo-structure-navigate/SKILL.md",
    "chars": 6810,
    "preview": "---\nname: repo-structure-navigate\ndescription: Navigate the Valibot repository structure. Use when looking for files, un"
  },
  {
    "path": ".agents/skills/repo-website-api-create/SKILL.md",
    "chars": 10682,
    "preview": "---\nname: repo-website-api-create\ndescription: Create new API reference pages for the Valibot website at website/src/rou"
  },
  {
    "path": ".agents/skills/repo-website-api-update/SKILL.md",
    "chars": 5712,
    "preview": "---\nname: repo-website-api-update\ndescription: Update existing API documentation pages after source code changes. Use wh"
  },
  {
    "path": ".agents/skills/repo-website-guide-create/SKILL.md",
    "chars": 3811,
    "preview": "---\nname: repo-website-guide-create\ndescription: Create conceptual documentation and tutorial pages for the Valibot webs"
  },
  {
    "path": ".github/FUNDING.yml",
    "chars": 74,
    "preview": "github: [fabian-hiller, EltonLobo07, Bilboramix]\nopen_collective: valibot\n"
  },
  {
    "path": ".github/actions/environment/action.yml",
    "chars": 1007,
    "preview": "name: Setup environment\ndescription: Setup environment with Node.js, Deno and pnpm\n\nruns:\n  using: composite\n  steps:\n  "
  },
  {
    "path": ".github/workflows/ci.yml",
    "chars": 3930,
    "preview": "name: CI\n\non:\n  push:\n    branches: [main]\n  pull_request:\n  workflow_call:\n\njobs:\n  install:\n    name: Install packages"
  },
  {
    "path": ".github/workflows/publish.yml",
    "chars": 3136,
    "preview": "name: Publish\n\non:\n  release:\n    types: [published]\n  workflow_dispatch:\n\njobs:\n  default_ci:\n    name: Run default CI "
  },
  {
    "path": ".gitignore",
    "chars": 309,
    "preview": "# Dependencies\nnode_modules\n\n# Production\ndist\nbuild\nserver\n\n# Tests\ncoverage\n\n# Backups\nbackups\n\n# Services\n.vscode\n.ne"
  },
  {
    "path": ".grit/.gitignore",
    "chars": 20,
    "preview": ".gritmodules*\n*.log\n"
  },
  {
    "path": ".grit/grit.yaml",
    "chars": 63,
    "preview": "version: 0.1.0\npatterns:\n  - name: github.com/getgrit/stdlib#*\n"
  },
  {
    "path": ".grit/patterns/migrate_to_v0_31_0.md",
    "chars": 14746,
    "preview": "# Migrate to v0.31.0\n\nYou can use [Grit](https://docs.grit.io/cli/quickstart) to automatically update your code to the n"
  },
  {
    "path": ".prettierignore",
    "chars": 408,
    "preview": "**/*.log\n**/.DS_Store\n*.\n.vscode/settings.json\n.history\n.yarn\nbazel-*\nbazel-bin\nbazel-out\nbazel-qwik\nbazel-testlogs\ndist"
  },
  {
    "path": "AGENTS.md",
    "chars": 2379,
    "preview": "# AI Instructions\n\nValibot is a modular, type-safe schema validation library with zero runtime dependencies.\n\n## Monorep"
  },
  {
    "path": "CODE_OF_CONDUCT.md",
    "chars": 5487,
    "preview": "# Contributor Covenant Code of Conduct\n\n## Our Pledge\n\nWe as members, contributors, and leaders pledge to make participa"
  },
  {
    "path": "CONTRIBUTING.md",
    "chars": 3124,
    "preview": "# Contributing\n\nWe love pull requests from everyone. By contributing to this repository, you\nagree to abide by the [Code"
  },
  {
    "path": "LICENSE.md",
    "chars": 1065,
    "preview": "MIT License\n\nCopyright (c) Fabian Hiller\n\nPermission is hereby granted, free of charge, to any person obtaining a copy o"
  },
  {
    "path": "SECURITY.md",
    "chars": 227,
    "preview": "# Reporting Security Issues\n\nTo report a vulnerability, please contact us via hello@fabianhiller.com.\n\nWe recommend that"
  },
  {
    "path": "codemod/README.md",
    "chars": 296,
    "preview": "# Codemod\n\n## Run options\n\nThe preferred way to run these codemods is via the [codemod registry](https://codemod.com/reg"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/.codemodrc.json",
    "chars": 430,
    "preview": "{\n  \"$schema\": \"https://codemod-utils.s3.us-west-1.amazonaws.com/configuration_schema.json\",\n  \"version\": \"0.2.2\",\n  \"pr"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/.gitignore",
    "chars": 17,
    "preview": "node_modules\ndist"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/LICENSE",
    "chars": 1077,
    "preview": "The MIT License (MIT)\n\nCopyright (c) 2024 arybitskiy\n\nPermission is hereby granted, free of charge, to any person obtain"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/README.md",
    "chars": 2010,
    "preview": "# Migrate to v0.31.0\n\nYou can use [Codemod](https://codemod.com/) to automatically update your code to the new API. See "
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture1.input.ts",
    "chars": 198,
    "preview": "import * as v from 'valibot';\nimport { email } from 'valibot';\n\nconst Schema1 = v.string([email()]);\n\nconst Schema2 = v."
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture1.output.ts",
    "chars": 218,
    "preview": "import * as v from 'valibot';\nimport { email } from 'valibot';\n\nconst Schema1 = v.pipe(v.string(), email());\n\nconst Sche"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture10.input.ts",
    "chars": 119,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.transform(\n  v.brand(v.string(), 'Name'),\n  (input) => input.length\n);\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture10.output.ts",
    "chars": 129,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.pipe(\n  v.string(),\n  v.brand('Name'),\n  v.transform((input) => input.le"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture11.input.ts",
    "chars": 213,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.object(\n  {\n    name: v.string(),\n    age: v.number(),\n  },\n  [\n    v.fo"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture11.output.ts",
    "chars": 203,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.pipe(\n  v.object({\n    name: v.string(),\n    age: v.number(),\n  }),\n  v."
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture12.input.ts",
    "chars": 83,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.brand(v.string([v.url()]), 'foo');\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture12.output.ts",
    "chars": 91,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.pipe(v.string(), v.url(), v.brand('foo'));\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture13.input.ts",
    "chars": 379,
    "preview": "import * as v from 'valibot';\n\nconst Schema1 = v.map(\n  v.number(),\n  v.string([v.url(), v.endsWith('@example.com')]),\n "
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture13.output.ts",
    "chars": 423,
    "preview": "import * as v from 'valibot';\n\nconst Schema1 = v.pipe(\n  v.map(v.number(), v.pipe(v.string(), v.url(), v.endsWith('@exam"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture14.input.ts",
    "chars": 490,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.object({\n  normal: v.string([v.email(() => 'Email required')]),\n  union:"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture14.output.ts",
    "chars": 536,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.object({\n  normal: v.pipe(\n    v.string(),\n    v.email(() => 'Email requ"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture15.input.ts",
    "chars": 94,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.coerce(v.date(), (input) => new Date(input));\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture15.output.ts",
    "chars": 114,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.pipe(\n  v.unknown(),\n  v.transform((input) => new Date(input))\n);\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture16.input.ts",
    "chars": 155,
    "preview": "import * as v from 'valibot';\n\nconst flatErrors1 = v.flatten(error);\nconst flatErrors2 = v.flatten([issue]);\nconst flatE"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture16.output.ts",
    "chars": 162,
    "preview": "import * as v from 'valibot';\n\nconst flatErrors1 = v.flatten(error.issues);\nconst flatErrors2 = v.flatten([issue]);\ncons"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture17.input.ts",
    "chars": 180,
    "preview": "import * as v from 'valibot';\n\nconst Schema1 = v.union([v.string(), v.number()], [v.minValue(123)]);\nconst Schema2 = v.u"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture17.output.ts",
    "chars": 198,
    "preview": "import * as v from 'valibot';\n\nconst Schema1 = v.pipe(v.union([v.string(), v.number()]), v.minValue(123));\nconst Schema2"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture2.input.ts",
    "chars": 209,
    "preview": "import * as v from 'valibot';\nimport { type BaseSchema, toCustom } from 'valibot';\n\nv.custom();\nBaseSchema();\nv.Input();"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture2.output.ts",
    "chars": 215,
    "preview": "import * as v from 'valibot';\nimport { type GenericSchema, transform } from 'valibot';\n\nv.check();\nGenericSchema();\nv.In"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture3.input.ts",
    "chars": 201,
    "preview": "import * as v from 'valibot';\n\nv.object({\n  email: v.string([v.email(), v.endsWith('@gmail.com')]),\n  password: v.string"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture3.output.ts",
    "chars": 225,
    "preview": "import * as v from 'valibot';\n\nv.object({\n  email: v.pipe(v.string(), v.email(), v.endsWith('@gmail.com')),\n  password: "
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture4.input.ts",
    "chars": 185,
    "preview": "import * as v from 'valibot';\nimport { object, tuple } from 'valibot';\n\nconst ObjectSchema = object({ key: v.string() },"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture4.output.ts",
    "chars": 217,
    "preview": "import * as v from 'valibot';\nimport { objectWithRest, tupleWithRest } from 'valibot';\n\nconst ObjectSchema = objectWithR"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture5.input.ts",
    "chars": 302,
    "preview": "import { never, object, string, tuple, unknown } from 'valibot';\n\nconst LooseObjectSchema = object({ key: string() }, un"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture5.output.ts",
    "chars": 355,
    "preview": "import {\n  looseObject,\n  looseTuple,\n  never,\n  object,\n  strictObject,\n  strictTuple,\n  string,\n  tuple,\n  unknown,\n} "
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture6.input.ts",
    "chars": 200,
    "preview": "import * as v from 'valibot';\n\nconst ObjectSchema1 = v.object({ foo: v.string() });\nconst ObjectSchema2 = v.object({ bar"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture6.output.ts",
    "chars": 230,
    "preview": "import * as v from 'valibot';\n\nconst ObjectSchema1 = v.object({ foo: v.string() });\nconst ObjectSchema2 = v.object({ bar"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture7.input.ts",
    "chars": 157,
    "preview": "import * as v from 'valibot';\n\nconst BrandedSchema = v.brand(v.string(), 'foo');\nconst TransformedSchema = v.transform(v"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture7.output.ts",
    "chars": 179,
    "preview": "import * as v from 'valibot';\n\nconst BrandedSchema = v.pipe(v.string(), v.brand('foo'));\nconst TransformedSchema = v.pip"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture8.input.ts",
    "chars": 82,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.string([v.toTrimmed(), v.url()]);\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture8.output.ts",
    "chars": 85,
    "preview": "import * as v from 'valibot';\n\nconst Schema = v.pipe(v.string(), v.trim(), v.url());\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture9.input.ts",
    "chars": 72,
    "preview": "import { string, url } from 'valibot';\n\nconst Schema = string([url()]);\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/__testfixtures__/fixture9.output.ts",
    "chars": 84,
    "preview": "import { pipe, string, url } from 'valibot';\n\nconst Schema = pipe(string(), url());\n"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/package.json",
    "chars": 311,
    "preview": "{\n  \"name\": \"migrate-to-v0.31.0\",\n  \"license\": \"MIT\",\n  \"author\": \"Codemod, Inc.\",\n  \"type\": \"module\",\n  \"files\": [\n    "
  },
  {
    "path": "codemod/migrate-to-v0.31.0/src/index.ts",
    "chars": 16176,
    "preview": "import type { Api } from '@codemod.com/workflow';\n\n// List of all schema names\nconst SCHEMAS = [\n  'any',\n  'array',\n  '"
  },
  {
    "path": "codemod/migrate-to-v0.31.0/tsconfig.json",
    "chars": 469,
    "preview": "{\n  \"compilerOptions\": {\n    \"outDir\": \"./dist\",\n    \"esModuleInterop\": true,\n    \"forceConsistentCasingInFileNames\": tr"
  },
  {
    "path": "codemod/zod-to-valibot/.gitignore",
    "chars": 29,
    "preview": "__testfixtures__/*/_actual.ts"
  },
  {
    "path": "codemod/zod-to-valibot/CHANGELOG.md",
    "chars": 324,
    "preview": "# Changelog\n\nAll notable changes to the library will be documented in this file.\n\n## v0.1.2 (December 07, 2025)\n\n- Fix C"
  },
  {
    "path": "codemod/zod-to-valibot/LICENSE.md",
    "chars": 1080,
    "preview": "MIT License\n\nCopyright (c) Fabian Hiller and Elton Lobo\n\nPermission is hereby granted, free of charge, to any person obt"
  },
  {
    "path": "codemod/zod-to-valibot/README.md",
    "chars": 1085,
    "preview": "# Zod to Valibot Codemod\n\nOfficial codemod for automatically converting Zod schemas to Valibot schemas.\n\n## Usage\n\n```ba"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/any-schema/input.ts",
    "chars": 158,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.any();\nconst Schema2 = z.any({message: \"some message\"});\nconst Schema3 = z.a"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/any-schema/output.ts",
    "chars": 148,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.any();\nconst Schema2 = v.any();\nconst Schema3 = v.pipe(v.any(), v.descr"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-element/input.ts",
    "chars": 248,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.array(z.string());\nconst Schema2 = Schema1.element;\nconst Schema3 = z.array("
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-element/output.ts",
    "chars": 269,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.array(v.string());\nconst Schema2 = Schema1.item;\nconst Schema3 = v.arra"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-nonempty/input.ts",
    "chars": 338,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.array(z.string());\nconst Schema2 = Schema1.nonempty();\nconst Schema3 = z.arr"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-nonempty/output.ts",
    "chars": 385,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.array(v.string());\nconst Schema2 = v.pipe(Schema1, v.nonEmpty());\nconst"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-schema/input.ts",
    "chars": 495,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.array(z.string());\nconst Schema2 = z.array(z.string().email());\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-schema/output.ts",
    "chars": 548,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.array(v.string());\nconst Schema2 = v.array(v.pipe(v.string(), v.email()"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-validation-methods/input.ts",
    "chars": 160,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.array(z.string()).min(2);\nconst Schema2 = z.array(z.string()).max(3);\nconst "
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/array-validation-methods/output.ts",
    "chars": 210,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.array(v.string()), v.minLength(2));\nconst Schema2 = v.pipe(v.arr"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/bigint-validation-methods/input.ts",
    "chars": 497,
    "preview": "import { z } from \"zod\";\n\nconst GteSchema = z.bigint().gte(1n);\nconst MinSchema = z.bigint().min(2n);\nconst GtSchema = z"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/bigint-validation-methods/output.ts",
    "chars": 653,
    "preview": "import * as v from \"valibot\";\n\nconst GteSchema = v.pipe(v.bigint(), v.minValue(1n));\nconst MinSchema = v.pipe(v.bigint()"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-bigint-schema/input.ts",
    "chars": 197,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.coerce.bigint();\nconst Schema2 = z.bigint({ coerce: true });\nconst Schema3 ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-bigint-schema/output.ts",
    "chars": 264,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.unknown(), v.toBigint());\nconst Schema2 = v.pipe(v.unknown(), v."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-boolean-schema/input.ts",
    "chars": 106,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.coerce.boolean();\nconst Schema2 = z.boolean({ coerce: true });"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-boolean-schema/output.ts",
    "chars": 134,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.unknown(), v.toBoolean());\nconst Schema2 = v.pipe(v.unknown(), v"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-date-schema/input.ts",
    "chars": 228,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.coerce.date();\nconst Schema2 = z.date({ coerce: true });\nconst Schema3 = z.c"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-date-schema/output.ts",
    "chars": 295,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.unknown(), v.toDate());\nconst Schema2 = v.pipe(v.unknown(), v.to"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-number-schema/input.ts",
    "chars": 207,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.coerce.number();\nconst Schema2 = z.number({ coerce: true });\nconst Schema3 ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-number-schema/output.ts",
    "chars": 264,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.unknown(), v.toNumber());\nconst Schema2 = v.pipe(v.unknown(), v."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-string-schema/input.ts",
    "chars": 197,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.coerce.string();\nconst Schema2 = z.string({ coerce: true });\nconst Schema3 ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/coerce-string-schema/output.ts",
    "chars": 254,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.unknown(), v.toString());\nconst Schema2 = v.pipe(v.unknown(), v."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/custom-schema/input.ts",
    "chars": 719,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.custom<{value: string}>();\nconst Schema2 = z.custom<{value: string}>(input ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/custom-schema/output.ts",
    "chars": 723,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.custom<{value: string}>(() => true);\nconst Schema2 = v.custom<{value: s"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/date-validation-methods/input.ts",
    "chars": 137,
    "preview": "import { z } from \"zod\";\n\nconst MinSchema = z.date().min(new Date(\"2025-04-04\"));\nconst MaxSchema = z.date().max(new Dat"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/date-validation-methods/output.ts",
    "chars": 174,
    "preview": "import * as v from \"valibot\";\n\nconst MinSchema = v.pipe(v.date(), v.minValue(new Date(\"2025-04-04\")));\nconst MaxSchema ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default/input.ts",
    "chars": 368,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.boolean().default(false);\nconst Schema2 = z.number().default(() => Math.floo"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default/output.ts",
    "chars": 437,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.optional(v.boolean(), false);\nconst Schema2 = v.optional(v.number(), ()"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default-import/input.ts",
    "chars": 68,
    "preview": "import someName from \"zod\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default-import/output.ts",
    "chars": 77,
    "preview": "import * as someName from \"valibot\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default-import-with-alias/input.ts",
    "chars": 83,
    "preview": "import { default as someName } from \"zod\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default-import-with-alias/output.ts",
    "chars": 77,
    "preview": "import * as someName from \"valibot\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default-import-with-specific-alias/input.ts",
    "chars": 69,
    "preview": "import { default as z } from \"zod\";\n\nconst StringSchema = z.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/default-import-with-specific-alias/output.ts",
    "chars": 63,
    "preview": "import * as v from \"valibot\";\n\nconst StringSchema = v.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/describe/input.ts",
    "chars": 121,
    "preview": "import { z } from \"zod\";\n\nconst Schema = z.string().describe(\"some description\");\nconst description = Schema.description"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/describe/output.ts",
    "chars": 146,
    "preview": "import * as v from \"valibot\";\n\nconst Schema = v.pipe(v.string(), v.description(\"some description\"));\nconst description ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/discriminated-union-schema/input.ts",
    "chars": 550,
    "preview": "import { z } from \"zod\";\n\nconst ResultSchema1 = z.discriminatedUnion(\"status\", [\n  z.object({ status: z.literal(\"success"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/discriminated-union-schema/output.ts",
    "chars": 517,
    "preview": "import * as v from \"valibot\";\n\nconst ResultSchema1 = v.variant(\"status\", [\n  v.object({ status: v.literal(\"success\"), da"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/instanceof-schema/input.ts",
    "chars": 61,
    "preview": "import { z } from \"zod\";\n\nconst Schema = z.instanceof(Error);"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/instanceof-schema/output.ts",
    "chars": 64,
    "preview": "import * as v from \"valibot\";\n\nconst Schema = v.instance(Error);"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/intersection-schema/input.ts",
    "chars": 256,
    "preview": "import { z } from \"zod\";\n\nconst Person = z.object({\n  name: z.string(),\n});\n\nconst Employee = z.object({\n  role: z.strin"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/intersection-schema/output.ts",
    "chars": 248,
    "preview": "import * as v from \"valibot\";\n\nconst Person = v.object({\n  name: v.string(),\n});\n\nconst Employee = v.object({\n  role: v."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/literal-schema/input.ts",
    "chars": 488,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.literal(\"valibot\");\nconst Schema2 = z.literal(\"valibot\", {message: 'should b"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/literal-schema/output.ts",
    "chars": 428,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.literal(\"valibot\");\nconst Schema2 = v.literal(\"valibot\", 'should be \"va"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/map-schema/input.ts",
    "chars": 148,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.map(z.number(), z.boolean());\nconst Schema2 = z.map(z.number(), z.boolean(),"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/map-schema/output.ts",
    "chars": 142,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.map(v.number(), v.boolean());\nconst Schema2 = v.map(v.number(), v.boole"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/multiple-imports-from-zod/input.ts",
    "chars": 65,
    "preview": "import { z, ZodAnyType } from \"zod\";\n\nconst Schema1 = z.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/multiple-imports-from-zod/output.ts",
    "chars": 200,
    "preview": "/* @valibot-migrate: unable to transform imports from Zod to Valibot: Expected exactly one import specifier from \"zod\" o"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/named-import/input.ts",
    "chars": 58,
    "preview": "import { z } from \"zod\";\n\nconst StringSchema = z.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/named-import/output.ts",
    "chars": 63,
    "preview": "import * as v from \"valibot\";\n\nconst StringSchema = v.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/named-import-with-alias/input.ts",
    "chars": 77,
    "preview": "import { z as someName } from \"zod\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/named-import-with-alias/output.ts",
    "chars": 77,
    "preview": "import * as someName from \"valibot\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/named-import-with-specific-alias/input.ts",
    "chars": 63,
    "preview": "import { z as z } from \"zod\";\n\nconst StringSchema = z.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/named-import-with-specific-alias/output.ts",
    "chars": 63,
    "preview": "import * as v from \"valibot\";\n\nconst StringSchema = v.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/namespace-import/input.ts",
    "chars": 73,
    "preview": "import * as someName from \"zod\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/namespace-import/output.ts",
    "chars": 77,
    "preview": "import * as someName from \"valibot\";\n\nconst StringSchema = someName.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/nan-schema/input.ts",
    "chars": 158,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.nan();\nconst Schema2 = z.nan({message: \"some message\"});\nconst Schema3 = z.n"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/nan-schema/output.ts",
    "chars": 162,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.nan();\nconst Schema2 = v.nan(\"some message\");\nconst Schema3 = v.pipe(v."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/native-enum/input.ts",
    "chars": 475,
    "preview": "import { z } from \"zod\";\n\n// TypeScript enum\nenum Fruit {\n\tOrange,\n\tApple = \"apple\",\n\tBanana = \"banana\",\n}\nconst FruitEn"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/native-enum/output.ts",
    "chars": 462,
    "preview": "import * as v from \"valibot\";\n\n// TypeScript enum\nenum Fruit {\n\tOrange,\n\tApple = \"apple\",\n\tBanana = \"banana\",\n}\nconst Fr"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/never-schema/input.ts",
    "chars": 164,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.never();\nconst Schema2 = z.never({message: \"some message\"});\nconst Schema3 ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/never-schema/output.ts",
    "chars": 168,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.never();\nconst Schema2 = v.never(\"some message\");\nconst Schema3 = v.pip"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/null-schema/input.ts",
    "chars": 161,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.null();\nconst Schema2 = z.null({message: \"some message\"});\nconst Schema3 = z"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/null-schema/output.ts",
    "chars": 165,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.null();\nconst Schema2 = v.null(\"some message\");\nconst Schema3 = v.pipe("
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/nullable-schema/input.ts",
    "chars": 613,
    "preview": "import { z } from \"zod\";\n\n// nullable outside object\nconst Schema1 = z.string().nullable();\nconst Schema2 = z.nullable(z"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/nullable-schema/output.ts",
    "chars": 646,
    "preview": "import * as v from \"valibot\";\n\n// nullable outside object\nconst Schema1 = v.nullable(v.string());\nconst Schema2 = v.null"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/nullish-schema/input.ts",
    "chars": 483,
    "preview": "import { z } from \"zod\";\n\n// nullish outside object\nconst Schema1 = z.string().nullish();\nconst Schema2 = z.string();\nco"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/nullish-schema/output.ts",
    "chars": 572,
    "preview": "import * as v from \"valibot\";\n\n// nullish outside object\nconst Schema1 = v.optional(v.nullable(v.string()));\nconst Schem"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/number-validation-methods/input.ts",
    "chars": 646,
    "preview": "import { z } from \"zod\";\n\nconst GteSchema = z.number().gte(1);\nconst MinSchema = z.number().min(2);\nconst GtSchema = z.n"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/number-validation-methods/output.ts",
    "chars": 858,
    "preview": "import * as v from \"valibot\";\n\nconst GteSchema = v.pipe(v.number(), v.minValue(1));\nconst MinSchema = v.pipe(v.number(),"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-catchall/input.ts",
    "chars": 368,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.object({key: z.string()}).catchall(z.null());\nconst Schema2 = z.object({key:"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-catchall/output.ts",
    "chars": 390,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.objectWithRest({key: v.string()}, v.null());\nconst Schema2 = v.objectWi"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-deepPartial/input.ts",
    "chars": 232,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});\nconst Schema2 = S"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-deepPartial/output.ts",
    "chars": 239,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-extend/input.ts",
    "chars": 3920,
    "preview": "import { z } from \"zod\";\n\n// plain\nconst Schema1 = z.object({foo: z.string()}).extend({bar: z.number()});\nconst Schema2 "
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-extend/output.ts",
    "chars": 5732,
    "preview": "import * as v from \"valibot\";\n\n// plain\nconst Schema1 = v.object({\n  foo: v.string(),\n  bar: v.number()\n});\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-keyof/input.ts",
    "chars": 259,
    "preview": "import { z } from \"zod\";\n\nconst ObjectSchema = z.object({apple: z.string(), banana: z.number(), orange: z.boolean()});\nc"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-keyof/output.ts",
    "chars": 266,
    "preview": "import * as v from \"valibot\";\n\nconst ObjectSchema = v.object({apple: v.string(), banana: v.number(), orange: v.boolean()"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-merge/input.ts",
    "chars": 4237,
    "preview": "import { z } from \"zod\";\n\n// plain\nconst Schema1 = z.object({foo: z.string()}).merge(z.object({bar: z.number()}));\nconst"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-merge/output.ts",
    "chars": 7945,
    "preview": "import * as v from \"valibot\";\n\n// plain\nconst Schema1 = v.object({\n  foo: v.string(),\n  bar: v.number()\n});\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-omit/input.ts",
    "chars": 339,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});\nconst Schema2 = S"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-omit/output.ts",
    "chars": 320,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-partial/input.ts",
    "chars": 636,
    "preview": "import { z } from \"zod\";\n\n// make all keys optional\nconst Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.bool"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-partial/output.ts",
    "chars": 613,
    "preview": "import * as v from \"valibot\";\n\n// make all keys optional\nconst Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-passthrough/input.ts",
    "chars": 348,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.object({key: z.string()}).passthrough();\nconst Schema2 = z.object({key: z.st"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-passthrough/output.ts",
    "chars": 497,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.looseObject({key: v.string()});\nconst Schema2 = v.looseObject({key: v.s"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-pick/input.ts",
    "chars": 313,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.boolean()});\nconst Schema2 = S"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-pick/output.ts",
    "chars": 312,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.object({k1: v.string(), k2: v.number(), k3: v.boolean()});\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-required/input.ts",
    "chars": 702,
    "preview": "import { z } from \"zod\";\n\n// make all keys required\nconst Schema1 = z.object({k1: z.string(), k2: z.number(), k3: z.bool"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-required/output.ts",
    "chars": 689,
    "preview": "import * as v from \"valibot\";\n\n// make all keys required\nconst Schema1 = v.partial(v.object({k1: v.string(), k2: v.numbe"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-shape/input.ts",
    "chars": 122,
    "preview": "import { z } from \"zod\";\n\nconst ObjectSchema = z.object({key: z.string()});\n\nconst StringSchema = ObjectSchema.shape.key"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-shape/output.ts",
    "chars": 129,
    "preview": "import * as v from \"valibot\";\n\nconst ObjectSchema = v.object({key: v.string()});\n\nconst StringSchema = ObjectSchema.entr"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-strict/input.ts",
    "chars": 328,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.object({key: z.string()}).strict();\nconst Schema2 = z.object({key: z.string("
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-strict/output.ts",
    "chars": 501,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.strictObject({key: v.string()});\nconst Schema2 = v.strictObject({key: v"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-strip/input.ts",
    "chars": 927,
    "preview": "import { z } from \"zod\";\n\n// passthrough\nconst Schema1 = z.object({key: z.string()}).passthrough().strip();\nconst Schema"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/object-strip/output.ts",
    "chars": 1191,
    "preview": "import * as v from \"valibot\";\n\n// passthrough\nconst Schema1 = v.object({key: v.string()});\nconst Schema2 = v.object({key"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/optional-schema/input.ts",
    "chars": 613,
    "preview": "import { z } from \"zod\";\n\n// optional outside object\nconst Schema1 = z.string().optional();\nconst Schema2 = z.optional(z"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/optional-schema/output.ts",
    "chars": 646,
    "preview": "import * as v from \"valibot\";\n\n// optional outside object\nconst Schema1 = v.optional(v.string());\nconst Schema2 = v.opti"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/or/input.ts",
    "chars": 127,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.string().or(z.number());\nconst Schema2 = z.string().or(z.number()).or(z.bool"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/or/output.ts",
    "chars": 156,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.union([v.string(), v.number()]);\nconst Schema2 = v.union([v.union([v.st"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/parsing/input.ts",
    "chars": 596,
    "preview": "import { z } from \"zod\";\n\nconst Schema = z.string();\n\nconst output1 = Schema.parse(\"to parse\");\n\nconst output2 = Schema."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/parsing/output.ts",
    "chars": 636,
    "preview": "import * as v from \"valibot\";\n\nconst Schema = v.string();\n\nconst output1 = v.parse(Schema, \"to parse\");\n\nconst output2 ="
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/readonly/input.ts",
    "chars": 238,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.array(z.string()).readonly();\nconst Schema2 = z.map(z.string(), z.date()).re"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/readonly/output.ts",
    "chars": 294,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.array(v.string()), v.readonly());\nconst Schema2 = v.pipe(v.map(v"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/record-schema/input.ts",
    "chars": 257,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.record(z.number());\nconst Schema2 = z.record(z.number(), {message: \"some mes"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/record-schema/output.ts",
    "chars": 264,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.record(v.string(), v.number());\nconst Schema2 = v.record(v.string(), v."
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/refine/input.ts",
    "chars": 737,
    "preview": "import { z } from \"zod\";\n\n// Basic refine\nconst Schema1 = z.number().refine((val) => val < 100, \"Must be less then 100\")"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/refine/output.ts",
    "chars": 811,
    "preview": "import * as v from \"valibot\";\n\n// Basic refine\nconst Schema1 = v.pipe(v.number(), v.check((val) => val < 100, \"Must be l"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/schema-chain/input.ts",
    "chars": 512,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.string().trim().email();\nconst output1 = z.string().parse(\"valibot@example.c"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/schema-chain/output.ts",
    "chars": 596,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.string(), v.trim(), v.email());\nconst output1 = v.parse(v.string"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/schema-options/input.ts",
    "chars": 3037,
    "preview": "import { z } from \"zod\";\n\n// ------------ single ------------\n// invalid_type_error\nconst Schema1 = z.string({invalid_ty"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/schema-options/output.ts",
    "chars": 2566,
    "preview": "import * as v from \"valibot\";\n\n// ------------ single ------------\n// invalid_type_error\nconst Schema1 = v.string(\"must "
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/set-schema/input.ts",
    "chars": 122,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.set(z.number());\nconst Schema2 = z.set(z.number(), {message: \"some message\"}"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/set-schema/output.ts",
    "chars": 116,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.set(v.number());\nconst Schema2 = v.set(v.number(), \"some message\");"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/set-validation-methods/input.ts",
    "chars": 715,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.set(z.string()).nonempty();\nconst Schema2 = z.set(z.string()).nonempty(\"some"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/set-validation-methods/output.ts",
    "chars": 836,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.pipe(v.set(v.string()), v.minSize(1));\nconst Schema2 = v.pipe(v.set(v.s"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/specific-default-import/input.ts",
    "chars": 54,
    "preview": "import z from \"zod\";\n\nconst StringSchema = z.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/specific-default-import/output.ts",
    "chars": 63,
    "preview": "import * as v from \"valibot\";\n\nconst StringSchema = v.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/specific-namespace-import/input.ts",
    "chars": 59,
    "preview": "import * as z from \"zod\";\n\nconst StringSchema = z.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/specific-namespace-import/output.ts",
    "chars": 63,
    "preview": "import * as v from \"valibot\";\n\nconst StringSchema = v.string();"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/string-validation-methods/input.ts",
    "chars": 1770,
    "preview": "import { z } from \"zod\";\n\nconst EmailSchema = z.string().email();\nconst UrlSchema = z.string().url();\nconst EmojiSchema "
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/string-validation-methods/output.ts",
    "chars": 2072,
    "preview": "import * as v from \"valibot\";\n\nconst EmailSchema = v.pipe(v.string(), v.email());\nconst UrlSchema = v.pipe(v.string(), v"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/symbol-schema/input.ts",
    "chars": 167,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.symbol();\nconst Schema2 = z.symbol({message: \"some message\"});\nconst Schema3"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/symbol-schema/output.ts",
    "chars": 171,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.symbol();\nconst Schema2 = v.symbol(\"some message\");\nconst Schema3 = v.p"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/transform/input.ts",
    "chars": 808,
    "preview": "import { z } from \"zod\";\n\n// Basic transform\nconst Schema1 = z.number().transform((val) => val * 2);\n\n// Transform with "
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/transform/output.ts",
    "chars": 904,
    "preview": "import * as v from \"valibot\";\n\n// Basic transform\nconst Schema1 = v.pipe(v.number(), v.transform((val) => val * 2));\n\n//"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/tuple-schema/input.ts",
    "chars": 433,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.tuple([z.string()]);\nconst Schema2 = z.tuple([z.string()], {message: \"some m"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/tuple-schema/output.ts",
    "chars": 444,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.tuple([v.string()]);\nconst Schema2 = v.tuple([v.string()], \"some messag"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/type-inference/input.ts",
    "chars": 169,
    "preview": "import { z } from \"zod\";\n\nconst Schema = z.string();\n\ntype Input = z.input<typeof Schema>;\ntype Output1 = z.output<typeo"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/type-inference/output.ts",
    "chars": 190,
    "preview": "import * as v from \"valibot\";\n\nconst Schema = v.string();\n\ntype Input = v.InferInput<typeof Schema>;\ntype Output1 = v.In"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/undefined-schema/input.ts",
    "chars": 176,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.undefined();\nconst Schema2 = z.undefined({message: \"some message\"});\nconst S"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/undefined-schema/output.ts",
    "chars": 180,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.undefined();\nconst Schema2 = v.undefined(\"some message\");\nconst Schema3"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/union-schema/input.ts",
    "chars": 180,
    "preview": "import { z } from \"zod\";\n\nconst Schema1 = z.union([z.string(), z.number(), z.boolean()]);\nconst Schema2 = z.union([z.str"
  },
  {
    "path": "codemod/zod-to-valibot/__testfixtures__/union-schema/output.ts",
    "chars": 174,
    "preview": "import * as v from \"valibot\";\n\nconst Schema1 = v.union([v.string(), v.number(), v.boolean()]);\nconst Schema2 = v.union(["
  }
]

// ... and 3019 more files (download for full content)

About this extraction

This page contains the full source code of the open-circle/valibot GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 3219 files (7.0 MB), approximately 2.0M tokens, and a symbol index with 2524 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!