TS proposes all the props from intersection of the discriminated/tagged union type, but should be proposing on props of determined type.  ```ts interface Square { kind: "square"; size: number; } interface Rectangle { kind: "rectangle"; width: number; height: number; } interface Circle { kind: "circle"; radius: number; } type Shape = Square | Rectangle | Circle; let shape: Shape = { kind: "square", // should propose only `size` } ``` Ts 2.9.1