如何声明一个只公开一个功能的 UMD 模块?

How to declare an UMD module which only expose one function?

这是我目前拥有的:

export default function (bar?: any): Foo

export as namespace qux;

假设我们没有模块加载器,我应该更改什么以便可以直接调用qux? 我要避免的是:qux.default()
简而言之,我希望全局变量与默认导出相匹配。

(当然import defaultName from 'qux'; defaultName()应该继续工作)

出口

export = qux;
export as namespace qux;

declare function qux(bar?: any): Foo

interface Foo {}

进口

.ts 文件

import defaultName = require('qux');

.js 文件

import defaultName from 'qux';