If your something function was `something (num: string|number)`, typescript can safely trust that`num` is a number in the block proceeded by your call to assert because it knows it must be a number, not a string.
So If I wanted to do that I would have to
if (typeof num === 'number') {
assertIsInRange(num);
}
anyway.I think I still don't get it.