1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45
|
//// [classWithOnlyPublicMembersEquivalentToInterface.ts]
// no errors expected
class C {
public x: string;
public y(a: number): number { return null; }
public get z() { return 1; }
public set z(v) { }
[x: string]: Object;
[x: number]: Object;
0: number;
}
interface I {
x: string;
y(b: number): number;
z: number;
[x: string]: Object;
[x: number]: Object;
0: number;
}
var c: C;
var i: I;
c = i;
i = c;
//// [classWithOnlyPublicMembersEquivalentToInterface.js]
// no errors expected
var C = /** @class */ (function () {
function C() {
}
C.prototype.y = function (a) { return null; };
Object.defineProperty(C.prototype, "z", {
get: function () { return 1; },
set: function (v) { },
enumerable: true,
configurable: true
});
return C;
}());
var c;
var i;
c = i;
i = c;
|