1

我正在尝试为 h3 编写声明文件。请参阅函数参考

首先,我不确定 typescript 如何检测定义文件。

它会检测我的定义(如果放在文件夹/src/@types/<any filename>.d.ts中),内容如下

declare module 'h3-js' {
    export type h3ToGeoBoundary = any;
    ...
}

但是,我也读到你可以创建一个文件夹/src/@types/h3-js/index.d.ts,但如果写成这样,它不会检测到定义

export = h3;
export as namespace h3;

declare namespace h3 {
  export type h3ToGeoBoundary = () => void; // TODO: correct types
}

哪个有效并不重要,但我不确定如何使用第一种方法导出命名空间。有了这个,我得到错误Property 'h3ToGeoBoundary' does not exist on type 'typeof import("h3-js")'.

请帮助提供一个最小的文件,并为 . 提供有效的导出h3ToGeoBoundary,以便我可以进一步扩展。

4

1 回答 1

1

由于模块只是导出一堆函数,您可以将它们定义为单独的导出(使用您的第一种方法):

declare module "h3-js" {
  export function h3ToGeoBoundary(): void;
}
于 2018-12-19T22:43:32.123 回答