interface Base extends Derived2 { // error x: string; } interface Derived extends Base { y: string; } interface Derived2 extends Derived { z: string; } module Generic { interface Base extends Derived2 { // error x: string; } interface Derived extends Base { y: string; } interface Derived2 extends Derived { z: string; } }