@ckb-ccc/core 1.12.5 → 1.14.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (612) hide show
  1. package/CHANGELOG.md +51 -0
  2. package/dist/address.advanced-BmJKF_Lg.mjs +2 -0
  3. package/dist/address.advanced-BmJKF_Lg.mjs.map +1 -0
  4. package/dist/advanced.d.mts +2 -0
  5. package/dist/advanced.mjs +1 -0
  6. package/dist/advancedBarrel-BD7EAPVd.d.mts +5480 -0
  7. package/dist/advancedBarrel-BD7EAPVd.d.mts.map +1 -0
  8. package/dist/advancedBarrel.d.mts +2 -0
  9. package/dist/advancedBarrel.mjs +2 -0
  10. package/dist/advancedBarrel.mjs.map +1 -0
  11. package/dist/barrel-C-sr5NLL.mjs +7 -0
  12. package/dist/barrel-C-sr5NLL.mjs.map +1 -0
  13. package/dist/barrel.d.mts +2 -0
  14. package/dist/barrel.mjs +1 -0
  15. package/dist/index.d.mts +2 -0
  16. package/dist/index.mjs +1 -0
  17. package/dist/rolldown-runtime-DK3Fl9T5.mjs +1 -0
  18. package/dist.commonjs/address.advanced-D9nKvIr3.js +2 -0
  19. package/dist.commonjs/address.advanced-D9nKvIr3.js.map +1 -0
  20. package/dist.commonjs/advanced.d.ts +2 -3
  21. package/dist.commonjs/advanced.js +1 -41
  22. package/dist.commonjs/advancedBarrel-DRDT4GBS.d.ts +5481 -0
  23. package/dist.commonjs/advancedBarrel-DRDT4GBS.d.ts.map +1 -0
  24. package/dist.commonjs/advancedBarrel.d.ts +2 -7
  25. package/dist.commonjs/advancedBarrel.js +2 -22
  26. package/dist.commonjs/advancedBarrel.js.map +1 -0
  27. package/dist.commonjs/barrel-SuR9mcfv.js +21 -0
  28. package/dist.commonjs/barrel-SuR9mcfv.js.map +1 -0
  29. package/dist.commonjs/barrel.d.ts +2 -14
  30. package/dist.commonjs/barrel.js +1 -29
  31. package/dist.commonjs/index.d.ts +2 -3
  32. package/dist.commonjs/index.js +1 -41
  33. package/package.json +42 -34
  34. package/src/address/address.advanced.ts +3 -3
  35. package/src/barrel.ts +1 -0
  36. package/src/ckb/epoch.ts +489 -0
  37. package/src/ckb/index.ts +1 -0
  38. package/src/ckb/script.ts +4 -3
  39. package/src/ckb/transaction.ts +83 -94
  40. package/src/client/client.ts +377 -1
  41. package/src/client/clientPublicMainnet.advanced.ts +23 -0
  42. package/src/client/clientPublicTestnet.advanced.ts +23 -0
  43. package/src/client/clientTypes.ts +1 -2
  44. package/src/client/jsonRpc/transformers.ts +2 -2
  45. package/src/client/knownScript.ts +1 -0
  46. package/src/codec/codec.ts +108 -0
  47. package/src/{molecule → codec}/entity.ts +18 -10
  48. package/src/codec/predefined.ts +145 -0
  49. package/src/hasher/advanced.ts +3 -1
  50. package/src/hasher/hasherCkb.ts +1 -1
  51. package/src/hasher/hasherKeecak256.ts +1 -1
  52. package/src/keystore/index.ts +4 -4
  53. package/src/molecule/barrel.ts +10 -1
  54. package/src/molecule/codec.ts +48 -153
  55. package/src/molecule/predefined.ts +63 -50
  56. package/src/signer/btc/index.ts +1 -0
  57. package/src/signer/btc/psbt.ts +98 -0
  58. package/src/signer/btc/signerBtc.ts +41 -1
  59. package/src/signer/btc/signerBtcPublicKeyReadonly.ts +15 -0
  60. package/src/signer/btc/verify.ts +2 -1
  61. package/src/signer/ckb/signerCkbPrivateKey.ts +6 -11
  62. package/src/signer/ckb/verifyCkbSecp256k1.ts +6 -10
  63. package/src/signer/doge/signerDogePrivateKey.ts +6 -3
  64. package/src/signer/doge/verify.ts +7 -8
  65. package/src/signer/nostr/signerNostrPrivateKey.ts +9 -8
  66. package/src/signer/nostr/verify.ts +2 -2
  67. package/src/utils/index.ts +20 -1
  68. package/tsdown.config.mts +53 -0
  69. package/dist/address/address.advanced.d.ts +0 -65
  70. package/dist/address/address.advanced.d.ts.map +0 -1
  71. package/dist/address/address.advanced.js +0 -147
  72. package/dist/address/advanced.d.ts +0 -2
  73. package/dist/address/advanced.d.ts.map +0 -1
  74. package/dist/address/advanced.js +0 -1
  75. package/dist/address/index.d.ts +0 -58
  76. package/dist/address/index.d.ts.map +0 -1
  77. package/dist/address/index.js +0 -78
  78. package/dist/advanced.d.ts +0 -3
  79. package/dist/advanced.d.ts.map +0 -1
  80. package/dist/advanced.js +0 -2
  81. package/dist/advancedBarrel.d.ts +0 -7
  82. package/dist/advancedBarrel.d.ts.map +0 -1
  83. package/dist/advancedBarrel.js +0 -6
  84. package/dist/barrel.d.ts +0 -14
  85. package/dist/barrel.d.ts.map +0 -1
  86. package/dist/barrel.js +0 -13
  87. package/dist/bytes/advanced.d.ts +0 -6
  88. package/dist/bytes/advanced.d.ts.map +0 -1
  89. package/dist/bytes/advanced.js +0 -1
  90. package/dist/bytes/index.d.ts +0 -112
  91. package/dist/bytes/index.d.ts.map +0 -1
  92. package/dist/bytes/index.js +0 -155
  93. package/dist/ckb/advanced.d.ts +0 -3
  94. package/dist/ckb/advanced.d.ts.map +0 -1
  95. package/dist/ckb/advanced.js +0 -2
  96. package/dist/ckb/hash.d.ts +0 -18
  97. package/dist/ckb/hash.d.ts.map +0 -1
  98. package/dist/ckb/hash.js +0 -19
  99. package/dist/ckb/index.d.ts +0 -6
  100. package/dist/ckb/index.d.ts.map +0 -1
  101. package/dist/ckb/index.js +0 -5
  102. package/dist/ckb/script.advanced.d.ts +0 -5
  103. package/dist/ckb/script.advanced.d.ts.map +0 -1
  104. package/dist/ckb/script.advanced.js +0 -13
  105. package/dist/ckb/script.d.ts +0 -156
  106. package/dist/ckb/script.d.ts.map +0 -1
  107. package/dist/ckb/script.js +0 -184
  108. package/dist/ckb/transaction.advanced.d.ts +0 -5
  109. package/dist/ckb/transaction.advanced.d.ts.map +0 -1
  110. package/dist/ckb/transaction.advanced.js +0 -9
  111. package/dist/ckb/transaction.d.ts +0 -1401
  112. package/dist/ckb/transaction.d.ts.map +0 -1
  113. package/dist/ckb/transaction.js +0 -1880
  114. package/dist/ckb/transactionErrors.d.ts +0 -15
  115. package/dist/ckb/transactionErrors.d.ts.map +0 -1
  116. package/dist/ckb/transactionErrors.js +0 -21
  117. package/dist/ckb/transactionLumos.d.ts +0 -30
  118. package/dist/ckb/transactionLumos.d.ts.map +0 -1
  119. package/dist/ckb/transactionLumos.js +0 -1
  120. package/dist/client/advanced.d.ts +0 -6
  121. package/dist/client/advanced.d.ts.map +0 -1
  122. package/dist/client/advanced.js +0 -5
  123. package/dist/client/cache/advanced.d.ts +0 -2
  124. package/dist/client/cache/advanced.d.ts.map +0 -1
  125. package/dist/client/cache/advanced.js +0 -1
  126. package/dist/client/cache/cache.d.ts +0 -98
  127. package/dist/client/cache/cache.d.ts.map +0 -1
  128. package/dist/client/cache/cache.js +0 -139
  129. package/dist/client/cache/index.d.ts +0 -3
  130. package/dist/client/cache/index.d.ts.map +0 -1
  131. package/dist/client/cache/index.js +0 -2
  132. package/dist/client/cache/memory.advanced.d.ts +0 -52
  133. package/dist/client/cache/memory.advanced.d.ts.map +0 -1
  134. package/dist/client/cache/memory.advanced.js +0 -149
  135. package/dist/client/cache/memory.d.ts +0 -53
  136. package/dist/client/cache/memory.d.ts.map +0 -1
  137. package/dist/client/cache/memory.js +0 -148
  138. package/dist/client/client.d.ts +0 -107
  139. package/dist/client/client.d.ts.map +0 -1
  140. package/dist/client/client.js +0 -328
  141. package/dist/client/clientPublicMainnet.advanced.d.ts +0 -4
  142. package/dist/client/clientPublicMainnet.advanced.d.ts.map +0 -1
  143. package/dist/client/clientPublicMainnet.advanced.js +0 -402
  144. package/dist/client/clientPublicMainnet.d.ts +0 -17
  145. package/dist/client/clientPublicMainnet.d.ts.map +0 -1
  146. package/dist/client/clientPublicMainnet.js +0 -40
  147. package/dist/client/clientPublicTestnet.advanced.d.ts +0 -4
  148. package/dist/client/clientPublicTestnet.advanced.d.ts.map +0 -1
  149. package/dist/client/clientPublicTestnet.advanced.js +0 -412
  150. package/dist/client/clientPublicTestnet.d.ts +0 -17
  151. package/dist/client/clientPublicTestnet.d.ts.map +0 -1
  152. package/dist/client/clientPublicTestnet.js +0 -40
  153. package/dist/client/clientTypes.advanced.d.ts +0 -25
  154. package/dist/client/clientTypes.advanced.d.ts.map +0 -1
  155. package/dist/client/clientTypes.advanced.js +0 -6
  156. package/dist/client/clientTypes.d.ts +0 -335
  157. package/dist/client/clientTypes.d.ts.map +0 -1
  158. package/dist/client/clientTypes.js +0 -232
  159. package/dist/client/index.d.ts +0 -8
  160. package/dist/client/index.d.ts.map +0 -1
  161. package/dist/client/index.js +0 -7
  162. package/dist/client/jsonRpc/advanced.d.ts +0 -3
  163. package/dist/client/jsonRpc/advanced.d.ts.map +0 -1
  164. package/dist/client/jsonRpc/advanced.js +0 -2
  165. package/dist/client/jsonRpc/client.d.ts +0 -160
  166. package/dist/client/jsonRpc/client.d.ts.map +0 -1
  167. package/dist/client/jsonRpc/client.js +0 -223
  168. package/dist/client/jsonRpc/index.d.ts +0 -2
  169. package/dist/client/jsonRpc/index.d.ts.map +0 -1
  170. package/dist/client/jsonRpc/index.js +0 -1
  171. package/dist/client/jsonRpc/transformers.d.ts +0 -51
  172. package/dist/client/jsonRpc/transformers.d.ts.map +0 -1
  173. package/dist/client/jsonRpc/transformers.js +0 -247
  174. package/dist/client/jsonRpc/types.d.ts +0 -101
  175. package/dist/client/jsonRpc/types.d.ts.map +0 -1
  176. package/dist/client/jsonRpc/types.js +0 -1
  177. package/dist/client/knownScript.d.ts +0 -27
  178. package/dist/client/knownScript.d.ts.map +0 -1
  179. package/dist/client/knownScript.js +0 -28
  180. package/dist/fixedPoint/index.d.ts +0 -55
  181. package/dist/fixedPoint/index.d.ts.map +0 -1
  182. package/dist/fixedPoint/index.js +0 -68
  183. package/dist/hasher/advanced.d.ts +0 -2
  184. package/dist/hasher/advanced.d.ts.map +0 -1
  185. package/dist/hasher/advanced.js +0 -1
  186. package/dist/hasher/hasher.d.ts +0 -35
  187. package/dist/hasher/hasher.d.ts.map +0 -1
  188. package/dist/hasher/hasher.js +0 -1
  189. package/dist/hasher/hasherCkb.d.ts +0 -57
  190. package/dist/hasher/hasherCkb.d.ts.map +0 -1
  191. package/dist/hasher/hasherCkb.js +0 -70
  192. package/dist/hasher/hasherKeecak256.d.ts +0 -41
  193. package/dist/hasher/hasherKeecak256.d.ts.map +0 -1
  194. package/dist/hasher/hasherKeecak256.js +0 -46
  195. package/dist/hasher/index.d.ts +0 -4
  196. package/dist/hasher/index.d.ts.map +0 -1
  197. package/dist/hasher/index.js +0 -3
  198. package/dist/hex/index.d.ts +0 -27
  199. package/dist/hex/index.d.ts.map +0 -1
  200. package/dist/hex/index.js +0 -17
  201. package/dist/index.d.ts +0 -3
  202. package/dist/index.d.ts.map +0 -1
  203. package/dist/index.js +0 -2
  204. package/dist/jsonRpc/advanced.d.ts +0 -2
  205. package/dist/jsonRpc/advanced.d.ts.map +0 -1
  206. package/dist/jsonRpc/advanced.js +0 -1
  207. package/dist/jsonRpc/index.d.ts +0 -2
  208. package/dist/jsonRpc/index.d.ts.map +0 -1
  209. package/dist/jsonRpc/index.js +0 -1
  210. package/dist/jsonRpc/requestor.d.ts +0 -49
  211. package/dist/jsonRpc/requestor.d.ts.map +0 -1
  212. package/dist/jsonRpc/requestor.js +0 -109
  213. package/dist/jsonRpc/transports/advanced.d.ts +0 -6
  214. package/dist/jsonRpc/transports/advanced.d.ts.map +0 -1
  215. package/dist/jsonRpc/transports/advanced.js +0 -5
  216. package/dist/jsonRpc/transports/factory.d.ts +0 -6
  217. package/dist/jsonRpc/transports/factory.d.ts.map +0 -1
  218. package/dist/jsonRpc/transports/factory.js +0 -8
  219. package/dist/jsonRpc/transports/fallback.d.ts +0 -8
  220. package/dist/jsonRpc/transports/fallback.d.ts.map +0 -1
  221. package/dist/jsonRpc/transports/fallback.js +0 -22
  222. package/dist/jsonRpc/transports/http.d.ts +0 -8
  223. package/dist/jsonRpc/transports/http.d.ts.map +0 -1
  224. package/dist/jsonRpc/transports/http.js +0 -22
  225. package/dist/jsonRpc/transports/transport.d.ts +0 -18
  226. package/dist/jsonRpc/transports/transport.d.ts.map +0 -1
  227. package/dist/jsonRpc/transports/transport.js +0 -1
  228. package/dist/jsonRpc/transports/webSocket.d.ts +0 -11
  229. package/dist/jsonRpc/transports/webSocket.d.ts.map +0 -1
  230. package/dist/jsonRpc/transports/webSocket.js +0 -87
  231. package/dist/keystore/index.d.ts +0 -31
  232. package/dist/keystore/index.d.ts.map +0 -1
  233. package/dist/keystore/index.js +0 -106
  234. package/dist/molecule/barrel.d.ts +0 -4
  235. package/dist/molecule/barrel.d.ts.map +0 -1
  236. package/dist/molecule/codec.d.ts +0 -146
  237. package/dist/molecule/codec.d.ts.map +0 -1
  238. package/dist/molecule/codec.js +0 -516
  239. package/dist/molecule/entity.d.ts +0 -112
  240. package/dist/molecule/entity.d.ts.map +0 -1
  241. package/dist/molecule/entity.js +0 -142
  242. package/dist/molecule/index.d.ts +0 -2
  243. package/dist/molecule/index.d.ts.map +0 -1
  244. package/dist/molecule/index.js +0 -1
  245. package/dist/molecule/predefined.d.ts +0 -57
  246. package/dist/molecule/predefined.d.ts.map +0 -1
  247. package/dist/molecule/predefined.js +0 -83
  248. package/dist/num/index.d.ts +0 -148
  249. package/dist/num/index.d.ts.map +0 -1
  250. package/dist/num/index.js +0 -204
  251. package/dist/signer/btc/index.d.ts +0 -4
  252. package/dist/signer/btc/index.d.ts.map +0 -1
  253. package/dist/signer/btc/index.js +0 -3
  254. package/dist/signer/btc/signerBtc.d.ts +0 -59
  255. package/dist/signer/btc/signerBtc.d.ts.map +0 -1
  256. package/dist/signer/btc/signerBtc.js +0 -83
  257. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -55
  258. package/dist/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +0 -1
  259. package/dist/signer/btc/signerBtcPublicKeyReadonly.js +0 -61
  260. package/dist/signer/btc/verify.d.ts +0 -40
  261. package/dist/signer/btc/verify.d.ts.map +0 -1
  262. package/dist/signer/btc/verify.js +0 -69
  263. package/dist/signer/ckb/index.d.ts +0 -6
  264. package/dist/signer/ckb/index.d.ts.map +0 -1
  265. package/dist/signer/ckb/index.js +0 -5
  266. package/dist/signer/ckb/signerCkbPrivateKey.d.ts +0 -16
  267. package/dist/signer/ckb/signerCkbPrivateKey.d.ts.map +0 -1
  268. package/dist/signer/ckb/signerCkbPrivateKey.js +0 -42
  269. package/dist/signer/ckb/signerCkbPublicKey.d.ts +0 -27
  270. package/dist/signer/ckb/signerCkbPublicKey.d.ts.map +0 -1
  271. package/dist/signer/ckb/signerCkbPublicKey.js +0 -101
  272. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts +0 -68
  273. package/dist/signer/ckb/signerCkbScriptReadonly.d.ts.map +0 -1
  274. package/dist/signer/ckb/signerCkbScriptReadonly.js +0 -78
  275. package/dist/signer/ckb/verifyCkbSecp256k1.d.ts +0 -11
  276. package/dist/signer/ckb/verifyCkbSecp256k1.d.ts.map +0 -1
  277. package/dist/signer/ckb/verifyCkbSecp256k1.js +0 -22
  278. package/dist/signer/ckb/verifyJoyId.d.ts +0 -6
  279. package/dist/signer/ckb/verifyJoyId.d.ts.map +0 -1
  280. package/dist/signer/ckb/verifyJoyId.js +0 -16
  281. package/dist/signer/doge/index.d.ts +0 -5
  282. package/dist/signer/doge/index.d.ts.map +0 -1
  283. package/dist/signer/doge/index.js +0 -4
  284. package/dist/signer/doge/signerDoge.d.ts +0 -52
  285. package/dist/signer/doge/signerDoge.d.ts.map +0 -1
  286. package/dist/signer/doge/signerDoge.js +0 -82
  287. package/dist/signer/doge/signerDogeAddressReadonly.d.ts +0 -41
  288. package/dist/signer/doge/signerDogeAddressReadonly.d.ts.map +0 -1
  289. package/dist/signer/doge/signerDogeAddressReadonly.js +0 -45
  290. package/dist/signer/doge/signerDogePrivateKey.d.ts +0 -52
  291. package/dist/signer/doge/signerDogePrivateKey.d.ts.map +0 -1
  292. package/dist/signer/doge/signerDogePrivateKey.js +0 -68
  293. package/dist/signer/doge/verify.d.ts +0 -17
  294. package/dist/signer/doge/verify.d.ts.map +0 -1
  295. package/dist/signer/doge/verify.js +0 -29
  296. package/dist/signer/dummy/alwaysError.d.ts +0 -12
  297. package/dist/signer/dummy/alwaysError.d.ts.map +0 -1
  298. package/dist/signer/dummy/alwaysError.js +0 -13
  299. package/dist/signer/dummy/dummy.d.ts +0 -15
  300. package/dist/signer/dummy/dummy.d.ts.map +0 -1
  301. package/dist/signer/dummy/dummy.js +0 -22
  302. package/dist/signer/dummy/index.d.ts +0 -4
  303. package/dist/signer/dummy/index.d.ts.map +0 -1
  304. package/dist/signer/dummy/index.js +0 -3
  305. package/dist/signer/dummy/openLink.d.ts +0 -12
  306. package/dist/signer/dummy/openLink.d.ts.map +0 -1
  307. package/dist/signer/dummy/openLink.js +0 -13
  308. package/dist/signer/evm/index.d.ts +0 -4
  309. package/dist/signer/evm/index.d.ts.map +0 -1
  310. package/dist/signer/evm/index.js +0 -3
  311. package/dist/signer/evm/signerEvm.d.ts +0 -59
  312. package/dist/signer/evm/signerEvm.d.ts.map +0 -1
  313. package/dist/signer/evm/signerEvm.js +0 -139
  314. package/dist/signer/evm/signerEvmAddressReadonly.d.ts +0 -47
  315. package/dist/signer/evm/signerEvmAddressReadonly.d.ts.map +0 -1
  316. package/dist/signer/evm/signerEvmAddressReadonly.js +0 -51
  317. package/dist/signer/evm/verify.d.ts +0 -6
  318. package/dist/signer/evm/verify.d.ts.map +0 -1
  319. package/dist/signer/evm/verify.js +0 -9
  320. package/dist/signer/index.d.ts +0 -8
  321. package/dist/signer/index.d.ts.map +0 -1
  322. package/dist/signer/index.js +0 -7
  323. package/dist/signer/nostr/index.d.ts +0 -5
  324. package/dist/signer/nostr/index.d.ts.map +0 -1
  325. package/dist/signer/nostr/index.js +0 -4
  326. package/dist/signer/nostr/signerNostr.d.ts +0 -72
  327. package/dist/signer/nostr/signerNostr.d.ts.map +0 -1
  328. package/dist/signer/nostr/signerNostr.js +0 -96
  329. package/dist/signer/nostr/signerNostrPrivateKey.d.ts +0 -14
  330. package/dist/signer/nostr/signerNostrPrivateKey.d.ts.map +0 -1
  331. package/dist/signer/nostr/signerNostrPrivateKey.js +0 -34
  332. package/dist/signer/nostr/signerNostrPublicKeyReadonly.d.ts +0 -15
  333. package/dist/signer/nostr/signerNostrPublicKeyReadonly.d.ts.map +0 -1
  334. package/dist/signer/nostr/signerNostrPublicKeyReadonly.js +0 -26
  335. package/dist/signer/nostr/verify.d.ts +0 -9
  336. package/dist/signer/nostr/verify.d.ts.map +0 -1
  337. package/dist/signer/nostr/verify.js +0 -55
  338. package/dist/signer/signer/index.d.ts +0 -256
  339. package/dist/signer/signer/index.d.ts.map +0 -1
  340. package/dist/signer/signer/index.js +0 -305
  341. package/dist/utils/index.d.ts +0 -97
  342. package/dist/utils/index.d.ts.map +0 -1
  343. package/dist/utils/index.js +0 -55
  344. package/dist.commonjs/address/address.advanced.d.ts +0 -65
  345. package/dist.commonjs/address/address.advanced.d.ts.map +0 -1
  346. package/dist.commonjs/address/address.advanced.js +0 -152
  347. package/dist.commonjs/address/advanced.d.ts +0 -2
  348. package/dist.commonjs/address/advanced.d.ts.map +0 -1
  349. package/dist.commonjs/address/advanced.js +0 -17
  350. package/dist.commonjs/address/index.d.ts +0 -58
  351. package/dist.commonjs/address/index.d.ts.map +0 -1
  352. package/dist.commonjs/address/index.js +0 -82
  353. package/dist.commonjs/advanced.d.ts.map +0 -1
  354. package/dist.commonjs/advancedBarrel.d.ts.map +0 -1
  355. package/dist.commonjs/barrel.d.ts.map +0 -1
  356. package/dist.commonjs/bytes/advanced.d.ts +0 -6
  357. package/dist.commonjs/bytes/advanced.d.ts.map +0 -1
  358. package/dist.commonjs/bytes/advanced.js +0 -2
  359. package/dist.commonjs/bytes/index.d.ts +0 -112
  360. package/dist.commonjs/bytes/index.d.ts.map +0 -1
  361. package/dist.commonjs/bytes/index.js +0 -163
  362. package/dist.commonjs/ckb/advanced.d.ts +0 -3
  363. package/dist.commonjs/ckb/advanced.d.ts.map +0 -1
  364. package/dist.commonjs/ckb/advanced.js +0 -18
  365. package/dist.commonjs/ckb/hash.d.ts +0 -18
  366. package/dist.commonjs/ckb/hash.d.ts.map +0 -1
  367. package/dist.commonjs/ckb/hash.js +0 -22
  368. package/dist.commonjs/ckb/index.d.ts +0 -6
  369. package/dist.commonjs/ckb/index.d.ts.map +0 -1
  370. package/dist.commonjs/ckb/index.js +0 -21
  371. package/dist.commonjs/ckb/script.advanced.d.ts +0 -5
  372. package/dist.commonjs/ckb/script.advanced.d.ts.map +0 -1
  373. package/dist.commonjs/ckb/script.advanced.js +0 -16
  374. package/dist.commonjs/ckb/script.d.ts +0 -156
  375. package/dist.commonjs/ckb/script.d.ts.map +0 -1
  376. package/dist.commonjs/ckb/script.js +0 -190
  377. package/dist.commonjs/ckb/transaction.advanced.d.ts +0 -5
  378. package/dist.commonjs/ckb/transaction.advanced.d.ts.map +0 -1
  379. package/dist.commonjs/ckb/transaction.advanced.js +0 -12
  380. package/dist.commonjs/ckb/transaction.d.ts +0 -1401
  381. package/dist.commonjs/ckb/transaction.d.ts.map +0 -1
  382. package/dist.commonjs/ckb/transaction.js +0 -1894
  383. package/dist.commonjs/ckb/transactionErrors.d.ts +0 -15
  384. package/dist.commonjs/ckb/transactionErrors.d.ts.map +0 -1
  385. package/dist.commonjs/ckb/transactionErrors.js +0 -26
  386. package/dist.commonjs/ckb/transactionLumos.d.ts +0 -30
  387. package/dist.commonjs/ckb/transactionLumos.d.ts.map +0 -1
  388. package/dist.commonjs/ckb/transactionLumos.js +0 -2
  389. package/dist.commonjs/client/advanced.d.ts +0 -6
  390. package/dist.commonjs/client/advanced.d.ts.map +0 -1
  391. package/dist.commonjs/client/advanced.js +0 -21
  392. package/dist.commonjs/client/cache/advanced.d.ts +0 -2
  393. package/dist.commonjs/client/cache/advanced.d.ts.map +0 -1
  394. package/dist.commonjs/client/cache/advanced.js +0 -17
  395. package/dist.commonjs/client/cache/cache.d.ts +0 -98
  396. package/dist.commonjs/client/cache/cache.d.ts.map +0 -1
  397. package/dist.commonjs/client/cache/cache.js +0 -143
  398. package/dist.commonjs/client/cache/index.d.ts +0 -3
  399. package/dist.commonjs/client/cache/index.d.ts.map +0 -1
  400. package/dist.commonjs/client/cache/index.js +0 -18
  401. package/dist.commonjs/client/cache/memory.advanced.d.ts +0 -52
  402. package/dist.commonjs/client/cache/memory.advanced.d.ts.map +0 -1
  403. package/dist.commonjs/client/cache/memory.advanced.js +0 -158
  404. package/dist.commonjs/client/cache/memory.d.ts +0 -53
  405. package/dist.commonjs/client/cache/memory.d.ts.map +0 -1
  406. package/dist.commonjs/client/cache/memory.js +0 -152
  407. package/dist.commonjs/client/client.d.ts +0 -107
  408. package/dist.commonjs/client/client.d.ts.map +0 -1
  409. package/dist.commonjs/client/client.js +0 -332
  410. package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts +0 -4
  411. package/dist.commonjs/client/clientPublicMainnet.advanced.d.ts.map +0 -1
  412. package/dist.commonjs/client/clientPublicMainnet.advanced.js +0 -405
  413. package/dist.commonjs/client/clientPublicMainnet.d.ts +0 -17
  414. package/dist.commonjs/client/clientPublicMainnet.d.ts.map +0 -1
  415. package/dist.commonjs/client/clientPublicMainnet.js +0 -47
  416. package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts +0 -4
  417. package/dist.commonjs/client/clientPublicTestnet.advanced.d.ts.map +0 -1
  418. package/dist.commonjs/client/clientPublicTestnet.advanced.js +0 -415
  419. package/dist.commonjs/client/clientPublicTestnet.d.ts +0 -17
  420. package/dist.commonjs/client/clientPublicTestnet.d.ts.map +0 -1
  421. package/dist.commonjs/client/clientPublicTestnet.js +0 -47
  422. package/dist.commonjs/client/clientTypes.advanced.d.ts +0 -25
  423. package/dist.commonjs/client/clientTypes.advanced.d.ts.map +0 -1
  424. package/dist.commonjs/client/clientTypes.advanced.js +0 -10
  425. package/dist.commonjs/client/clientTypes.d.ts +0 -335
  426. package/dist.commonjs/client/clientTypes.d.ts.map +0 -1
  427. package/dist.commonjs/client/clientTypes.js +0 -251
  428. package/dist.commonjs/client/index.d.ts +0 -8
  429. package/dist.commonjs/client/index.d.ts.map +0 -1
  430. package/dist.commonjs/client/index.js +0 -23
  431. package/dist.commonjs/client/jsonRpc/advanced.d.ts +0 -3
  432. package/dist.commonjs/client/jsonRpc/advanced.d.ts.map +0 -1
  433. package/dist.commonjs/client/jsonRpc/advanced.js +0 -18
  434. package/dist.commonjs/client/jsonRpc/client.d.ts +0 -160
  435. package/dist.commonjs/client/jsonRpc/client.d.ts.map +0 -1
  436. package/dist.commonjs/client/jsonRpc/client.js +0 -227
  437. package/dist.commonjs/client/jsonRpc/index.d.ts +0 -2
  438. package/dist.commonjs/client/jsonRpc/index.d.ts.map +0 -1
  439. package/dist.commonjs/client/jsonRpc/index.js +0 -17
  440. package/dist.commonjs/client/jsonRpc/transformers.d.ts +0 -51
  441. package/dist.commonjs/client/jsonRpc/transformers.d.ts.map +0 -1
  442. package/dist.commonjs/client/jsonRpc/transformers.js +0 -251
  443. package/dist.commonjs/client/jsonRpc/types.d.ts +0 -101
  444. package/dist.commonjs/client/jsonRpc/types.d.ts.map +0 -1
  445. package/dist.commonjs/client/jsonRpc/types.js +0 -2
  446. package/dist.commonjs/client/knownScript.d.ts +0 -27
  447. package/dist.commonjs/client/knownScript.d.ts.map +0 -1
  448. package/dist.commonjs/client/knownScript.js +0 -31
  449. package/dist.commonjs/fixedPoint/index.d.ts +0 -55
  450. package/dist.commonjs/fixedPoint/index.d.ts.map +0 -1
  451. package/dist.commonjs/fixedPoint/index.js +0 -73
  452. package/dist.commonjs/hasher/advanced.d.ts +0 -2
  453. package/dist.commonjs/hasher/advanced.d.ts.map +0 -1
  454. package/dist.commonjs/hasher/advanced.js +0 -4
  455. package/dist.commonjs/hasher/hasher.d.ts +0 -35
  456. package/dist.commonjs/hasher/hasher.d.ts.map +0 -1
  457. package/dist.commonjs/hasher/hasher.js +0 -2
  458. package/dist.commonjs/hasher/hasherCkb.d.ts +0 -57
  459. package/dist.commonjs/hasher/hasherCkb.d.ts.map +0 -1
  460. package/dist.commonjs/hasher/hasherCkb.js +0 -75
  461. package/dist.commonjs/hasher/hasherKeecak256.d.ts +0 -41
  462. package/dist.commonjs/hasher/hasherKeecak256.d.ts.map +0 -1
  463. package/dist.commonjs/hasher/hasherKeecak256.js +0 -50
  464. package/dist.commonjs/hasher/index.d.ts +0 -4
  465. package/dist.commonjs/hasher/index.d.ts.map +0 -1
  466. package/dist.commonjs/hasher/index.js +0 -19
  467. package/dist.commonjs/hex/index.d.ts +0 -27
  468. package/dist.commonjs/hex/index.d.ts.map +0 -1
  469. package/dist.commonjs/hex/index.js +0 -20
  470. package/dist.commonjs/index.d.ts.map +0 -1
  471. package/dist.commonjs/jsonRpc/advanced.d.ts +0 -2
  472. package/dist.commonjs/jsonRpc/advanced.d.ts.map +0 -1
  473. package/dist.commonjs/jsonRpc/advanced.js +0 -17
  474. package/dist.commonjs/jsonRpc/index.d.ts +0 -2
  475. package/dist.commonjs/jsonRpc/index.d.ts.map +0 -1
  476. package/dist.commonjs/jsonRpc/index.js +0 -17
  477. package/dist.commonjs/jsonRpc/requestor.d.ts +0 -49
  478. package/dist.commonjs/jsonRpc/requestor.d.ts.map +0 -1
  479. package/dist.commonjs/jsonRpc/requestor.js +0 -113
  480. package/dist.commonjs/jsonRpc/transports/advanced.d.ts +0 -6
  481. package/dist.commonjs/jsonRpc/transports/advanced.d.ts.map +0 -1
  482. package/dist.commonjs/jsonRpc/transports/advanced.js +0 -21
  483. package/dist.commonjs/jsonRpc/transports/factory.d.ts +0 -6
  484. package/dist.commonjs/jsonRpc/transports/factory.d.ts.map +0 -1
  485. package/dist.commonjs/jsonRpc/transports/factory.js +0 -11
  486. package/dist.commonjs/jsonRpc/transports/fallback.d.ts +0 -8
  487. package/dist.commonjs/jsonRpc/transports/fallback.d.ts.map +0 -1
  488. package/dist.commonjs/jsonRpc/transports/fallback.js +0 -26
  489. package/dist.commonjs/jsonRpc/transports/http.d.ts +0 -8
  490. package/dist.commonjs/jsonRpc/transports/http.d.ts.map +0 -1
  491. package/dist.commonjs/jsonRpc/transports/http.js +0 -26
  492. package/dist.commonjs/jsonRpc/transports/transport.d.ts +0 -18
  493. package/dist.commonjs/jsonRpc/transports/transport.d.ts.map +0 -1
  494. package/dist.commonjs/jsonRpc/transports/transport.js +0 -2
  495. package/dist.commonjs/jsonRpc/transports/webSocket.d.ts +0 -11
  496. package/dist.commonjs/jsonRpc/transports/webSocket.d.ts.map +0 -1
  497. package/dist.commonjs/jsonRpc/transports/webSocket.js +0 -94
  498. package/dist.commonjs/keystore/index.d.ts +0 -31
  499. package/dist.commonjs/keystore/index.d.ts.map +0 -1
  500. package/dist.commonjs/keystore/index.js +0 -110
  501. package/dist.commonjs/molecule/barrel.d.ts +0 -4
  502. package/dist.commonjs/molecule/barrel.d.ts.map +0 -1
  503. package/dist.commonjs/molecule/barrel.js +0 -19
  504. package/dist.commonjs/molecule/codec.d.ts +0 -146
  505. package/dist.commonjs/molecule/codec.d.ts.map +0 -1
  506. package/dist.commonjs/molecule/codec.js +0 -531
  507. package/dist.commonjs/molecule/entity.d.ts +0 -112
  508. package/dist.commonjs/molecule/entity.d.ts.map +0 -1
  509. package/dist.commonjs/molecule/entity.js +0 -147
  510. package/dist.commonjs/molecule/index.d.ts +0 -2
  511. package/dist.commonjs/molecule/index.d.ts.map +0 -1
  512. package/dist.commonjs/molecule/index.js +0 -37
  513. package/dist.commonjs/molecule/predefined.d.ts +0 -57
  514. package/dist.commonjs/molecule/predefined.d.ts.map +0 -1
  515. package/dist.commonjs/molecule/predefined.js +0 -87
  516. package/dist.commonjs/num/index.d.ts +0 -148
  517. package/dist.commonjs/num/index.d.ts.map +0 -1
  518. package/dist.commonjs/num/index.js +0 -216
  519. package/dist.commonjs/signer/btc/index.d.ts +0 -4
  520. package/dist.commonjs/signer/btc/index.d.ts.map +0 -1
  521. package/dist.commonjs/signer/btc/index.js +0 -19
  522. package/dist.commonjs/signer/btc/signerBtc.d.ts +0 -59
  523. package/dist.commonjs/signer/btc/signerBtc.d.ts.map +0 -1
  524. package/dist.commonjs/signer/btc/signerBtc.js +0 -87
  525. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts +0 -55
  526. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.d.ts.map +0 -1
  527. package/dist.commonjs/signer/btc/signerBtcPublicKeyReadonly.js +0 -65
  528. package/dist.commonjs/signer/btc/verify.d.ts +0 -40
  529. package/dist.commonjs/signer/btc/verify.d.ts.map +0 -1
  530. package/dist.commonjs/signer/btc/verify.js +0 -80
  531. package/dist.commonjs/signer/ckb/index.d.ts +0 -6
  532. package/dist.commonjs/signer/ckb/index.d.ts.map +0 -1
  533. package/dist.commonjs/signer/ckb/index.js +0 -21
  534. package/dist.commonjs/signer/ckb/signerCkbPrivateKey.d.ts +0 -16
  535. package/dist.commonjs/signer/ckb/signerCkbPrivateKey.d.ts.map +0 -1
  536. package/dist.commonjs/signer/ckb/signerCkbPrivateKey.js +0 -46
  537. package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts +0 -27
  538. package/dist.commonjs/signer/ckb/signerCkbPublicKey.d.ts.map +0 -1
  539. package/dist.commonjs/signer/ckb/signerCkbPublicKey.js +0 -105
  540. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts +0 -68
  541. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.d.ts.map +0 -1
  542. package/dist.commonjs/signer/ckb/signerCkbScriptReadonly.js +0 -82
  543. package/dist.commonjs/signer/ckb/verifyCkbSecp256k1.d.ts +0 -11
  544. package/dist.commonjs/signer/ckb/verifyCkbSecp256k1.d.ts.map +0 -1
  545. package/dist.commonjs/signer/ckb/verifyCkbSecp256k1.js +0 -26
  546. package/dist.commonjs/signer/ckb/verifyJoyId.d.ts +0 -6
  547. package/dist.commonjs/signer/ckb/verifyJoyId.d.ts.map +0 -1
  548. package/dist.commonjs/signer/ckb/verifyJoyId.js +0 -19
  549. package/dist.commonjs/signer/doge/index.d.ts +0 -5
  550. package/dist.commonjs/signer/doge/index.d.ts.map +0 -1
  551. package/dist.commonjs/signer/doge/index.js +0 -20
  552. package/dist.commonjs/signer/doge/signerDoge.d.ts +0 -52
  553. package/dist.commonjs/signer/doge/signerDoge.d.ts.map +0 -1
  554. package/dist.commonjs/signer/doge/signerDoge.js +0 -89
  555. package/dist.commonjs/signer/doge/signerDogeAddressReadonly.d.ts +0 -41
  556. package/dist.commonjs/signer/doge/signerDogeAddressReadonly.d.ts.map +0 -1
  557. package/dist.commonjs/signer/doge/signerDogeAddressReadonly.js +0 -49
  558. package/dist.commonjs/signer/doge/signerDogePrivateKey.d.ts +0 -52
  559. package/dist.commonjs/signer/doge/signerDogePrivateKey.d.ts.map +0 -1
  560. package/dist.commonjs/signer/doge/signerDogePrivateKey.js +0 -72
  561. package/dist.commonjs/signer/doge/verify.d.ts +0 -17
  562. package/dist.commonjs/signer/doge/verify.d.ts.map +0 -1
  563. package/dist.commonjs/signer/doge/verify.js +0 -33
  564. package/dist.commonjs/signer/dummy/alwaysError.d.ts +0 -12
  565. package/dist.commonjs/signer/dummy/alwaysError.d.ts.map +0 -1
  566. package/dist.commonjs/signer/dummy/alwaysError.js +0 -17
  567. package/dist.commonjs/signer/dummy/dummy.d.ts +0 -15
  568. package/dist.commonjs/signer/dummy/dummy.d.ts.map +0 -1
  569. package/dist.commonjs/signer/dummy/dummy.js +0 -26
  570. package/dist.commonjs/signer/dummy/index.d.ts +0 -4
  571. package/dist.commonjs/signer/dummy/index.d.ts.map +0 -1
  572. package/dist.commonjs/signer/dummy/index.js +0 -19
  573. package/dist.commonjs/signer/dummy/openLink.d.ts +0 -12
  574. package/dist.commonjs/signer/dummy/openLink.d.ts.map +0 -1
  575. package/dist.commonjs/signer/dummy/openLink.js +0 -17
  576. package/dist.commonjs/signer/evm/index.d.ts +0 -4
  577. package/dist.commonjs/signer/evm/index.d.ts.map +0 -1
  578. package/dist.commonjs/signer/evm/index.js +0 -19
  579. package/dist.commonjs/signer/evm/signerEvm.d.ts +0 -59
  580. package/dist.commonjs/signer/evm/signerEvm.d.ts.map +0 -1
  581. package/dist.commonjs/signer/evm/signerEvm.js +0 -143
  582. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts +0 -47
  583. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.d.ts.map +0 -1
  584. package/dist.commonjs/signer/evm/signerEvmAddressReadonly.js +0 -55
  585. package/dist.commonjs/signer/evm/verify.d.ts +0 -6
  586. package/dist.commonjs/signer/evm/verify.d.ts.map +0 -1
  587. package/dist.commonjs/signer/evm/verify.js +0 -12
  588. package/dist.commonjs/signer/index.d.ts +0 -8
  589. package/dist.commonjs/signer/index.d.ts.map +0 -1
  590. package/dist.commonjs/signer/index.js +0 -23
  591. package/dist.commonjs/signer/nostr/index.d.ts +0 -5
  592. package/dist.commonjs/signer/nostr/index.d.ts.map +0 -1
  593. package/dist.commonjs/signer/nostr/index.js +0 -20
  594. package/dist.commonjs/signer/nostr/signerNostr.d.ts +0 -72
  595. package/dist.commonjs/signer/nostr/signerNostr.d.ts.map +0 -1
  596. package/dist.commonjs/signer/nostr/signerNostr.js +0 -100
  597. package/dist.commonjs/signer/nostr/signerNostrPrivateKey.d.ts +0 -14
  598. package/dist.commonjs/signer/nostr/signerNostrPrivateKey.d.ts.map +0 -1
  599. package/dist.commonjs/signer/nostr/signerNostrPrivateKey.js +0 -38
  600. package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.d.ts +0 -15
  601. package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.d.ts.map +0 -1
  602. package/dist.commonjs/signer/nostr/signerNostrPublicKeyReadonly.js +0 -30
  603. package/dist.commonjs/signer/nostr/verify.d.ts +0 -9
  604. package/dist.commonjs/signer/nostr/verify.d.ts.map +0 -1
  605. package/dist.commonjs/signer/nostr/verify.js +0 -60
  606. package/dist.commonjs/signer/signer/index.d.ts +0 -256
  607. package/dist.commonjs/signer/signer/index.d.ts.map +0 -1
  608. package/dist.commonjs/signer/signer/index.js +0 -311
  609. package/dist.commonjs/utils/index.d.ts +0 -97
  610. package/dist.commonjs/utils/index.d.ts.map +0 -1
  611. package/dist.commonjs/utils/index.js +0 -62
  612. /package/{dist/molecule/barrel.js → src/codec/index.ts} +0 -0
@@ -1,59 +0,0 @@
1
- import { Address } from "../../address/index.js";
2
- import { Transaction, TransactionLike } from "../../ckb/index.js";
3
- import { HexLike } from "../../hex/index.js";
4
- import { Signer, SignerSignType, SignerType } from "../signer/index.js";
5
- /**
6
- * An abstract class extending the Signer class for Bitcoin-like signing operations.
7
- * This class provides methods to get Bitcoin account, public key, and internal address,
8
- * as well as signing transactions.
9
- * @public
10
- */
11
- export declare abstract class SignerBtc extends Signer {
12
- get type(): SignerType;
13
- get signType(): SignerSignType;
14
- /**
15
- * Gets the Bitcoin account associated with the signer.
16
- *
17
- * @returns A promise that resolves to a string representing the Bitcoin account.
18
- */
19
- abstract getBtcAccount(): Promise<string>;
20
- /**
21
- * Gets the Bitcoin public key associated with the signer.
22
- *
23
- * @returns A promise that resolves to a HexLike value representing the Bitcoin public key.
24
- */
25
- abstract getBtcPublicKey(): Promise<HexLike>;
26
- /**
27
- * Gets the internal address, which is the Bitcoin account in this case.
28
- *
29
- * @returns A promise that resolves to a string representing the internal address.
30
- */
31
- getInternalAddress(): Promise<string>;
32
- /**
33
- * Gets the identity, which is the Bitcoin public key in this case.
34
- *
35
- * @returns A promise that resolves to a string representing the identity
36
- */
37
- getIdentity(): Promise<string>;
38
- /**
39
- * Gets an array of Address objects representing the known script addresses for the signer.
40
- *
41
- * @returns A promise that resolves to an array of Address objects.
42
- */
43
- getAddressObjs(): Promise<Address[]>;
44
- /**
45
- * prepare a transaction before signing. This method is not implemented and should be overridden by subclasses.
46
- *
47
- * @param txLike - The transaction to prepare, represented as a TransactionLike object.
48
- * @returns A promise that resolves to the prepared Transaction object.
49
- */
50
- prepareTransaction(txLike: TransactionLike): Promise<Transaction>;
51
- /**
52
- * Signs a transaction without modifying it.
53
- *
54
- * @param txLike - The transaction to sign, represented as a TransactionLike object.
55
- * @returns A promise that resolves to a signed Transaction object.
56
- */
57
- signOnlyTransaction(txLike: TransactionLike): Promise<Transaction>;
58
- }
59
- //# sourceMappingURL=signerBtc.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signerBtc.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtc.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAE/E,OAAO,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAGxE;;;;;GAKG;AACH,8BAAsB,SAAU,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED;;;;OAIG;IACH,QAAQ,CAAC,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAEzC;;;;OAIG;IACH,QAAQ,CAAC,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC;IAE5C;;;;OAIG;IACG,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAI3C;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAIpC;;;;OAIG;IACG,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAa1C;;;;;OAKG;IACG,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;IAQvE;;;;;OAKG;IACG,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CA+BzE"}
@@ -1,83 +0,0 @@
1
- import { Address } from "../../address/index.js";
2
- import { bytesConcat, bytesFrom } from "../../bytes/index.js";
3
- import { Transaction, WitnessArgs } from "../../ckb/index.js";
4
- import { KnownScript } from "../../client/index.js";
5
- import { hexFrom } from "../../hex/index.js";
6
- import { numToBytes } from "../../num/index.js";
7
- import { Signer, SignerSignType, SignerType } from "../signer/index.js";
8
- import { btcEcdsaPublicKeyHash } from "./verify.js";
9
- /**
10
- * An abstract class extending the Signer class for Bitcoin-like signing operations.
11
- * This class provides methods to get Bitcoin account, public key, and internal address,
12
- * as well as signing transactions.
13
- * @public
14
- */
15
- export class SignerBtc extends Signer {
16
- get type() {
17
- return SignerType.BTC;
18
- }
19
- get signType() {
20
- return SignerSignType.BtcEcdsa;
21
- }
22
- /**
23
- * Gets the internal address, which is the Bitcoin account in this case.
24
- *
25
- * @returns A promise that resolves to a string representing the internal address.
26
- */
27
- async getInternalAddress() {
28
- return this.getBtcAccount();
29
- }
30
- /**
31
- * Gets the identity, which is the Bitcoin public key in this case.
32
- *
33
- * @returns A promise that resolves to a string representing the identity
34
- */
35
- async getIdentity() {
36
- return hexFrom(await this.getBtcPublicKey()).slice(2);
37
- }
38
- /**
39
- * Gets an array of Address objects representing the known script addresses for the signer.
40
- *
41
- * @returns A promise that resolves to an array of Address objects.
42
- */
43
- async getAddressObjs() {
44
- const publicKey = await this.getBtcPublicKey();
45
- const hash = btcEcdsaPublicKeyHash(publicKey);
46
- return [
47
- await Address.fromKnownScript(this.client, KnownScript.OmniLock, hexFrom([0x04, ...hash, 0x00])),
48
- ];
49
- }
50
- /**
51
- * prepare a transaction before signing. This method is not implemented and should be overridden by subclasses.
52
- *
53
- * @param txLike - The transaction to prepare, represented as a TransactionLike object.
54
- * @returns A promise that resolves to the prepared Transaction object.
55
- */
56
- async prepareTransaction(txLike) {
57
- const tx = Transaction.from(txLike);
58
- const { script } = await this.getRecommendedAddressObj();
59
- await tx.addCellDepsOfKnownScripts(this.client, KnownScript.OmniLock);
60
- await tx.prepareSighashAllWitness(script, 85, this.client);
61
- return tx;
62
- }
63
- /**
64
- * Signs a transaction without modifying it.
65
- *
66
- * @param txLike - The transaction to sign, represented as a TransactionLike object.
67
- * @returns A promise that resolves to a signed Transaction object.
68
- */
69
- async signOnlyTransaction(txLike) {
70
- const tx = Transaction.from(txLike);
71
- const { script } = await this.getRecommendedAddressObj();
72
- const info = await tx.getSignHashInfo(script, this.client);
73
- if (!info) {
74
- return tx;
75
- }
76
- const signature = bytesFrom(await this.signMessageRaw(`CKB (Bitcoin Layer) transaction: ${info.message}`), "base64");
77
- signature[0] = 31 + ((signature[0] - 27) % 4);
78
- const witness = WitnessArgs.fromBytes(tx.witnesses[info.position]);
79
- witness.lock = hexFrom(bytesConcat(numToBytes(5 * 4 + signature.length, 4), numToBytes(4 * 4, 4), numToBytes(5 * 4 + signature.length, 4), numToBytes(5 * 4 + signature.length, 4), numToBytes(signature.length, 4), signature));
80
- tx.setWitnessArgsAt(info.position, witness);
81
- return tx;
82
- }
83
- }
@@ -1,55 +0,0 @@
1
- import { Client } from "../../client/index.js";
2
- import { Hex, HexLike } from "../../hex/index.js";
3
- import { SignerBtc } from "./signerBtc.js";
4
- /**
5
- * A class extending SignerBtc that provides read-only access to a Bitcoin public key and account.
6
- * This class does not support signing operations.
7
- * @public
8
- */
9
- export declare class SignerBtcPublicKeyReadonly extends SignerBtc {
10
- private readonly account;
11
- private readonly publicKey;
12
- /**
13
- * Creates an instance of SignerBtcPublicKeyReadonly.
14
- *
15
- * @param client - The client instance used for communication.
16
- * @param account - The Bitcoin account associated with the signer.
17
- * @param publicKey - The public key associated with the signer.
18
- */
19
- constructor(client: Client, account: string, publicKey: HexLike);
20
- /**
21
- * Connects to the client. This implementation does nothing as the class is read-only.
22
- *
23
- * @returns A promise that resolves when the connection is complete.
24
- */
25
- connect(): Promise<void>;
26
- /**
27
- * Check if the signer is connected.
28
- *
29
- * @returns A promise that resolves the connection status.
30
- */
31
- isConnected(): Promise<boolean>;
32
- /**
33
- * Gets the Bitcoin account associated with the signer.
34
- *
35
- * @returns A promise that resolves to a string representing the Bitcoin account.
36
- *
37
- * @example
38
- * ```typescript
39
- * const account = await signer.getBtcAccount(); // Outputs the Bitcoin account
40
- * ```
41
- */
42
- getBtcAccount(): Promise<string>;
43
- /**
44
- * Gets the Bitcoin public key associated with the signer.
45
- *
46
- * @returns A promise that resolves to a Hex string representing the Bitcoin public key.
47
- *
48
- * @example
49
- * ```typescript
50
- * const publicKey = await signer.getBtcPublicKey(); // Outputs the Bitcoin public key
51
- * ```
52
- */
53
- getBtcPublicKey(): Promise<Hex>;
54
- }
55
- //# sourceMappingURL=signerBtcPublicKeyReadonly.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signerBtcPublicKeyReadonly.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/signerBtcPublicKeyReadonly.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,qBAAa,0BAA2B,SAAQ,SAAS;IAYrD,OAAO,CAAC,QAAQ,CAAC,OAAO;IAX1B,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAM;IAEhC;;;;;;OAMG;gBAED,MAAM,EAAE,MAAM,EACG,OAAO,EAAE,MAAM,EAChC,SAAS,EAAE,OAAO;IAOpB;;;;OAIG;IACG,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAE9B;;;;OAIG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAIrC;;;;;;;;;OASG;IACG,aAAa,IAAI,OAAO,CAAC,MAAM,CAAC;IAItC;;;;;;;;;OASG;IACG,eAAe,IAAI,OAAO,CAAC,GAAG,CAAC;CAGtC"}
@@ -1,61 +0,0 @@
1
- import { hexFrom } from "../../hex/index.js";
2
- import { SignerBtc } from "./signerBtc.js";
3
- /**
4
- * A class extending SignerBtc that provides read-only access to a Bitcoin public key and account.
5
- * This class does not support signing operations.
6
- * @public
7
- */
8
- export class SignerBtcPublicKeyReadonly extends SignerBtc {
9
- /**
10
- * Creates an instance of SignerBtcPublicKeyReadonly.
11
- *
12
- * @param client - The client instance used for communication.
13
- * @param account - The Bitcoin account associated with the signer.
14
- * @param publicKey - The public key associated with the signer.
15
- */
16
- constructor(client, account, publicKey) {
17
- super(client);
18
- this.account = account;
19
- this.publicKey = hexFrom(publicKey);
20
- }
21
- /**
22
- * Connects to the client. This implementation does nothing as the class is read-only.
23
- *
24
- * @returns A promise that resolves when the connection is complete.
25
- */
26
- async connect() { }
27
- /**
28
- * Check if the signer is connected.
29
- *
30
- * @returns A promise that resolves the connection status.
31
- */
32
- async isConnected() {
33
- return true;
34
- }
35
- /**
36
- * Gets the Bitcoin account associated with the signer.
37
- *
38
- * @returns A promise that resolves to a string representing the Bitcoin account.
39
- *
40
- * @example
41
- * ```typescript
42
- * const account = await signer.getBtcAccount(); // Outputs the Bitcoin account
43
- * ```
44
- */
45
- async getBtcAccount() {
46
- return this.account;
47
- }
48
- /**
49
- * Gets the Bitcoin public key associated with the signer.
50
- *
51
- * @returns A promise that resolves to a Hex string representing the Bitcoin public key.
52
- *
53
- * @example
54
- * ```typescript
55
- * const publicKey = await signer.getBtcPublicKey(); // Outputs the Bitcoin public key
56
- * ```
57
- */
58
- async getBtcPublicKey() {
59
- return this.publicKey;
60
- }
61
- }
@@ -1,40 +0,0 @@
1
- import { Bytes, BytesLike } from "../../bytes/index.js";
2
- import { Hex } from "../../hex/index.js";
3
- import { NumLike } from "../../num/index.js";
4
- /**
5
- * Encodes a number into a variable-length byte array according to the Bitcoin protocol.
6
- * This format is used for encoding lengths of data, such as script lengths.
7
- *
8
- * @param len - The number to encode. Can be a NumLike.
9
- * @returns The encoded length as a Bytes.
10
- * @public
11
- */
12
- export declare function btcVarLengthBytesFrom(len: NumLike): Bytes;
13
- /**
14
- * Computes the message hash for Bitcoin ECDSA signatures.
15
- * This function follows the Bitcoin message signing standard, which involves
16
- * prefixing the message with a magic string and its length, then double SHA256 hashing the result.
17
- *
18
- * @param message - The message to be hashed. Can be a string or BytesLike.
19
- * @param messagePrefix - Optional. A custom prefix to use instead of the default "\u0018Bitcoin Signed Message:\n".
20
- * @returns The Bitcoin hash of the prefixed message as Bytes.
21
- * @public
22
- */
23
- export declare function messageHashBtcEcdsa(message: string | BytesLike, messagePrefix?: string | BytesLike): Bytes;
24
- /**
25
- * @public
26
- */
27
- export declare function btcEcdsaPublicKeyHash(publicKey: BytesLike): Bytes;
28
- /**
29
- * @public
30
- */
31
- export declare function btcP2pkhAddressFromPublicKey(publicKey: BytesLike, network: number): string;
32
- /**
33
- * @public
34
- */
35
- export declare function btcPublicKeyFromP2pkhAddress(address: string): Hex;
36
- /**
37
- * @public
38
- */
39
- export declare function verifyMessageBtcEcdsa(message: string | BytesLike, signature: string, publicKey: string): boolean;
40
- //# sourceMappingURL=verify.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"verify.d.ts","sourceRoot":"","sources":["../../../src/signer/btc/verify.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,KAAK,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,GAAG,EAAW,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAyB,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAEpE;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,KAAK,CAUzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CACjC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,aAAa,CAAC,EAAE,MAAM,GAAG,SAAS,GACjC,KAAK,CAcP;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,SAAS,GAAG,KAAK,CAEjE;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAC1C,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,MAAM,GACd,MAAM,CAIR;AAED;;GAEG;AACH,wBAAgB,4BAA4B,CAAC,OAAO,EAAE,MAAM,GAAG,GAAG,CAEjE;AAED;;GAEG;AACH,wBAAgB,qBAAqB,CACnC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,SAAS,EAAE,MAAM,EACjB,SAAS,EAAE,MAAM,GAChB,OAAO,CAWT"}
@@ -1,69 +0,0 @@
1
- import { secp256k1 } from "@noble/curves/secp256k1";
2
- import { ripemd160 } from "@noble/hashes/legacy.js";
3
- import { sha256 } from "@noble/hashes/sha2.js";
4
- import bs58check from "bs58check";
5
- import { bytesConcat, bytesFrom } from "../../bytes/index.js";
6
- import { hexFrom } from "../../hex/index.js";
7
- import { numFrom, numLeToBytes } from "../../num/index.js";
8
- /**
9
- * Encodes a number into a variable-length byte array according to the Bitcoin protocol.
10
- * This format is used for encoding lengths of data, such as script lengths.
11
- *
12
- * @param len - The number to encode. Can be a NumLike.
13
- * @returns The encoded length as a Bytes.
14
- * @public
15
- */
16
- export function btcVarLengthBytesFrom(len) {
17
- const num = numFrom(len);
18
- return num < 0xfd
19
- ? numLeToBytes(num, 1)
20
- : num <= 0xffff
21
- ? bytesConcat([0xfd], numLeToBytes(num, 2))
22
- : num <= 0xffffffff
23
- ? bytesConcat([0xfe], numLeToBytes(num, 4))
24
- : bytesConcat([0xff], numLeToBytes(num, 8));
25
- }
26
- /**
27
- * Computes the message hash for Bitcoin ECDSA signatures.
28
- * This function follows the Bitcoin message signing standard, which involves
29
- * prefixing the message with a magic string and its length, then double SHA256 hashing the result.
30
- *
31
- * @param message - The message to be hashed. Can be a string or BytesLike.
32
- * @param messagePrefix - Optional. A custom prefix to use instead of the default "\u0018Bitcoin Signed Message:\n".
33
- * @returns The Bitcoin hash of the prefixed message as Bytes.
34
- * @public
35
- */
36
- export function messageHashBtcEcdsa(message, messagePrefix) {
37
- const prefix = messagePrefix ?? "\u0018Bitcoin Signed Message:\n";
38
- const rawPrefix = typeof prefix === "string" ? bytesFrom(prefix, "utf8") : bytesFrom(prefix);
39
- const rawMsg = typeof message === "string"
40
- ? bytesFrom(message, "utf8")
41
- : bytesFrom(message);
42
- return sha256(sha256(bytesConcat(rawPrefix, btcVarLengthBytesFrom(rawMsg.length), rawMsg)));
43
- }
44
- /**
45
- * @public
46
- */
47
- export function btcEcdsaPublicKeyHash(publicKey) {
48
- return ripemd160(sha256(bytesFrom(publicKey)));
49
- }
50
- /**
51
- * @public
52
- */
53
- export function btcP2pkhAddressFromPublicKey(publicKey, network) {
54
- return bs58check.encode(bytesConcat([network], btcEcdsaPublicKeyHash(publicKey)));
55
- }
56
- /**
57
- * @public
58
- */
59
- export function btcPublicKeyFromP2pkhAddress(address) {
60
- return hexFrom(bs58check.decode(address).slice(1));
61
- }
62
- /**
63
- * @public
64
- */
65
- export function verifyMessageBtcEcdsa(message, signature, publicKey) {
66
- const challenge = typeof message === "string" ? message : hexFrom(message).slice(2);
67
- const rawSign = bytesFrom(signature, "base64").slice(1);
68
- return secp256k1.verify(bytesFrom(rawSign), messageHashBtcEcdsa(challenge), bytesFrom(publicKey));
69
- }
@@ -1,6 +0,0 @@
1
- export * from "./signerCkbPrivateKey.js";
2
- export * from "./signerCkbPublicKey.js";
3
- export * from "./signerCkbScriptReadonly.js";
4
- export * from "./verifyCkbSecp256k1.js";
5
- export * from "./verifyJoyId.js";
6
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,yBAAyB,CAAC;AACxC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,yBAAyB,CAAC;AACxC,cAAc,kBAAkB,CAAC"}
@@ -1,5 +0,0 @@
1
- export * from "./signerCkbPrivateKey.js";
2
- export * from "./signerCkbPublicKey.js";
3
- export * from "./signerCkbScriptReadonly.js";
4
- export * from "./verifyCkbSecp256k1.js";
5
- export * from "./verifyJoyId.js";
@@ -1,16 +0,0 @@
1
- import { BytesLike } from "../../bytes/index.js";
2
- import { Transaction, TransactionLike } from "../../ckb/index.js";
3
- import { Client } from "../../client/index.js";
4
- import { Hex, HexLike } from "../../hex/index.js";
5
- import { SignerCkbPublicKey } from "./signerCkbPublicKey.js";
6
- /**
7
- * @public
8
- */
9
- export declare class SignerCkbPrivateKey extends SignerCkbPublicKey {
10
- readonly privateKey: Hex;
11
- constructor(client: Client, privateKey: HexLike);
12
- _signMessage(message: HexLike): Promise<Hex>;
13
- signMessageRaw(message: string | BytesLike): Promise<Hex>;
14
- signOnlyTransaction(txLike: TransactionLike): Promise<Transaction>;
15
- }
16
- //# sourceMappingURL=signerCkbPrivateKey.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signerCkbPrivateKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPrivateKey.ts"],"names":[],"mappings":"AACA,OAAO,EAA0B,SAAS,EAAE,MAAM,sBAAsB,CAAC;AACzE,OAAO,EAAE,WAAW,EAAE,eAAe,EAAe,MAAM,oBAAoB,CAAC;AAC/E,OAAO,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAC/C,OAAO,EAAE,GAAG,EAAW,OAAO,EAAE,MAAM,oBAAoB,CAAC;AAE3D,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAG7D;;GAEG;AACH,qBAAa,mBAAoB,SAAQ,kBAAkB;IACzD,SAAgB,UAAU,EAAE,GAAG,CAAC;gBAEpB,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO;IAUzC,YAAY,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC;IAgB5C,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC;IAIzD,mBAAmB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAmBzE"}
@@ -1,42 +0,0 @@
1
- import { secp256k1 } from "@noble/curves/secp256k1";
2
- import { bytesConcat, bytesFrom } from "../../bytes/index.js";
3
- import { Transaction, WitnessArgs } from "../../ckb/index.js";
4
- import { hexFrom } from "../../hex/index.js";
5
- import { numBeToBytes } from "../../num/index.js";
6
- import { SignerCkbPublicKey } from "./signerCkbPublicKey.js";
7
- import { messageHashCkbSecp256k1 } from "./verifyCkbSecp256k1.js";
8
- /**
9
- * @public
10
- */
11
- export class SignerCkbPrivateKey extends SignerCkbPublicKey {
12
- constructor(client, privateKey) {
13
- const pk = hexFrom(privateKey);
14
- if (bytesFrom(pk).length !== 32) {
15
- throw new Error("Private key must be 32 bytes!");
16
- }
17
- super(client, secp256k1.getPublicKey(bytesFrom(pk), true));
18
- this.privateKey = pk;
19
- }
20
- async _signMessage(message) {
21
- const signature = secp256k1.sign(bytesFrom(message), bytesFrom(this.privateKey));
22
- const { r, s, recovery } = signature;
23
- return hexFrom(bytesConcat(numBeToBytes(r, 32), numBeToBytes(s, 32), numBeToBytes(recovery, 1)));
24
- }
25
- async signMessageRaw(message) {
26
- return this._signMessage(messageHashCkbSecp256k1(message));
27
- }
28
- async signOnlyTransaction(txLike) {
29
- const tx = Transaction.from(txLike);
30
- for (const { script } of await this.getRelatedScripts(tx)) {
31
- const info = await tx.getSignHashInfo(script, this.client);
32
- if (!info) {
33
- return tx;
34
- }
35
- const signature = await this._signMessage(info.message);
36
- const witness = tx.getWitnessArgsAt(info.position) ?? WitnessArgs.from({});
37
- witness.lock = signature;
38
- tx.setWitnessArgsAt(info.position, witness);
39
- }
40
- return tx;
41
- }
42
- }
@@ -1,27 +0,0 @@
1
- import { Address } from "../../address/index.js";
2
- import { Script, Transaction, TransactionLike } from "../../ckb/index.js";
3
- import { CellDepInfo, Client } from "../../client/index.js";
4
- import { Hex, HexLike } from "../../hex/index.js";
5
- import { Signer, SignerSignType, SignerType } from "../signer/index.js";
6
- /**
7
- * @public
8
- */
9
- export declare class SignerCkbPublicKey extends Signer {
10
- get type(): SignerType;
11
- get signType(): SignerSignType;
12
- readonly publicKey: Hex;
13
- constructor(client: Client, publicKey: HexLike);
14
- connect(): Promise<void>;
15
- isConnected(): Promise<boolean>;
16
- getInternalAddress(): Promise<string>;
17
- getIdentity(): Promise<string>;
18
- getAddressObjSecp256k1(): Promise<Address>;
19
- getRecommendedAddressObj(_preference?: unknown): Promise<Address>;
20
- getAddressObjs(): Promise<Address[]>;
21
- getRelatedScripts(txLike: TransactionLike): Promise<{
22
- script: Script;
23
- cellDeps: CellDepInfo[];
24
- }[]>;
25
- prepareTransaction(txLike: TransactionLike): Promise<Transaction>;
26
- }
27
- //# sourceMappingURL=signerCkbPublicKey.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"signerCkbPublicKey.d.ts","sourceRoot":"","sources":["../../../src/signer/ckb/signerCkbPublicKey.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,wBAAwB,CAAC;AAEjD,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,EAAe,MAAM,uBAAuB,CAAC;AAEzE,OAAO,EAAE,GAAG,EAAE,OAAO,EAAW,MAAM,oBAAoB,CAAC;AAC3D,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAExE;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,MAAM;IAC5C,IAAI,IAAI,IAAI,UAAU,CAErB;IAED,IAAI,QAAQ,IAAI,cAAc,CAE7B;IAED,SAAgB,SAAS,EAAE,GAAG,CAAC;gBAEnB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO;IASxC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAExB,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAI/B,kBAAkB,IAAI,OAAO,CAAC,MAAM,CAAC;IAIrC,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAI9B,sBAAsB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQ1C,wBAAwB,CAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IAIjE,cAAc,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAmCpC,iBAAiB,CACrB,MAAM,EAAE,eAAe,GACtB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,WAAW,EAAE,CAAA;KAAE,EAAE,CAAC;IA2CnD,kBAAkB,CAAC,MAAM,EAAE,eAAe,GAAG,OAAO,CAAC,WAAW,CAAC;CAWxE"}
@@ -1,101 +0,0 @@
1
- import { Address } from "../../address/index.js";
2
- import { bytesFrom } from "../../bytes/index.js";
3
- import { Script, Transaction } from "../../ckb/index.js";
4
- import { KnownScript } from "../../client/index.js";
5
- import { hashCkb } from "../../hasher/index.js";
6
- import { hexFrom } from "../../hex/index.js";
7
- import { Signer, SignerSignType, SignerType } from "../signer/index.js";
8
- /**
9
- * @public
10
- */
11
- export class SignerCkbPublicKey extends Signer {
12
- get type() {
13
- return SignerType.CKB;
14
- }
15
- get signType() {
16
- return SignerSignType.CkbSecp256k1;
17
- }
18
- constructor(client, publicKey) {
19
- super(client);
20
- this.publicKey = hexFrom(publicKey);
21
- if (bytesFrom(this.publicKey).length !== 33) {
22
- throw new Error("Public key must be 33 bytes!");
23
- }
24
- }
25
- async connect() { }
26
- async isConnected() {
27
- return true;
28
- }
29
- async getInternalAddress() {
30
- return this.getRecommendedAddress();
31
- }
32
- async getIdentity() {
33
- return this.publicKey;
34
- }
35
- async getAddressObjSecp256k1() {
36
- return Address.fromKnownScript(this.client, KnownScript.Secp256k1Blake160, bytesFrom(hashCkb(this.publicKey)).slice(0, 20));
37
- }
38
- async getRecommendedAddressObj(_preference) {
39
- return this.getAddressObjSecp256k1();
40
- }
41
- async getAddressObjs() {
42
- const secp256k1 = await this.getAddressObjSecp256k1();
43
- const addresses = [];
44
- let count = 0;
45
- for await (const cell of this.client.findCells({
46
- script: await Script.fromKnownScript(this.client, KnownScript.AnyoneCanPay, secp256k1.script.args),
47
- scriptType: "lock",
48
- scriptSearchMode: "prefix",
49
- withData: false,
50
- })) {
51
- if (count >= 10) {
52
- break;
53
- }
54
- count += 1;
55
- if (addresses.some(({ script }) => script.eq(cell.cellOutput.lock))) {
56
- continue;
57
- }
58
- addresses.push(Address.from({
59
- prefix: this.client.addressPrefix,
60
- script: cell.cellOutput.lock,
61
- }));
62
- }
63
- return [secp256k1, ...addresses];
64
- }
65
- async getRelatedScripts(txLike) {
66
- const tx = Transaction.from(txLike);
67
- const secp256k1 = await this.getAddressObjSecp256k1();
68
- const acp = await Script.fromKnownScript(this.client, KnownScript.AnyoneCanPay, secp256k1.script.args);
69
- const scripts = [];
70
- for (const input of tx.inputs) {
71
- const { cellOutput: { lock }, } = await input.getCell(this.client);
72
- if (scripts.some(({ script }) => script.eq(lock))) {
73
- continue;
74
- }
75
- if (lock.eq(secp256k1.script)) {
76
- scripts.push({
77
- script: lock,
78
- cellDeps: (await this.client.getKnownScript(KnownScript.Secp256k1Blake160)).cellDeps,
79
- });
80
- }
81
- else if (lock.codeHash === acp.codeHash &&
82
- lock.hashType === acp.hashType &&
83
- lock.args.startsWith(acp.args)) {
84
- scripts.push({
85
- script: lock,
86
- cellDeps: (await this.client.getKnownScript(KnownScript.AnyoneCanPay))
87
- .cellDeps,
88
- });
89
- }
90
- }
91
- return scripts;
92
- }
93
- async prepareTransaction(txLike) {
94
- const tx = Transaction.from(txLike);
95
- await Promise.all((await this.getRelatedScripts(tx)).map(async ({ script, cellDeps }) => {
96
- await tx.prepareSighashAllWitness(script, 65, this.client);
97
- await tx.addCellDepInfos(this.client, cellDeps);
98
- }));
99
- return tx;
100
- }
101
- }
@@ -1,68 +0,0 @@
1
- import { Address } from "../../address/index.js";
2
- import { Script, ScriptLike } from "../../ckb/index.js";
3
- import { Client } from "../../client/index.js";
4
- import { Signer, SignerSignType, SignerType } from "../signer/index.js";
5
- /**
6
- * A read-only signer for a CKB script. It can be used to get addresses,
7
- * but not to sign transactions. This is useful when you want to watch an address
8
- * without having the private key.
9
- *
10
- * @public
11
- */
12
- export declare class SignerCkbScriptReadonly extends Signer {
13
- /**
14
- * The type of the signer.
15
- */
16
- get type(): SignerType;
17
- /**
18
- * The sign type of the signer.
19
- * As this is a read-only signer, the sign type is {@link SignerSignType.Unknown}.
20
- */
21
- get signType(): SignerSignType;
22
- /**
23
- * The scripts associated with the signer.
24
- */
25
- readonly scripts: Script[];
26
- /**
27
- * Creates an instance of SignerCkbScriptReadonly.
28
- *
29
- * @param client - The client instance used for communication.
30
- * @param scripts - The scripts associated with the signer. Can be a single script, an array of scripts, or multiple script arguments.
31
- */
32
- constructor(client: Client, ...scripts: (ScriptLike | ScriptLike[])[]);
33
- /**
34
- * Connects to the client. This implementation does nothing as the class is read-only.
35
- *
36
- * @returns A promise that resolves when the connection is complete.
37
- */
38
- connect(): Promise<void>;
39
- /**
40
- * Check if the signer is connected.
41
- *
42
- * @returns A promise that resolves the connection status.
43
- */
44
- isConnected(): Promise<boolean>;
45
- /**
46
- * Gets the internal address for the script.
47
- *
48
- * @returns A promise that resolves to a string representing the internal address.
49
- *
50
- * @example
51
- * ```typescript
52
- * const internalAddress = await signer.getInternalAddress(); // Outputs the internal address
53
- * ```
54
- */
55
- getInternalAddress(): Promise<string>;
56
- /**
57
- * Gets an array of Address objects representing the script address.
58
- *
59
- * @returns A promise that resolves to an array of Address objects.
60
- *
61
- * @example
62
- * ```typescript
63
- * const addressObjs = await signer.getAddressObjs(); // Outputs the array of Address objects
64
- * ```
65
- */
66
- getAddressObjs(): Promise<Address[]>;
67
- }
68
- //# sourceMappingURL=signerCkbScriptReadonly.d.ts.map