tapass 0.0.0-stage → 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.
- package/LICENSE +21 -0
- package/README.md +2886 -2
- package/dist/grpc/emit_subscription_error.d.ts +21 -0
- package/dist/grpc/emit_subscription_error.d.ts.map +1 -0
- package/dist/grpc/emit_subscription_error.js +26 -0
- package/dist/grpc/emit_subscription_error.js.map +1 -0
- package/dist/grpc/grpc_services.d.ts +46 -0
- package/dist/grpc/grpc_services.d.ts.map +1 -0
- package/dist/grpc/grpc_services.js +45 -0
- package/dist/grpc/grpc_services.js.map +1 -0
- package/dist/grpc/handle_remove_listener.d.ts +18 -0
- package/dist/grpc/handle_remove_listener.d.ts.map +1 -0
- package/dist/grpc/handle_remove_listener.js +22 -0
- package/dist/grpc/handle_remove_listener.js.map +1 -0
- package/dist/grpc/index.d.ts +32 -0
- package/dist/grpc/index.d.ts.map +1 -0
- package/dist/grpc/index.js +6 -0
- package/dist/grpc/index.js.map +1 -0
- package/dist/index.d.ts +25 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/tapd_grpc/api_for_proto.d.ts +28 -0
- package/dist/tapd_grpc/api_for_proto.d.ts.map +1 -0
- package/dist/tapd_grpc/api_for_proto.js +24 -0
- package/dist/tapd_grpc/api_for_proto.js.map +1 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.d.ts +35 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.d.ts.map +1 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.js +76 -0
- package/dist/tapd_grpc/authenticated_tapd_grpc.js.map +1 -0
- package/dist/tapd_grpc/decode_serialized.d.ts +18 -0
- package/dist/tapd_grpc/decode_serialized.d.ts.map +1 -0
- package/dist/tapd_grpc/decode_serialized.js +23 -0
- package/dist/tapd_grpc/decode_serialized.js.map +1 -0
- package/dist/tapd_grpc/grpc_credentials.d.ts +24 -0
- package/dist/tapd_grpc/grpc_credentials.d.ts.map +1 -0
- package/dist/tapd_grpc/grpc_credentials.js +39 -0
- package/dist/tapd_grpc/grpc_credentials.js.map +1 -0
- package/dist/tapd_grpc/grpc_options.d.ts +10 -0
- package/dist/tapd_grpc/grpc_options.d.ts.map +1 -0
- package/dist/tapd_grpc/grpc_options.js +9 -0
- package/dist/tapd_grpc/grpc_options.js.map +1 -0
- package/dist/tapd_grpc/grpc_ssl.d.ts +19 -0
- package/dist/tapd_grpc/grpc_ssl.d.ts.map +1 -0
- package/dist/tapd_grpc/grpc_ssl.js +18 -0
- package/dist/tapd_grpc/grpc_ssl.js.map +1 -0
- package/dist/tapd_grpc/index.d.ts +6 -0
- package/dist/tapd_grpc/index.d.ts.map +1 -0
- package/dist/tapd_grpc/index.js +2 -0
- package/dist/tapd_grpc/index.js.map +1 -0
- package/dist/tapd_grpc/types.d.ts +35 -0
- package/dist/tapd_grpc/types.d.ts.map +1 -0
- package/dist/tapd_grpc/types.js +2 -0
- package/dist/tapd_grpc/types.js.map +1 -0
- package/dist/tapd_methods/address/create_asset_address.d.ts +52 -0
- package/dist/tapd_methods/address/create_asset_address.d.ts.map +1 -0
- package/dist/tapd_methods/address/create_asset_address.js +127 -0
- package/dist/tapd_methods/address/create_asset_address.js.map +1 -0
- package/dist/tapd_methods/address/decode_asset_address.d.ts +38 -0
- package/dist/tapd_methods/address/decode_asset_address.d.ts.map +1 -0
- package/dist/tapd_methods/address/decode_asset_address.js +81 -0
- package/dist/tapd_methods/address/decode_asset_address.js.map +1 -0
- package/dist/tapd_methods/address/get_asset_addresses.d.ts +54 -0
- package/dist/tapd_methods/address/get_asset_addresses.d.ts.map +1 -0
- package/dist/tapd_methods/address/get_asset_addresses.js +153 -0
- package/dist/tapd_methods/address/get_asset_addresses.js.map +1 -0
- package/dist/tapd_methods/address/get_asset_receives.d.ts +72 -0
- package/dist/tapd_methods/address/get_asset_receives.d.ts.map +1 -0
- package/dist/tapd_methods/address/get_asset_receives.js +191 -0
- package/dist/tapd_methods/address/get_asset_receives.js.map +1 -0
- package/dist/tapd_methods/address/index.d.ts +15 -0
- package/dist/tapd_methods/address/index.d.ts.map +1 -0
- package/dist/tapd_methods/address/index.js +6 -0
- package/dist/tapd_methods/address/index.js.map +1 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.d.ts +53 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.d.ts.map +1 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.js +93 -0
- package/dist/tapd_methods/address/subscribe_to_asset_receives.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_balances.d.ts +64 -0
- package/dist/tapd_methods/assets/get_asset_balances.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_balances.js +177 -0
- package/dist/tapd_methods/assets/get_asset_balances.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_burns.d.ts +40 -0
- package/dist/tapd_methods/assets/get_asset_burns.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_burns.js +92 -0
- package/dist/tapd_methods/assets/get_asset_burns.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_groups.d.ts +35 -0
- package/dist/tapd_methods/assets/get_asset_groups.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_groups.js +78 -0
- package/dist/tapd_methods/assets/get_asset_groups.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_metadata.d.ts +40 -0
- package/dist/tapd_methods/assets/get_asset_metadata.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_metadata.js +99 -0
- package/dist/tapd_methods/assets/get_asset_metadata.js.map +1 -0
- package/dist/tapd_methods/assets/get_asset_utxos.d.ts +83 -0
- package/dist/tapd_methods/assets/get_asset_utxos.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_asset_utxos.js +135 -0
- package/dist/tapd_methods/assets/get_asset_utxos.js.map +1 -0
- package/dist/tapd_methods/assets/get_assets.d.ts +113 -0
- package/dist/tapd_methods/assets/get_assets.d.ts.map +1 -0
- package/dist/tapd_methods/assets/get_assets.js +243 -0
- package/dist/tapd_methods/assets/get_assets.js.map +1 -0
- package/dist/tapd_methods/assets/index.d.ts +19 -0
- package/dist/tapd_methods/assets/index.d.ts.map +1 -0
- package/dist/tapd_methods/assets/index.js +7 -0
- package/dist/tapd_methods/assets/index.js.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.d.ts +18 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.d.ts.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.js +59 -0
- package/dist/tapd_methods/channels/asset_payment_args_error.js.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_request.d.ts +68 -0
- package/dist/tapd_methods/channels/asset_payment_request.d.ts.map +1 -0
- package/dist/tapd_methods/channels/asset_payment_request.js +54 -0
- package/dist/tapd_methods/channels/asset_payment_request.js.map +1 -0
- package/dist/tapd_methods/channels/create_asset_invoice.d.ts +134 -0
- package/dist/tapd_methods/channels/create_asset_invoice.d.ts.map +1 -0
- package/dist/tapd_methods/channels/create_asset_invoice.js +264 -0
- package/dist/tapd_methods/channels/create_asset_invoice.js.map +1 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.d.ts +72 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.d.ts.map +1 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.js +143 -0
- package/dist/tapd_methods/channels/decode_asset_payment_request.js.map +1 -0
- package/dist/tapd_methods/channels/emit_asset_payment.d.ts +30 -0
- package/dist/tapd_methods/channels/emit_asset_payment.d.ts.map +1 -0
- package/dist/tapd_methods/channels/emit_asset_payment.js +59 -0
- package/dist/tapd_methods/channels/emit_asset_payment.js.map +1 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.d.ts +51 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.d.ts.map +1 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.js +127 -0
- package/dist/tapd_methods/channels/encode_asset_custom_records.js.map +1 -0
- package/dist/tapd_methods/channels/get_asset_invoices.d.ts +84 -0
- package/dist/tapd_methods/channels/get_asset_invoices.d.ts.map +1 -0
- package/dist/tapd_methods/channels/get_asset_invoices.js +193 -0
- package/dist/tapd_methods/channels/get_asset_invoices.js.map +1 -0
- package/dist/tapd_methods/channels/get_asset_payments.d.ts +69 -0
- package/dist/tapd_methods/channels/get_asset_payments.d.ts.map +1 -0
- package/dist/tapd_methods/channels/get_asset_payments.js +180 -0
- package/dist/tapd_methods/channels/get_asset_payments.js.map +1 -0
- package/dist/tapd_methods/channels/index.d.ts +31 -0
- package/dist/tapd_methods/channels/index.d.ts.map +1 -0
- package/dist/tapd_methods/channels/index.js +12 -0
- package/dist/tapd_methods/channels/index.js.map +1 -0
- package/dist/tapd_methods/channels/open_asset_channel.d.ts +53 -0
- package/dist/tapd_methods/channels/open_asset_channel.d.ts.map +1 -0
- package/dist/tapd_methods/channels/open_asset_channel.js +128 -0
- package/dist/tapd_methods/channels/open_asset_channel.js.map +1 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.d.ts +95 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.d.ts.map +1 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.js +132 -0
- package/dist/tapd_methods/channels/pay_asset_invoice.js.map +1 -0
- package/dist/tapd_methods/channels/send_asset_keysend.d.ts +84 -0
- package/dist/tapd_methods/channels/send_asset_keysend.d.ts.map +1 -0
- package/dist/tapd_methods/channels/send_asset_keysend.js +144 -0
- package/dist/tapd_methods/channels/send_asset_keysend.js.map +1 -0
- package/dist/tapd_methods/channels/send_asset_payment.d.ts +33 -0
- package/dist/tapd_methods/channels/send_asset_payment.d.ts.map +1 -0
- package/dist/tapd_methods/channels/send_asset_payment.js +114 -0
- package/dist/tapd_methods/channels/send_asset_payment.js.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.d.ts +51 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.d.ts.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.js +104 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_invoices.js.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.d.ts +59 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.d.ts.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.js +104 -0
- package/dist/tapd_methods/channels/subscribe_to_asset_payments.js.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.d.ts +62 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.d.ts.map +1 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.js +106 -0
- package/dist/tapd_methods/channels/subscribe_to_past_asset_payment.js.map +1 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.d.ts +45 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.js +99 -0
- package/dist/tapd_methods/daemon/create_tapd_macaroon.js.map +1 -0
- package/dist/tapd_methods/daemon/index.d.ts +8 -0
- package/dist/tapd_methods/daemon/index.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/index.js +4 -0
- package/dist/tapd_methods/daemon/index.js.map +1 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.d.ts +23 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.js +60 -0
- package/dist/tapd_methods/daemon/set_tapd_debug_level.js.map +1 -0
- package/dist/tapd_methods/daemon/stop_tapd.d.ts +16 -0
- package/dist/tapd_methods/daemon/stop_tapd.d.ts.map +1 -0
- package/dist/tapd_methods/daemon/stop_tapd.js +50 -0
- package/dist/tapd_methods/daemon/stop_tapd.js.map +1 -0
- package/dist/tapd_methods/index.d.ts +10 -0
- package/dist/tapd_methods/index.d.ts.map +1 -0
- package/dist/tapd_methods/index.js +10 -0
- package/dist/tapd_methods/index.js.map +1 -0
- package/dist/tapd_methods/info/get_tapd_info.d.ts +44 -0
- package/dist/tapd_methods/info/get_tapd_info.d.ts.map +1 -0
- package/dist/tapd_methods/info/get_tapd_info.js +80 -0
- package/dist/tapd_methods/info/get_tapd_info.js.map +1 -0
- package/dist/tapd_methods/info/index.d.ts +4 -0
- package/dist/tapd_methods/info/index.d.ts.map +1 -0
- package/dist/tapd_methods/info/index.js +2 -0
- package/dist/tapd_methods/info/index.js.map +1 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.d.ts +124 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.js +283 -0
- package/dist/tapd_methods/mint/add_asset_to_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.d.ts +23 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.js +62 -0
- package/dist/tapd_methods/mint/cancel_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.d.ts +64 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.js +130 -0
- package/dist/tapd_methods/mint/finalize_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/fund_mint_batch.d.ts +82 -0
- package/dist/tapd_methods/mint/fund_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/fund_mint_batch.js +145 -0
- package/dist/tapd_methods/mint/fund_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/get_mint_batches.d.ts +72 -0
- package/dist/tapd_methods/mint/get_mint_batches.d.ts.map +1 -0
- package/dist/tapd_methods/mint/get_mint_batches.js +123 -0
- package/dist/tapd_methods/mint/get_mint_batches.js.map +1 -0
- package/dist/tapd_methods/mint/index.d.ts +21 -0
- package/dist/tapd_methods/mint/index.d.ts.map +1 -0
- package/dist/tapd_methods/mint/index.js +8 -0
- package/dist/tapd_methods/mint/index.js.map +1 -0
- package/dist/tapd_methods/mint/seal_mint_batch.d.ts +64 -0
- package/dist/tapd_methods/mint/seal_mint_batch.d.ts.map +1 -0
- package/dist/tapd_methods/mint/seal_mint_batch.js +135 -0
- package/dist/tapd_methods/mint/seal_mint_batch.js.map +1 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.d.ts +52 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.d.ts.map +1 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.js +91 -0
- package/dist/tapd_methods/mint/subscribe_to_mint_events.js.map +1 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.d.ts +61 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.js +129 -0
- package/dist/tapd_methods/proofs/decode_asset_proof.js.map +1 -0
- package/dist/tapd_methods/proofs/export_asset_proof.d.ts +39 -0
- package/dist/tapd_methods/proofs/export_asset_proof.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/export_asset_proof.js +113 -0
- package/dist/tapd_methods/proofs/export_asset_proof.js.map +1 -0
- package/dist/tapd_methods/proofs/index.d.ts +13 -0
- package/dist/tapd_methods/proofs/index.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/index.js +5 -0
- package/dist/tapd_methods/proofs/index.js.map +1 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.d.ts +29 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.js +85 -0
- package/dist/tapd_methods/proofs/unpack_asset_proof_file.js.map +1 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.d.ts +58 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.d.ts.map +1 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.js +110 -0
- package/dist/tapd_methods/proofs/verify_asset_proof.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.d.ts +31 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.js +88 -0
- package/dist/tapd_methods/rfq/add_asset_buy_offer.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.d.ts +79 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.js +200 -0
- package/dist/tapd_methods/rfq/add_asset_buy_order.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.d.ts +30 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.js +87 -0
- package/dist/tapd_methods/rfq/add_asset_sell_offer.js.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.d.ts +79 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.js +200 -0
- package/dist/tapd_methods/rfq/add_asset_sell_order.js.map +1 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.d.ts +52 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.js +100 -0
- package/dist/tapd_methods/rfq/get_accepted_quotes.js.map +1 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.d.ts +70 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.js +185 -0
- package/dist/tapd_methods/rfq/get_asset_forwards.js.map +1 -0
- package/dist/tapd_methods/rfq/index.d.ts +19 -0
- package/dist/tapd_methods/rfq/index.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/index.js +8 -0
- package/dist/tapd_methods/rfq/index.js.map +1 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.d.ts +68 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.d.ts.map +1 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.js +107 -0
- package/dist/tapd_methods/rfq/subscribe_to_rfq_events.js.map +1 -0
- package/dist/tapd_methods/send/burn_asset.d.ts +135 -0
- package/dist/tapd_methods/send/burn_asset.d.ts.map +1 -0
- package/dist/tapd_methods/send/burn_asset.js +220 -0
- package/dist/tapd_methods/send/burn_asset.js.map +1 -0
- package/dist/tapd_methods/send/get_asset_transfers.d.ts +73 -0
- package/dist/tapd_methods/send/get_asset_transfers.d.ts.map +1 -0
- package/dist/tapd_methods/send/get_asset_transfers.js +122 -0
- package/dist/tapd_methods/send/get_asset_transfers.js.map +1 -0
- package/dist/tapd_methods/send/index.d.ts +15 -0
- package/dist/tapd_methods/send/index.d.ts.map +1 -0
- package/dist/tapd_methods/send/index.js +6 -0
- package/dist/tapd_methods/send/index.js.map +1 -0
- package/dist/tapd_methods/send/register_asset_transfer.d.ts +77 -0
- package/dist/tapd_methods/send/register_asset_transfer.d.ts.map +1 -0
- package/dist/tapd_methods/send/register_asset_transfer.js +165 -0
- package/dist/tapd_methods/send/register_asset_transfer.js.map +1 -0
- package/dist/tapd_methods/send/send_asset.d.ts +94 -0
- package/dist/tapd_methods/send/send_asset.d.ts.map +1 -0
- package/dist/tapd_methods/send/send_asset.js +169 -0
- package/dist/tapd_methods/send/send_asset.js.map +1 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.d.ts +117 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.d.ts.map +1 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.js +159 -0
- package/dist/tapd_methods/send/subscribe_to_asset_sends.js.map +1 -0
- package/dist/tapd_requests/decimal_as_fixed_point.d.ts +23 -0
- package/dist/tapd_requests/decimal_as_fixed_point.d.ts.map +1 -0
- package/dist/tapd_requests/decimal_as_fixed_point.js +31 -0
- package/dist/tapd_requests/decimal_as_fixed_point.js.map +1 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.d.ts +13 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.d.ts.map +1 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.js +21 -0
- package/dist/tapd_requests/fee_rate_as_tokens_per_kw.js.map +1 -0
- package/dist/tapd_requests/index.d.ts +9 -0
- package/dist/tapd_requests/index.d.ts.map +1 -0
- package/dist/tapd_requests/index.js +9 -0
- package/dist/tapd_requests/index.js.map +1 -0
- package/dist/tapd_requests/is_connection_failure.d.ts +23 -0
- package/dist/tapd_requests/is_connection_failure.d.ts.map +1 -0
- package/dist/tapd_requests/is_connection_failure.js +40 -0
- package/dist/tapd_requests/is_connection_failure.js.map +1 -0
- package/dist/tapd_requests/is_method_unsupported.d.ts +24 -0
- package/dist/tapd_requests/is_method_unsupported.d.ts.map +1 -0
- package/dist/tapd_requests/is_method_unsupported.js +27 -0
- package/dist/tapd_requests/is_method_unsupported.js.map +1 -0
- package/dist/tapd_requests/is_permission_denied.d.ts +19 -0
- package/dist/tapd_requests/is_permission_denied.d.ts.map +1 -0
- package/dist/tapd_requests/is_permission_denied.js +16 -0
- package/dist/tapd_requests/is_permission_denied.js.map +1 -0
- package/dist/tapd_requests/is_tapd.d.ts +19 -0
- package/dist/tapd_requests/is_tapd.d.ts.map +1 -0
- package/dist/tapd_requests/is_tapd.js +16 -0
- package/dist/tapd_requests/is_tapd.js.map +1 -0
- package/dist/tapd_requests/mint_funding_request.d.ts +53 -0
- package/dist/tapd_requests/mint_funding_request.d.ts.map +1 -0
- package/dist/tapd_requests/mint_funding_request.js +48 -0
- package/dist/tapd_requests/mint_funding_request.js.map +1 -0
- package/dist/tapd_requests/script_key_type_query.d.ts +26 -0
- package/dist/tapd_requests/script_key_type_query.d.ts.map +1 -0
- package/dist/tapd_requests/script_key_type_query.js +41 -0
- package/dist/tapd_requests/script_key_type_query.js.map +1 -0
- package/dist/tapd_responses/asset_channel_rpc_error.d.ts +19 -0
- package/dist/tapd_responses/asset_channel_rpc_error.d.ts.map +1 -0
- package/dist/tapd_responses/asset_channel_rpc_error.js +69 -0
- package/dist/tapd_responses/asset_channel_rpc_error.js.map +1 -0
- package/dist/tapd_responses/batch_states.d.ts +4 -0
- package/dist/tapd_responses/batch_states.d.ts.map +1 -0
- package/dist/tapd_responses/batch_states.js +13 -0
- package/dist/tapd_responses/batch_states.js.map +1 -0
- package/dist/tapd_responses/fixed_point_as_decimal.d.ts +25 -0
- package/dist/tapd_responses/fixed_point_as_decimal.d.ts.map +1 -0
- package/dist/tapd_responses/fixed_point_as_decimal.js +39 -0
- package/dist/tapd_responses/fixed_point_as_decimal.js.map +1 -0
- package/dist/tapd_responses/index.d.ts +76 -0
- package/dist/tapd_responses/index.d.ts.map +1 -0
- package/dist/tapd_responses/index.js +30 -0
- package/dist/tapd_responses/index.js.map +1 -0
- package/dist/tapd_responses/long_key_as_number.d.ts +16 -0
- package/dist/tapd_responses/long_key_as_number.d.ts.map +1 -0
- package/dist/tapd_responses/long_key_as_number.js +28 -0
- package/dist/tapd_responses/long_key_as_number.js.map +1 -0
- package/dist/tapd_responses/mint_rpc_error.d.ts +19 -0
- package/dist/tapd_responses/mint_rpc_error.d.ts.map +1 -0
- package/dist/tapd_responses/mint_rpc_error.js +35 -0
- package/dist/tapd_responses/mint_rpc_error.js.map +1 -0
- package/dist/tapd_responses/outpoint_as_transaction.d.ts +19 -0
- package/dist/tapd_responses/outpoint_as_transaction.d.ts.map +1 -0
- package/dist/tapd_responses/outpoint_as_transaction.js +23 -0
- package/dist/tapd_responses/outpoint_as_transaction.js.map +1 -0
- package/dist/tapd_responses/receive_statuses.d.ts +4 -0
- package/dist/tapd_responses/receive_statuses.d.ts.map +1 -0
- package/dist/tapd_responses/receive_statuses.js +9 -0
- package/dist/tapd_responses/receive_statuses.js.map +1 -0
- package/dist/tapd_responses/rpc_addr_as_address.d.ts +79 -0
- package/dist/tapd_responses/rpc_addr_as_address.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_addr_as_address.js +87 -0
- package/dist/tapd_responses/rpc_addr_as_address.js.map +1 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.d.ts +63 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.js +64 -0
- package/dist/tapd_responses/rpc_addr_event_as_receive.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.d.ts +34 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.js +38 -0
- package/dist/tapd_responses/rpc_asset_amount_as_amount.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_as_asset.d.ts +204 -0
- package/dist/tapd_responses/rpc_asset_as_asset.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_as_asset.js +174 -0
- package/dist/tapd_responses/rpc_asset_as_asset.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.d.ts +53 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.js +53 -0
- package/dist/tapd_responses/rpc_asset_balance_as_balance.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.d.ts +51 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.js +54 -0
- package/dist/tapd_responses/rpc_asset_burn_as_burn.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.d.ts +39 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.js +45 -0
- package/dist/tapd_responses/rpc_asset_invoice_as_invoice.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.d.ts +68 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.js +70 -0
- package/dist/tapd_responses/rpc_asset_meta_as_metadata.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.d.ts +76 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.js +73 -0
- package/dist/tapd_responses/rpc_asset_pay_req_as_request.js.map +1 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.d.ts +39 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.js +45 -0
- package/dist/tapd_responses/rpc_asset_payment_as_payment.js.map +1 -0
- package/dist/tapd_responses/rpc_batch_as_batch.d.ts +158 -0
- package/dist/tapd_responses/rpc_batch_as_batch.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_batch_as_batch.js +181 -0
- package/dist/tapd_responses/rpc_batch_as_batch.js.map +1 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.d.ts +83 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.js +85 -0
- package/dist/tapd_responses/rpc_buy_quote_as_quote.js.map +1 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.d.ts +161 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.js +138 -0
- package/dist/tapd_responses/rpc_decoded_proof_as_proof.js.map +1 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.d.ts +100 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.js +101 -0
- package/dist/tapd_responses/rpc_forward_as_asset_forward.js.map +1 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.d.ts +76 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.js +71 -0
- package/dist/tapd_responses/rpc_grouped_assets_as_group.js.map +1 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.d.ts +63 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.js +65 -0
- package/dist/tapd_responses/rpc_managed_utxo_as_utxo.js.map +1 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.d.ts +53 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.js +52 -0
- package/dist/tapd_responses/rpc_receive_event_as_receive_update.js.map +1 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.d.ts +70 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.js +89 -0
- package/dist/tapd_responses/rpc_rfq_event_as_event.js.map +1 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.d.ts +80 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.js +85 -0
- package/dist/tapd_responses/rpc_sell_quote_as_quote.js.map +1 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.d.ts +124 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.js +161 -0
- package/dist/tapd_responses/rpc_send_event_as_send_event.js.map +1 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.d.ts +241 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.d.ts.map +1 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.js +212 -0
- package/dist/tapd_responses/rpc_transfer_as_transfer.js.map +1 -0
- package/dist/tapd_responses/short_channel_id_as_channel.d.ts +13 -0
- package/dist/tapd_responses/short_channel_id_as_channel.d.ts.map +1 -0
- package/dist/tapd_responses/short_channel_id_as_channel.js +26 -0
- package/dist/tapd_responses/short_channel_id_as_channel.js.map +1 -0
- package/dist/typescript/index.d.ts +16 -0
- package/dist/typescript/index.d.ts.map +1 -0
- package/dist/typescript/index.js +2 -0
- package/dist/typescript/index.js.map +1 -0
- package/package.json +76 -3
- package/protos/VERSIONS +2 -0
- package/protos/lnrpc/lightning.proto +5380 -0
- package/protos/lnrpc/routerrpc/router.proto +1115 -0
- package/protos/taprpc/assetwalletrpc/assetwallet.proto +631 -0
- package/protos/taprpc/authmailboxrpc/mailbox.proto +281 -0
- package/protos/taprpc/mintrpc/mint.proto +452 -0
- package/protos/taprpc/portfoliopilotrpc/portfolio_pilot.proto +410 -0
- package/protos/taprpc/priceoraclerpc/price_oracle.proto +262 -0
- package/protos/taprpc/rfqrpc/rfq.proto +614 -0
- package/protos/taprpc/tapchannelrpc/tapchannel.proto +490 -0
- package/protos/taprpc/tapcommon.proto +47 -0
- package/protos/taprpc/tapdevrpc/tapdev.proto +120 -0
- package/protos/taprpc/taprootassets.proto +2117 -0
- package/protos/taprpc/universerpc/universe.proto +1101 -0
- package/src/grpc/emit_subscription_error.ts +39 -0
- package/src/grpc/grpc_services.ts +45 -0
- package/src/grpc/handle_remove_listener.ts +35 -0
- package/src/grpc/index.ts +18 -0
- package/src/index.ts +24 -0
- package/src/tapd_grpc/api_for_proto.ts +42 -0
- package/src/tapd_grpc/authenticated_tapd_grpc.ts +88 -0
- package/src/tapd_grpc/decode_serialized.ts +25 -0
- package/src/tapd_grpc/grpc_credentials.ts +48 -0
- package/src/tapd_grpc/grpc_options.ts +10 -0
- package/src/tapd_grpc/grpc_ssl.ts +20 -0
- package/src/tapd_grpc/index.ts +5 -0
- package/src/tapd_grpc/types.ts +35 -0
- package/src/tapd_methods/address/create_asset_address.ts +179 -0
- package/src/tapd_methods/address/decode_asset_address.ts +117 -0
- package/src/tapd_methods/address/get_asset_addresses.ts +212 -0
- package/src/tapd_methods/address/get_asset_receives.ts +265 -0
- package/src/tapd_methods/address/index.ts +14 -0
- package/src/tapd_methods/address/subscribe_to_asset_receives.ts +114 -0
- package/src/tapd_methods/assets/get_asset_balances.ts +249 -0
- package/src/tapd_methods/assets/get_asset_burns.ts +133 -0
- package/src/tapd_methods/assets/get_asset_groups.ts +109 -0
- package/src/tapd_methods/assets/get_asset_metadata.ts +141 -0
- package/src/tapd_methods/assets/get_asset_utxos.ts +175 -0
- package/src/tapd_methods/assets/get_assets.ts +327 -0
- package/src/tapd_methods/assets/index.ts +18 -0
- package/src/tapd_methods/channels/asset_payment_args_error.ts +83 -0
- package/src/tapd_methods/channels/asset_payment_request.ts +76 -0
- package/src/tapd_methods/channels/create_asset_invoice.ts +387 -0
- package/src/tapd_methods/channels/decode_asset_payment_request.ts +192 -0
- package/src/tapd_methods/channels/emit_asset_payment.ts +78 -0
- package/src/tapd_methods/channels/encode_asset_custom_records.ts +187 -0
- package/src/tapd_methods/channels/get_asset_invoices.ts +258 -0
- package/src/tapd_methods/channels/get_asset_payments.ts +243 -0
- package/src/tapd_methods/channels/index.ts +30 -0
- package/src/tapd_methods/channels/open_asset_channel.ts +193 -0
- package/src/tapd_methods/channels/pay_asset_invoice.ts +171 -0
- package/src/tapd_methods/channels/send_asset_keysend.ts +196 -0
- package/src/tapd_methods/channels/send_asset_payment.ts +158 -0
- package/src/tapd_methods/channels/subscribe_to_asset_invoices.ts +134 -0
- package/src/tapd_methods/channels/subscribe_to_asset_payments.ts +126 -0
- package/src/tapd_methods/channels/subscribe_to_past_asset_payment.ts +132 -0
- package/src/tapd_methods/daemon/create_tapd_macaroon.ts +153 -0
- package/src/tapd_methods/daemon/index.ts +7 -0
- package/src/tapd_methods/daemon/set_tapd_debug_level.ts +90 -0
- package/src/tapd_methods/daemon/stop_tapd.ts +75 -0
- package/src/tapd_methods/index.ts +9 -0
- package/src/tapd_methods/info/get_tapd_info.ts +129 -0
- package/src/tapd_methods/info/index.ts +3 -0
- package/src/tapd_methods/mint/add_asset_to_mint_batch.ts +396 -0
- package/src/tapd_methods/mint/cancel_mint_batch.ts +95 -0
- package/src/tapd_methods/mint/finalize_mint_batch.ts +181 -0
- package/src/tapd_methods/mint/fund_mint_batch.ts +193 -0
- package/src/tapd_methods/mint/get_mint_batches.ts +162 -0
- package/src/tapd_methods/mint/index.ts +20 -0
- package/src/tapd_methods/mint/seal_mint_batch.ts +184 -0
- package/src/tapd_methods/mint/subscribe_to_mint_events.ts +104 -0
- package/src/tapd_methods/proofs/decode_asset_proof.ts +175 -0
- package/src/tapd_methods/proofs/export_asset_proof.ts +169 -0
- package/src/tapd_methods/proofs/index.ts +12 -0
- package/src/tapd_methods/proofs/unpack_asset_proof_file.ts +126 -0
- package/src/tapd_methods/proofs/verify_asset_proof.ts +156 -0
- package/src/tapd_methods/rfq/add_asset_buy_offer.ts +127 -0
- package/src/tapd_methods/rfq/add_asset_buy_order.ts +279 -0
- package/src/tapd_methods/rfq/add_asset_sell_offer.ts +126 -0
- package/src/tapd_methods/rfq/add_asset_sell_order.ts +279 -0
- package/src/tapd_methods/rfq/get_accepted_quotes.ts +137 -0
- package/src/tapd_methods/rfq/get_asset_forwards.ts +259 -0
- package/src/tapd_methods/rfq/index.ts +18 -0
- package/src/tapd_methods/rfq/subscribe_to_rfq_events.ts +130 -0
- package/src/tapd_methods/send/burn_asset.ts +280 -0
- package/src/tapd_methods/send/get_asset_transfers.ts +161 -0
- package/src/tapd_methods/send/index.ts +14 -0
- package/src/tapd_methods/send/register_asset_transfer.ts +219 -0
- package/src/tapd_methods/send/send_asset.ts +223 -0
- package/src/tapd_methods/send/subscribe_to_asset_sends.ts +181 -0
- package/src/tapd_requests/decimal_as_fixed_point.ts +36 -0
- package/src/tapd_requests/fee_rate_as_tokens_per_kw.ts +23 -0
- package/src/tapd_requests/index.ts +8 -0
- package/src/tapd_requests/is_connection_failure.ts +48 -0
- package/src/tapd_requests/is_method_unsupported.ts +33 -0
- package/src/tapd_requests/is_permission_denied.ts +18 -0
- package/src/tapd_requests/is_tapd.ts +22 -0
- package/src/tapd_requests/mint_funding_request.ts +57 -0
- package/src/tapd_requests/script_key_type_query.ts +44 -0
- package/src/tapd_responses/asset_channel_rpc_error.ts +73 -0
- package/src/tapd_responses/batch_states.ts +12 -0
- package/src/tapd_responses/fixed_point_as_decimal.ts +51 -0
- package/src/tapd_responses/index.ts +75 -0
- package/src/tapd_responses/long_key_as_number.ts +31 -0
- package/src/tapd_responses/mint_rpc_error.ts +39 -0
- package/src/tapd_responses/outpoint_as_transaction.ts +25 -0
- package/src/tapd_responses/receive_statuses.ts +8 -0
- package/src/tapd_responses/rpc_addr_as_address.ts +138 -0
- package/src/tapd_responses/rpc_addr_event_as_receive.ts +103 -0
- package/src/tapd_responses/rpc_asset_amount_as_amount.ts +57 -0
- package/src/tapd_responses/rpc_asset_as_asset.ts +299 -0
- package/src/tapd_responses/rpc_asset_balance_as_balance.ts +85 -0
- package/src/tapd_responses/rpc_asset_burn_as_burn.ts +85 -0
- package/src/tapd_responses/rpc_asset_invoice_as_invoice.ts +62 -0
- package/src/tapd_responses/rpc_asset_meta_as_metadata.ts +113 -0
- package/src/tapd_responses/rpc_asset_pay_req_as_request.ts +114 -0
- package/src/tapd_responses/rpc_asset_payment_as_payment.ts +62 -0
- package/src/tapd_responses/rpc_batch_as_batch.ts +281 -0
- package/src/tapd_responses/rpc_buy_quote_as_quote.ts +139 -0
- package/src/tapd_responses/rpc_decoded_proof_as_proof.ts +229 -0
- package/src/tapd_responses/rpc_forward_as_asset_forward.ts +164 -0
- package/src/tapd_responses/rpc_grouped_assets_as_group.ts +117 -0
- package/src/tapd_responses/rpc_managed_utxo_as_utxo.ts +105 -0
- package/src/tapd_responses/rpc_receive_event_as_receive_update.ts +84 -0
- package/src/tapd_responses/rpc_rfq_event_as_event.ts +123 -0
- package/src/tapd_responses/rpc_sell_quote_as_quote.ts +136 -0
- package/src/tapd_responses/rpc_send_event_as_send_event.ts +245 -0
- package/src/tapd_responses/rpc_transfer_as_transfer.ts +366 -0
- package/src/tapd_responses/short_channel_id_as_channel.ts +30 -0
- package/src/typescript/asyncjs_util.d.ts +14 -0
- package/src/typescript/index.ts +22 -0
- package/src/typescript/invoices.d.ts +30 -0
- package/src/typescript/lightning_lnd_responses.d.ts +44 -0
|
@@ -0,0 +1,281 @@
|
|
|
1
|
+
import states from './batch_states.js';
|
|
2
|
+
|
|
3
|
+
const assetVersions = ['ASSET_VERSION_V0', 'ASSET_VERSION_V1'];
|
|
4
|
+
const base64AsHex = (n: string) => Buffer.from(n, 'base64').toString('hex');
|
|
5
|
+
const dateFrom = (n: string) => new Date(Number(n) * 1e3).toISOString();
|
|
6
|
+
const hexOf = (n?: Buffer | null) =>
|
|
7
|
+
!n?.length ? undefined : n.toString('hex');
|
|
8
|
+
const {isArray} = Array;
|
|
9
|
+
const isBuffer = (n: unknown): n is Buffer => Buffer.isBuffer(n);
|
|
10
|
+
const isNumeric = (n: unknown) => typeof n === 'string' && /^\d+$/.test(n);
|
|
11
|
+
const metaTypes: Record<string, string> = {
|
|
12
|
+
META_TYPE_JSON: 'json',
|
|
13
|
+
META_TYPE_OPAQUE: 'opaque',
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
type RpcPendingAsset = {
|
|
17
|
+
amount: string;
|
|
18
|
+
asset_meta: {data: Buffer; meta_hash: Buffer; type: string} | null;
|
|
19
|
+
asset_type: string;
|
|
20
|
+
asset_version: string;
|
|
21
|
+
group_anchor: string;
|
|
22
|
+
group_internal_key: {raw_key_bytes: Buffer} | null;
|
|
23
|
+
group_key: Buffer;
|
|
24
|
+
group_tapscript_root: Buffer;
|
|
25
|
+
name: string;
|
|
26
|
+
new_grouped_asset: boolean;
|
|
27
|
+
script_key: {pub_key: Buffer} | null;
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export type RpcMintingBatch = {
|
|
31
|
+
assets: RpcPendingAsset[];
|
|
32
|
+
batch_key: Buffer;
|
|
33
|
+
batch_psbt: Buffer;
|
|
34
|
+
batch_txid: string;
|
|
35
|
+
created_at: string;
|
|
36
|
+
height_hint: number;
|
|
37
|
+
state: string;
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export type RpcVerboseBatch = {
|
|
41
|
+
batch: RpcMintingBatch | null;
|
|
42
|
+
unsealed_assets?: {
|
|
43
|
+
asset: RpcPendingAsset | null;
|
|
44
|
+
group_virtual_psbt: string;
|
|
45
|
+
group_virtual_tx: {transaction: Buffer} | null;
|
|
46
|
+
}[];
|
|
47
|
+
};
|
|
48
|
+
|
|
49
|
+
export type PendingAsset = {
|
|
50
|
+
/** Asset Units Numeric String */
|
|
51
|
+
amount: string;
|
|
52
|
+
/** Name of the Asset That Anchors a New Group */
|
|
53
|
+
group_anchor?: string;
|
|
54
|
+
/** Group Internal Public Key Hex */
|
|
55
|
+
group_internal_key?: string;
|
|
56
|
+
/** Group Key Hex */
|
|
57
|
+
group_key?: string;
|
|
58
|
+
/** Group Tapscript Root Hex */
|
|
59
|
+
group_tapscript_root?: string;
|
|
60
|
+
/** Asset Is Collectible */
|
|
61
|
+
is_collectible: boolean;
|
|
62
|
+
/** Asset Starts a New Group */
|
|
63
|
+
is_new_group: boolean;
|
|
64
|
+
/** Metadata Hex */
|
|
65
|
+
metadata?: string;
|
|
66
|
+
/** Metadata Hash Hex */
|
|
67
|
+
metadata_hash?: string;
|
|
68
|
+
/** Metadata Type */
|
|
69
|
+
metadata_type?: string;
|
|
70
|
+
/** Asset Name */
|
|
71
|
+
name: string;
|
|
72
|
+
/** Script Key Hex */
|
|
73
|
+
script_key?: string;
|
|
74
|
+
/** Asset Version */
|
|
75
|
+
version: number;
|
|
76
|
+
};
|
|
77
|
+
|
|
78
|
+
export type Batch = {
|
|
79
|
+
assets: PendingAsset[];
|
|
80
|
+
/** Created At ISO 8601 Date */
|
|
81
|
+
created_at: string;
|
|
82
|
+
/** Block Height When Created */
|
|
83
|
+
created_height: number;
|
|
84
|
+
/** Batch Key Hex */
|
|
85
|
+
id: string;
|
|
86
|
+
/** Genesis Transaction PSBT Hex */
|
|
87
|
+
psbt?: string;
|
|
88
|
+
/** Batch State */
|
|
89
|
+
state: string;
|
|
90
|
+
/** Genesis Transaction Id Hex */
|
|
91
|
+
transaction_id?: string;
|
|
92
|
+
unsealed_assets: (PendingAsset & {
|
|
93
|
+
/** Group Virtual Transaction PSBT Hex */
|
|
94
|
+
group_virtual_psbt?: string;
|
|
95
|
+
/** Group Virtual Transaction Hex */
|
|
96
|
+
group_virtual_transaction?: string;
|
|
97
|
+
})[];
|
|
98
|
+
};
|
|
99
|
+
|
|
100
|
+
/** Pending asset from an RPC pending asset
|
|
101
|
+
|
|
102
|
+
{
|
|
103
|
+
amount: <Asset Units Numeric String>
|
|
104
|
+
[asset_meta]: {
|
|
105
|
+
data: <Metadata Buffer Object>
|
|
106
|
+
meta_hash: <Metadata Hash Buffer Object>
|
|
107
|
+
type: <Metadata Type String>
|
|
108
|
+
}
|
|
109
|
+
asset_type: <Asset Type String>
|
|
110
|
+
asset_version: <Asset Version String>
|
|
111
|
+
group_anchor: <Name of the Asset That Anchors a New Group String>
|
|
112
|
+
[group_internal_key]: {
|
|
113
|
+
raw_key_bytes: <Group Internal Public Key Buffer Object>
|
|
114
|
+
}
|
|
115
|
+
group_key: <Group Key Buffer Object>
|
|
116
|
+
group_tapscript_root: <Group Tapscript Root Buffer Object>
|
|
117
|
+
name: <Asset Name String>
|
|
118
|
+
new_grouped_asset: <Asset Starts a New Group Bool>
|
|
119
|
+
[script_key]: {
|
|
120
|
+
pub_key: <Script Key Buffer Object>
|
|
121
|
+
}
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
@throws
|
|
125
|
+
<Error>
|
|
126
|
+
|
|
127
|
+
@returns
|
|
128
|
+
<Pending Asset Object>
|
|
129
|
+
*/
|
|
130
|
+
const pendingAsset = (asset?: RpcPendingAsset | null): PendingAsset => {
|
|
131
|
+
if (!asset) {
|
|
132
|
+
throw new Error('ExpectedPendingAssetInRpcMintingBatch');
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
if (!asset.name) {
|
|
136
|
+
throw new Error('ExpectedAssetNameInRpcPendingAsset');
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
if (!isNumeric(asset.amount)) {
|
|
140
|
+
throw new Error('ExpectedAmountInRpcPendingAsset');
|
|
141
|
+
}
|
|
142
|
+
|
|
143
|
+
if (assetVersions.indexOf(asset.asset_version) === -1) {
|
|
144
|
+
throw new Error('ExpectedKnownVersionInRpcPendingAsset');
|
|
145
|
+
}
|
|
146
|
+
|
|
147
|
+
if (!isBuffer(asset.group_key) || !isBuffer(asset.group_tapscript_root)) {
|
|
148
|
+
throw new Error('ExpectedGroupDetailsInRpcPendingAsset');
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
const meta = asset.asset_meta;
|
|
152
|
+
|
|
153
|
+
return {
|
|
154
|
+
amount: asset.amount,
|
|
155
|
+
group_anchor: asset.group_anchor || undefined,
|
|
156
|
+
group_internal_key: hexOf(asset.group_internal_key?.raw_key_bytes),
|
|
157
|
+
group_key: hexOf(asset.group_key),
|
|
158
|
+
group_tapscript_root: hexOf(asset.group_tapscript_root),
|
|
159
|
+
is_collectible: asset.asset_type === 'COLLECTIBLE',
|
|
160
|
+
is_new_group: asset.new_grouped_asset,
|
|
161
|
+
metadata: hexOf(meta?.data),
|
|
162
|
+
metadata_hash: hexOf(meta?.meta_hash),
|
|
163
|
+
metadata_type: !meta ? undefined : metaTypes[meta.type] || 'unknown',
|
|
164
|
+
name: asset.name,
|
|
165
|
+
script_key: hexOf(asset.script_key?.pub_key),
|
|
166
|
+
version: assetVersions.indexOf(asset.asset_version),
|
|
167
|
+
};
|
|
168
|
+
};
|
|
169
|
+
|
|
170
|
+
/** Batch from an RPC minting batch, with the unsealed assets if present
|
|
171
|
+
|
|
172
|
+
{
|
|
173
|
+
batch: {
|
|
174
|
+
assets: [<RPC Pending Asset Object>]
|
|
175
|
+
batch_key: <Batch Key Buffer Object>
|
|
176
|
+
batch_psbt: <Genesis Transaction PSBT Buffer Object>
|
|
177
|
+
batch_txid: <Genesis Transaction Id Hex String>
|
|
178
|
+
created_at: <Created At Unix Seconds Numeric String>
|
|
179
|
+
height_hint: <Block Height When Created Number>
|
|
180
|
+
state: <Batch State String>
|
|
181
|
+
}
|
|
182
|
+
[unsealed_assets]: [{
|
|
183
|
+
asset: <RPC Pending Asset Object>
|
|
184
|
+
group_virtual_psbt: <Group Virtual Transaction PSBT Base64 String>
|
|
185
|
+
[group_virtual_tx]: {
|
|
186
|
+
transaction: <Group Virtual Transaction Buffer Object>
|
|
187
|
+
}
|
|
188
|
+
}]
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
@throws
|
|
192
|
+
<Error>
|
|
193
|
+
|
|
194
|
+
@returns
|
|
195
|
+
{
|
|
196
|
+
assets: [{
|
|
197
|
+
amount: <Asset Units Numeric String>
|
|
198
|
+
[group_anchor]: <Name of the Asset That Anchors a New Group String>
|
|
199
|
+
[group_internal_key]: <Group Internal Public Key Hex String>
|
|
200
|
+
[group_key]: <Group Key Hex String>
|
|
201
|
+
[group_tapscript_root]: <Group Tapscript Root Hex String>
|
|
202
|
+
is_collectible: <Asset Is Collectible Bool>
|
|
203
|
+
is_new_group: <Asset Starts a New Group Bool>
|
|
204
|
+
[metadata]: <Metadata Hex String>
|
|
205
|
+
[metadata_hash]: <Metadata Hash Hex String>
|
|
206
|
+
[metadata_type]: <Metadata Type String> // json, opaque
|
|
207
|
+
name: <Asset Name String>
|
|
208
|
+
[script_key]: <Script Key Hex String>
|
|
209
|
+
version: <Asset Version Number>
|
|
210
|
+
}]
|
|
211
|
+
created_at: <Created At ISO 8601 Date String>
|
|
212
|
+
created_height: <Block Height When Created Number>
|
|
213
|
+
id: <Batch Key Hex String>
|
|
214
|
+
[psbt]: <Genesis Transaction PSBT Hex String>
|
|
215
|
+
state: <Batch State String>
|
|
216
|
+
[transaction_id]: <Genesis Transaction Id Hex String>
|
|
217
|
+
unsealed_assets: [{
|
|
218
|
+
amount: <Asset Units Numeric String>
|
|
219
|
+
[group_anchor]: <Name of the Asset That Anchors a New Group String>
|
|
220
|
+
[group_internal_key]: <Group Internal Public Key Hex String>
|
|
221
|
+
[group_key]: <Group Key Hex String>
|
|
222
|
+
[group_tapscript_root]: <Group Tapscript Root Hex String>
|
|
223
|
+
[group_virtual_psbt]: <Group Virtual Transaction PSBT Hex String>
|
|
224
|
+
[group_virtual_transaction]: <Group Virtual Transaction Hex String>
|
|
225
|
+
is_collectible: <Asset Is Collectible Bool>
|
|
226
|
+
is_new_group: <Asset Starts a New Group Bool>
|
|
227
|
+
[metadata]: <Metadata Hex String>
|
|
228
|
+
[metadata_hash]: <Metadata Hash Hex String>
|
|
229
|
+
[metadata_type]: <Metadata Type String> // json, opaque
|
|
230
|
+
name: <Asset Name String>
|
|
231
|
+
[script_key]: <Script Key Hex String>
|
|
232
|
+
version: <Asset Version Number>
|
|
233
|
+
}]
|
|
234
|
+
}
|
|
235
|
+
*/
|
|
236
|
+
export default ({batch, unsealed_assets}: RpcVerboseBatch): Batch => {
|
|
237
|
+
if (!batch) {
|
|
238
|
+
throw new Error('ExpectedRpcMintingBatch');
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
if (!isArray(batch.assets)) {
|
|
242
|
+
throw new Error('ExpectedArrayOfAssetsInRpcMintingBatch');
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
if (!isBuffer(batch.batch_key) || !batch.batch_key.length) {
|
|
246
|
+
throw new Error('ExpectedBatchKeyInRpcMintingBatch');
|
|
247
|
+
}
|
|
248
|
+
|
|
249
|
+
if (!isBuffer(batch.batch_psbt)) {
|
|
250
|
+
throw new Error('ExpectedBatchPsbtInRpcMintingBatch');
|
|
251
|
+
}
|
|
252
|
+
|
|
253
|
+
if (!isNumeric(batch.created_at)) {
|
|
254
|
+
throw new Error('ExpectedCreatedAtInRpcMintingBatch');
|
|
255
|
+
}
|
|
256
|
+
|
|
257
|
+
if (!states[batch.state]) {
|
|
258
|
+
throw new Error('ExpectedKnownStateInRpcMintingBatch');
|
|
259
|
+
}
|
|
260
|
+
|
|
261
|
+
if (!!unsealed_assets && !isArray(unsealed_assets)) {
|
|
262
|
+
throw new Error('ExpectedArrayOfUnsealedAssetsInRpcVerboseBatch');
|
|
263
|
+
}
|
|
264
|
+
|
|
265
|
+
return {
|
|
266
|
+
assets: batch.assets.map(pendingAsset),
|
|
267
|
+
created_at: dateFrom(batch.created_at),
|
|
268
|
+
created_height: batch.height_hint,
|
|
269
|
+
id: batch.batch_key.toString('hex'),
|
|
270
|
+
psbt: hexOf(batch.batch_psbt),
|
|
271
|
+
state: states[batch.state],
|
|
272
|
+
transaction_id: batch.batch_txid || undefined,
|
|
273
|
+
unsealed_assets: (unsealed_assets || []).map(unsealed => ({
|
|
274
|
+
...pendingAsset(unsealed.asset),
|
|
275
|
+
group_virtual_psbt: !unsealed.group_virtual_psbt
|
|
276
|
+
? undefined
|
|
277
|
+
: base64AsHex(unsealed.group_virtual_psbt),
|
|
278
|
+
group_virtual_transaction: hexOf(unsealed.group_virtual_tx?.transaction),
|
|
279
|
+
})),
|
|
280
|
+
};
|
|
281
|
+
};
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
import fixedPointAsDecimal from './fixed_point_as_decimal.js';
|
|
2
|
+
import type {RpcFixedPoint} from './fixed_point_as_decimal.js';
|
|
3
|
+
import shortChannelIdAsChannel from './short_channel_id_as_channel.js';
|
|
4
|
+
|
|
5
|
+
const dateFrom = (n: string) => new Date(Number(n) * 1e3).toISOString();
|
|
6
|
+
const hexOf = (n?: Buffer | null) =>
|
|
7
|
+
!n?.length ? undefined : n.toString('hex');
|
|
8
|
+
const isBuffer = (n: unknown): n is Buffer => Buffer.isBuffer(n);
|
|
9
|
+
const isNumeric = (n: unknown) => typeof n === 'string' && /^\d+$/.test(n);
|
|
10
|
+
const isPublicKey = (n: unknown) => /^0[23][0-9a-f]{64}$/i.test(String(n));
|
|
11
|
+
const zero = '0';
|
|
12
|
+
|
|
13
|
+
export type RpcAssetSpec = {
|
|
14
|
+
group_pub_key: Buffer;
|
|
15
|
+
id: Buffer;
|
|
16
|
+
} | null;
|
|
17
|
+
|
|
18
|
+
export type RpcBuyQuote = {
|
|
19
|
+
accepted_max_amount: string;
|
|
20
|
+
ask_asset_rate: RpcFixedPoint | null;
|
|
21
|
+
asset_max_amount: string;
|
|
22
|
+
asset_spec: RpcAssetSpec;
|
|
23
|
+
expiry: string;
|
|
24
|
+
id: Buffer;
|
|
25
|
+
min_transportable_units: string;
|
|
26
|
+
peer: string;
|
|
27
|
+
price_oracle_metadata: string;
|
|
28
|
+
scid: string;
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
export type BuyQuote = {
|
|
32
|
+
/** Accepted Maximum Asset Units Numeric String */
|
|
33
|
+
accepted_max_amount?: string;
|
|
34
|
+
/** Asset Id Hex */
|
|
35
|
+
asset_id?: string;
|
|
36
|
+
/** Channel To Pay Over Standard Format Channel Id */
|
|
37
|
+
channel: string;
|
|
38
|
+
/** Quote Expires At ISO 8601 Date */
|
|
39
|
+
expires_at: string;
|
|
40
|
+
/** Asset Group BIP340 Public Key Hex */
|
|
41
|
+
group_key?: string;
|
|
42
|
+
/** Quote Request Id Hex */
|
|
43
|
+
id: string;
|
|
44
|
+
/** Maximum Asset Units Numeric String */
|
|
45
|
+
max_amount: string;
|
|
46
|
+
/** Minimum Asset Units In One HTLC Numeric String */
|
|
47
|
+
min_transportable_amount: string;
|
|
48
|
+
/** Peer Public Key Hex */
|
|
49
|
+
peer_public_key: string;
|
|
50
|
+
/** Price Oracle Metadata */
|
|
51
|
+
price_oracle_metadata?: string;
|
|
52
|
+
/** Ask Rate Asset Units Per BTC Exact Decimal String */
|
|
53
|
+
rate: string;
|
|
54
|
+
};
|
|
55
|
+
|
|
56
|
+
/** Buy quote from an RPC peer accepted buy quote
|
|
57
|
+
|
|
58
|
+
{
|
|
59
|
+
accepted_max_amount: <Accepted Maximum Asset Units Numeric String>
|
|
60
|
+
ask_asset_rate: {
|
|
61
|
+
coefficient: <Scaled Integer Numeric String>
|
|
62
|
+
scale: <Decimal Places Number>
|
|
63
|
+
}
|
|
64
|
+
asset_max_amount: <Maximum Asset Units Numeric String>
|
|
65
|
+
[asset_spec]: {
|
|
66
|
+
group_pub_key: <Asset Group BIP340 Public Key Buffer Object>
|
|
67
|
+
id: <Asset Id Buffer Object>
|
|
68
|
+
}
|
|
69
|
+
expiry: <Expires At Unix Seconds Numeric String>
|
|
70
|
+
id: <Quote Request Id Buffer Object>
|
|
71
|
+
min_transportable_units: <Minimum Asset Units In One HTLC Numeric String>
|
|
72
|
+
peer: <Peer Public Key Hex String>
|
|
73
|
+
price_oracle_metadata: <Price Oracle Metadata String>
|
|
74
|
+
scid: <Short Channel Id Numeric String>
|
|
75
|
+
}
|
|
76
|
+
|
|
77
|
+
@throws
|
|
78
|
+
<Error>
|
|
79
|
+
|
|
80
|
+
@returns
|
|
81
|
+
{
|
|
82
|
+
[accepted_max_amount]: <Accepted Maximum Asset Units Numeric String>
|
|
83
|
+
[asset_id]: <Asset Id Hex String>
|
|
84
|
+
channel: <Channel To Pay Over Standard Format Channel Id String>
|
|
85
|
+
expires_at: <Quote Expires At ISO 8601 Date String>
|
|
86
|
+
[group_key]: <Asset Group BIP340 Public Key Hex String>
|
|
87
|
+
id: <Quote Request Id Hex String>
|
|
88
|
+
max_amount: <Maximum Asset Units Numeric String>
|
|
89
|
+
min_transportable_amount: <Minimum Asset Units In One HTLC Numeric String>
|
|
90
|
+
peer_public_key: <Peer Public Key Hex String>
|
|
91
|
+
[price_oracle_metadata]: <Price Oracle Metadata String>
|
|
92
|
+
rate: <Ask Rate Asset Units Per BTC Exact Decimal String>
|
|
93
|
+
}
|
|
94
|
+
*/
|
|
95
|
+
export default (quote?: RpcBuyQuote | null): BuyQuote => {
|
|
96
|
+
if (!quote) {
|
|
97
|
+
throw new Error('ExpectedRpcPeerAcceptedBuyQuote');
|
|
98
|
+
}
|
|
99
|
+
|
|
100
|
+
if (!isNumeric(quote.asset_max_amount)) {
|
|
101
|
+
throw new Error('ExpectedMaxAmountInRpcBuyQuote');
|
|
102
|
+
}
|
|
103
|
+
|
|
104
|
+
if (!isNumeric(quote.expiry)) {
|
|
105
|
+
throw new Error('ExpectedExpiryInRpcBuyQuote');
|
|
106
|
+
}
|
|
107
|
+
|
|
108
|
+
if (!isBuffer(quote.id) || !quote.id.length) {
|
|
109
|
+
throw new Error('ExpectedQuoteIdInRpcBuyQuote');
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
if (!isNumeric(quote.min_transportable_units)) {
|
|
113
|
+
throw new Error('ExpectedMinTransportableUnitsInRpcBuyQuote');
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
if (!isPublicKey(quote.peer)) {
|
|
117
|
+
throw new Error('ExpectedPeerPublicKeyInRpcBuyQuote');
|
|
118
|
+
}
|
|
119
|
+
|
|
120
|
+
if (!quote.ask_asset_rate) {
|
|
121
|
+
throw new Error('ExpectedAskAssetRateInRpcBuyQuote');
|
|
122
|
+
}
|
|
123
|
+
|
|
124
|
+
const accepted = quote.accepted_max_amount;
|
|
125
|
+
|
|
126
|
+
return {
|
|
127
|
+
accepted_max_amount: !!accepted && accepted !== zero ? accepted : undefined,
|
|
128
|
+
asset_id: hexOf(quote.asset_spec?.id),
|
|
129
|
+
channel: shortChannelIdAsChannel(quote.scid),
|
|
130
|
+
expires_at: dateFrom(quote.expiry),
|
|
131
|
+
group_key: hexOf(quote.asset_spec?.group_pub_key),
|
|
132
|
+
id: quote.id.toString('hex'),
|
|
133
|
+
max_amount: quote.asset_max_amount,
|
|
134
|
+
min_transportable_amount: quote.min_transportable_units,
|
|
135
|
+
peer_public_key: quote.peer,
|
|
136
|
+
price_oracle_metadata: quote.price_oracle_metadata || undefined,
|
|
137
|
+
rate: fixedPointAsDecimal(quote.ask_asset_rate),
|
|
138
|
+
};
|
|
139
|
+
};
|
|
@@ -0,0 +1,229 @@
|
|
|
1
|
+
import outpointAsTransaction from './outpoint_as_transaction.js';
|
|
2
|
+
import rpcAssetAsAsset from './rpc_asset_as_asset.js';
|
|
3
|
+
import type {Asset} from './rpc_asset_as_asset.js';
|
|
4
|
+
import type {RpcAsset} from './rpc_asset_as_asset.js';
|
|
5
|
+
|
|
6
|
+
const hexOf = (n?: Buffer | null) =>
|
|
7
|
+
!n?.length ? undefined : n.toString('hex');
|
|
8
|
+
const {isArray} = Array;
|
|
9
|
+
const isBuffer = (n: unknown): n is Buffer => Buffer.isBuffer(n);
|
|
10
|
+
const metaTypes: Record<string, string> = {
|
|
11
|
+
META_TYPE_JSON: 'json',
|
|
12
|
+
META_TYPE_OPAQUE: 'opaque',
|
|
13
|
+
};
|
|
14
|
+
|
|
15
|
+
export type RpcDecodedProof = {
|
|
16
|
+
alt_leaves: Buffer;
|
|
17
|
+
asset: RpcAsset | null;
|
|
18
|
+
challenge_witness: Buffer[];
|
|
19
|
+
exclusion_proofs: Buffer[];
|
|
20
|
+
genesis_reveal: {
|
|
21
|
+
genesis_base_reveal: {
|
|
22
|
+
asset_id: Buffer;
|
|
23
|
+
asset_type: string;
|
|
24
|
+
genesis_point: string;
|
|
25
|
+
meta_hash: Buffer;
|
|
26
|
+
name: string;
|
|
27
|
+
output_index: number;
|
|
28
|
+
} | null;
|
|
29
|
+
} | null;
|
|
30
|
+
group_key_reveal: {raw_group_key: Buffer; tapscript_root: Buffer} | null;
|
|
31
|
+
inclusion_proof: Buffer;
|
|
32
|
+
is_burn: boolean;
|
|
33
|
+
meta_reveal: {data: Buffer; meta_hash: Buffer; type: string} | null;
|
|
34
|
+
num_additional_inputs: number;
|
|
35
|
+
number_of_proofs: number;
|
|
36
|
+
proof_at_depth: number;
|
|
37
|
+
split_root_proof: Buffer;
|
|
38
|
+
tx_merkle_proof: Buffer;
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
export type Proof = {
|
|
42
|
+
/** Additional Inputs Count */
|
|
43
|
+
additional_inputs_count: number;
|
|
44
|
+
/** Alternative Leaves Hex */
|
|
45
|
+
alt_leaves?: string;
|
|
46
|
+
asset: Asset;
|
|
47
|
+
/** Challenge Witness Elements Hex */
|
|
48
|
+
challenge_witness: string[];
|
|
49
|
+
/** Proof Depth From the Last Proof In the File */
|
|
50
|
+
depth: number;
|
|
51
|
+
/** Exclusion Proofs Hex */
|
|
52
|
+
exclusion_proofs: string[];
|
|
53
|
+
genesis?: {
|
|
54
|
+
/** Asset Id Hex */
|
|
55
|
+
asset_id: string;
|
|
56
|
+
/** Asset Is Collectible */
|
|
57
|
+
is_collectible: boolean;
|
|
58
|
+
/** Asset Metadata Hash Hex */
|
|
59
|
+
meta_hash: string;
|
|
60
|
+
/** Asset Name */
|
|
61
|
+
name: string;
|
|
62
|
+
/** Genesis Commitment Output Index */
|
|
63
|
+
output_index: number;
|
|
64
|
+
/** Genesis Point Transaction Id Hex */
|
|
65
|
+
transaction_id: string;
|
|
66
|
+
/** Genesis Point Transaction Output Index */
|
|
67
|
+
transaction_vout: number;
|
|
68
|
+
};
|
|
69
|
+
group_key?: {
|
|
70
|
+
/** Raw Group Key Hex */
|
|
71
|
+
raw_key: string;
|
|
72
|
+
/** Group Tapscript Root Hex */
|
|
73
|
+
tapscript_root?: string;
|
|
74
|
+
};
|
|
75
|
+
/** Inclusion Proof Hex */
|
|
76
|
+
inclusion_proof: string;
|
|
77
|
+
/** Proof Is For a Burn */
|
|
78
|
+
is_burn: boolean;
|
|
79
|
+
meta?: {
|
|
80
|
+
/** Metadata Hex */
|
|
81
|
+
data: string;
|
|
82
|
+
/** Metadata Hash Hex */
|
|
83
|
+
hash: string;
|
|
84
|
+
/** Metadata Type */
|
|
85
|
+
type: string;
|
|
86
|
+
};
|
|
87
|
+
/** Proofs In the File Count */
|
|
88
|
+
proofs_count: number;
|
|
89
|
+
/** Split Root Proof Hex */
|
|
90
|
+
split_root_proof?: string;
|
|
91
|
+
/** Transaction Merkle Proof Hex */
|
|
92
|
+
transaction_merkle_proof: string;
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
/** Proof from an RPC decoded proof
|
|
96
|
+
|
|
97
|
+
{
|
|
98
|
+
alt_leaves: <Alternative Leaves Buffer Object>
|
|
99
|
+
asset: <RPC Asset Object>
|
|
100
|
+
challenge_witness: [<Challenge Witness Element Buffer Object>]
|
|
101
|
+
exclusion_proofs: [<Exclusion Proof Buffer Object>]
|
|
102
|
+
[genesis_reveal]: {
|
|
103
|
+
[genesis_base_reveal]: {
|
|
104
|
+
asset_id: <Asset Id Buffer Object>
|
|
105
|
+
asset_type: <Asset Type String>
|
|
106
|
+
genesis_point: <Genesis Outpoint String>
|
|
107
|
+
meta_hash: <Metadata Hash Buffer Object>
|
|
108
|
+
name: <Asset Name String>
|
|
109
|
+
output_index: <Genesis Commitment Output Index Number>
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
[group_key_reveal]: {
|
|
113
|
+
raw_group_key: <Raw Group Key Buffer Object>
|
|
114
|
+
tapscript_root: <Group Tapscript Root Buffer Object>
|
|
115
|
+
}
|
|
116
|
+
inclusion_proof: <Inclusion Proof Buffer Object>
|
|
117
|
+
is_burn: <Proof Is For a Burn Bool>
|
|
118
|
+
[meta_reveal]: {
|
|
119
|
+
data: <Metadata Buffer Object>
|
|
120
|
+
meta_hash: <Metadata Hash Buffer Object>
|
|
121
|
+
type: <Metadata Type String>
|
|
122
|
+
}
|
|
123
|
+
num_additional_inputs: <Additional Inputs Count Number>
|
|
124
|
+
number_of_proofs: <Proofs In the File Count Number>
|
|
125
|
+
proof_at_depth: <Proof Depth Number>
|
|
126
|
+
split_root_proof: <Split Root Proof Buffer Object>
|
|
127
|
+
tx_merkle_proof: <Transaction Merkle Proof Buffer Object>
|
|
128
|
+
}
|
|
129
|
+
|
|
130
|
+
@throws
|
|
131
|
+
<Error>
|
|
132
|
+
|
|
133
|
+
@returns
|
|
134
|
+
{
|
|
135
|
+
additional_inputs_count: <Additional Inputs Count Number>
|
|
136
|
+
[alt_leaves]: <Alternative Leaves Hex String>
|
|
137
|
+
asset: <Asset Object>
|
|
138
|
+
challenge_witness: [<Challenge Witness Element Hex String>]
|
|
139
|
+
depth: <Proof Depth From the Last Proof In the File Number>
|
|
140
|
+
exclusion_proofs: [<Exclusion Proof Hex String>]
|
|
141
|
+
[genesis]: {
|
|
142
|
+
asset_id: <Asset Id Hex String>
|
|
143
|
+
is_collectible: <Asset Is Collectible Bool>
|
|
144
|
+
meta_hash: <Asset Metadata Hash Hex String>
|
|
145
|
+
name: <Asset Name String>
|
|
146
|
+
output_index: <Genesis Commitment Output Index Number>
|
|
147
|
+
transaction_id: <Genesis Point Transaction Id Hex String>
|
|
148
|
+
transaction_vout: <Genesis Point Transaction Output Index Number>
|
|
149
|
+
}
|
|
150
|
+
[group_key]: {
|
|
151
|
+
raw_key: <Raw Group Key Hex String>
|
|
152
|
+
[tapscript_root]: <Group Tapscript Root Hex String>
|
|
153
|
+
}
|
|
154
|
+
inclusion_proof: <Inclusion Proof Hex String>
|
|
155
|
+
is_burn: <Proof Is For a Burn Bool>
|
|
156
|
+
[meta]: {
|
|
157
|
+
data: <Metadata Hex String>
|
|
158
|
+
hash: <Metadata Hash Hex String>
|
|
159
|
+
type: <Metadata Type String> // json, opaque, unknown
|
|
160
|
+
}
|
|
161
|
+
proofs_count: <Proofs In the File Count Number>
|
|
162
|
+
[split_root_proof]: <Split Root Proof Hex String>
|
|
163
|
+
transaction_merkle_proof: <Transaction Merkle Proof Hex String>
|
|
164
|
+
}
|
|
165
|
+
*/
|
|
166
|
+
export default (proof?: RpcDecodedProof | null): Proof => {
|
|
167
|
+
if (!proof) {
|
|
168
|
+
throw new Error('ExpectedRpcDecodedProofDetails');
|
|
169
|
+
}
|
|
170
|
+
|
|
171
|
+
if (!isArray(proof.challenge_witness)) {
|
|
172
|
+
throw new Error('ExpectedChallengeWitnessInRpcDecodedProof');
|
|
173
|
+
}
|
|
174
|
+
|
|
175
|
+
if (!isArray(proof.exclusion_proofs)) {
|
|
176
|
+
throw new Error('ExpectedExclusionProofsInRpcDecodedProof');
|
|
177
|
+
}
|
|
178
|
+
|
|
179
|
+
if (!isBuffer(proof.inclusion_proof)) {
|
|
180
|
+
throw new Error('ExpectedInclusionProofInRpcDecodedProof');
|
|
181
|
+
}
|
|
182
|
+
|
|
183
|
+
if (!isBuffer(proof.tx_merkle_proof)) {
|
|
184
|
+
throw new Error('ExpectedTransactionMerkleProofInRpcDecodedProof');
|
|
185
|
+
}
|
|
186
|
+
|
|
187
|
+
const genesis = proof.genesis_reveal?.genesis_base_reveal;
|
|
188
|
+
const group = proof.group_key_reveal;
|
|
189
|
+
const meta = proof.meta_reveal;
|
|
190
|
+
|
|
191
|
+
const hasGenesis = !!genesis?.asset_id?.length;
|
|
192
|
+
|
|
193
|
+
return {
|
|
194
|
+
additional_inputs_count: proof.num_additional_inputs,
|
|
195
|
+
alt_leaves: hexOf(proof.alt_leaves),
|
|
196
|
+
asset: rpcAssetAsAsset(proof.asset),
|
|
197
|
+
challenge_witness: proof.challenge_witness.map(n => n.toString('hex')),
|
|
198
|
+
depth: proof.proof_at_depth,
|
|
199
|
+
exclusion_proofs: proof.exclusion_proofs.map(n => n.toString('hex')),
|
|
200
|
+
genesis: !hasGenesis
|
|
201
|
+
? undefined
|
|
202
|
+
: {
|
|
203
|
+
asset_id: genesis.asset_id.toString('hex'),
|
|
204
|
+
is_collectible: genesis.asset_type === 'COLLECTIBLE',
|
|
205
|
+
meta_hash: genesis.meta_hash.toString('hex'),
|
|
206
|
+
name: genesis.name,
|
|
207
|
+
output_index: genesis.output_index,
|
|
208
|
+
...outpointAsTransaction(genesis.genesis_point),
|
|
209
|
+
},
|
|
210
|
+
group_key: !group?.raw_group_key?.length
|
|
211
|
+
? undefined
|
|
212
|
+
: {
|
|
213
|
+
raw_key: group.raw_group_key.toString('hex'),
|
|
214
|
+
tapscript_root: hexOf(group.tapscript_root),
|
|
215
|
+
},
|
|
216
|
+
inclusion_proof: proof.inclusion_proof.toString('hex'),
|
|
217
|
+
is_burn: proof.is_burn,
|
|
218
|
+
meta: !meta?.meta_hash?.length
|
|
219
|
+
? undefined
|
|
220
|
+
: {
|
|
221
|
+
data: meta.data.toString('hex'),
|
|
222
|
+
hash: meta.meta_hash.toString('hex'),
|
|
223
|
+
type: metaTypes[meta.type] || 'unknown',
|
|
224
|
+
},
|
|
225
|
+
proofs_count: proof.number_of_proofs,
|
|
226
|
+
split_root_proof: hexOf(proof.split_root_proof),
|
|
227
|
+
transaction_merkle_proof: proof.tx_merkle_proof.toString('hex'),
|
|
228
|
+
};
|
|
229
|
+
};
|