Problem: TypeScript doesn't support specific string or numeric values (a...
Problem: TypeScript doesn't support specific string or numeric values (a positive number, negative number, a unit of measure like meter, etc). So, a string or number may be passed as an argument in the wrong spot.
Solution: Branded types.
Here are 5 ways to "brand" a type.

My preference? Option 3.
- No library required.
- Consistent. Can use this pattern for all branded types.
- No risk of property conflicting with other branded types or a third party library.
- Can make helper utility to streamline if desired.
Any options I'm overlooking?