JSON → TypeScript Types
¿Qué hace esta herramienta?
Esta herramienta convierte un objeto o array JSON en declaraciones de interface o type de TypeScript. Maneja recursivamente objetos anidados (generando interfaces separadas para cada uno), arrays de objetos (fusionando esquemas), campos opcionales (cuando faltan claves en algunos elementos del array) y valores null. La salida está lista para pegar en tu proyecto TypeScript.
Cómo usar
-
Pega JSON en el panel izquierdo — los tipos TypeScript aparecen instantáneamente a la derecha.
-
Establece el nombre de la interface raíz (por defecto: Root).
-
Elige el estilo interface o type alias.
-
Activa 'null → optional' para tratar los campos null como unknowns opcionales en lugar de null explícito.
-
Haz clic en Cargar ejemplo para ver una conversión de muestra.
Los arrays de objetos se manejan fusionando todos los esquemas de elementos — las claves presentes solo en algunos elementos se marcan automáticamente como opcionales. Toda la conversión ocurre en tu navegador.
Preguntas Frecuentes
¿Es seguro decodificar datos sensibles aquí? Sí. Toda la decodificación ocurre en tu navegador usando JavaScript. No se transmiten datos a ningún servidor, por lo que tus cadenas codificadas permanecen completamente privadas.
¿Cuál es la diferencia entre Base64 y URL-safe Base64? Base64 estándar usa caracteres + y /, que son caracteres especiales en URLs. URL-safe Base64 los reemplaza con - y _ para que la cadena se pueda usar de forma segura en URLs y nombres de archivo sin codificación de porcentaje.
¿Por qué mi salida decodificada parece galimatías? Si los datos originales eran binarios (como una imagen, PDF o archivo comprimido), la salida decodificada no será texto legible. En ese caso, la cadena Base64 representa un archivo binario, no una cadena de texto.
¿Es Base64 una forma de cifrado? No. Base64 es un esquema de codificación, no cifrado. Cualquiera puede decodificar una cadena Base64 sin una clave. Nunca debe usarse para proteger datos sensibles; use cifrado adecuado para eso.
Keywords: JSON a TypeScript, JSON a TS, JSON a interface, generador de tipos TypeScript, inferencia de tipos JSON, TypeScript interface desde JSON