Kotlin JavaScript到TypeScript定义文件

Jon*_*n O 41 javascript kotlin typescript

我找到了ts2kt库,它将从任意.d.ts文件创建Kotlin头文件.但是,我想走向相反的方向.

我想构建一个可以编译为JavaScript的Kotlin库,但我想从TypeScript中使用它. 有没有办法让Kotlin .d.ts从其公开的接口生成文件?我是以正确的方式接近这个吗?

daz*_*000 2

在 Kotlin 1.4-M1 中添加了对导出 TypeScript 定义的支持

\n
\n
预览:TypeScript 定义
\n

我们很高兴展示的新 Kotlin/JS IR 编译器的另一个功能是从 Kotlin 代码生成 TypeScript 定义。在开发混合应用时,JavaScript 工具和 IDE 可以使用这些定义来提供自动补全、支持静态分析器,并更轻松地将 Kotlin 代码包含在 JS 和 TS 项目中。

\n

@JsExport对于配置为使用 的项目中标记为(见上文)的顶级声明produceExecutable(),a .d.ts将生成包含\nTypeScript 定义的文件。对于上面的代码片段,\n它们看起来像这样:

\n
// [...]\nnamespace blogpost {\n    class KotlinGreeter {\n        constructor(who: string)\n        greet(): string\n    }\n    function farewell(who: string): string\n}\n// [...]\n
Run Code Online (Sandbox Code Playgroud)\n

在 Kotlin 1.4-M1 中,这些声明可以在 build/js/packages/<package_name>/kotlin在 Kotlin 1.4-M1 中,这些声明可以在相应的、\nun-webpacked JavaScript 代码旁边请注意,由于这只是预览版,因此目前默认情况下它们不会添加到发行版文件夹中。您可以预期这种行为将来会发生变化。

\n
\n