UTILS.
Privadas por defecto
TS

JSON a TypeScript

Genera interfaces de TypeScript a partir de una muestra de JSON, infiriendo los tipos de forma recursiva.

Tus archivos se quedan en este dispositivo

Los archivos se procesan en tu navegador, sin subirse a ningún servidor. El sitio descarga el código y los recursos necesarios. Sin cuentas ni rastreadores.

Usa Descargar para guardar esta herramienta como un archivo HTML y usarla sin conexión.

Privacidad →
salida

Prueba un ejemplo resuelto

Ejemplo

Pega [{"id":1},{"id":2,"note":"late"}]. El resultado es type Root = RootItem[]; y una interfaz RootItem con id: number y note?: string, porque note falta en el primer elemento.

Ten en cuenta

Los tipos salen solo de la muestra que pegas. Un campo que aquí es una cadena puede ser null en otras respuestas, y los números no se separan en enteros y decimales, así que contrasta el resultado con la documentación de la API.

Acerca de esta herramienta

Pega una muestra JSON, como una respuesta de API, y obtén las interfaces TypeScript correspondientes, generadas por completo en tu navegador. Se revisan todos los elementos de un array: los campos que faltan en algunos pasan a ser opcionales y los valores de tipos distintos se convierten en uniones.

Preguntas frecuentes

¿Cómo se gestionan los objetos anidados?
Cada objeto anidado se convierte en su propia interfaz, con nombre en PascalCase según su clave. Los objetos dentro de arrays llevan el sufijo Item, como TagsItem.
¿Cómo se tipan los arrays?
Se revisan todos los elementos. Los objetos se combinan en una interfaz, los campos que faltan en alguno se marcan como opcionales con ? y los valores mixtos se convierten en una unión como (string | number)[]. Los arrays vacíos pasan a ser unknown[].

Más herramientas