«Невозможно повторно объявить блочную переменную» в несвязанных файлах

Существует простой пакет TS, который используется в качестве модулей CommonJS и не имеет экспорта. Файлы TS компилируются в файлы JS с тем же именем и используются какrequire('package/option-foo').

tsconfig.json:

{
  "compilerOptions": {
    "target": "es5"
  }
}

Опция-foo.ts:

declare const GlobalVar: any;

function baz() {}

if (GlobalVar.foo) GlobalVar.baz = baz;

Опция-bar.ts:

declare const GlobalVar: any;

function baz() {}

if (GlobalVar.bar) GlobalVar.baz = baz;

Важной частью здесь является то, чтоoption-foo а такжеoption-bar являютсяникогда не использовался вместе, В проекте есть и другие бесплатные файлы TS, но они ни на что не влияют, их просто нужно перенести в JS за один раз.tsc запустить.

когдаtsc бежит, кидает

Невозможно повторно объявить блочную переменную «GlobalVar».

Дублирующая реализация функции.

Невозможно повторно объявить блочную переменную «GlobalVar».

Дублирующая реализация функции.

заGlobalVar а такжеbaz в обоих файлах.

Как это можно обработать, не усложняя процесс сборки или вывод этих двух файлов TS?

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

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