svg2all

JSON in interfacce TypeScript

Genera interfacce TypeScript da un esempio JSON, con campi opzionali e union.

Funziona nel tuo browser – il file non viene caricato

Caricamento dello strumento …

Domande frequenti

Il mio file viene caricato?

No. La conversione avviene interamente nel tuo browser. Il file non lascia mai il tuo dispositivo – non c'è alcun server che possa vederlo. Una volta caricata la pagina, lo strumento funziona persino offline.

Come vengono gestiti gli array con oggetti diversi?

Tutti gli elementi di un array vengono uniti in un'unica interfaccia. Una chiave presente solo in alcuni elementi diventa opzionale («name?: string»); una chiave con tipi diversi diventa una union («id: number | string»). Il tipo dell'elemento prende il nome della proprietà al singolare: da «users» nasce «User».

Cos'è l'opzione Record<string, T>?

Il JSON contiene spesso mappe con dati come chiavi, ad esempio {"2026-08-24": {…}, "2026-08-25": {…}}. Un campo di interfaccia per ogni data sarebbe inutile, perciò con l'opzione attiva questi oggetti diventano Record<string, T>. Disattivala per ottenere sempre interfacce.

Perché nell'output compare «unknown»?

Un array vuoto o un valore sempre null non porta informazioni sul tipo, quindi il generatore scrive unknown[] o null. Sostituiscilo a mano quando sai cosa contiene il campo – il resto del codice è pronto all'uso.