tapass 0.1.0 → 0.2.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 (502) hide show
  1. package/README.md +2792 -3
  2. package/dist/index.d.ts +21 -0
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/tapd_methods/address/create_asset_address.d.ts +2 -26
  5. package/dist/tapd_methods/address/create_asset_address.d.ts.map +1 -1
  6. package/dist/tapd_methods/address/create_asset_address.js +5 -37
  7. package/dist/tapd_methods/address/create_asset_address.js.map +1 -1
  8. package/dist/tapd_methods/address/decode_asset_address.d.ts +38 -0
  9. package/dist/tapd_methods/address/decode_asset_address.d.ts.map +1 -0
  10. package/dist/tapd_methods/address/decode_asset_address.js +81 -0
  11. package/dist/tapd_methods/address/decode_asset_address.js.map +1 -0
  12. package/dist/tapd_methods/address/get_asset_addresses.d.ts +54 -0
  13. package/dist/tapd_methods/address/get_asset_addresses.d.ts.map +1 -0
  14. package/dist/tapd_methods/address/get_asset_addresses.js +153 -0
  15. package/dist/tapd_methods/address/get_asset_addresses.js.map +1 -0
  16. package/dist/tapd_methods/address/get_asset_receives.d.ts +72 -0
  17. package/dist/tapd_methods/address/get_asset_receives.d.ts.map +1 -0
  18. package/dist/tapd_methods/address/get_asset_receives.js +191 -0
  19. package/dist/tapd_methods/address/get_asset_receives.js.map +1 -0
  20. package/dist/tapd_methods/address/index.d.ts +11 -0
  21. package/dist/tapd_methods/address/index.d.ts.map +1 -1
  22. package/dist/tapd_methods/address/index.js +4 -0
  23. package/dist/tapd_methods/address/index.js.map +1 -1
  24. package/dist/tapd_methods/address/subscribe_to_asset_receives.d.ts +53 -0
  25. package/dist/tapd_methods/address/subscribe_to_asset_receives.d.ts.map +1 -0
  26. package/dist/tapd_methods/address/subscribe_to_asset_receives.js +93 -0
  27. package/dist/tapd_methods/address/subscribe_to_asset_receives.js.map +1 -0
  28. package/dist/tapd_methods/assets/get_asset_balances.d.ts +64 -0
  29. package/dist/tapd_methods/assets/get_asset_balances.d.ts.map +1 -0
  30. package/dist/tapd_methods/assets/get_asset_balances.js +177 -0
  31. package/dist/tapd_methods/assets/get_asset_balances.js.map +1 -0
  32. package/dist/tapd_methods/assets/get_asset_burns.d.ts +40 -0
  33. package/dist/tapd_methods/assets/get_asset_burns.d.ts.map +1 -0
  34. package/dist/tapd_methods/assets/get_asset_burns.js +92 -0
  35. package/dist/tapd_methods/assets/get_asset_burns.js.map +1 -0
  36. package/dist/tapd_methods/assets/get_asset_groups.d.ts +35 -0
  37. package/dist/tapd_methods/assets/get_asset_groups.d.ts.map +1 -0
  38. package/dist/tapd_methods/assets/get_asset_groups.js +78 -0
  39. package/dist/tapd_methods/assets/get_asset_groups.js.map +1 -0
  40. package/dist/tapd_methods/assets/get_asset_metadata.d.ts +40 -0
  41. package/dist/tapd_methods/assets/get_asset_metadata.d.ts.map +1 -0
  42. package/dist/tapd_methods/assets/get_asset_metadata.js +99 -0
  43. package/dist/tapd_methods/assets/get_asset_metadata.js.map +1 -0
  44. package/dist/tapd_methods/assets/get_asset_utxos.d.ts +83 -0
  45. package/dist/tapd_methods/assets/get_asset_utxos.d.ts.map +1 -0
  46. package/dist/tapd_methods/assets/get_asset_utxos.js +135 -0
  47. package/dist/tapd_methods/assets/get_asset_utxos.js.map +1 -0
  48. package/dist/tapd_methods/assets/get_assets.d.ts +113 -0
  49. package/dist/tapd_methods/assets/get_assets.d.ts.map +1 -0
  50. package/dist/tapd_methods/assets/get_assets.js +243 -0
  51. package/dist/tapd_methods/assets/get_assets.js.map +1 -0
  52. package/dist/tapd_methods/assets/index.d.ts +19 -0
  53. package/dist/tapd_methods/assets/index.d.ts.map +1 -0
  54. package/dist/tapd_methods/assets/index.js +7 -0
  55. package/dist/tapd_methods/assets/index.js.map +1 -0
  56. package/dist/tapd_methods/channels/asset_payment_args_error.d.ts +18 -0
  57. package/dist/tapd_methods/channels/asset_payment_args_error.d.ts.map +1 -0
  58. package/dist/tapd_methods/channels/asset_payment_args_error.js +59 -0
  59. package/dist/tapd_methods/channels/asset_payment_args_error.js.map +1 -0
  60. package/dist/tapd_methods/channels/asset_payment_request.d.ts +68 -0
  61. package/dist/tapd_methods/channels/asset_payment_request.d.ts.map +1 -0
  62. package/dist/tapd_methods/channels/asset_payment_request.js +54 -0
  63. package/dist/tapd_methods/channels/asset_payment_request.js.map +1 -0
  64. package/dist/tapd_methods/channels/create_asset_invoice.d.ts +134 -0
  65. package/dist/tapd_methods/channels/create_asset_invoice.d.ts.map +1 -0
  66. package/dist/tapd_methods/channels/create_asset_invoice.js +264 -0
  67. package/dist/tapd_methods/channels/create_asset_invoice.js.map +1 -0
  68. package/dist/tapd_methods/channels/decode_asset_payment_request.d.ts +72 -0
  69. package/dist/tapd_methods/channels/decode_asset_payment_request.d.ts.map +1 -0
  70. package/dist/tapd_methods/channels/decode_asset_payment_request.js +143 -0
  71. package/dist/tapd_methods/channels/decode_asset_payment_request.js.map +1 -0
  72. package/dist/tapd_methods/channels/emit_asset_payment.d.ts +30 -0
  73. package/dist/tapd_methods/channels/emit_asset_payment.d.ts.map +1 -0
  74. package/dist/tapd_methods/channels/emit_asset_payment.js +59 -0
  75. package/dist/tapd_methods/channels/emit_asset_payment.js.map +1 -0
  76. package/dist/tapd_methods/channels/encode_asset_custom_records.d.ts +51 -0
  77. package/dist/tapd_methods/channels/encode_asset_custom_records.d.ts.map +1 -0
  78. package/dist/tapd_methods/channels/encode_asset_custom_records.js +127 -0
  79. package/dist/tapd_methods/channels/encode_asset_custom_records.js.map +1 -0
  80. package/dist/tapd_methods/channels/get_asset_invoices.d.ts +84 -0
  81. package/dist/tapd_methods/channels/get_asset_invoices.d.ts.map +1 -0
  82. package/dist/tapd_methods/channels/get_asset_invoices.js +193 -0
  83. package/dist/tapd_methods/channels/get_asset_invoices.js.map +1 -0
  84. package/dist/tapd_methods/channels/get_asset_payments.d.ts +69 -0
  85. package/dist/tapd_methods/channels/get_asset_payments.d.ts.map +1 -0
  86. package/dist/tapd_methods/channels/get_asset_payments.js +180 -0
  87. package/dist/tapd_methods/channels/get_asset_payments.js.map +1 -0
  88. package/dist/tapd_methods/channels/index.d.ts +31 -0
  89. package/dist/tapd_methods/channels/index.d.ts.map +1 -0
  90. package/dist/tapd_methods/channels/index.js +12 -0
  91. package/dist/tapd_methods/channels/index.js.map +1 -0
  92. package/dist/tapd_methods/channels/open_asset_channel.d.ts +53 -0
  93. package/dist/tapd_methods/channels/open_asset_channel.d.ts.map +1 -0
  94. package/dist/tapd_methods/channels/open_asset_channel.js +128 -0
  95. package/dist/tapd_methods/channels/open_asset_channel.js.map +1 -0
  96. package/dist/tapd_methods/channels/pay_asset_invoice.d.ts +95 -0
  97. package/dist/tapd_methods/channels/pay_asset_invoice.d.ts.map +1 -0
  98. package/dist/tapd_methods/channels/pay_asset_invoice.js +132 -0
  99. package/dist/tapd_methods/channels/pay_asset_invoice.js.map +1 -0
  100. package/dist/tapd_methods/channels/send_asset_keysend.d.ts +84 -0
  101. package/dist/tapd_methods/channels/send_asset_keysend.d.ts.map +1 -0
  102. package/dist/tapd_methods/channels/send_asset_keysend.js +144 -0
  103. package/dist/tapd_methods/channels/send_asset_keysend.js.map +1 -0
  104. package/dist/tapd_methods/channels/send_asset_payment.d.ts +33 -0
  105. package/dist/tapd_methods/channels/send_asset_payment.d.ts.map +1 -0
  106. package/dist/tapd_methods/channels/send_asset_payment.js +114 -0
  107. package/dist/tapd_methods/channels/send_asset_payment.js.map +1 -0
  108. package/dist/tapd_methods/channels/subscribe_to_asset_invoices.d.ts +51 -0
  109. package/dist/tapd_methods/channels/subscribe_to_asset_invoices.d.ts.map +1 -0
  110. package/dist/tapd_methods/channels/subscribe_to_asset_invoices.js +104 -0
  111. package/dist/tapd_methods/channels/subscribe_to_asset_invoices.js.map +1 -0
  112. package/dist/tapd_methods/channels/subscribe_to_asset_payments.d.ts +59 -0
  113. package/dist/tapd_methods/channels/subscribe_to_asset_payments.d.ts.map +1 -0
  114. package/dist/tapd_methods/channels/subscribe_to_asset_payments.js +104 -0
  115. package/dist/tapd_methods/channels/subscribe_to_asset_payments.js.map +1 -0
  116. package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.d.ts +62 -0
  117. package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.d.ts.map +1 -0
  118. package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.js +106 -0
  119. package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.js.map +1 -0
  120. package/dist/tapd_methods/daemon/create_tapd_macaroon.d.ts +45 -0
  121. package/dist/tapd_methods/daemon/create_tapd_macaroon.d.ts.map +1 -0
  122. package/dist/tapd_methods/daemon/create_tapd_macaroon.js +99 -0
  123. package/dist/tapd_methods/daemon/create_tapd_macaroon.js.map +1 -0
  124. package/dist/tapd_methods/daemon/index.d.ts +8 -0
  125. package/dist/tapd_methods/daemon/index.d.ts.map +1 -0
  126. package/dist/tapd_methods/daemon/index.js +4 -0
  127. package/dist/tapd_methods/daemon/index.js.map +1 -0
  128. package/dist/tapd_methods/daemon/set_tapd_debug_level.d.ts +23 -0
  129. package/dist/tapd_methods/daemon/set_tapd_debug_level.d.ts.map +1 -0
  130. package/dist/tapd_methods/daemon/set_tapd_debug_level.js +60 -0
  131. package/dist/tapd_methods/daemon/set_tapd_debug_level.js.map +1 -0
  132. package/dist/tapd_methods/daemon/stop_tapd.d.ts +16 -0
  133. package/dist/tapd_methods/daemon/stop_tapd.d.ts.map +1 -0
  134. package/dist/tapd_methods/daemon/stop_tapd.js +50 -0
  135. package/dist/tapd_methods/daemon/stop_tapd.js.map +1 -0
  136. package/dist/tapd_methods/index.d.ts +8 -0
  137. package/dist/tapd_methods/index.d.ts.map +1 -1
  138. package/dist/tapd_methods/index.js +8 -0
  139. package/dist/tapd_methods/index.js.map +1 -1
  140. package/dist/tapd_methods/info/get_tapd_info.d.ts +44 -0
  141. package/dist/tapd_methods/info/get_tapd_info.d.ts.map +1 -0
  142. package/dist/tapd_methods/info/get_tapd_info.js +80 -0
  143. package/dist/tapd_methods/info/get_tapd_info.js.map +1 -0
  144. package/dist/tapd_methods/info/index.d.ts +4 -0
  145. package/dist/tapd_methods/info/index.d.ts.map +1 -0
  146. package/dist/tapd_methods/info/index.js +2 -0
  147. package/dist/tapd_methods/info/index.js.map +1 -0
  148. package/dist/tapd_methods/mint/add_asset_to_mint_batch.d.ts +124 -0
  149. package/dist/tapd_methods/mint/add_asset_to_mint_batch.d.ts.map +1 -0
  150. package/dist/tapd_methods/mint/add_asset_to_mint_batch.js +283 -0
  151. package/dist/tapd_methods/mint/add_asset_to_mint_batch.js.map +1 -0
  152. package/dist/tapd_methods/mint/cancel_mint_batch.d.ts +23 -0
  153. package/dist/tapd_methods/mint/cancel_mint_batch.d.ts.map +1 -0
  154. package/dist/tapd_methods/mint/cancel_mint_batch.js +62 -0
  155. package/dist/tapd_methods/mint/cancel_mint_batch.js.map +1 -0
  156. package/dist/tapd_methods/mint/finalize_mint_batch.d.ts +64 -0
  157. package/dist/tapd_methods/mint/finalize_mint_batch.d.ts.map +1 -0
  158. package/dist/tapd_methods/mint/finalize_mint_batch.js +130 -0
  159. package/dist/tapd_methods/mint/finalize_mint_batch.js.map +1 -0
  160. package/dist/tapd_methods/mint/fund_mint_batch.d.ts +82 -0
  161. package/dist/tapd_methods/mint/fund_mint_batch.d.ts.map +1 -0
  162. package/dist/tapd_methods/mint/fund_mint_batch.js +145 -0
  163. package/dist/tapd_methods/mint/fund_mint_batch.js.map +1 -0
  164. package/dist/tapd_methods/mint/get_mint_batches.d.ts +72 -0
  165. package/dist/tapd_methods/mint/get_mint_batches.d.ts.map +1 -0
  166. package/dist/tapd_methods/mint/get_mint_batches.js +123 -0
  167. package/dist/tapd_methods/mint/get_mint_batches.js.map +1 -0
  168. package/dist/tapd_methods/mint/index.d.ts +21 -0
  169. package/dist/tapd_methods/mint/index.d.ts.map +1 -0
  170. package/dist/tapd_methods/mint/index.js +8 -0
  171. package/dist/tapd_methods/mint/index.js.map +1 -0
  172. package/dist/tapd_methods/mint/seal_mint_batch.d.ts +64 -0
  173. package/dist/tapd_methods/mint/seal_mint_batch.d.ts.map +1 -0
  174. package/dist/tapd_methods/mint/seal_mint_batch.js +135 -0
  175. package/dist/tapd_methods/mint/seal_mint_batch.js.map +1 -0
  176. package/dist/tapd_methods/mint/subscribe_to_mint_events.d.ts +52 -0
  177. package/dist/tapd_methods/mint/subscribe_to_mint_events.d.ts.map +1 -0
  178. package/dist/tapd_methods/mint/subscribe_to_mint_events.js +91 -0
  179. package/dist/tapd_methods/mint/subscribe_to_mint_events.js.map +1 -0
  180. package/dist/tapd_methods/proofs/decode_asset_proof.d.ts +61 -0
  181. package/dist/tapd_methods/proofs/decode_asset_proof.d.ts.map +1 -0
  182. package/dist/tapd_methods/proofs/decode_asset_proof.js +129 -0
  183. package/dist/tapd_methods/proofs/decode_asset_proof.js.map +1 -0
  184. package/dist/tapd_methods/proofs/export_asset_proof.d.ts +39 -0
  185. package/dist/tapd_methods/proofs/export_asset_proof.d.ts.map +1 -0
  186. package/dist/tapd_methods/proofs/export_asset_proof.js +113 -0
  187. package/dist/tapd_methods/proofs/export_asset_proof.js.map +1 -0
  188. package/dist/tapd_methods/proofs/index.d.ts +13 -0
  189. package/dist/tapd_methods/proofs/index.d.ts.map +1 -0
  190. package/dist/tapd_methods/proofs/index.js +5 -0
  191. package/dist/tapd_methods/proofs/index.js.map +1 -0
  192. package/dist/tapd_methods/proofs/unpack_asset_proof_file.d.ts +29 -0
  193. package/dist/tapd_methods/proofs/unpack_asset_proof_file.d.ts.map +1 -0
  194. package/dist/tapd_methods/proofs/unpack_asset_proof_file.js +85 -0
  195. package/dist/tapd_methods/proofs/unpack_asset_proof_file.js.map +1 -0
  196. package/dist/tapd_methods/proofs/verify_asset_proof.d.ts +58 -0
  197. package/dist/tapd_methods/proofs/verify_asset_proof.d.ts.map +1 -0
  198. package/dist/tapd_methods/proofs/verify_asset_proof.js +110 -0
  199. package/dist/tapd_methods/proofs/verify_asset_proof.js.map +1 -0
  200. package/dist/tapd_methods/rfq/add_asset_buy_offer.d.ts +31 -0
  201. package/dist/tapd_methods/rfq/add_asset_buy_offer.d.ts.map +1 -0
  202. package/dist/tapd_methods/rfq/add_asset_buy_offer.js +88 -0
  203. package/dist/tapd_methods/rfq/add_asset_buy_offer.js.map +1 -0
  204. package/dist/tapd_methods/rfq/add_asset_buy_order.d.ts +79 -0
  205. package/dist/tapd_methods/rfq/add_asset_buy_order.d.ts.map +1 -0
  206. package/dist/tapd_methods/rfq/add_asset_buy_order.js +200 -0
  207. package/dist/tapd_methods/rfq/add_asset_buy_order.js.map +1 -0
  208. package/dist/tapd_methods/rfq/add_asset_sell_offer.d.ts +30 -0
  209. package/dist/tapd_methods/rfq/add_asset_sell_offer.d.ts.map +1 -0
  210. package/dist/tapd_methods/rfq/add_asset_sell_offer.js +87 -0
  211. package/dist/tapd_methods/rfq/add_asset_sell_offer.js.map +1 -0
  212. package/dist/tapd_methods/rfq/add_asset_sell_order.d.ts +79 -0
  213. package/dist/tapd_methods/rfq/add_asset_sell_order.d.ts.map +1 -0
  214. package/dist/tapd_methods/rfq/add_asset_sell_order.js +200 -0
  215. package/dist/tapd_methods/rfq/add_asset_sell_order.js.map +1 -0
  216. package/dist/tapd_methods/rfq/get_accepted_quotes.d.ts +52 -0
  217. package/dist/tapd_methods/rfq/get_accepted_quotes.d.ts.map +1 -0
  218. package/dist/tapd_methods/rfq/get_accepted_quotes.js +100 -0
  219. package/dist/tapd_methods/rfq/get_accepted_quotes.js.map +1 -0
  220. package/dist/tapd_methods/rfq/get_asset_forwards.d.ts +70 -0
  221. package/dist/tapd_methods/rfq/get_asset_forwards.d.ts.map +1 -0
  222. package/dist/tapd_methods/rfq/get_asset_forwards.js +185 -0
  223. package/dist/tapd_methods/rfq/get_asset_forwards.js.map +1 -0
  224. package/dist/tapd_methods/rfq/index.d.ts +19 -0
  225. package/dist/tapd_methods/rfq/index.d.ts.map +1 -0
  226. package/dist/tapd_methods/rfq/index.js +8 -0
  227. package/dist/tapd_methods/rfq/index.js.map +1 -0
  228. package/dist/tapd_methods/rfq/subscribe_to_rfq_events.d.ts +68 -0
  229. package/dist/tapd_methods/rfq/subscribe_to_rfq_events.d.ts.map +1 -0
  230. package/dist/tapd_methods/rfq/subscribe_to_rfq_events.js +107 -0
  231. package/dist/tapd_methods/rfq/subscribe_to_rfq_events.js.map +1 -0
  232. package/dist/tapd_methods/send/burn_asset.d.ts +135 -0
  233. package/dist/tapd_methods/send/burn_asset.d.ts.map +1 -0
  234. package/dist/tapd_methods/send/burn_asset.js +220 -0
  235. package/dist/tapd_methods/send/burn_asset.js.map +1 -0
  236. package/dist/tapd_methods/send/get_asset_transfers.d.ts +73 -0
  237. package/dist/tapd_methods/send/get_asset_transfers.d.ts.map +1 -0
  238. package/dist/tapd_methods/send/get_asset_transfers.js +122 -0
  239. package/dist/tapd_methods/send/get_asset_transfers.js.map +1 -0
  240. package/dist/tapd_methods/send/index.d.ts +15 -0
  241. package/dist/tapd_methods/send/index.d.ts.map +1 -0
  242. package/dist/tapd_methods/send/index.js +6 -0
  243. package/dist/tapd_methods/send/index.js.map +1 -0
  244. package/dist/tapd_methods/send/register_asset_transfer.d.ts +77 -0
  245. package/dist/tapd_methods/send/register_asset_transfer.d.ts.map +1 -0
  246. package/dist/tapd_methods/send/register_asset_transfer.js +165 -0
  247. package/dist/tapd_methods/send/register_asset_transfer.js.map +1 -0
  248. package/dist/tapd_methods/send/send_asset.d.ts +94 -0
  249. package/dist/tapd_methods/send/send_asset.d.ts.map +1 -0
  250. package/dist/tapd_methods/send/send_asset.js +169 -0
  251. package/dist/tapd_methods/send/send_asset.js.map +1 -0
  252. package/dist/tapd_methods/send/subscribe_to_asset_sends.d.ts +117 -0
  253. package/dist/tapd_methods/send/subscribe_to_asset_sends.d.ts.map +1 -0
  254. package/dist/tapd_methods/send/subscribe_to_asset_sends.js +159 -0
  255. package/dist/tapd_methods/send/subscribe_to_asset_sends.js.map +1 -0
  256. package/dist/tapd_requests/decimal_as_fixed_point.d.ts +23 -0
  257. package/dist/tapd_requests/decimal_as_fixed_point.d.ts.map +1 -0
  258. package/dist/tapd_requests/decimal_as_fixed_point.js +31 -0
  259. package/dist/tapd_requests/decimal_as_fixed_point.js.map +1 -0
  260. package/dist/tapd_requests/fee_rate_as_tokens_per_kw.d.ts +13 -0
  261. package/dist/tapd_requests/fee_rate_as_tokens_per_kw.d.ts.map +1 -0
  262. package/dist/tapd_requests/fee_rate_as_tokens_per_kw.js +21 -0
  263. package/dist/tapd_requests/fee_rate_as_tokens_per_kw.js.map +1 -0
  264. package/dist/tapd_requests/index.d.ts +5 -0
  265. package/dist/tapd_requests/index.d.ts.map +1 -1
  266. package/dist/tapd_requests/index.js +5 -0
  267. package/dist/tapd_requests/index.js.map +1 -1
  268. package/dist/tapd_requests/is_method_unsupported.d.ts +24 -0
  269. package/dist/tapd_requests/is_method_unsupported.d.ts.map +1 -0
  270. package/dist/tapd_requests/is_method_unsupported.js +27 -0
  271. package/dist/tapd_requests/is_method_unsupported.js.map +1 -0
  272. package/dist/tapd_requests/mint_funding_request.d.ts +53 -0
  273. package/dist/tapd_requests/mint_funding_request.d.ts.map +1 -0
  274. package/dist/tapd_requests/mint_funding_request.js +48 -0
  275. package/dist/tapd_requests/mint_funding_request.js.map +1 -0
  276. package/dist/tapd_requests/script_key_type_query.d.ts +26 -0
  277. package/dist/tapd_requests/script_key_type_query.d.ts.map +1 -0
  278. package/dist/tapd_requests/script_key_type_query.js +41 -0
  279. package/dist/tapd_requests/script_key_type_query.js.map +1 -0
  280. package/dist/tapd_responses/asset_channel_rpc_error.d.ts +19 -0
  281. package/dist/tapd_responses/asset_channel_rpc_error.d.ts.map +1 -0
  282. package/dist/tapd_responses/asset_channel_rpc_error.js +69 -0
  283. package/dist/tapd_responses/asset_channel_rpc_error.js.map +1 -0
  284. package/dist/tapd_responses/batch_states.d.ts +4 -0
  285. package/dist/tapd_responses/batch_states.d.ts.map +1 -0
  286. package/dist/tapd_responses/batch_states.js +13 -0
  287. package/dist/tapd_responses/batch_states.js.map +1 -0
  288. package/dist/tapd_responses/fixed_point_as_decimal.d.ts +25 -0
  289. package/dist/tapd_responses/fixed_point_as_decimal.d.ts.map +1 -0
  290. package/dist/tapd_responses/fixed_point_as_decimal.js +39 -0
  291. package/dist/tapd_responses/fixed_point_as_decimal.js.map +1 -0
  292. package/dist/tapd_responses/index.d.ts +76 -0
  293. package/dist/tapd_responses/index.d.ts.map +1 -0
  294. package/dist/tapd_responses/index.js +30 -0
  295. package/dist/tapd_responses/index.js.map +1 -0
  296. package/dist/tapd_responses/long_key_as_number.d.ts +16 -0
  297. package/dist/tapd_responses/long_key_as_number.d.ts.map +1 -0
  298. package/dist/tapd_responses/long_key_as_number.js +28 -0
  299. package/dist/tapd_responses/long_key_as_number.js.map +1 -0
  300. package/dist/tapd_responses/mint_rpc_error.d.ts +19 -0
  301. package/dist/tapd_responses/mint_rpc_error.d.ts.map +1 -0
  302. package/dist/tapd_responses/mint_rpc_error.js +35 -0
  303. package/dist/tapd_responses/mint_rpc_error.js.map +1 -0
  304. package/dist/tapd_responses/outpoint_as_transaction.d.ts +19 -0
  305. package/dist/tapd_responses/outpoint_as_transaction.d.ts.map +1 -0
  306. package/dist/tapd_responses/outpoint_as_transaction.js +23 -0
  307. package/dist/tapd_responses/outpoint_as_transaction.js.map +1 -0
  308. package/dist/tapd_responses/receive_statuses.d.ts +4 -0
  309. package/dist/tapd_responses/receive_statuses.d.ts.map +1 -0
  310. package/dist/tapd_responses/receive_statuses.js +9 -0
  311. package/dist/tapd_responses/receive_statuses.js.map +1 -0
  312. package/dist/tapd_responses/rpc_addr_as_address.d.ts +79 -0
  313. package/dist/tapd_responses/rpc_addr_as_address.d.ts.map +1 -0
  314. package/dist/tapd_responses/rpc_addr_as_address.js +87 -0
  315. package/dist/tapd_responses/rpc_addr_as_address.js.map +1 -0
  316. package/dist/tapd_responses/rpc_addr_event_as_receive.d.ts +63 -0
  317. package/dist/tapd_responses/rpc_addr_event_as_receive.d.ts.map +1 -0
  318. package/dist/tapd_responses/rpc_addr_event_as_receive.js +64 -0
  319. package/dist/tapd_responses/rpc_addr_event_as_receive.js.map +1 -0
  320. package/dist/tapd_responses/rpc_asset_amount_as_amount.d.ts +34 -0
  321. package/dist/tapd_responses/rpc_asset_amount_as_amount.d.ts.map +1 -0
  322. package/dist/tapd_responses/rpc_asset_amount_as_amount.js +38 -0
  323. package/dist/tapd_responses/rpc_asset_amount_as_amount.js.map +1 -0
  324. package/dist/tapd_responses/rpc_asset_as_asset.d.ts +204 -0
  325. package/dist/tapd_responses/rpc_asset_as_asset.d.ts.map +1 -0
  326. package/dist/tapd_responses/rpc_asset_as_asset.js +174 -0
  327. package/dist/tapd_responses/rpc_asset_as_asset.js.map +1 -0
  328. package/dist/tapd_responses/rpc_asset_balance_as_balance.d.ts +53 -0
  329. package/dist/tapd_responses/rpc_asset_balance_as_balance.d.ts.map +1 -0
  330. package/dist/tapd_responses/rpc_asset_balance_as_balance.js +53 -0
  331. package/dist/tapd_responses/rpc_asset_balance_as_balance.js.map +1 -0
  332. package/dist/tapd_responses/rpc_asset_burn_as_burn.d.ts +51 -0
  333. package/dist/tapd_responses/rpc_asset_burn_as_burn.d.ts.map +1 -0
  334. package/dist/tapd_responses/rpc_asset_burn_as_burn.js +54 -0
  335. package/dist/tapd_responses/rpc_asset_burn_as_burn.js.map +1 -0
  336. package/dist/tapd_responses/rpc_asset_invoice_as_invoice.d.ts +39 -0
  337. package/dist/tapd_responses/rpc_asset_invoice_as_invoice.d.ts.map +1 -0
  338. package/dist/tapd_responses/rpc_asset_invoice_as_invoice.js +45 -0
  339. package/dist/tapd_responses/rpc_asset_invoice_as_invoice.js.map +1 -0
  340. package/dist/tapd_responses/rpc_asset_meta_as_metadata.d.ts +68 -0
  341. package/dist/tapd_responses/rpc_asset_meta_as_metadata.d.ts.map +1 -0
  342. package/dist/tapd_responses/rpc_asset_meta_as_metadata.js +70 -0
  343. package/dist/tapd_responses/rpc_asset_meta_as_metadata.js.map +1 -0
  344. package/dist/tapd_responses/rpc_asset_pay_req_as_request.d.ts +76 -0
  345. package/dist/tapd_responses/rpc_asset_pay_req_as_request.d.ts.map +1 -0
  346. package/dist/tapd_responses/rpc_asset_pay_req_as_request.js +73 -0
  347. package/dist/tapd_responses/rpc_asset_pay_req_as_request.js.map +1 -0
  348. package/dist/tapd_responses/rpc_asset_payment_as_payment.d.ts +39 -0
  349. package/dist/tapd_responses/rpc_asset_payment_as_payment.d.ts.map +1 -0
  350. package/dist/tapd_responses/rpc_asset_payment_as_payment.js +45 -0
  351. package/dist/tapd_responses/rpc_asset_payment_as_payment.js.map +1 -0
  352. package/dist/tapd_responses/rpc_batch_as_batch.d.ts +158 -0
  353. package/dist/tapd_responses/rpc_batch_as_batch.d.ts.map +1 -0
  354. package/dist/tapd_responses/rpc_batch_as_batch.js +181 -0
  355. package/dist/tapd_responses/rpc_batch_as_batch.js.map +1 -0
  356. package/dist/tapd_responses/rpc_buy_quote_as_quote.d.ts +83 -0
  357. package/dist/tapd_responses/rpc_buy_quote_as_quote.d.ts.map +1 -0
  358. package/dist/tapd_responses/rpc_buy_quote_as_quote.js +85 -0
  359. package/dist/tapd_responses/rpc_buy_quote_as_quote.js.map +1 -0
  360. package/dist/tapd_responses/rpc_decoded_proof_as_proof.d.ts +161 -0
  361. package/dist/tapd_responses/rpc_decoded_proof_as_proof.d.ts.map +1 -0
  362. package/dist/tapd_responses/rpc_decoded_proof_as_proof.js +138 -0
  363. package/dist/tapd_responses/rpc_decoded_proof_as_proof.js.map +1 -0
  364. package/dist/tapd_responses/rpc_forward_as_asset_forward.d.ts +100 -0
  365. package/dist/tapd_responses/rpc_forward_as_asset_forward.d.ts.map +1 -0
  366. package/dist/tapd_responses/rpc_forward_as_asset_forward.js +101 -0
  367. package/dist/tapd_responses/rpc_forward_as_asset_forward.js.map +1 -0
  368. package/dist/tapd_responses/rpc_grouped_assets_as_group.d.ts +76 -0
  369. package/dist/tapd_responses/rpc_grouped_assets_as_group.d.ts.map +1 -0
  370. package/dist/tapd_responses/rpc_grouped_assets_as_group.js +71 -0
  371. package/dist/tapd_responses/rpc_grouped_assets_as_group.js.map +1 -0
  372. package/dist/tapd_responses/rpc_managed_utxo_as_utxo.d.ts +63 -0
  373. package/dist/tapd_responses/rpc_managed_utxo_as_utxo.d.ts.map +1 -0
  374. package/dist/tapd_responses/rpc_managed_utxo_as_utxo.js +65 -0
  375. package/dist/tapd_responses/rpc_managed_utxo_as_utxo.js.map +1 -0
  376. package/dist/tapd_responses/rpc_receive_event_as_receive_update.d.ts +53 -0
  377. package/dist/tapd_responses/rpc_receive_event_as_receive_update.d.ts.map +1 -0
  378. package/dist/tapd_responses/rpc_receive_event_as_receive_update.js +52 -0
  379. package/dist/tapd_responses/rpc_receive_event_as_receive_update.js.map +1 -0
  380. package/dist/tapd_responses/rpc_rfq_event_as_event.d.ts +70 -0
  381. package/dist/tapd_responses/rpc_rfq_event_as_event.d.ts.map +1 -0
  382. package/dist/tapd_responses/rpc_rfq_event_as_event.js +89 -0
  383. package/dist/tapd_responses/rpc_rfq_event_as_event.js.map +1 -0
  384. package/dist/tapd_responses/rpc_sell_quote_as_quote.d.ts +80 -0
  385. package/dist/tapd_responses/rpc_sell_quote_as_quote.d.ts.map +1 -0
  386. package/dist/tapd_responses/rpc_sell_quote_as_quote.js +85 -0
  387. package/dist/tapd_responses/rpc_sell_quote_as_quote.js.map +1 -0
  388. package/dist/tapd_responses/rpc_send_event_as_send_event.d.ts +124 -0
  389. package/dist/tapd_responses/rpc_send_event_as_send_event.d.ts.map +1 -0
  390. package/dist/tapd_responses/rpc_send_event_as_send_event.js +161 -0
  391. package/dist/tapd_responses/rpc_send_event_as_send_event.js.map +1 -0
  392. package/dist/tapd_responses/rpc_transfer_as_transfer.d.ts +241 -0
  393. package/dist/tapd_responses/rpc_transfer_as_transfer.d.ts.map +1 -0
  394. package/dist/tapd_responses/rpc_transfer_as_transfer.js +212 -0
  395. package/dist/tapd_responses/rpc_transfer_as_transfer.js.map +1 -0
  396. package/dist/tapd_responses/short_channel_id_as_channel.d.ts +13 -0
  397. package/dist/tapd_responses/short_channel_id_as_channel.d.ts.map +1 -0
  398. package/dist/tapd_responses/short_channel_id_as_channel.js +26 -0
  399. package/dist/tapd_responses/short_channel_id_as_channel.js.map +1 -0
  400. package/package.json +7 -2
  401. package/src/index.ts +21 -0
  402. package/src/tapd_methods/address/create_asset_address.ts +7 -72
  403. package/src/tapd_methods/address/decode_asset_address.ts +117 -0
  404. package/src/tapd_methods/address/get_asset_addresses.ts +212 -0
  405. package/src/tapd_methods/address/get_asset_receives.ts +265 -0
  406. package/src/tapd_methods/address/index.ts +11 -0
  407. package/src/tapd_methods/address/subscribe_to_asset_receives.ts +114 -0
  408. package/src/tapd_methods/assets/get_asset_balances.ts +249 -0
  409. package/src/tapd_methods/assets/get_asset_burns.ts +133 -0
  410. package/src/tapd_methods/assets/get_asset_groups.ts +109 -0
  411. package/src/tapd_methods/assets/get_asset_metadata.ts +141 -0
  412. package/src/tapd_methods/assets/get_asset_utxos.ts +175 -0
  413. package/src/tapd_methods/assets/get_assets.ts +327 -0
  414. package/src/tapd_methods/assets/index.ts +18 -0
  415. package/src/tapd_methods/channels/asset_payment_args_error.ts +83 -0
  416. package/src/tapd_methods/channels/asset_payment_request.ts +76 -0
  417. package/src/tapd_methods/channels/create_asset_invoice.ts +387 -0
  418. package/src/tapd_methods/channels/decode_asset_payment_request.ts +192 -0
  419. package/src/tapd_methods/channels/emit_asset_payment.ts +78 -0
  420. package/src/tapd_methods/channels/encode_asset_custom_records.ts +187 -0
  421. package/src/tapd_methods/channels/get_asset_invoices.ts +258 -0
  422. package/src/tapd_methods/channels/get_asset_payments.ts +243 -0
  423. package/src/tapd_methods/channels/index.ts +30 -0
  424. package/src/tapd_methods/channels/open_asset_channel.ts +193 -0
  425. package/src/tapd_methods/channels/pay_asset_invoice.ts +171 -0
  426. package/src/tapd_methods/channels/send_asset_keysend.ts +196 -0
  427. package/src/tapd_methods/channels/send_asset_payment.ts +158 -0
  428. package/src/tapd_methods/channels/subscribe_to_asset_invoices.ts +134 -0
  429. package/src/tapd_methods/channels/subscribe_to_asset_payments.ts +126 -0
  430. package/src/tapd_methods/channels/subscribe_to_past_asset_payment.ts +132 -0
  431. package/src/tapd_methods/daemon/create_tapd_macaroon.ts +153 -0
  432. package/src/tapd_methods/daemon/index.ts +7 -0
  433. package/src/tapd_methods/daemon/set_tapd_debug_level.ts +90 -0
  434. package/src/tapd_methods/daemon/stop_tapd.ts +75 -0
  435. package/src/tapd_methods/index.ts +8 -0
  436. package/src/tapd_methods/info/get_tapd_info.ts +129 -0
  437. package/src/tapd_methods/info/index.ts +3 -0
  438. package/src/tapd_methods/mint/add_asset_to_mint_batch.ts +396 -0
  439. package/src/tapd_methods/mint/cancel_mint_batch.ts +95 -0
  440. package/src/tapd_methods/mint/finalize_mint_batch.ts +181 -0
  441. package/src/tapd_methods/mint/fund_mint_batch.ts +193 -0
  442. package/src/tapd_methods/mint/get_mint_batches.ts +162 -0
  443. package/src/tapd_methods/mint/index.ts +20 -0
  444. package/src/tapd_methods/mint/seal_mint_batch.ts +184 -0
  445. package/src/tapd_methods/mint/subscribe_to_mint_events.ts +104 -0
  446. package/src/tapd_methods/proofs/decode_asset_proof.ts +175 -0
  447. package/src/tapd_methods/proofs/export_asset_proof.ts +169 -0
  448. package/src/tapd_methods/proofs/index.ts +12 -0
  449. package/src/tapd_methods/proofs/unpack_asset_proof_file.ts +126 -0
  450. package/src/tapd_methods/proofs/verify_asset_proof.ts +156 -0
  451. package/src/tapd_methods/rfq/add_asset_buy_offer.ts +127 -0
  452. package/src/tapd_methods/rfq/add_asset_buy_order.ts +279 -0
  453. package/src/tapd_methods/rfq/add_asset_sell_offer.ts +126 -0
  454. package/src/tapd_methods/rfq/add_asset_sell_order.ts +279 -0
  455. package/src/tapd_methods/rfq/get_accepted_quotes.ts +137 -0
  456. package/src/tapd_methods/rfq/get_asset_forwards.ts +259 -0
  457. package/src/tapd_methods/rfq/index.ts +18 -0
  458. package/src/tapd_methods/rfq/subscribe_to_rfq_events.ts +130 -0
  459. package/src/tapd_methods/send/burn_asset.ts +280 -0
  460. package/src/tapd_methods/send/get_asset_transfers.ts +161 -0
  461. package/src/tapd_methods/send/index.ts +14 -0
  462. package/src/tapd_methods/send/register_asset_transfer.ts +219 -0
  463. package/src/tapd_methods/send/send_asset.ts +223 -0
  464. package/src/tapd_methods/send/subscribe_to_asset_sends.ts +181 -0
  465. package/src/tapd_requests/decimal_as_fixed_point.ts +36 -0
  466. package/src/tapd_requests/fee_rate_as_tokens_per_kw.ts +23 -0
  467. package/src/tapd_requests/index.ts +5 -0
  468. package/src/tapd_requests/is_method_unsupported.ts +33 -0
  469. package/src/tapd_requests/mint_funding_request.ts +57 -0
  470. package/src/tapd_requests/script_key_type_query.ts +44 -0
  471. package/src/tapd_responses/asset_channel_rpc_error.ts +73 -0
  472. package/src/tapd_responses/batch_states.ts +12 -0
  473. package/src/tapd_responses/fixed_point_as_decimal.ts +51 -0
  474. package/src/tapd_responses/index.ts +75 -0
  475. package/src/tapd_responses/long_key_as_number.ts +31 -0
  476. package/src/tapd_responses/mint_rpc_error.ts +39 -0
  477. package/src/tapd_responses/outpoint_as_transaction.ts +25 -0
  478. package/src/tapd_responses/receive_statuses.ts +8 -0
  479. package/src/tapd_responses/rpc_addr_as_address.ts +138 -0
  480. package/src/tapd_responses/rpc_addr_event_as_receive.ts +103 -0
  481. package/src/tapd_responses/rpc_asset_amount_as_amount.ts +57 -0
  482. package/src/tapd_responses/rpc_asset_as_asset.ts +299 -0
  483. package/src/tapd_responses/rpc_asset_balance_as_balance.ts +85 -0
  484. package/src/tapd_responses/rpc_asset_burn_as_burn.ts +85 -0
  485. package/src/tapd_responses/rpc_asset_invoice_as_invoice.ts +62 -0
  486. package/src/tapd_responses/rpc_asset_meta_as_metadata.ts +113 -0
  487. package/src/tapd_responses/rpc_asset_pay_req_as_request.ts +114 -0
  488. package/src/tapd_responses/rpc_asset_payment_as_payment.ts +62 -0
  489. package/src/tapd_responses/rpc_batch_as_batch.ts +281 -0
  490. package/src/tapd_responses/rpc_buy_quote_as_quote.ts +139 -0
  491. package/src/tapd_responses/rpc_decoded_proof_as_proof.ts +229 -0
  492. package/src/tapd_responses/rpc_forward_as_asset_forward.ts +164 -0
  493. package/src/tapd_responses/rpc_grouped_assets_as_group.ts +117 -0
  494. package/src/tapd_responses/rpc_managed_utxo_as_utxo.ts +105 -0
  495. package/src/tapd_responses/rpc_receive_event_as_receive_update.ts +84 -0
  496. package/src/tapd_responses/rpc_rfq_event_as_event.ts +123 -0
  497. package/src/tapd_responses/rpc_sell_quote_as_quote.ts +136 -0
  498. package/src/tapd_responses/rpc_send_event_as_send_event.ts +245 -0
  499. package/src/tapd_responses/rpc_transfer_as_transfer.ts +366 -0
  500. package/src/tapd_responses/short_channel_id_as_channel.ts +30 -0
  501. package/src/typescript/invoices.d.ts +30 -0
  502. package/src/typescript/lightning_lnd_responses.d.ts +44 -0
@@ -4,6 +4,8 @@ import {returnResult} from 'asyncjs-util';
4
4
  import {isConnectionFailure} from '../../tapd_requests/index.js';
5
5
  import {isPermissionDenied} from '../../tapd_requests/index.js';
6
6
  import {isTapd} from '../../tapd_requests/index.js';
7
+ import {rpcAddrAsAddress} from '../../tapd_responses/index.js';
8
+ import type {Address} from '../../tapd_responses/index.js';
7
9
  import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
8
10
  import type {TapdCallback} from '../../typescript/index.js';
9
11
  import type {TapdError} from '../../typescript/index.js';
@@ -14,11 +16,8 @@ const addressVersions = [
14
16
  'ADDR_VERSION_V1',
15
17
  'ADDR_VERSION_V2',
16
18
  ];
17
- const assetVersions = ['ASSET_VERSION_V0', 'ASSET_VERSION_V1'];
18
- const bufferAsHex = (n: Buffer) => (!n.length ? undefined : n.toString('hex'));
19
19
  const {from} = Buffer;
20
20
  const isAssetId = (n: string) => /^[0-9A-F]{64}$/i.test(n);
21
- const isBuffer = (n: unknown): n is Buffer => Buffer.isBuffer(n);
22
21
  const isHex = (n: string) => !!n && !(n.length % 2) && /^[0-9A-F]*$/i.test(n);
23
22
  const isNumeric = (n: unknown) => typeof n === 'string' && /^\d+$/.test(n);
24
23
  const method = 'newAddr';
@@ -39,32 +38,7 @@ export type CreateAssetAddressArgs = AuthenticatedTapdArgs<{
39
38
  version?: number;
40
39
  }>;
41
40
 
42
- export type CreateAssetAddressResult = {
43
- /** Encoded Taproot Assets Address String */
44
- address: string;
45
- /** Asset Units To Receive Numeric String */
46
- amount: string;
47
- /** Asset Id Hex String */
48
- asset_id?: string;
49
- /** Asset Version Number */
50
- asset_version: number;
51
- /** Asset Group Key Hex String */
52
- group_key?: string;
53
- /** Internal Key Hex String */
54
- internal_key: string;
55
- /** Asset Is Collectible Bool */
56
- is_collectible: boolean;
57
- /** Proof Courier Address String */
58
- proof_courier: string;
59
- /** Script Key Hex String */
60
- script_key: string;
61
- /** Tapscript Sibling Preimage Hex String */
62
- tapscript_sibling?: string;
63
- /** Taproot Output Key Hex String */
64
- taproot_output_key: string;
65
- /** Address Version Number */
66
- version: number;
67
- };
41
+ export type CreateAssetAddressResult = Address;
68
42
 
69
43
  type Tasks = {
70
44
  createAddress: CreateAssetAddressResult;
@@ -188,50 +162,11 @@ const createAssetAddress: TapdMethod<
188
162
  return cbk([503, 'ExpectedResponseForAssetAddressCreation']);
189
163
  }
190
164
 
191
- if (!res.encoded) {
192
- return cbk([503, 'ExpectedEncodedAddressInAddressResponse']);
193
- }
194
-
195
- if (!isNumeric(res.amount)) {
196
- return cbk([503, 'ExpectedAmountInAssetAddressResponse']);
197
- }
198
-
199
- if (!isBuffer(res.asset_id) || !isBuffer(res.group_key)) {
200
- return cbk([503, 'ExpectedAssetIdentityInAddressResponse']);
201
- }
202
-
203
- if (!isBuffer(res.internal_key) || !isBuffer(res.script_key)) {
204
- return cbk([503, 'ExpectedKeysInAssetAddressResponse']);
165
+ try {
166
+ return cbk(null, rpcAddrAsAddress(res));
167
+ } catch (err: any) {
168
+ return cbk([503, err.message]);
205
169
  }
206
-
207
- if (!isBuffer(res.taproot_output_key)) {
208
- return cbk([503, 'ExpectedOutputKeyInAssetAddressResponse']);
209
- }
210
-
211
- if (!isBuffer(res.tapscript_sibling)) {
212
- return cbk([503, 'ExpectedTapscriptSiblingInAddressResponse']);
213
- }
214
-
215
- const version = addressVersions.indexOf(res.address_version);
216
-
217
- if (version === -1) {
218
- return cbk([503, 'ExpectedKnownVersionInAddressResponse']);
219
- }
220
-
221
- return cbk(null, {
222
- version,
223
- address: res.encoded,
224
- amount: res.amount,
225
- asset_id: bufferAsHex(res.asset_id),
226
- asset_version: assetVersions.indexOf(res.asset_version),
227
- group_key: bufferAsHex(res.group_key),
228
- internal_key: res.internal_key.toString('hex'),
229
- is_collectible: res.asset_type === 'COLLECTIBLE',
230
- proof_courier: res.proof_courier_addr,
231
- script_key: res.script_key.toString('hex'),
232
- tapscript_sibling: bufferAsHex(res.tapscript_sibling),
233
- taproot_output_key: res.taproot_output_key.toString('hex'),
234
- });
235
170
  });
236
171
  },
237
172
  ],
@@ -0,0 +1,117 @@
1
+ import {auto as asyncAuto} from 'async';
2
+ import {returnResult} from 'asyncjs-util';
3
+
4
+ import {isConnectionFailure} from '../../tapd_requests/index.js';
5
+ import {isPermissionDenied} from '../../tapd_requests/index.js';
6
+ import {isTapd} from '../../tapd_requests/index.js';
7
+ import {rpcAddrAsAddress} from '../../tapd_responses/index.js';
8
+ import type {Address} from '../../tapd_responses/index.js';
9
+ import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
10
+ import type {TapdCallback} from '../../typescript/index.js';
11
+ import type {TapdError} from '../../typescript/index.js';
12
+ import type {TapdMethod} from '../../typescript/index.js';
13
+
14
+ const invalidAddressError = 'unable to decode addr';
15
+ const method = 'decodeAddr';
16
+ const type = 'default';
17
+
18
+ export type DecodeAssetAddressArgs = AuthenticatedTapdArgs<{
19
+ /** Encoded Taproot Assets Address String */
20
+ address: string;
21
+ }>;
22
+
23
+ export type DecodeAssetAddressResult = Address;
24
+
25
+ type Tasks = {
26
+ decode: DecodeAssetAddressResult;
27
+ validate: undefined;
28
+ };
29
+
30
+ /** Decode a Taproot Assets address
31
+
32
+ Requires `addresses:read` permission
33
+
34
+ The address must be for the network of tapd
35
+
36
+ {
37
+ address: <Encoded Taproot Assets Address String>
38
+ tapd: <Authenticated tapd API Object>
39
+ }
40
+
41
+ @returns via cbk or Promise
42
+ {
43
+ address: <Encoded Taproot Assets Address String>
44
+ amount: <Asset Units To Receive Numeric String>
45
+ [asset_id]: <Asset Id Hex String>
46
+ asset_version: <Asset Version Number>
47
+ [group_key]: <Asset Group Key Hex String>
48
+ internal_key: <Internal Key Hex String>
49
+ is_collectible: <Asset Is Collectible Bool>
50
+ proof_courier: <Proof Courier Address String>
51
+ script_key: <Script Key Hex String>
52
+ [tapscript_sibling]: <Tapscript Sibling Preimage Hex String>
53
+ taproot_output_key: <Taproot Output Key Hex String>
54
+ version: <Address Version Number>
55
+ }
56
+ */
57
+ const decodeAssetAddress: TapdMethod<
58
+ DecodeAssetAddressArgs,
59
+ DecodeAssetAddressResult
60
+ > = (
61
+ args: DecodeAssetAddressArgs,
62
+ cbk?: TapdCallback<DecodeAssetAddressResult>,
63
+ ) => {
64
+ return new Promise((resolve, reject) => {
65
+ return asyncAuto<Tasks, TapdError>(
66
+ {
67
+ // Check arguments
68
+ validate: cbk => {
69
+ if (!args.address || typeof args.address !== 'string') {
70
+ return cbk([400, 'ExpectedAssetAddressToDecode']);
71
+ }
72
+
73
+ if (!isTapd({method, type, tapd: args.tapd})) {
74
+ return cbk([400, 'ExpectedAuthenticatedTapdToDecodeAssetAddress']);
75
+ }
76
+
77
+ return cbk();
78
+ },
79
+
80
+ // Decode the address
81
+ decode: [
82
+ 'validate',
83
+ ({}, cbk) => {
84
+ const request = {addr: args.address};
85
+
86
+ return args.tapd[type][method](request, (err: any, res: any) => {
87
+ if (isConnectionFailure({err})) {
88
+ return cbk([503, 'FailedToConnectToTapdToDecodeAssetAddress']);
89
+ }
90
+
91
+ if (isPermissionDenied({err})) {
92
+ return cbk([403, 'PermissionDeniedToDecodeAssetAddress']);
93
+ }
94
+
95
+ if (!!err && String(err.details).includes(invalidAddressError)) {
96
+ return cbk([400, 'ExpectedValidAssetAddressToDecode']);
97
+ }
98
+
99
+ if (!!err) {
100
+ return cbk([503, 'UnexpectedErrorDecodingAssetAddress', {err}]);
101
+ }
102
+
103
+ try {
104
+ return cbk(null, rpcAddrAsAddress(res));
105
+ } catch (err: any) {
106
+ return cbk([503, err.message]);
107
+ }
108
+ });
109
+ },
110
+ ],
111
+ },
112
+ returnResult({reject, resolve, of: 'decode'}, cbk),
113
+ );
114
+ });
115
+ };
116
+
117
+ export default decodeAssetAddress;
@@ -0,0 +1,212 @@
1
+ import {auto as asyncAuto} from 'async';
2
+ import {returnResult} from 'asyncjs-util';
3
+
4
+ import {isConnectionFailure} from '../../tapd_requests/index.js';
5
+ import {isPermissionDenied} from '../../tapd_requests/index.js';
6
+ import {isTapd} from '../../tapd_requests/index.js';
7
+ import {rpcAddrAsAddress} from '../../tapd_responses/index.js';
8
+ import type {Address} from '../../tapd_responses/index.js';
9
+ import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
10
+ import type {TapdCallback} from '../../typescript/index.js';
11
+ import type {TapdError} from '../../typescript/index.js';
12
+ import type {TapdMethod} from '../../typescript/index.js';
13
+
14
+ const asSeconds = (n?: string) => (!n ? 0 : Math.floor(Date.parse(n) / 1e3));
15
+ const defaultLimit = 100;
16
+ const {isArray} = Array;
17
+ const isDate = (n: string) => Date.parse(n) > 0;
18
+ const {isSafeInteger} = Number;
19
+ const maxLimit = 2147483647;
20
+ const method = 'queryAddrs';
21
+ const {parse} = JSON;
22
+ const {stringify} = JSON;
23
+ const type = 'default';
24
+
25
+ export type GetAssetAddressesArgs = AuthenticatedTapdArgs<{
26
+ /** Created After ISO 8601 Date String */
27
+ created_after?: string;
28
+ /** Created Before ISO 8601 Date String */
29
+ created_before?: string;
30
+ /** Page Result Limit Number */
31
+ limit?: number;
32
+ /** Opaque Paging Token String */
33
+ token?: string;
34
+ }>;
35
+
36
+ export type GetAssetAddressesResult = {
37
+ addresses: Address[];
38
+ /** Next Opaque Paging Token */
39
+ next?: string;
40
+ };
41
+
42
+ type Tasks = {
43
+ getAddresses: GetAssetAddressesResult;
44
+ validate: undefined;
45
+ };
46
+
47
+ /** Get the Taproot Assets addresses that this node created, oldest first
48
+
49
+ Requires `addresses:read` permission
50
+
51
+ Use the `next` token with the same filters to get the next page
52
+
53
+ {
54
+ [created_after]: <Created After ISO 8601 Date String>
55
+ [created_before]: <Created Before ISO 8601 Date String>
56
+ [limit]: <Page Result Limit Number>
57
+ tapd: <Authenticated tapd API Object>
58
+ [token]: <Opaque Paging Token String>
59
+ }
60
+
61
+ @returns via cbk or Promise
62
+ {
63
+ addresses: [{
64
+ address: <Encoded Taproot Assets Address String>
65
+ amount: <Asset Units To Receive Numeric String>
66
+ [asset_id]: <Asset Id Hex String>
67
+ asset_version: <Asset Version Number>
68
+ [group_key]: <Asset Group Key Hex String>
69
+ internal_key: <Internal Key Hex String>
70
+ is_collectible: <Asset Is Collectible Bool>
71
+ proof_courier: <Proof Courier Address String>
72
+ script_key: <Script Key Hex String>
73
+ [tapscript_sibling]: <Tapscript Sibling Preimage Hex String>
74
+ taproot_output_key: <Taproot Output Key Hex String>
75
+ version: <Address Version Number>
76
+ }]
77
+ [next]: <Next Opaque Paging Token String>
78
+ }
79
+ */
80
+ const getAssetAddresses: TapdMethod<
81
+ GetAssetAddressesArgs,
82
+ GetAssetAddressesResult
83
+ > = (
84
+ args: GetAssetAddressesArgs,
85
+ cbk?: TapdCallback<GetAssetAddressesResult>,
86
+ ) => {
87
+ return new Promise((resolve, reject) => {
88
+ return asyncAuto<Tasks, TapdError>(
89
+ {
90
+ // Check arguments
91
+ validate: cbk => {
92
+ const after = args.created_after;
93
+ const before = args.created_before;
94
+
95
+ if (after !== undefined && !isDate(after)) {
96
+ return cbk([400, 'ExpectedValidCreatedAfterDateToGetAddresses']);
97
+ }
98
+
99
+ if (before !== undefined && !isDate(before)) {
100
+ return cbk([400, 'ExpectedValidCreatedBeforeDateToGetAddresses']);
101
+ }
102
+
103
+ if (args.limit !== undefined && !isSafeInteger(args.limit)) {
104
+ return cbk([400, 'ExpectedIntegerLimitToGetAssetAddresses']);
105
+ }
106
+
107
+ if (args.limit !== undefined && args.limit < 1) {
108
+ return cbk([400, 'ExpectedPositiveLimitToGetAssetAddresses']);
109
+ }
110
+
111
+ if (args.limit !== undefined && args.limit > maxLimit) {
112
+ return cbk([400, 'ExpectedSmallerLimitToGetAssetAddresses']);
113
+ }
114
+
115
+ if (!!args.limit && !!args.token) {
116
+ return cbk([400, 'UnexpectedLimitWhenPagingAddressesWithToken']);
117
+ }
118
+
119
+ if (!isTapd({method, type, tapd: args.tapd})) {
120
+ return cbk([400, 'ExpectedAuthenticatedTapdToGetAssetAddresses']);
121
+ }
122
+
123
+ return cbk();
124
+ },
125
+
126
+ // Get the addresses
127
+ getAddresses: [
128
+ 'validate',
129
+ ({}, cbk) => {
130
+ let limit = args.limit || defaultLimit;
131
+ let offset = 0;
132
+
133
+ // tapd reads the offset as a row offset in the results
134
+ if (!!args.token) {
135
+ try {
136
+ const pagingToken = parse(args.token);
137
+
138
+ limit = pagingToken.limit;
139
+ offset = pagingToken.offset;
140
+ } catch (err) {
141
+ return cbk([
142
+ 400,
143
+ 'ExpectedValidPagingTokenToGetAddresses',
144
+ {err},
145
+ ]);
146
+ }
147
+
148
+ if (!isSafeInteger(limit) || limit < 1 || limit > maxLimit) {
149
+ return cbk([400, 'ExpectedValidPagingTokenToGetAddresses']);
150
+ }
151
+
152
+ if (!isSafeInteger(offset) || offset < 0 || offset > maxLimit) {
153
+ return cbk([400, 'ExpectedValidPagingTokenToGetAddresses']);
154
+ }
155
+ }
156
+
157
+ const request = {
158
+ created_after: asSeconds(args.created_after),
159
+ created_before: asSeconds(args.created_before),
160
+ limit,
161
+ offset,
162
+ };
163
+
164
+ return args.tapd[type][method](request, (err: any, res: any) => {
165
+ if (isConnectionFailure({err})) {
166
+ return cbk([503, 'FailedToConnectToTapdToGetAssetAddresses']);
167
+ }
168
+
169
+ if (isPermissionDenied({err})) {
170
+ return cbk([403, 'PermissionDeniedToGetAssetAddresses']);
171
+ }
172
+
173
+ if (!!err) {
174
+ return cbk([
175
+ 503,
176
+ 'UnexpectedErrorGettingAssetAddresses',
177
+ {err},
178
+ ]);
179
+ }
180
+
181
+ if (!res || !isArray(res.addrs)) {
182
+ return cbk([
183
+ 503,
184
+ 'ExpectedArrayOfAddressesInAddressesResponse',
185
+ ]);
186
+ }
187
+
188
+ try {
189
+ const addresses = res.addrs.map(rpcAddrAsAddress);
190
+
191
+ // A full page means that there can be more results
192
+ const isFullPage = addresses.length === limit;
193
+
194
+ const next = stringify({limit, offset: offset + limit});
195
+
196
+ return cbk(null, {
197
+ addresses,
198
+ next: isFullPage ? next : undefined,
199
+ });
200
+ } catch (err: any) {
201
+ return cbk([503, err.message]);
202
+ }
203
+ });
204
+ },
205
+ ],
206
+ },
207
+ returnResult({reject, resolve, of: 'getAddresses'}, cbk),
208
+ );
209
+ });
210
+ };
211
+
212
+ export default getAssetAddresses;
@@ -0,0 +1,265 @@
1
+ import {auto as asyncAuto} from 'async';
2
+ import {returnResult} from 'asyncjs-util';
3
+
4
+ import {isConnectionFailure} from '../../tapd_requests/index.js';
5
+ import {isPermissionDenied} from '../../tapd_requests/index.js';
6
+ import {isTapd} from '../../tapd_requests/index.js';
7
+ import {receiveStatuses} from '../../tapd_responses/index.js';
8
+ import {rpcAddrEventAsReceive} from '../../tapd_responses/index.js';
9
+ import type {Receive} from '../../tapd_responses/index.js';
10
+ import type {AuthenticatedTapdArgs} from '../../typescript/index.js';
11
+ import type {TapdCallback} from '../../typescript/index.js';
12
+ import type {TapdError} from '../../typescript/index.js';
13
+ import type {TapdMethod} from '../../typescript/index.js';
14
+
15
+ const asSeconds = (n?: string) => (!n ? 0 : Math.floor(Date.parse(n) / 1e3));
16
+ const defaultLimit = 100;
17
+ const {entries} = Object;
18
+ const invalidAddressError = 'unable to decode addr';
19
+ const {isArray} = Array;
20
+ const isDate = (n: string) => Date.parse(n) > 0;
21
+ const {isSafeInteger} = Number;
22
+ const maxLimit = 16384;
23
+ const maxOffset = 2147483647;
24
+ const method = 'addrReceives';
25
+ const newestFirst = 'SORT_DIRECTION_DESC';
26
+ const noStatusFilter = 'ADDR_EVENT_STATUS_UNKNOWN';
27
+ const {parse} = JSON;
28
+ const {stringify} = JSON;
29
+ const type = 'default';
30
+ const unknownAssetError = 'unknown asset=';
31
+
32
+ // Address event statuses by receive status type
33
+ const statuses = Object.fromEntries(
34
+ entries(receiveStatuses)
35
+ .filter(([status]) => status !== noStatusFilter)
36
+ .map(([status, statusType]) => [statusType, status]),
37
+ );
38
+
39
+ export type GetAssetReceivesArgs = AuthenticatedTapdArgs<{
40
+ /** Encoded Taproot Assets Address String */
41
+ address?: string;
42
+ /** Created After ISO 8601 Date String */
43
+ created_after?: string;
44
+ /** Created Before ISO 8601 Date String */
45
+ created_before?: string;
46
+ /** Page Result Limit Number */
47
+ limit?: number;
48
+ /** Receive Status String */
49
+ status?:
50
+ | 'completed'
51
+ | 'proof_received'
52
+ | 'transaction_confirmed'
53
+ | 'transaction_detected';
54
+ /** Opaque Paging Token String */
55
+ token?: string;
56
+ }>;
57
+
58
+ export type GetAssetReceivesResult = {
59
+ /** Next Opaque Paging Token */
60
+ next?: string;
61
+ receives: Receive[];
62
+ };
63
+
64
+ type Tasks = {
65
+ getReceives: GetAssetReceivesResult;
66
+ validate: undefined;
67
+ };
68
+
69
+ /** Get the inbound asset transfers to Taproot Assets addresses, newest first
70
+
71
+ Requires `addresses:read` permission
72
+
73
+ Use the `next` token with the same filters to get the next page
74
+
75
+ The maximum `limit` is 16384
76
+
77
+ {
78
+ [address]: <Encoded Taproot Assets Address String>
79
+ [created_after]: <Created After ISO 8601 Date String>
80
+ [created_before]: <Created Before ISO 8601 Date String>
81
+ [limit]: <Page Result Limit Number>
82
+ [status]: <Receive Status String>
83
+ tapd: <Authenticated tapd API Object>
84
+ [token]: <Opaque Paging Token String>
85
+ }
86
+
87
+ @returns via cbk or Promise
88
+ {
89
+ [next]: <Next Opaque Paging Token String>
90
+ receives: [{
91
+ address: {
92
+ address: <Encoded Taproot Assets Address String>
93
+ amount: <Asset Units To Receive Numeric String>
94
+ [asset_id]: <Asset Id Hex String>
95
+ asset_version: <Asset Version Number>
96
+ [group_key]: <Asset Group Key Hex String>
97
+ internal_key: <Internal Key Hex String>
98
+ is_collectible: <Asset Is Collectible Bool>
99
+ proof_courier: <Proof Courier Address String>
100
+ script_key: <Script Key Hex String>
101
+ [tapscript_sibling]: <Tapscript Sibling Preimage Hex String>
102
+ taproot_output_key: <Taproot Output Key Hex String>
103
+ version: <Address Version Number>
104
+ }
105
+ [confirmation_height]: <Confirmation Block Height Number>
106
+ created_at: <Receive Detected At ISO 8601 Date String>
107
+ is_proof_available: <Proof File Is Available Bool>
108
+ status: <Receive Status String>
109
+ [tapscript_sibling]: <Tapscript Sibling Hash Hex String>
110
+ tokens: <Satoshis In the Anchor Output Number>
111
+ transaction_id: <Anchor Transaction Id Hex String>
112
+ transaction_vout: <Anchor Transaction Output Index Number>
113
+ }]
114
+ }
115
+ */
116
+ const getAssetReceives: TapdMethod<
117
+ GetAssetReceivesArgs,
118
+ GetAssetReceivesResult
119
+ > = (
120
+ args: GetAssetReceivesArgs,
121
+ cbk?: TapdCallback<GetAssetReceivesResult>,
122
+ ) => {
123
+ return new Promise((resolve, reject) => {
124
+ return asyncAuto<Tasks, TapdError>(
125
+ {
126
+ // Check arguments
127
+ validate: cbk => {
128
+ const after = args.created_after;
129
+ const before = args.created_before;
130
+
131
+ if (args.address !== undefined && typeof args.address !== 'string') {
132
+ return cbk([400, 'ExpectedAssetAddressStringToGetAssetReceives']);
133
+ }
134
+
135
+ if (after !== undefined && !isDate(after)) {
136
+ return cbk([400, 'ExpectedValidCreatedAfterDateToGetReceives']);
137
+ }
138
+
139
+ if (before !== undefined && !isDate(before)) {
140
+ return cbk([400, 'ExpectedValidCreatedBeforeDateToGetReceives']);
141
+ }
142
+
143
+ if (args.limit !== undefined && !isSafeInteger(args.limit)) {
144
+ return cbk([400, 'ExpectedIntegerLimitToGetAssetReceives']);
145
+ }
146
+
147
+ if (args.limit !== undefined && args.limit < 1) {
148
+ return cbk([400, 'ExpectedPositiveLimitToGetAssetReceives']);
149
+ }
150
+
151
+ if (args.limit !== undefined && args.limit > maxLimit) {
152
+ return cbk([400, 'ExpectedSmallerLimitToGetAssetReceives']);
153
+ }
154
+
155
+ if (!!args.limit && !!args.token) {
156
+ return cbk([400, 'UnexpectedLimitWhenPagingReceivesWithToken']);
157
+ }
158
+
159
+ if (args.status !== undefined && !statuses[args.status]) {
160
+ return cbk([400, 'ExpectedKnownStatusToGetAssetReceives']);
161
+ }
162
+
163
+ if (!isTapd({method, type, tapd: args.tapd})) {
164
+ return cbk([400, 'ExpectedAuthenticatedTapdToGetAssetReceives']);
165
+ }
166
+
167
+ return cbk();
168
+ },
169
+
170
+ // Get the receives
171
+ getReceives: [
172
+ 'validate',
173
+ ({}, cbk) => {
174
+ let limit = args.limit || defaultLimit;
175
+ let offset = 0;
176
+
177
+ // tapd reads the offset as a row offset in the results
178
+ if (!!args.token) {
179
+ try {
180
+ const pagingToken = parse(args.token);
181
+
182
+ limit = pagingToken.limit;
183
+ offset = pagingToken.offset;
184
+ } catch (err) {
185
+ return cbk([
186
+ 400,
187
+ 'ExpectedValidPagingTokenToGetReceives',
188
+ {err},
189
+ ]);
190
+ }
191
+
192
+ if (!isSafeInteger(limit) || limit < 1 || limit > maxLimit) {
193
+ return cbk([400, 'ExpectedValidPagingTokenToGetReceives']);
194
+ }
195
+
196
+ if (!isSafeInteger(offset) || offset < 0 || offset > maxOffset) {
197
+ return cbk([400, 'ExpectedValidPagingTokenToGetReceives']);
198
+ }
199
+ }
200
+
201
+ const request = {
202
+ direction: newestFirst,
203
+ end_timestamp: asSeconds(args.created_before),
204
+ filter_addr: args.address || '',
205
+ filter_status: !!args.status
206
+ ? statuses[args.status]
207
+ : noStatusFilter,
208
+ limit,
209
+ offset,
210
+ start_timestamp: asSeconds(args.created_after),
211
+ };
212
+
213
+ return args.tapd[type][method](request, (err: any, res: any) => {
214
+ if (isConnectionFailure({err})) {
215
+ return cbk([503, 'FailedToConnectToTapdToGetAssetReceives']);
216
+ }
217
+
218
+ if (isPermissionDenied({err})) {
219
+ return cbk([403, 'PermissionDeniedToGetAssetReceives']);
220
+ }
221
+
222
+ if (!!err && String(err.details).includes(invalidAddressError)) {
223
+ return cbk([400, 'ExpectedValidAssetAddressToGetReceives']);
224
+ }
225
+
226
+ if (!!err && String(err.details).includes(unknownAssetError)) {
227
+ return cbk([404, 'AssetNotFound']);
228
+ }
229
+
230
+ if (!!err) {
231
+ return cbk([503, 'UnexpectedErrorGettingAssetReceives', {err}]);
232
+ }
233
+
234
+ if (!res || !isArray(res.events)) {
235
+ return cbk([
236
+ 503,
237
+ 'ExpectedArrayOfEventsInAddrReceivesResponse',
238
+ ]);
239
+ }
240
+
241
+ try {
242
+ const receives = res.events.map(rpcAddrEventAsReceive);
243
+
244
+ // A full page means that there can be more results
245
+ const isFullPage = receives.length === limit;
246
+
247
+ const next = stringify({limit, offset: offset + limit});
248
+
249
+ return cbk(null, {
250
+ next: isFullPage ? next : undefined,
251
+ receives,
252
+ });
253
+ } catch (err: any) {
254
+ return cbk([503, err.message]);
255
+ }
256
+ });
257
+ },
258
+ ],
259
+ },
260
+ returnResult({reject, resolve, of: 'getReceives'}, cbk),
261
+ );
262
+ });
263
+ };
264
+
265
+ export default getAssetReceives;