Template literal types em TypeScript através de exemplos
Use template literal types para gerar nomes de chave, analisar parâmetros de rota e escrever event emitter type-safe, com teste de tipos no Vitest e armadilhas a evitar.
Use template literal types para gerar nomes de chave, analisar parâmetros de rota e escrever event emitter type-safe, com teste de tipos no Vitest e armadilhas a evitar.
A flag strict em tsconfig ativa quais verificações, o que cada uma detecta, quais flags adicionais você deve ativar, e como migrar um projeto antigo para strict.
Use keyof, typeof e tipos com acesso indexado para inferir tipos de dados já existentes, reduzir duplicação de código e deixar que o compilador capture erros de chaves inválidas para você.
Como configurar tsconfig e package.json para que sua biblioteca TypeScript gere arquivos .d.ts corretos, com tipos completos para usuários e testes com Vitest.
Como declarar tipos para funções async, usar Promise<T>, Awaited, Promise.all, tratamento seguro de erros e evitar armadilhas com callbacks async.
Comparar enum e union string literal no TypeScript sobre runtime, type safety e tooling, junto com o padrão `as const` e critérios para escolher cada um.
Use Zod para validar dados de APIs, formulários ou variáveis de ambiente em runtime, enquanto infere tipos TypeScript do mesmo schema.
Use mapped types e conditional types para gerar tipos automaticamente a partir de tipos existentes, incluindo infer, remapeamento de chaves, testes de tipo e erros comuns.
Guia de configuração de tsconfig.json para um novo projeto TypeScript, incluindo strict mode, módulo NodeNext, separação de configurações build/test e erros comuns.
Como usar type guard (x is T) e assertion function (asserts x is T) para fazer narrowing seguro, verificar dados unknown e evitar ciladas comuns.
Use union discriminada para modelar estado e resposta da API, para que o compilador bloqueie estados inválidos e remonte a tratar todos os casos.
Diferencie any, unknown e never no TypeScript com exemplos práticos: quando usar, quando evitar, e como fazer verificação exhaustiva.
Aprenda como combinar tipos de dados com union, intersection e como TypeScript estreita tipos (narrowing) para código mais seguro e menos erros em runtime.
Entenda como usar Partial, Pick, Omit e Record para reutilizar tipos e reduzir duplicação de interfaces no TypeScript.
Entenda TypeScript generics através de exemplos cotidianos como Repository, ApiResponse, Cache — sem teoria vazia, com código funcionando e testes demonstrativos.