Como Usar Generics no TypeScript: Funções, Interfaces e Patterns | CrazyStack