tests/cases/compiler/typeofInternalModules.ts(15,16): error TS2304: Cannot find name 'importUninst'. tests/cases/compiler/typeofInternalModules.ts(17,9): error TS2304: Cannot find name 'Outer'. tests/cases/compiler/typeofInternalModules.ts(19,1): error TS2322: Type 'typeof Outer' is not assignable to type 'typeof instantiated'. Property 'C' is missing in type 'typeof Outer'. tests/cases/compiler/typeofInternalModules.ts(21,16): error TS2304: Cannot find name 'importUninst'. tests/cases/compiler/typeofInternalModules.ts(23,1): error TS2322: Type 'typeof instantiated' is not assignable to type 'typeof Outer'. Property 'instantiated' is missing in type 'typeof instantiated'. ==== tests/cases/compiler/typeofInternalModules.ts (5 errors) ==== module Outer { export module instantiated { export class C { } } export module uninstantiated { export interface P { } } } import importInst = Outer.instantiated; import importUninst = Outer.uninstantiated; var x1: typeof importInst.C = importInst.C; var x2: importInst.C = new x1(); var x3: typeof importUninst.P; // Error again ~~~~~~~~~~~~ !!! error TS2304: Cannot find name 'importUninst'. var x4: Outer = Outer; ~~~~~ !!! error TS2304: Cannot find name 'Outer'. var x5: typeof importInst; x5 = Outer; ~~ !!! error TS2322: Type 'typeof Outer' is not assignable to type 'typeof instantiated'. !!! error TS2322: Property 'C' is missing in type 'typeof Outer'. x5 = Outer.instantiated; var x6: typeof importUninst; ~~~~~~~~~~~~ !!! error TS2304: Cannot find name 'importUninst'. var x7: typeof Outer = Outer; x7 = importInst; ~~ !!! error TS2322: Type 'typeof instantiated' is not assignable to type 'typeof Outer'. !!! error TS2322: Property 'instantiated' is missing in type 'typeof instantiated'.