/// //// class A { } //// class B { //// data: A; //// } //// //// // Below 2 should compile without error //// var x: A< { }, { b: number }>; //// var y: B< { a: string }, { }>; //// //// //// // Below should be in error //// var x1: A<{ a: string;}>; //// var x2: A<{ a: number }>; //// var x3: B<{ a: string;}, { b: string }>; //// var x4: B<{ a: string;}>; //// var x5: A<{ a: string; b: number }, { a: string }>; //// var x6: B<>; //// //// interface I1 { //// a: string; //// } //// var x8: B; //// edit.disableFormatting(); diagnostics.validateTypesAtPositions(34);