tests/cases/compiler/generics2.ts(17,14): error TS2344: Type 'A' does not satisfy the constraint 'B'. Property 'b' is missing in type 'A'. tests/cases/compiler/generics2.ts(20,9): error TS2314: Generic type 'G' requires 2 type argument(s). tests/cases/compiler/generics2.ts(21,9): error TS2314: Generic type 'G' requires 2 type argument(s). ==== tests/cases/compiler/generics2.ts (3 errors) ==== interface A { a: string; } interface B extends A { b: string; } interface C extends B { c: string; } interface G { x: T; y: U; } var v1: { x: { a: string; } y: { a: string; b: string; c: string }; }; // Ok var v2: G<{ a: string }, C>; // Ok, equivalent to G var v3: G; // Error, A not valid argument for U ~ !!! error TS2344: Type 'A' does not satisfy the constraint 'B'. !!! error TS2344: Property 'b' is missing in type 'A'. var v4: G, C>; // Ok var v5: G; // Error, any does not satisfy constraint B var v6: G; // Error, wrong number of arguments ~~~~~~ !!! error TS2314: Generic type 'G' requires 2 type argument(s). var v7: G; // Error, no type arguments ~ !!! error TS2314: Generic type 'G' requires 2 type argument(s).