Os resultados são fornecidos apenas para fins informativos e podem conter erros. Verifique de forma independente as informações importantes. O uso desta ferramenta é por sua conta e risco.
O que esta ferramenta faz
O Conversor de JSON para TypeScript lê um objeto JSON de exemplo e gera as interfaces TypeScript correspondentes. Cada objeto aninhado ganha sua própria interface nomeada, e cada propriedade recebe um tipo inferido a partir do seu valor: string, number, boolean, null, um tipo de array ou outra interface.
Defina o nome da interface no campo Nome da interface. Se o JSON for um array, os tipos vêm do primeiro elemento, e é adicionado um tipo de lista como type UserList = User[];.
Quando usar
- Tipar a resposta de uma API que você chama a partir de um front-end TypeScript ou de um serviço Node.js.
- Começar um modelo de dados a partir de um payload real, em vez de escrever as interfaces à mão.
- Documentar o formato do payload de um webhook ou evento para o seu time.
Exemplo prático
Entrada
{"id": 1, "name": "Ana", "active": true, "address": {"city": "Lisbon"}, "tags": ["admin"]}
Saída
interface Address {
city: string;
}
interface User {
id: number;
name: string;
active: boolean;
address: Address;
tags: string[];
}Perguntas sobre esta ferramenta
Ele detecta propriedades opcionais?
Não. Os tipos são inferidos a partir de um único exemplo, então uma propriedade que não aparece nesse exemplo também não aparece na interface. Adicione ? às propriedades que nem sempre estão presentes.
Que tipo recebe o null?
Um valor que é null no exemplo recebe o tipo null. Troque por uma union como string | null se o campo puder ter um valor.
O que acontece com arrays de valores mistos?
O tipo dos elementos vira uma union, por exemplo (string | number)[]. Um array vazio vira unknown[], porque não há nada de onde inferir o tipo.
Esta ferramenta é gratuita?
Sim, é grátis. Sem cadastro nem e-mail. Veja o resultado nesta página.
Como recebo o resultado?
Use a ferramenta nesta página. O resultado aparece aqui, sem envio por e-mail.