绝对类型 import * as alias 语法不适用于 export = class

问题描述

我正在尝试为库创建一个确定类型,但是当我作为别名导入时 import * as f from "foo"; 我收到这条消息

这个模块只能被 ECMAScript 导入/导出引用 打开“allowSyntheticDefaultImports”标志并引用其 认导出。

文件 index.d.ts

declare module "foo" {
  function test(): void;
  export = test;
}

解决方法

添加命名空间后就可以使用了

declare module "foo" {
  function test(): void;
  namespace test{}
  export = test;
}