Over deze tool
De tool JSON Schema naar TypeScript compileert een JSON Schema-document naar TypeScript-interfaces en type-aliassen, en doet wat de populaire bibliotheek json-schema-to-typescript doet zonder een toolchain te installeren. Anders dan de JSON-voorbeeldconverters leest deze een echt schema: het loopt het schema-object door en zet type:'object' om in een interface waarin de in required vermelde sleutels niet-optioneel zijn en de rest met ? gemarkeerd wordt.
Alles wordt lokaal in je browser geparseerd en gegenereerd met JSON.parse en gewoon JavaScript, dus je schema verlaat de pagina nooit. String-schema's met een enum worden een union van string-literals; gewone string, number/integer, boolean en null worden op hun TypeScript-equivalenten afgebeeld; arrays worden T[] (een tuple wanneer items een array is). Combinators worden ondersteund — allOf wordt een intersection (A & B) en anyOf / oneOf worden unions (A | B) — en een nullable type:[T,'null'] wordt T | null.
Referenties worden op naam opgelost: $ref die naar #/definitions/X of #/$defs/X wijst produceert een benoemde typereferentie, en elke definitie wordt gegenereerd als een eigen export interface of export type. additionalProperties voegt een index-signatuur [key: string]: T toe. De naam van het root-type valt terug op de title of $id van het schema. Schakel tussen interface- en type-uitvoer en of schema-description-strings JSDoc /** */-commentaren worden. Kopieer het resultaat of download een .ts-bestand.