//// [defaultBestCommonTypesHaveDecls.ts] var obj1: {}; obj1.length; var obj2: Object; obj2.length; function concat(x: T, y: T): T { return null; } var result = concat(1, ""); // error var elementCount = result.length; function concat2(x: T, y: U) { return null; } var result2 = concat2(1, ""); // result2 will be number|string var elementCount2 = result.length; //// [defaultBestCommonTypesHaveDecls.js] var obj1; obj1.length; var obj2; obj2.length; function concat(x, y) { return null; } var result = concat(1, ""); // error var elementCount = result.length; function concat2(x, y) { return null; } var result2 = concat2(1, ""); // result2 will be number|string var elementCount2 = result.length;