以下类定义文件: https://github.com/Bitcoin-com/bitbox-javascript-sdk/blob/master/lib/HDNode.d.ts
在此处缺少createAccount()
方法:
https://github.com/Bitcoin-com/bitbox-javascript-sdk/blob/master/lib/HDNode.js#L144
我正在尝试使用createAccount()
方法,并且打字稿编译器给我一个错误。我希望能够克服此错误,同时保留其余的类定义。我该怎么办?
谢谢。
答案 0 :(得分:2)
通常的想法是使用module augmentation,它看起来像这样:
declare module "bitbox-javascript-sdk/lib/HDNode" {
interface HDNode {
createAccount(hdNodes: any): any;
}
}
(要使其成为模块扩充而不是模块声明,它必须位于另一个模块内,即,将其放在具有顶级导入或导出功能的文件中,或将其包装在declare module "dummy" { }
中。 )
我不确定正确的参数和返回类型,但是如果您知道使用createAccount
的正确代码模式,则将参数和返回类型声明为any
至少可以使您不受阻碍。 (我认为现有的方法声明是错误的。它们很多成对出现,而没有类型为HDNode
的参数,但是从源头来看,似乎总是需要该参数,而实际类型不是HDNode
的{{1}}类,但在JavaScript code中被称为bitbox-javascript-sdk
。)