Zod-schema naar TypeScript-type
Converteer Zod-schemadefinities naar TypeScript-interfaces of type-aliases. Genereer de exacte type die z.infer voor uw schema zou produceren.
Zod-schema naar TypeScript-type
Plak een Zod-schema in — een `z.object({...})`-definitie, eventueel toegewezen aan een `const` — en dit hulpmiddel geeft de TypeScript-interface of type-alias uit die `z.infer` ervoor zou produceren. Het is nuttig wanneer het schema de bron van waarheid is en u het overeenkomstige statische type wilt zonder een buildstap of CLI-codegen: voor snelle sanity checks bij het schrijven van validatiecode, voor het documenteren van een API's vorm vanuit het Zod-schema, of voor het porteerbaar maken van een schema naar een codebase die alleen de types nodig heeft.
De uitvoeropties bepalen de vorm van de gegenereerde code. Kies tussen een `interface` en een `type`-alias (een niet-object-schema, zoals een loutere union of string, wordt altijd een type-alias, omdat TypeScript-interfaces alleen objectvormen kunnen beschrijven), en of de declaratie `export`eerd is. Optionele velden kunnen worden weergegeven als een vraagteken (`field?: string`) of als een expliciete `string | undefined`-union. Een aparte schakelaar houdt de leden van `z.enum` als een letterlijke union in plaats van ze in te storten tot `string`, en een ander verandert `.describe("...")`-aanroepen in een docblock-opmerking boven elk veld.
Gevormde objecten, arrays, tuples, unions, intersecties, records, maps en sets converteren allemaal naar hun TypeScript-equivalenten, en veel voorkomende kettingoproepen die alleen runtime-validatie toevoegen — `.min()`, `.email()`, `.refine()`, `.default()` en dergelijke — worden herkend en overgeslagen in plaats van de conversie te breken. Recursieve schemas die zijn gebouwd met `z.lazy(() => Schema)` worden opgelost naar een zelf-referentiserend type wanneer de overeenkomstige `const` deel van dezelfde invoer uitmaakt; schakel die optie uit om in plaats daarvan `any` te zien. Windows- en Unix-regeleinden worden op dezelfde manier afgehandeld, en de teller onder de uitvoer meldt hoeveel declaraties en velden zijn gegenereerd.
Alles wordt in uw browser uitgevoerd. Het schema dat u plakt, wordt nooit ergens geüpload, dus het is veilig om te gebruiken met validatiecode van een onuitgebrachte API. Kopieer het resultaat, download het als een `.txt`-bestand, of stuur het rechtstreeks naar een ander hulpmiddel om verder mee te werken.