svg2all

JSON en interfaces TypeScript

Génère des interfaces TypeScript à partir d'un exemple JSON, avec champs optionnels et unions.

Fonctionne dans votre navigateur – le fichier n'est jamais envoyé

Chargement de l'outil …

Questions fréquentes

Mon fichier est-il envoyé ?

Non. La conversion se fait entièrement dans votre navigateur. Le fichier ne quitte jamais votre appareil – aucun serveur ne peut le voir. Une fois la page chargée, l'outil fonctionne même hors ligne.

Comment sont traités les tableaux d'objets différents ?

Tous les éléments d'un tableau sont fusionnés en une seule interface. Une clé présente dans certains éléments seulement devient optionnelle (« name?: string ») ; une clé aux types différents devient une union (« id: number | string »). Le type de l'élément porte le nom de la propriété au singulier : « users » donne « User ».

Qu'est-ce que l'option Record<string, T> ?

Le JSON contient souvent des maps dont les clés sont des données, par exemple {"2026-08-24": {…}, "2026-08-25": {…}}. Un champ d'interface par date serait inutile ; avec l'option activée, ces objets deviennent Record<string, T>. Désactivez-la pour obtenir toujours des interfaces.

Pourquoi la sortie contient-elle « unknown » ?

Un tableau vide ou une valeur toujours null ne porte aucune information de type ; le générateur écrit alors unknown[] ou null. Remplacez-le à la main dès que vous savez ce que contient le champ – le reste du code est prêt à l'emploi.