, , # -like. typeof. :
class Outer
{
static Inner = class
{
inInner: number = 0;
};
constructor(public inner: typeof Outer.Inner.prototype) { }
}
typeof Outer.Inner.prototype , , Outer.Inner :
namespace Outer
{
export type Inner = typeof Outer.Inner.prototype;
}
, , , :
class Outer
{
static Inner = (() =>
{
@decoratable()
class OuterInner
{
inInner: number = 0;
}
return OuterInner;
})();
constructor(public inner: Outer.Inner) { }
}
namespace Outer
{
export type Inner = typeof Outer.Inner.prototype;
}