Is there a way to force typescript to perform even more stringent type checking before checking for an alias?
What I want to achieve is to define types, for example:
type kilograms = number;
type kilometers = number;
type kilogramsPerKilometer = number;
And to be sure that I do not put the incorrectly entered value in a variable, for example:
let x: kilograms = 123;
let y: kilometers = 256;
let z: kilogramsPerKilometer = x / y;
In this case, this requires an explicit cast type:
let x: kilograms = 123;
let y: kilometers = 256;
let z: kilogramsPerKilometer = <number>x / <number>y; // Will downcast `kilograms` and `kilometers` types to `number` and then up-cast types to `kilogramsPerKilometer`
source
share