Genera interfaces TypeScript desde cualquier JSON
También podrías necesitar
Pegar un JSON y obtener interfaces TypeScript listas para usar es uno de los flujos más repetidos al trabajar con APIs. Esta herramienta analiza la estructura de tu JSON en tiempo real e infiere los tipos automáticamente: objetos anidados generan interfaces separadas, arrays de objetos crean tipos nombrados, los valores null se reflejan como `T | null`, y las propiedades ausentes en algún item del array se marcan como opcionales. Todas las propiedades son `readonly` por defecto para fomentar la inmutabilidad.
¿Cómo se llaman las interfaces de objetos anidados?
El generador usa el nombre de la propiedad en PascalCase. Por ejemplo, una propiedad `address` genera una interfaz `Address`. Si la propiedad es un array (ej. `users`), infiere el nombre singular `User` para cada item.
¿Por qué se usa `readonly`?
Las propiedades `readonly` en TypeScript previenen mutaciones accidentales, algo especialmente útil con respuestas de APIs que deben tratarse como inmutables. Puedes eliminarlo si necesitas mutabilidad.
¿Cuándo una propiedad es opcional (`?`)?
Cuando el JSON raíz es un array de objetos y algún item no tiene esa propiedad. Si la propiedad existe en todos los items pero es `null` en alguno, se genera como `tipo | null` (requerida pero anulable).
¿Qué pasa con nombres de propiedades que no son identificadores válidos?
Si una propiedad tiene caracteres especiales (guiones, espacios, etc.), se envuelve en comillas: `readonly 'mi-propiedad': string;`. TypeScript lo soporta completamente.
¿Puedo usar el output directamente en mi proyecto?
Sí. El código generado es TypeScript estándar. Copia las interfaces en un archivo `.ts` o `.d.ts` y úsalas como tipos en tus funciones, servicios o DTOs.