Schemat Zod na typ TypeScript
Konwertuj schemat Zod na pasujący interfejs lub typ TypeScript bezpośrednio bez dodatkowych kroków.
Schemat Zod na typ TypeScript
Wklej schemat Zod — definicję `z.object({...})`, opcjonalnie przypisaną do `const` — a to narzędzie wygeneruje interfejs TypeScript lub alias typu, który by `z.infer` utworzył. Przydatne, gdy schemat jest źródłem prawdy i chcesz pasujący typ statyczny bez uruchamiania kroków kompilacji lub CLI codegenu: do szybkiego sprawdzenia podczas pisania kodu walidacji, do dokumentacji kształtu API z jego schematu Zod, lub do przeniesienia schematu do bazy kodu, która wymaga tylko typów.
Opcje wyjścia kontrolują kształt wygenerowanego kodu. Wybierz między `interface` a `type` alias (schemat bez obiektu, taki jak gołe unia lub ciąg, zawsze staje się aliasem typu, ponieważ interfejsy TypeScript mogą opisywać tylko kształty obiektów) i czy deklaracja jest `export`owana. Pola opcjonalne mogą być renderowane jako znak zapytania (`field?: string`) lub jako jawna unia `string | undefined`. Oddzielny przełącznik utrzymuje członków `z.enum` jako unię literalną zamiast ich zwijania na `string`, a inny zmienia wywołania `.describe("...")` na blok komentarza nad każdym polem.
Zagnieżdżone obiekty, tablice, krotki, unie, przecięcia, rekordy, mapy i zbiory całe są konwertowane na ich TypeScript równoważniki, a wspólne połączenia w łańcuch, które tylko dodają walidację w czasie wykonywania — `.min()`, `.email()`, `.refine()`, `.default()` i podobne — są rozpoznawane i pomijane zamiast przerywać konwersję. Schematy rekurencyjne zbudowane z `z.lazy(() => Schema)` są rozwiązywane z powrotem do typu samoreferencyjnego, gdy pasujące `const` jest częścią tego samego wejścia; wyłącz tę opcję, aby zamiast tego zobaczyć `any`. Koniec wiersza Windows i Unix są obsługiwane w ten sam sposób, a licznik pod wyjściem raportuje, ile deklaracji i pól zostało wygenerowanych.
Wszystko działa w Twojej przeglądarce. Schemat, który wklejasz, nigdy nie jest przesyłany nigdzie, więc bezpiecznie go używać z kodem walidacji niejawnego API. Skopiuj wynik, pobierz go jako plik `.txt` lub wyślij go bezpośrednio do innego narzędzia, aby kontynuować pracę.