Was ist der Unterschied zwischen internen und externen Modulen in TypeScript?

Ich habe einige Zeit mit dem Lesen der Typescript-Sprachspezifikation verbracht und bin etwas verwirrt über den Unterschied zwischenintern undextern Module. Hier ist die Beschreibung direkt aus der Spezifikation entnommen:

Interne Module (Abschnitt 9.2.2) sind lokale oder exportierte Mitglieder anderer Module (einschließlich des globalen Moduls und der externen Module). Interne Module werden mit ModuleDeclarations deklariert, die ihren Namen und ihren Text angeben. Ein Namenspfad mit mehr als einem Bezeichner entspricht einer Reihe geschachtelter interner Moduldeklarationen.

Externe Module (Abschnitt 9.4) sind separat geladene Codekörper, auf die unter Verwendung externer Modulnamen verwiesen wird. Ein externes Modul wird als separate Quelldatei geschrieben, die mindestens eine Import- oder Exporterklärung enthält. Darüber hinaus können externe Module mit AmbientModuleDeclarations im globalen Modul deklariert werden, die die externen Modulnamen direkt als Zeichenfolgenliterale angeben. Dies wird in Abschnitt 0 näher beschrieben.

Nach meinem Verständnis entsprechen externe Module Typenskriptdateien, ohne Moduldefinitionen einzuschließen, die einfach eine Reihe von Typen und / oder Variablen exportieren. Aus einer anderen Typoskript-Datei kann ich einfach ein externes Modul importierenfoo.ts mitimport foo = module("foo");

Kann mir jemand die Unterscheidung zwischen externen und internen Modulen erklären?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage