JSON para TypeScript
JSON para TypeScript converte amostras JSON em interfaces TypeScript e aliases de tipo localmente, com campos opcionais, inferência union/null/Date, nome raiz e cópia/download de .ts.
JSON
Caracteres
0 / 50,000
TypeScript
Início rápido
Cenários comuns
Transforme rapidamente respostas reais de API em tipos TypeScript prontos para frontend, SDKs ou integração.
Antes de fechar o contrato, observe com uma amostra JSON como campos opcionais, null e unions são inferidos.
Converta dados JSON de mock em definições rápidas de tipo para fixtures, histórias do Storybook ou protótipos.
Quando a resposta do backend muda, use uma nova amostra JSON para verificar se tipos aninhados como User ou Meta também precisam ser atualizados.
Dicas de uso
Limites de inferência de tipo
Limitações e compatibilidade
Privacidade e segurança
Perguntas frequentes
Raízes de objetos geram declarações de interface, enquanto raízes de array e primitivas geram aliases de tipo. Para uma matriz de objetos, a raiz é um alias de tipo, como type Root = RootItem[], e a forma do item é declarada separadamente.
Matrizes vazias e objetos vazios não contêm dados de amostra suficientes para inferir uma forma precisa. O gerador os mantém como desconhecido[] ou Record<string, desconhecido> até que você forneça valores representativos.
Se o nome informado já for um identificador TypeScript válido, ele é preservado exatamente, por exemplo API Response. Nomes inválidos são normalizados em um identificador PascalCase estável antes da geração.
O gerador atual normaliza nomes aninhados a partir dos caminhos de propriedades e resolve colisões de forma determinística. Por isso a saída mais nova usa nomes como User, Meta ou FooBarClass em vez de sempre prefixar com o nome raiz.
O contrato de saída atual retorna intencionalmente declarações simples sem export. Isso mantém a saída neutra, e você pode adicionar export para combinar com o estilo do seu projeto.