在 vscode 扩展中使用 vanilla javascript 的打字稿泛型

use typescript generics from vanilla javascript in vscode extension

我正在使用 JavaScript 创建一个 VSCode 扩展,并构建一个自定义 TextDocumentContentProvider 需要具有特定签名,但在 TypeScript 中进行了描述。它的 onDidChange 成员必须是 Event<Uri> 类型,这当然使用 generics。可以在此处找到有关 TextDocumentContentProvider 的文档:https://code.visualstudio.com/Docs/extensionAPI/vscode-api#_a-nametextdocumentcontentprovideraspan-classcodeitem-id436textdocumentcontentproviderspan

当然在"vanilla"JavaScript中,没有泛型这回事。 JavaScript 中的 return 满足 TypeScript 中描述的正确签名的正确做法是什么?

这是我目前的实现:

function PostWindow() {
    this.onDidChange = ????;

    this.provideTextDocumentContent = function(uri) {
        return "test content";
    }
}

exports.PostWindow = PostWindow;

使用 TSC 将 TS 代码转换为 JS,看看如何实现。