Los resultados se ofrecen solo con fines informativos y pueden contener errores. Verifica la información importante de forma independiente. El uso de esta herramienta es bajo tu propia responsabilidad.
Qué hace esta herramienta
El Convertidor de JSON a TypeScript lee un objeto JSON de ejemplo y genera las interfaces TypeScript correspondientes. Cada objeto anidado recibe su propia interfaz con nombre, y cada propiedad recibe un tipo deducido de su valor: string, number, boolean, null, un tipo array u otra interfaz.
Indica el nombre de la interfaz en el campo Nombre de la interfaz. Si el JSON es un array, los tipos se toman de su primer elemento y se añade un tipo de lista como type UserList = User[];.
Cuándo usarla
- Tipar la respuesta de una API que llamas desde un frontend en TypeScript o un servicio en Node.js.
- Empezar un modelo de datos a partir de un payload real en lugar de escribir las interfaces a mano.
- Documentar para tu equipo la forma del payload de un webhook o de un evento.
Ejemplo práctico
Entrada
{"id": 1, "name": "Ana", "active": true, "address": {"city": "Lisbon"}, "tags": ["admin"]}
Salida
interface Address {
city: string;
}
interface User {
id: number;
name: string;
active: boolean;
address: Address;
tags: string[];
}Preguntas sobre esta herramienta
¿Se detectan las propiedades opcionales?
No. Los tipos se deducen de un único ejemplo, así que una propiedad que no aparece en ese ejemplo tampoco aparece en la interfaz. Añade ? a las propiedades que no siempre están presentes.
¿Qué tipo recibe null?
Un valor que es null en el ejemplo recibe el tipo null. Cámbialo por una unión como string | null si el campo puede contener un valor.
¿Qué pasa con los arrays de valores mixtos?
El tipo de los elementos pasa a ser una unión, por ejemplo (string | number)[]. Un array vacío se convierte en unknown[], porque no hay nada de lo que deducir el tipo.
¿Esta herramienta es gratuita?
Sí, es gratis. Sin registro ni correo electrónico. Obtén el resultado en esta página.
¿Cómo obtengo el resultado?
Usa la herramienta en esta página. El resultado aparece aquí, sin envío por correo electrónico.