TypeScript Advanced Patterns: Discriminated Unions, Branded Types | Juanchi.dev