namespace【TypeScrypt】
名前空間を区切ることができます。namespace内で定義したものは、exportを記述しない限り、外部から参照することができません。また、必ずnamespace名を経由する必要があります。
namespace sampleA { export var str = "string"; } console.log(sampleA.str); // <namespace名>.XXXと記述する必要がある namespace sampleB { export class Hoge { hello(word: string): string { return "Hello, " + word; } } class Fuga{} export interface IMiyo { hello(word: string): string; } } namespace sampleC { //importして別名をつける import Piyo = sampleB.Hoge; import Fuga = sampleB.Fuga; // exportしていないため、エラーになる import Miyo = sampleB.IMiyo; export var str = new Piyo().hello("Type") } console.log(sampleC.str);