Merge pull request #11142 from nchen63/fix-export

Fix `export as namespace` error when compiling with declarations
This commit is contained in:
Mohamed Hegazy 2016-09-26 11:24:26 -07:00 committed by GitHub
commit 09eb6fef4e
10 changed files with 73 additions and 1 deletions

View File

@ -2746,8 +2746,9 @@ namespace ts {
// Type parameters are always visible
case SyntaxKind.TypeParameter:
// Source file is always visible
// Source file and namespace export are always visible
case SyntaxKind.SourceFile:
case SyntaxKind.NamespaceExportDeclaration:
return true;
// Export assignments do not create name bindings outside the module

View File

@ -0,0 +1,19 @@
{
"scenario": "declarations_ExportNamespace",
"projectRoot": "tests/cases/projects/declarations_ExportNamespace",
"inputFiles": [
"decl.d.ts",
"useModule.ts"
],
"declaration": true,
"baselineCheck": true,
"emittedFiles": [
"useModule.js",
"useModule.d.ts"
],
"resolvedInputFiles": [
"lib.d.ts",
"decl.d.ts",
"useModule.ts"
]
}

View File

@ -0,0 +1,5 @@
declare module moduleB {
interface IUseModuleA {
a: moduleA.A;
}
}

View File

@ -0,0 +1,19 @@
{
"scenario": "declarations_ExportNamespace",
"projectRoot": "tests/cases/projects/declarations_ExportNamespace",
"inputFiles": [
"decl.d.ts",
"useModule.ts"
],
"declaration": true,
"baselineCheck": true,
"emittedFiles": [
"useModule.js",
"useModule.d.ts"
],
"resolvedInputFiles": [
"lib.d.ts",
"decl.d.ts",
"useModule.ts"
]
}

View File

@ -0,0 +1,5 @@
declare module moduleB {
interface IUseModuleA {
a: moduleA.A;
}
}

View File

@ -0,0 +1,14 @@
{
"scenario": "declarations_ExportNamespace",
"projectRoot": "tests/cases/projects/declarations_ExportNamespace",
"inputFiles": [
"decl.d.ts",
"useModule.ts"
],
"declaration": true,
"baselineCheck": true,
"emittedFiles": [
"useModule.js",
"useModule.d.ts"
]
}

View File

@ -0,0 +1,4 @@
export interface A {
b: number;
}
export as namespace moduleA;

View File

@ -0,0 +1,5 @@
module moduleB {
export interface IUseModuleA {
a: moduleA.A;
}
}