Is it expected for this to not work as intended?
class Animal { }
class Person { }
type MyUnion = Number | Person;
var list: Array<MyUnion> = [ "aaa", 2, new Animal() ]; // Is this supposed to fail?
var x: MyUnion = "jjj"; // Should this actually pass?
Any suggestions on how to enforce strict type checking in this scenario?