Why does this not error:
interface Man {
name: string
}
interface Dog {
breed: string
}
type manDog = Man | Dog;
let x:manDog = {name:"test", breed:"9" }
{name:"test", breed:"9" } is neither Man nor a Dog, isn't it?
and manDog should be either Man or Dog, isn't it?
I read about structural typing but still don't understand why it doesn't error.
Can someone explain in a beginner friendly way?