Générer une interface TypeScript depuis du JSON
Générez automatiquement une interface TypeScript à partir d'un exemple JSON.
Comment ça marche
Pratique quand vous consommez une API pour laquelle vous n'avez pas de schéma ni de client TypeScript généré : collez un exemple concret de réponse JSON, donnez un nom à l'interface (par exemple `User` ou `ApiResponse`), et récupérez immédiatement les `interface` TypeScript correspondantes, y compris pour les objets imbriqués (générés comme des sous-interfaces nommées) et les tableaux (typés en `Type[]`), sans avoir à les écrire à la main.
Comment les tableaux et les valeurs `null` sont-ils typés ?
Un tableau est typé d'après ses éléments : `["a", "b"]` devient `string[]`, et un tableau d'objets devient `MonObjet[]` avec une sous-interface générée pour sa forme. Si un tableau contient un mélange de types (par exemple des chaînes et des valeurs `null`), l'outil génère une union comme `(string | null)[]`. Un champ qui vaut uniquement `null` dans votre exemple est typé `null` : comme aucune autre valeur n'est disponible pour deviner le vrai type, il est recommandé d'élargir ce type manuellement (par exemple en `string | null`) une fois que vous connaissez la valeur réelle attendue.
Le résultat est-il garanti 100% correct ?
Non : cet outil infère les types à partir d'un seul exemple, il ne remplace donc pas un vrai schéma (OpenAPI, JSON Schema) ou une génération de types côté serveur. Un champ optionnel absent de votre exemple, ou un champ numérique qui peut parfois être une chaîne, ne sera pas détecté. Utilisez le résultat comme point de départ à affiner, surtout pour une API dont la réponse peut varier.
La génération s'exécute 100% localement dans votre navigateur via WebAssembly : votre JSON, même issu d'une API interne ou privée, ne quitte jamais votre appareil.