=== tests/cases/compiler/consumer.ts === import Drawing = require('./Drawing'); >Drawing : typeof Drawing, Symbol(Drawing, Decl(consumer.ts, 0, 0)) var addr = new Drawing.Math.Adder(); >addr : Adder, Symbol(addr, Decl(consumer.ts, 1, 3)) >new Drawing.Math.Adder() : Adder >Drawing.Math.Adder : typeof Adder, Symbol(Adder, Decl(Math.ts, 2, 12)) >Drawing.Math : { Adder: typeof Adder; }, Symbol(Drawing.Math, Decl(Drawing.ts, 0, 0)) >Drawing : typeof Drawing, Symbol(Drawing, Decl(consumer.ts, 0, 0)) >Math : { Adder: typeof Adder; }, Symbol(Drawing.Math, Decl(Drawing.ts, 0, 0)) >Adder : typeof Adder, Symbol(Adder, Decl(Math.ts, 2, 12)) === tests/cases/compiler/Drawing.ts === export import Math = require('Math/Math') >Math : { Adder: typeof Adder; }, Symbol(Math, Decl(Drawing.ts, 0, 0)) === tests/cases/compiler/Math/Math.ts === import Adder = require('Math/Adder'); >Adder : typeof Adder, Symbol(Adder, Decl(Math.ts, 0, 0)) var Math = { >Math : { Adder: typeof Adder; }, Symbol(Math, Decl(Math.ts, 2, 3)) >{ Adder:Adder} : { Adder: typeof Adder; } Adder:Adder >Adder : typeof Adder, Symbol(Adder, Decl(Math.ts, 2, 12)) >Adder : typeof Adder, Symbol(Adder, Decl(Math.ts, 0, 0)) }; export = Math >Math : { Adder: typeof Adder; }, Symbol(Math, Decl(Math.ts, 2, 3)) === tests/cases/compiler/Math/Adder.ts === class Adder { >Adder : Adder, Symbol(Adder, Decl(Adder.ts, 0, 0)) add(a: number, b: number) { >add : (a: number, b: number) => void, Symbol(add, Decl(Adder.ts, 0, 13)) >a : number, Symbol(a, Decl(Adder.ts, 1, 8)) >b : number, Symbol(b, Decl(Adder.ts, 1, 18)) } } export = Adder; >Adder : Adder, Symbol(Adder, Decl(Adder.ts, 0, 0))