1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38
|
=== tests/cases/compiler/file1.ts ===
export namespace Library {
export type Bar = { a: number };
>Bar : { a: number; }
>a : number
}
var x: Library.Bar; // should work
>x : Library.Bar
>Library : any
Library.foo; // should be an error
>Library.foo : any
>Library : any
>foo : any
=== tests/cases/compiler/file2.ts ===
import * as Lib from './file1';
>Lib : typeof Lib
namespace Lib { // should fail to merge
>Lib : typeof Lib
export const foo: string = "";
>foo : string
>"" : ""
}
Lib.foo; // should work
>Lib.foo : string
>Lib : typeof Lib
>foo : string
var x: Lib.Bar; // should be an error
>x : Lib.Bar
>Lib : any
export { Lib }
>Lib : typeof Lib
|