Alternatives to enums in TypeScript

A recent blog post explored how TypeScript enums work. In this blog post, we take a look at alternatives to enums.Table of contents:Unions of singleton values  Unions of string literal types  Unions of symbol singleton types  Type unions vs. enums  Discriminated unions  Step 1: the syntax tree as a class hierarchy  Step 2: the syntax tree as a type union of classes  Step 3: the syntax tree as a discriminated union  Discriminated type unions vs. normal type unions  Object literals as enums  Object literals with string-valued properties  Upsides and downsides of using object literals as enums  Enum pattern  Summary of enums and enum alternatives  Acknowledgement  Further reading  Unions of singleton values  An alternative to creating an enum that maps keys to values, is to create a union of singleton types (one per value). Read on to see how that works.Unions of string literal types  Let’s start with an enum and convert it to a union of string literal types.enum NoYesEnum { No = 'No'…
Related Topics: TypeScript