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 39 40 41 42 43 44 45 46 47 48 49 50 51 52
|
=== tests/cases/compiler/file.ts ===
export namespace Root {
// type-only NS
export interface Foo {
x: number;
>x : number
}
}
=== tests/cases/compiler/reexport.ts ===
export * from "./file";
=== tests/cases/compiler/augment.ts ===
import * as ns from "./reexport";
>ns : typeof ns
declare module "./reexport" {
>"./reexport" : typeof ns
// Merging an enum into a type-only NS is OK
export enum Root {
>Root : Root
A,
>A : Root
B,
>B : Root
C
>C : Root
}
}
declare const f: ns.Root.Foo;
>f : ns.Root.Foo
>ns : any
>Root : any
const g: ns.Root = ns.Root.A;
>g : ns.Root
>ns : any
>ns.Root.A : ns.Root
>ns.Root : typeof ns.Root
>ns : typeof ns
>Root : typeof ns.Root
>A : ns.Root
f.x;
>f.x : number
>f : ns.Root.Foo
>x : number
|