JSON a TypeScript
JSON a TypeScript convierte ejemplos JSON en interfaces y alias de tipo TypeScript, deduce campos opcionales, uniones y la estructura de elementos de arrays, y es útil para modelar respuestas de APIs, inicializar tipos frontend y organizar datos mock.
JSON
Carácter
0 / 500,000
TypeScript
Inicio rápido
Escenarios comunes
Convierte rápidamente respuestas reales de APIs en tipos TypeScript listos para usarse en páginas frontend, clientes SDK o pruebas de integración.
Antes de fijar el contrato definitivo, usa muestras JSON para observar cómo se infieren campos opcionales, null y tipos unión.
Convierte datos JSON de prueba en definiciones rápidas de tipo para fixtures, historias de Storybook o prototipos.
Cuando cambia la estructura de la respuesta del backend, usa el JSON más reciente para comprobar si declaraciones anidadas como User o Meta necesitan actualizarse.
Consejos de uso
Limitaciones y compatibilidad
Privacidad y seguridad
Preguntas frecuentes
Las raíces de objeto generan declaraciones interface. Las raíces de arreglo y los valores primitivos generan alias type. Para un arreglo de objetos en la raíz, la raíz sigue siendo un alias type como type Root = RootItem[];, y la estructura del elemento se declara por separado.
Sin elementos o propiedades de muestra, el generador no puede inferir algo más preciso. Mantiene los arreglos vacíos como unknown[] y los objetos vacíos como interfaces que extienden Record<string, unknown> hasta que pegues datos más representativos.
Si el nombre que introduces ya es un identificador válido de TypeScript, se conserva exactamente, por ejemplo APIResponse. Los nombres no válidos se normalizan a un identificador PascalCase estable antes de generar.
El generador actual normaliza los nombres anidados a partir de las rutas de propiedad y resuelve colisiones de forma determinista. Por eso la salida nueva usa nombres como User, Meta o FooBarClass en vez de prefijar siempre el nombre raíz.
El contrato de salida actual devuelve intencionalmente declaraciones simples sin export. Así la salida se mantiene neutral y tú puedes añadir export según el estilo de tu proyecto.