В чем разница между внутренними и внешними модулями в TypeScript?

Я потратил некоторое время на чтение спецификации языка Typescript, и меня немного смущает разница междувнутренний а такжевнешний модули. Вот описание, взятое непосредственно из спецификации:

Внутренние модули (раздел 9.2.2) являются локальными или экспортируемыми членами других модулей (включая глобальный модуль и внешние модули). Внутренние модули объявляются с использованием ModuleDeclarations, в котором указывается их имя и тело. Путь имени с более чем одним идентификатором эквивалентен серии вложенных объявлений внутренних модулей.

Внешние модули (раздел 9.4) представляют собой отдельно загруженные части кода, на которые ссылаются с использованием имен внешних модулей. Внешний модуль записывается в виде отдельного исходного файла, который содержит хотя бы одно объявление импорта или экспорта. Кроме того, внешние модули могут быть объявлены с помощью AmbientModuleDeclarations в глобальном модуле, который напрямую указывает имена внешних модулей в виде строковых литералов. Это описано далее в разделе 0.

Из того, что яЯ понял, что я думаю, что внешние модули соответствуют файлам машинописи без вложенных в них определений модулей, которые просто экспортируют набор типов и / или переменных. Из другого машинописного файла я могу просто импортировать внешний модуль вfoo.ts сimport foo = module("foo");

Может кто-нибудь объяснить мне различие между внешним и внутренним модулями?

Ответы на вопрос(3)

Ваш ответ на вопрос