//// [statics.ts] module M { export class C { x: number; constructor(public c1: number, public c2: number, c3: number) { this.x = C.y+this.c1+this.c2+c3; this.g = (v:number) => C.f(this.x+C.y+v+this.c1+this.c2+C.pub); } static priv=2; static pub=3; static y=C.priv; static f(n:number) { return "wow: "+(n+C.y+C.pub+C.priv); } } var c=C.y; export function f() { var result=""; result+=(c); result+=(new C(0,1,2).x); result+=(C.f(10)); result+=(new C(5,10,20).g(C.y)); return result; } } M.f(); //// [statics.js] var M; (function (M) { var C = (function () { function C(c1, c2, c3) { var _this = this; this.c1 = c1; this.c2 = c2; this.x = C.y + this.c1 + this.c2 + c3; this.g = function (v) { return C.f(_this.x + C.y + v + _this.c1 + _this.c2 + C.pub); }; } C.f = function (n) { return "wow: " + (n + C.y + C.pub + C.priv); }; C.priv = 2; C.pub = 3; C.y = C.priv; return C; })(); M.C = C; var c = C.y; function f() { var result = ""; result += (c); result += (new C(0, 1, 2).x); result += (C.f(10)); result += (new C(5, 10, 20).g(C.y)); return result; } M.f = f; })(M || (M = {})); M.f();