Повторный экспорт всех членов пространства имен TypeScript - PullRequest
0 голосов
/ 11 июля 2020

Я пытаюсь повторно экспортировать все в пространстве имен из нового модуля. Я пробовал следующее, что в определенной степени работает:

// index.ts
import * as foo from 'foo';

function myFunction() {}

// Re-export everything in 'foo' along with myFunction
const thing = {
  ...foo,
  myFunction,
}
export = thing;

Это приводит к объявлению типа следующим образом:

import * as foo from 'foo';
declare function myFunction();
declare const thing: {
    Foo: typeof foo.Foo;
    Bar: typeof foo.Bar;
    myFunction: typeof myFunction;
};
export = thing;

Но когда я пытаюсь использовать типы из сгенерированный d.ts файл, я получаю сообщение об ошибке:

'Foo' refers to a value, but used as a type

Я полагаю, это потому, что Foo и Bar объявлены как члены объекта. Есть ли способ добиться этого реэкспорта существующих типов в новом модуле?

1 Ответ

2 голосов
/ 11 июля 2020

Вы пробовали это?

export * from 'foo';
export function myFunction() {}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...