O tym narzędziu
Narzędzie JSON Schema na TypeScript kompiluje dokument JSON Schema do interfejsów i aliasów typów TypeScript, robiąc to, co robi popularna biblioteka json-schema-to-typescript, bez instalowania łańcucha narzędzi. W przeciwieństwie do konwerterów przykładów JSON, to narzędzie czyta rzeczywisty schemat: przechodzi przez obiekt schematu i zamienia type:'object' w interfejs, w którym klucze wymienione w required są nieopcjonalne, a reszta jest oznaczona ?.
Wszystko jest parsowane i generowane lokalnie w Twojej przeglądarce za pomocą JSON.parse i czystego JavaScriptu, więc Twój schemat nigdy nie opuszcza strony. Schematy łańcuchów z enum stają się unią literałów łańcuchowych; zwykły string, number/integer, boolean i null mapują się na swoje odpowiedniki TypeScript; tablice stają się T[] (krotka, gdy items jest tablicą). Kombinatory są obsługiwane — allOf staje się przecięciem (A & B), a anyOf / oneOf stają się uniami (A | B) — a nullable type:[T,'null'] staje się T | null.
Referencje są rozwiązywane po nazwie: $ref wskazujący na #/definitions/X lub #/$defs/X emituje nazwaną referencję typu, a każda definicja jest generowana jako własny export interface lub export type. additionalProperties dodaje sygnaturę indeksu [key: string]: T. Nazwa typu głównego przechodzi na title lub $id schematu. Przełącz wyjście interface-vs-type oraz to, czy łańcuchy description schematu stają się komentarzami JSDoc /** */. Skopiuj wynik lub pobierz plik .ts.