It does. And, like in the article, Typescript is “saved by a hack”.
Compare that to Elm, where it will automatically fail compilation if you don’t include all required types in a switch statement. Without any hacks or manual intervention.
Thing is, it only works in if and switch statements, you have to be aware of it (I don’t think you can deduce it from docs), and you have to manually trigger it.
It’s ”poor man’s exhaustiveness” and TS will hopefully get better at this
Typescript doesn’t do that.
There’s a way to manually force exhaustive checking with discriminating unions: https://github.com/basarat/typescript-book/blob/master/docs/...
However, it’s a manual workaround.
[1] Quoted from http://www.adamsolove.com/js/flow/type/2016/04/15/flow-exhau...