TypeScript Não Vai Deixar Você Fazer Essa Chamada: Codificando o Estado do protocol no Sistema de Tipos
Como usar phantom types e parâmetros `this` para transformar transições ilegais de protocol em erros de compilação em vez de bugs em runtime.
Todo cliente de API tem uma state machine escondida dentro dele. Handshake primeiro. Autenticação segundo. Envio de dados terceiro. Fechamento por último.…