🔷 JSON para TypeScript -- Gerador de Interface Instantâneo, Grátis e Offline
Cole qualquer objeto ou array JSON e esta ferramenta gera instantaneamente definições de interface TypeScript (ou alias de tipo) -- totalmente gratuito, sem login, sem upload e funciona 100% no seu navegador. Objetos aninhados se tornam interfaces aninhadas, arrays de objetos são mesclados em uma forma tipada única com campos opcionais, e arrays de tipos mistos produzem automaticamente tipos de união.
Privado por design. Esta ferramenta funciona inteiramente no seu navegador — nada do que você digita é enviado ou armazenado, e funciona offline.
Sobre
Este conversor JSON para TypeScript usa um caminhador de inferência de tipo puramente no lado do cliente -- sem bibliotecas externas, sem chamadas ao servidor. Ele visita recursivamente cada nó no seu JSON: valores primitivos mapeiam para string, number, boolean ou null; objetos aninhados produzem interfaces filhas nomeadas; arrays de objetos mesclam todas as formas de elementos para que chaves ausentes em alguns elementos se tornem opcionais (chave?: Tipo); arrays de tipos mistos produzem automaticamente tipos de união como (string | number)[]. Você pode escolher entre interface e alias de tipo como saída, e definir o nome da interface raiz. Todo o trabalho fica no seu navegador -- seus dados JSON nunca são enviados para lugar algum.
Como usar
- Cole seu JSON no campo de entrada -- objetos, arrays ou estruturas aninhadas funcionam todas.
- Defina o nome da interface raiz (padrão: RootObject) e escolha entre interface ou alias de tipo como saída.
- Clique em Converter para TypeScript (ou pressione Ctrl+Enter) para gerar as definições instantaneamente.
- Revise a saída TypeScript -- interfaces aninhadas aparecem primeiro, a interface raiz por último.
- Clique em Copiar para copiar o resultado para sua área de transferência e colar diretamente em seu projeto TypeScript.
Perguntas frequentes
- Este ferramenta envia meu JSON para um servidor?
- Não. Todo o processamento acontece totalmente no seu navegador usando JavaScript. Seu JSON nunca deixa seu dispositivo.
- Como ele lida com arrays de objetos com formas diferentes?
- Todas as formas de elementos são mescladas em uma única interface. Chaves presentes em todos os elementos são obrigatórias; chaves ausentes em qualquer elemento são marcadas como opcionais com ?.
- Qual é a diferença entre os modos de interface e tipo?
- interface usa declarações de interface TypeScript (estendíveis, preferidas para formas de objetos). type usa aliases de tipo (mais flexíveis, suportam primitivos e uniões no nível raiz). Ambos produzem resultados equivalentes para formas de objetos.
- Ele pode lidar com JSON profundamente aninhado?
- Sim. O caminhador de tipo é totalmente recursivo -- cada objeto aninhado gera sua própria interface nomeada, e as interfaces são geradas na ordem de dependência (mais profundas primeiro) para que o TypeScript compile sem erros de referência antecipada.
- O que acontece se meu array JSON contém tipos mistos, como strings e números?
- Arrays de tipos mistos produzem um tipo de união. Por exemplo, [1, 'hello', true] se torna (number | string | boolean)[]. Se o array tiver um único tipo consistente, nenhuma união é necessária.
- Esta ferramenta envia meus dados?
- Não. Tudo é executado no seu navegador, então seus dados nunca saem do seu dispositivo — e funciona até offline depois que a página carrega.