Model Alternatives with Discriminated Union Types in TypeScript by Marius SchulzModel Alternatives with Discriminated Union Types in TypeScript
egghead