tests/cases/conformance/types/typeRelationships/recursiveTypes/objectTypeWithRecursiveWrappedProperty2.ts(13,1): error TS2322: Type 'List' is not assignable to type 'List'. Type 'string' is not assignable to type 'number'. ==== tests/cases/conformance/types/typeRelationships/recursiveTypes/objectTypeWithRecursiveWrappedProperty2.ts (1 errors) ==== // Basic recursive type class List { data: T; next: List>; } var list1 = new List(); var list2 = new List(); var list3 = new List(); list1 = list2; // ok list1 = list3; // error ~~~~~ !!! error TS2322: Type 'List' is not assignable to type 'List'. !!! error TS2322: Type 'string' is not assignable to type 'number'.