Specifying Types with Literal Types
TypeScript lets you limit the values a string or number variable can have to a set of specific literal values. This literal type is not exactly a pure enumeration type, but you can think of it as basically an enumeration type because the behavior is almost identical.
Why would we want to limit the values of a variable? In many cases, we actually have a specific, defined list of values that can be sent to a variable and weâd like to have TypeScript insist on it. For example, in our concert app, tickets have one of five specific states: unsold, held, purchased, refunded, or invalid. On the Rails side, those values are protected with an ActiveRecord and Postgres enum, but we donât have anything like that ...
Get Modern Front-End Development for Rails, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.