Pular para o conteúdo principal

Conversor de JSON para TypeScript

Converta um exemplo de JSON em interfaces ou aliases de tipo TypeScript. Infere tipos primitivos, de array e de objetos aninhados, mescla arrays de objetos em uma única interface com chaves opcionais e permite nomear o tipo raiz.

Entrada

Nome da interface/tipo de nível superior. Convertido para PascalCase.

Como o null do JSON é tipado. Arrays vazios sempre viram unknown[].

Saída

Saída TypeScript
 
Isso foi útil?

Guias

Cole um exemplo de JSON e obtenha interfaces ou aliases de tipo TypeScript prontos para uso, descrevendo sua estrutura. O conversor percorre seu JSON, infere um tipo para cada valor e nomeia estruturas aninhadas para você — sem digitação manual, sem adivinhação. É a forma mais rápida de transformar uma resposta de API, arquivo de configuração ou fixture em código tipado.

O que ele faz

A ferramenta lê seu JSON e produz definições TypeScript correspondentes:

  • Primitivos são mapeados para string, number e boolean.
  • Objetos aninhados viram sua própria interface nomeada, referenciada pelo pai (ex.: address: Address).
  • Arrays de primitivos viram T[] — e arrays heterogêneos viram uma união, como (number | string)[].
  • Arrays de objetos são condensados em uma única interface que mescla todas as chaves encontradas nos elementos. Qualquer chave ausente em pelo menos um elemento é marcada como opcional com key?:.
  • Valores null são ampliados para null (ou undefined, à sua escolha) em vez de quebrar a saída.
  • Arrays vazios viram unknown[], pois não há nada a inferir.

Como usar

  1. Cole ou digite seu JSON na caixa de entrada.
  2. Defina o nome do tipo raiz — ele nomeia a interface de nível superior (padrão Root, convertido para PascalCase).
  3. Escolha o estilo de saída: alias interface ou type.
  4. Escolha como os valores nulos devem ser tipados (null ou undefined).
  5. Copie o TypeScript gerado ou baixe-o como interfaces.ts.

A saída é atualizada automaticamente conforme você edita, então você pode ajustar o JSON e ver os tipos mudarem em tempo real.

Qual devo escolher — interface ou type?

Interfaces são o padrão para formatos de objeto e suportam fusão de declarações; aliases de tipo são úteis quando você quer compor ou exportar o formato junto de uniões e tipos utilitários. Os membros gerados são idênticos, então escolha o que se encaixa no seu código. Você pode alternar entre eles a qualquer momento.

Como arrays de objetos são tratados?

Cada objeto do array é verificado e as chaves são mescladas em uma única interface. Uma chave que aparece em alguns, mas não em todos os elementos, vira opcional (key?:). É o que você normalmente quer para arrays de APIs reais, onde os registros não são perfeitamente uniformes.

E arrays mistos ou vazios?

Um array misto como [1, "two"] produz um tipo de elemento de união: (number | string)[]. Um array vazio não tem membros a inspecionar, então vira unknown[] — seguro e explícito, e fácil de restringir depois.

Ele lida com JSON profundamente aninhado?

Sim. Cada objeto aninhado ganha sua própria interface nomeada pela chave, e essas interfaces são emitidas junto com o tipo raiz para que toda a estrutura seja totalmente tipada.

Privacidade

Este conversor roda inteiramente no seu navegador. Seu JSON é analisado e transformado no seu dispositivo — nunca é enviado a um servidor, registrado ou armazenado. Você pode usá-lo com dados sensíveis e trabalhar offline depois que a página carregar.

jsontypescriptinterfacetypedevelopercodegen

Use it from code

From 3 credits per call

REST API

curl -X POST https://api.iotools.cloud/v1/tool/json-to-typescript-converter \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "jsonInput": "{\"id\":1,\"tags\":[\"admin\",\"user\"],\"scores\":[95,87]…",
    "rootName": "Root",
    "exportStyle": "interface",
    "nullType": "null"
  }'

Swap in your own key from your account. The tool's fields are the body — no wrapper.

Ask an AI agent

Use the IOTools `json-to-typescript-converter` tool (JSON to TypeScript Converter) on this input:

YOUR_INPUT_HERE

Paste this at any agent connected to the IOTools MCP server, then add your input.

Parte de um fluxo de trabalho

Todas as coleções

Ama as ferramentas? Livre-se dos anúncios.

Um único pagamento remove todos os anúncios da sua conta, para sempre. Sem assinatura, sem rastreamento.