How TypeScript distributes unions
Summary
This article explains how TypeScript handles unions in function overloads vs. method receivers, and introduces concepts like conditional distributivity and generic-signature tricks to emulate overload behavior. It provides multiple code examples and practical patterns for advanced TypeScript typing.