@bitgo-beta/abstract-utxo 1.6.1-alpha.44 → 1.6.1-alpha.441
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/README.md +76 -0
- package/dist/cjs/src/abstractUtxoCoin.d.ts +435 -0
- package/dist/cjs/src/abstractUtxoCoin.d.ts.map +1 -0
- package/dist/cjs/src/abstractUtxoCoin.js +657 -0
- package/dist/cjs/src/address/fixedScript.d.ts +49 -0
- package/dist/cjs/src/address/fixedScript.d.ts.map +1 -0
- package/dist/cjs/src/address/fixedScript.js +155 -0
- package/dist/cjs/src/address/index.d.ts +2 -0
- package/dist/cjs/src/address/index.d.ts.map +1 -0
- package/dist/cjs/src/address/index.js +8 -0
- package/dist/cjs/src/config.d.ts.map +1 -0
- package/dist/cjs/src/config.js +14 -0
- package/dist/cjs/src/descriptor/NamedDescriptor.d.ts +20 -0
- package/dist/cjs/src/descriptor/NamedDescriptor.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/NamedDescriptor.js +79 -0
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/assertDescriptorWalletAddress.js +66 -0
- package/dist/cjs/src/descriptor/builder/builder.d.ts +13 -0
- package/dist/cjs/src/descriptor/builder/builder.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/builder/builder.js +37 -0
- package/dist/cjs/src/descriptor/builder/index.d.ts +3 -0
- package/dist/cjs/src/descriptor/builder/index.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/builder/index.js +8 -0
- package/dist/cjs/src/descriptor/builder/parse.d.ts +5 -0
- package/dist/cjs/src/descriptor/builder/parse.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/builder/parse.js +116 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptorWallet.js +41 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts +12 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/createWallet/createDescriptors.js +33 -0
- package/dist/cjs/src/descriptor/createWallet/index.d.ts +3 -0
- package/dist/cjs/src/descriptor/createWallet/index.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/createWallet/index.js +19 -0
- package/dist/cjs/src/descriptor/descriptorWallet.d.ts +19 -0
- package/dist/cjs/src/descriptor/descriptorWallet.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/descriptorWallet.js +54 -0
- package/dist/cjs/src/descriptor/index.d.ts +8 -0
- package/dist/cjs/src/descriptor/index.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/index.js +53 -0
- package/dist/cjs/src/descriptor/validatePolicy.d.ts +22 -0
- package/dist/cjs/src/descriptor/validatePolicy.d.ts.map +1 -0
- package/dist/cjs/src/descriptor/validatePolicy.js +92 -0
- package/dist/cjs/src/impl/bch/bch.d.ts +20 -0
- package/dist/cjs/src/impl/bch/bch.d.ts.map +1 -0
- package/dist/cjs/src/impl/bch/bch.js +74 -0
- package/dist/cjs/src/impl/bch/index.d.ts +3 -0
- package/dist/cjs/src/impl/bch/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/bch/index.js +19 -0
- package/dist/cjs/src/impl/bch/tbch.d.ts +10 -0
- package/dist/cjs/src/impl/bch/tbch.d.ts.map +1 -0
- package/dist/cjs/src/impl/bch/tbch.js +48 -0
- package/dist/cjs/src/impl/bcha/bcha.d.ts +8 -0
- package/dist/cjs/src/impl/bcha/bcha.d.ts.map +1 -0
- package/dist/cjs/src/impl/bcha/bcha.js +48 -0
- package/dist/cjs/src/impl/bcha/index.d.ts +3 -0
- package/dist/cjs/src/impl/bcha/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/bcha/index.js +19 -0
- package/dist/cjs/src/impl/bcha/tbcha.d.ts +10 -0
- package/dist/cjs/src/impl/bcha/tbcha.d.ts.map +1 -0
- package/dist/cjs/src/impl/bcha/tbcha.js +48 -0
- package/dist/cjs/src/impl/bsv/bsv.d.ts +8 -0
- package/dist/cjs/src/impl/bsv/bsv.d.ts.map +1 -0
- package/dist/cjs/src/impl/bsv/bsv.js +48 -0
- package/dist/cjs/src/impl/bsv/index.d.ts +3 -0
- package/dist/cjs/src/impl/bsv/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/bsv/index.js +19 -0
- package/dist/cjs/src/impl/bsv/tbsv.d.ts +10 -0
- package/dist/cjs/src/impl/bsv/tbsv.d.ts.map +1 -0
- package/dist/cjs/src/impl/bsv/tbsv.js +48 -0
- package/dist/cjs/src/impl/btc/btc.d.ts +13 -0
- package/dist/cjs/src/impl/btc/btc.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/btc.js +55 -0
- package/dist/cjs/src/impl/btc/index.d.ts +7 -0
- package/dist/cjs/src/impl/btc/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/index.js +23 -0
- package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts +51 -0
- package/dist/cjs/src/impl/btc/inscriptionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/inscriptionBuilder.js +183 -0
- package/dist/cjs/src/impl/btc/tbtc.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtc.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtc.js +48 -0
- package/dist/cjs/src/impl/btc/tbtc4.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtc4.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtc4.js +48 -0
- package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtcbgsig.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcbgsig.js +48 -0
- package/dist/cjs/src/impl/btc/tbtcsig.d.ts +10 -0
- package/dist/cjs/src/impl/btc/tbtcsig.d.ts.map +1 -0
- package/dist/cjs/src/impl/btc/tbtcsig.js +48 -0
- package/dist/cjs/src/impl/btg/btg.d.ts +7 -0
- package/dist/cjs/src/impl/btg/btg.d.ts.map +1 -0
- package/dist/cjs/src/impl/btg/btg.js +48 -0
- package/dist/cjs/src/impl/btg/index.d.ts +2 -0
- package/dist/cjs/src/impl/btg/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/btg/index.js +18 -0
- package/dist/cjs/src/impl/dash/dash.d.ts +7 -0
- package/dist/cjs/src/impl/dash/dash.d.ts.map +1 -0
- package/dist/cjs/src/impl/dash/dash.js +48 -0
- package/dist/cjs/src/impl/dash/index.d.ts +3 -0
- package/dist/cjs/src/impl/dash/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/dash/index.js +19 -0
- package/dist/cjs/src/impl/dash/tdash.d.ts +10 -0
- package/dist/cjs/src/impl/dash/tdash.d.ts.map +1 -0
- package/dist/cjs/src/impl/dash/tdash.js +48 -0
- package/dist/cjs/src/impl/doge/doge.d.ts +32 -0
- package/dist/cjs/src/impl/doge/doge.d.ts.map +1 -0
- package/dist/cjs/src/impl/doge/doge.js +79 -0
- package/dist/cjs/src/impl/doge/index.d.ts +3 -0
- package/dist/cjs/src/impl/doge/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/doge/index.js +19 -0
- package/dist/cjs/src/impl/doge/tdoge.d.ts +10 -0
- package/dist/cjs/src/impl/doge/tdoge.d.ts.map +1 -0
- package/dist/cjs/src/impl/doge/tdoge.js +48 -0
- package/dist/cjs/src/impl/index.d.ts +10 -0
- package/dist/cjs/src/impl/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/index.js +46 -0
- package/dist/cjs/src/impl/ltc/index.d.ts +3 -0
- package/dist/cjs/src/impl/ltc/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/ltc/index.js +19 -0
- package/dist/cjs/src/impl/ltc/ltc.d.ts +7 -0
- package/dist/cjs/src/impl/ltc/ltc.d.ts.map +1 -0
- package/dist/cjs/src/impl/ltc/ltc.js +52 -0
- package/dist/cjs/src/impl/ltc/tltc.d.ts +7 -0
- package/dist/cjs/src/impl/ltc/tltc.d.ts.map +1 -0
- package/dist/cjs/src/impl/ltc/tltc.js +51 -0
- package/dist/cjs/src/impl/zec/index.d.ts +3 -0
- package/dist/cjs/src/impl/zec/index.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/index.js +19 -0
- package/dist/cjs/src/impl/zec/tzec.d.ts +7 -0
- package/dist/cjs/src/impl/zec/tzec.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/tzec.js +48 -0
- package/dist/cjs/src/impl/zec/zec.d.ts +10 -0
- package/dist/cjs/src/impl/zec/zec.d.ts.map +1 -0
- package/dist/cjs/src/impl/zec/zec.js +48 -0
- package/dist/cjs/src/index.d.ts +21 -0
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/cjs/src/index.js +60 -0
- package/dist/cjs/src/keychains.d.ts +52 -0
- package/dist/cjs/src/keychains.d.ts.map +1 -0
- package/dist/cjs/src/keychains.js +136 -0
- package/dist/cjs/src/names.d.ts +26 -0
- package/dist/cjs/src/names.d.ts.map +1 -0
- package/dist/cjs/src/names.js +214 -0
- package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts +8 -0
- package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/OfflineVaultHalfSigned.js +26 -0
- package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts +46 -0
- package/dist/cjs/src/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/OfflineVaultSignable.js +55 -0
- package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts +15 -0
- package/dist/cjs/src/offlineVault/TransactionExplanation.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/TransactionExplanation.js +16 -0
- package/dist/cjs/src/offlineVault/descriptor/index.d.ts +2 -0
- package/dist/cjs/src/offlineVault/descriptor/index.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/descriptor/index.js +18 -0
- package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts +38 -0
- package/dist/cjs/src/offlineVault/descriptor/transaction.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/descriptor/transaction.js +80 -0
- package/dist/cjs/src/offlineVault/index.d.ts +6 -0
- package/dist/cjs/src/offlineVault/index.d.ts.map +1 -0
- package/dist/cjs/src/offlineVault/index.js +44 -0
- package/dist/{src → cjs/src}/recovery/RecoveryProvider.d.ts +1 -1
- package/dist/cjs/src/recovery/RecoveryProvider.d.ts.map +1 -0
- package/dist/cjs/src/recovery/RecoveryProvider.js +22 -0
- package/dist/cjs/src/recovery/backupKeyRecovery.d.ts +89 -0
- package/dist/cjs/src/recovery/backupKeyRecovery.d.ts.map +1 -0
- package/dist/cjs/src/recovery/backupKeyRecovery.js +359 -0
- package/dist/{src → cjs/src}/recovery/baseApi.d.ts +3 -6
- package/dist/cjs/src/recovery/baseApi.d.ts.map +1 -0
- package/dist/cjs/src/recovery/baseApi.js +73 -0
- package/dist/{src → cjs/src}/recovery/coingeckoApi.d.ts +0 -3
- package/dist/cjs/src/recovery/coingeckoApi.d.ts.map +1 -0
- package/dist/cjs/src/recovery/coingeckoApi.js +44 -0
- package/dist/{src → cjs/src}/recovery/crossChainRecovery.d.ts +18 -7
- package/dist/cjs/src/recovery/crossChainRecovery.d.ts.map +1 -0
- package/dist/cjs/src/recovery/crossChainRecovery.js +343 -0
- package/dist/{src → cjs/src}/recovery/index.d.ts +0 -1
- package/dist/cjs/src/recovery/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/recovery/index.js +6 -3
- package/dist/cjs/src/recovery/mempoolApi.d.ts.map +1 -0
- package/dist/cjs/src/recovery/mempoolApi.js +36 -0
- package/dist/cjs/src/recovery/psbt.d.ts +30 -0
- package/dist/cjs/src/recovery/psbt.d.ts.map +1 -0
- package/dist/cjs/src/recovery/psbt.js +204 -0
- package/dist/cjs/src/transaction/bip322.d.ts +27 -0
- package/dist/cjs/src/transaction/bip322.d.ts.map +1 -0
- package/dist/cjs/src/transaction/bip322.js +125 -0
- package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts +2 -0
- package/dist/cjs/src/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
- package/dist/cjs/src/transaction/common/verifyPayGoAmount.js +3 -0
- package/dist/cjs/src/transaction/decode.d.ts +11 -0
- package/dist/cjs/src/transaction/decode.d.ts.map +1 -0
- package/dist/cjs/src/transaction/decode.js +81 -0
- package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts +5 -0
- package/dist/cjs/src/transaction/descriptor/explainPsbt.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/explainPsbt.js +80 -0
- package/dist/cjs/src/transaction/descriptor/index.d.ts +7 -0
- package/dist/cjs/src/transaction/descriptor/index.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/index.js +14 -0
- package/dist/cjs/src/transaction/descriptor/parse.d.ts +16 -0
- package/dist/cjs/src/transaction/descriptor/parse.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/parse.js +116 -0
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts +14 -0
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/parseToAmountType.js +60 -0
- package/dist/cjs/src/transaction/descriptor/recipient.d.ts +5 -0
- package/dist/cjs/src/transaction/descriptor/recipient.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/recipient.js +3 -0
- package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts +25 -0
- package/dist/cjs/src/transaction/descriptor/signPsbt.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/signPsbt.js +43 -0
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts +36 -0
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/descriptor/verifyTransaction.js +109 -0
- package/dist/cjs/src/transaction/explainTransaction.d.ts +18 -0
- package/dist/cjs/src/transaction/explainTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/explainTransaction.js +88 -0
- package/dist/cjs/src/transaction/fetchInputs.d.ts +26 -0
- package/dist/cjs/src/transaction/fetchInputs.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fetchInputs.js +109 -0
- package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts +24 -0
- package/dist/cjs/src/transaction/fixedScript/SigningError.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/SigningError.js +26 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts +11 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/explainPsbtWasm.js +67 -0
- package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts +73 -0
- package/dist/cjs/src/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/explainTransaction.js +344 -0
- package/dist/cjs/src/transaction/fixedScript/index.d.ts +10 -0
- package/dist/cjs/src/transaction/fixedScript/index.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/index.js +32 -0
- package/dist/cjs/src/transaction/fixedScript/musig2.d.ts +4 -0
- package/dist/cjs/src/transaction/fixedScript/musig2.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/musig2.js +3 -0
- package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts +28 -0
- package/dist/cjs/src/transaction/fixedScript/parseOutput.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/parseOutput.js +220 -0
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts +8 -0
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/parseTransaction.js +215 -0
- package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts +7 -0
- package/dist/cjs/src/transaction/fixedScript/replayProtection.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/replayProtection.js +78 -0
- package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.d.ts +30 -0
- package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/signLegacyTransaction.js +152 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbt.d.ts +30 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbt.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbt.js +174 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts +22 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/signPsbtWasm.js +129 -0
- package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts +17 -0
- package/dist/cjs/src/transaction/fixedScript/signTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/signTransaction.js +50 -0
- package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts +21 -0
- package/dist/cjs/src/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/fixedScript/verifyTransaction.js +199 -0
- package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts +9 -0
- package/dist/cjs/src/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
- package/dist/cjs/src/transaction/getPayGoVerificationPubkey.js +53 -0
- package/dist/cjs/src/transaction/index.d.ts +8 -0
- package/dist/cjs/src/transaction/index.d.ts.map +1 -0
- package/dist/cjs/src/transaction/index.js +50 -0
- package/dist/cjs/src/transaction/outputDifference.d.ts +40 -0
- package/dist/cjs/src/transaction/outputDifference.d.ts.map +1 -0
- package/dist/cjs/src/transaction/outputDifference.js +47 -0
- package/dist/cjs/src/transaction/parseTransaction.d.ts +4 -0
- package/dist/cjs/src/transaction/parseTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/parseTransaction.js +48 -0
- package/dist/cjs/src/transaction/recipient.d.ts +29 -0
- package/dist/cjs/src/transaction/recipient.d.ts.map +1 -0
- package/dist/cjs/src/transaction/recipient.js +88 -0
- package/dist/cjs/src/transaction/signTransaction.d.ts +6 -0
- package/dist/cjs/src/transaction/signTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/signTransaction.js +105 -0
- package/dist/cjs/src/transaction/types.d.ts +49 -0
- package/dist/cjs/src/transaction/types.d.ts.map +1 -0
- package/dist/cjs/src/transaction/types.js +7 -0
- package/dist/cjs/src/transaction/verifyTransaction.d.ts +4 -0
- package/dist/cjs/src/transaction/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/src/transaction/verifyTransaction.js +50 -0
- package/dist/cjs/src/verifyKey.d.ts +29 -0
- package/dist/cjs/src/verifyKey.d.ts.map +1 -0
- package/dist/cjs/src/verifyKey.js +164 -0
- package/dist/cjs/src/wallet.d.ts +15 -0
- package/dist/cjs/src/wallet.d.ts.map +1 -0
- package/dist/cjs/src/wallet.js +8 -0
- package/dist/cjs/test/integration/impl/bch/bch.d.ts +2 -0
- package/dist/cjs/test/integration/impl/bch/bch.d.ts.map +1 -0
- package/dist/cjs/test/integration/impl/bch/bch.js +74 -0
- package/dist/cjs/test/unit/address.d.ts +2 -0
- package/dist/cjs/test/unit/address.d.ts.map +1 -0
- package/dist/cjs/test/unit/address.js +182 -0
- package/dist/cjs/test/unit/bip322.d.ts +2 -0
- package/dist/cjs/test/unit/bip322.d.ts.map +1 -0
- package/dist/cjs/test/unit/bip322.js +45 -0
- package/dist/cjs/test/unit/coins.d.ts +2 -0
- package/dist/cjs/test/unit/coins.d.ts.map +1 -0
- package/dist/cjs/test/unit/coins.js +97 -0
- package/dist/cjs/test/unit/customChangeWallet.d.ts +2 -0
- package/dist/cjs/test/unit/customChangeWallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/customChangeWallet.js +154 -0
- package/dist/cjs/test/unit/customSigner.d.ts +3 -0
- package/dist/cjs/test/unit/customSigner.d.ts.map +1 -0
- package/dist/cjs/test/unit/customSigner.js +108 -0
- package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/NamedDescriptor.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/NamedDescriptor.js +18 -0
- package/dist/cjs/test/unit/descriptor/builder.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/builder.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/builder.js +72 -0
- package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/createWallet/createDescriptors.js +20 -0
- package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts +2 -0
- package/dist/cjs/test/unit/descriptor/descriptorWallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptor/descriptorWallet.js +28 -0
- package/dist/cjs/test/unit/descriptorAddress.d.ts +3 -0
- package/dist/cjs/test/unit/descriptorAddress.d.ts.map +1 -0
- package/dist/cjs/test/unit/descriptorAddress.js +102 -0
- package/dist/cjs/test/unit/explainTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/explainTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/explainTransaction.js +74 -0
- package/dist/cjs/test/unit/fixtures/bip322/fixtures.d.ts +15 -0
- package/dist/cjs/test/unit/fixtures/bip322/fixtures.d.ts.map +1 -0
- package/dist/cjs/test/unit/fixtures/bip322/fixtures.js +51 -0
- package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts +4 -0
- package/dist/cjs/test/unit/fixtures/psbtHexProof.d.ts.map +1 -0
- package/dist/cjs/test/unit/fixtures/psbtHexProof.js +9 -0
- package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts +2 -0
- package/dist/cjs/test/unit/impl/bch/unit/bch.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/bch/unit/bch.js +138 -0
- package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/bcha/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/bcha/unit/index.js +47 -0
- package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/bsv/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/bsv/unit/index.js +32 -0
- package/dist/cjs/test/unit/impl/btc/unit/btc.d.ts +2 -0
- package/dist/cjs/test/unit/impl/btc/unit/btc.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/btc/unit/btc.js +220 -0
- package/dist/cjs/test/unit/impl/btc/unit/fixtures/btcBackupKey.d.ts +4 -0
- package/dist/cjs/test/unit/impl/btc/unit/fixtures/btcBackupKey.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/btc/unit/fixtures/btcBackupKey.js +10 -0
- package/dist/cjs/test/unit/impl/btc/unit/fixtures/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/btc/unit/fixtures/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/btc/unit/fixtures/index.js +18 -0
- package/dist/cjs/test/unit/impl/btg/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/btg/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/btg/unit/index.js +29 -0
- package/dist/cjs/test/unit/impl/dash/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/dash/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/dash/unit/index.js +32 -0
- package/dist/cjs/test/unit/impl/doge/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/doge/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/doge/unit/index.js +32 -0
- package/dist/cjs/test/unit/impl/ltc/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/ltc/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/ltc/unit/index.js +39 -0
- package/dist/cjs/test/unit/impl/zec/unit/index.d.ts +2 -0
- package/dist/cjs/test/unit/impl/zec/unit/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/impl/zec/unit/index.js +29 -0
- package/dist/cjs/test/unit/keySignatures.d.ts +2 -0
- package/dist/cjs/test/unit/keySignatures.d.ts.map +1 -0
- package/dist/cjs/test/unit/keySignatures.js +54 -0
- package/dist/cjs/test/unit/keychains.d.ts +2 -0
- package/dist/cjs/test/unit/keychains.d.ts.map +1 -0
- package/dist/cjs/test/unit/keychains.js +49 -0
- package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts +2 -0
- package/dist/cjs/test/unit/offlineVault/halfSigned.d.ts.map +1 -0
- package/dist/cjs/test/unit/offlineVault/halfSigned.js +124 -0
- package/dist/cjs/test/unit/parseTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/parseTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/parseTransaction.js +125 -0
- package/dist/cjs/test/unit/prebuildAndSign.d.ts +6 -0
- package/dist/cjs/test/unit/prebuildAndSign.d.ts.map +1 -0
- package/dist/cjs/test/unit/prebuildAndSign.js +270 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts +2 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/backupKeyRecovery.js +296 -0
- package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts +2 -0
- package/dist/cjs/test/unit/recovery/crossChainRecovery.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/crossChainRecovery.js +295 -0
- package/dist/cjs/test/unit/recovery/mock.d.ts +30 -0
- package/dist/cjs/test/unit/recovery/mock.d.ts.map +1 -0
- package/dist/cjs/test/unit/recovery/mock.js +138 -0
- package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/explainPsbt.js +30 -0
- package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts +6 -0
- package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/fixtures.utils.js +17 -0
- package/dist/cjs/test/unit/transaction/descriptor/outputDifference.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/outputDifference.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/outputDifference.js +76 -0
- package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/parse.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/parse.js +135 -0
- package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/sign.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/sign.js +32 -0
- package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/descriptor/validatePolicy.js +48 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/explainPsbt.js +132 -0
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/parsePsbt.js +288 -0
- package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/replayProtection.js +59 -0
- package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts +2 -0
- package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/signPsbt.js +157 -0
- package/dist/cjs/test/unit/transaction/fixedScript/util.d.ts +3 -0
- package/dist/cjs/test/unit/transaction/fixedScript/util.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction/fixedScript/util.js +41 -0
- package/dist/cjs/test/unit/transaction.d.ts +2 -0
- package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction.js +528 -0
- package/dist/cjs/test/unit/txFormat.d.ts +30 -0
- package/dist/cjs/test/unit/txFormat.d.ts.map +1 -0
- package/dist/cjs/test/unit/txFormat.js +174 -0
- package/dist/cjs/test/unit/util/fixtures.d.ts +14 -0
- package/dist/cjs/test/unit/util/fixtures.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/fixtures.js +102 -0
- package/dist/cjs/test/unit/util/index.d.ts +7 -0
- package/dist/cjs/test/unit/util/index.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/index.js +23 -0
- package/dist/cjs/test/unit/util/keychains.d.ts +26 -0
- package/dist/cjs/test/unit/util/keychains.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/keychains.js +72 -0
- package/dist/cjs/test/unit/util/nockBitGo.d.ts +3 -0
- package/dist/cjs/test/unit/util/nockBitGo.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/nockBitGo.js +11 -0
- package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts +8 -0
- package/dist/cjs/test/unit/util/nockIndexerAPI.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/nockIndexerAPI.js +56 -0
- package/dist/cjs/test/unit/util/transaction.d.ts +24 -0
- package/dist/cjs/test/unit/util/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/transaction.js +107 -0
- package/dist/cjs/test/unit/util/unspents.d.ts +13 -0
- package/dist/cjs/test/unit/util/unspents.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/unspents.js +106 -0
- package/dist/cjs/test/unit/util/utxoCoins.d.ts +8 -0
- package/dist/cjs/test/unit/util/utxoCoins.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/utxoCoins.js +95 -0
- package/dist/cjs/test/unit/util/wallet.d.ts +4 -0
- package/dist/cjs/test/unit/util/wallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/util/wallet.js +9 -0
- package/dist/cjs/test/unit/verifyTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/verifyTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/verifyTransaction.js +327 -0
- package/dist/cjs/test/unit/wallet.d.ts +2 -0
- package/dist/cjs/test/unit/wallet.d.ts.map +1 -0
- package/dist/cjs/test/unit/wallet.js +248 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/abstractUtxoCoin.d.ts +435 -0
- package/dist/esm/abstractUtxoCoin.d.ts.map +1 -0
- package/dist/esm/abstractUtxoCoin.js +616 -0
- package/dist/esm/address/fixedScript.d.ts +49 -0
- package/dist/esm/address/fixedScript.d.ts.map +1 -0
- package/dist/esm/address/fixedScript.js +114 -0
- package/dist/esm/address/index.d.ts +2 -0
- package/dist/esm/address/index.d.ts.map +1 -0
- package/dist/esm/address/index.js +2 -0
- package/dist/esm/config.d.ts +9 -0
- package/dist/esm/config.js +11 -0
- package/dist/esm/descriptor/NamedDescriptor.d.ts +20 -0
- package/dist/esm/descriptor/NamedDescriptor.d.ts.map +1 -0
- package/dist/esm/descriptor/NamedDescriptor.js +39 -0
- package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts +5 -0
- package/dist/esm/descriptor/assertDescriptorWalletAddress.d.ts.map +1 -0
- package/dist/esm/descriptor/assertDescriptorWalletAddress.js +27 -0
- package/dist/esm/descriptor/builder/builder.d.ts +13 -0
- package/dist/esm/descriptor/builder/builder.d.ts.map +1 -0
- package/dist/esm/descriptor/builder/builder.js +34 -0
- package/dist/esm/descriptor/builder/index.d.ts +3 -0
- package/dist/esm/descriptor/builder/index.d.ts.map +1 -0
- package/dist/esm/descriptor/builder/index.js +3 -0
- package/dist/esm/descriptor/builder/parse.d.ts +5 -0
- package/dist/esm/descriptor/builder/parse.d.ts.map +1 -0
- package/dist/esm/descriptor/builder/parse.js +112 -0
- package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts +20 -0
- package/dist/esm/descriptor/createWallet/createDescriptorWallet.d.ts.map +1 -0
- package/dist/esm/descriptor/createWallet/createDescriptorWallet.js +37 -0
- package/dist/esm/descriptor/createWallet/createDescriptors.d.ts +12 -0
- package/dist/esm/descriptor/createWallet/createDescriptors.d.ts.map +1 -0
- package/dist/esm/descriptor/createWallet/createDescriptors.js +29 -0
- package/dist/esm/descriptor/createWallet/index.d.ts +3 -0
- package/dist/esm/descriptor/createWallet/index.d.ts.map +1 -0
- package/dist/esm/descriptor/createWallet/index.js +3 -0
- package/dist/esm/descriptor/descriptorWallet.d.ts +19 -0
- package/dist/esm/descriptor/descriptorWallet.d.ts.map +1 -0
- package/dist/esm/descriptor/descriptorWallet.js +16 -0
- package/dist/esm/descriptor/index.d.ts +8 -0
- package/dist/esm/descriptor/index.d.ts.map +1 -0
- package/dist/esm/descriptor/index.js +7 -0
- package/dist/esm/descriptor/validatePolicy.d.ts +22 -0
- package/dist/esm/descriptor/validatePolicy.d.ts.map +1 -0
- package/dist/esm/descriptor/validatePolicy.js +80 -0
- package/dist/esm/impl/bch/bch.d.ts +20 -0
- package/dist/esm/impl/bch/bch.d.ts.map +1 -0
- package/dist/esm/impl/bch/bch.js +37 -0
- package/dist/esm/impl/bch/index.d.ts +3 -0
- package/dist/esm/impl/bch/index.d.ts.map +1 -0
- package/dist/esm/impl/bch/index.js +3 -0
- package/dist/esm/impl/bch/tbch.d.ts +10 -0
- package/dist/esm/impl/bch/tbch.d.ts.map +1 -0
- package/dist/esm/impl/bch/tbch.js +11 -0
- package/dist/esm/impl/bcha/bcha.d.ts +8 -0
- package/dist/esm/impl/bcha/bcha.d.ts.map +1 -0
- package/dist/esm/impl/bcha/bcha.js +11 -0
- package/dist/esm/impl/bcha/index.d.ts +3 -0
- package/dist/esm/impl/bcha/index.d.ts.map +1 -0
- package/dist/esm/impl/bcha/index.js +3 -0
- package/dist/esm/impl/bcha/tbcha.d.ts +10 -0
- package/dist/esm/impl/bcha/tbcha.d.ts.map +1 -0
- package/dist/esm/impl/bcha/tbcha.js +11 -0
- package/dist/esm/impl/bsv/bsv.d.ts +8 -0
- package/dist/esm/impl/bsv/bsv.d.ts.map +1 -0
- package/dist/esm/impl/bsv/bsv.js +11 -0
- package/dist/esm/impl/bsv/index.d.ts +3 -0
- package/dist/esm/impl/bsv/index.d.ts.map +1 -0
- package/dist/esm/impl/bsv/index.js +3 -0
- package/dist/esm/impl/bsv/tbsv.d.ts +10 -0
- package/dist/esm/impl/bsv/tbsv.d.ts.map +1 -0
- package/dist/esm/impl/bsv/tbsv.js +11 -0
- package/dist/esm/impl/btc/btc.d.ts +13 -0
- package/dist/esm/impl/btc/btc.d.ts.map +1 -0
- package/dist/esm/impl/btc/btc.js +18 -0
- package/dist/esm/impl/btc/index.d.ts +7 -0
- package/dist/esm/impl/btc/index.d.ts.map +1 -0
- package/dist/esm/impl/btc/index.js +7 -0
- package/dist/esm/impl/btc/inscriptionBuilder.d.ts +51 -0
- package/dist/esm/impl/btc/inscriptionBuilder.d.ts.map +1 -0
- package/dist/esm/impl/btc/inscriptionBuilder.js +143 -0
- package/dist/esm/impl/btc/tbtc.d.ts +10 -0
- package/dist/esm/impl/btc/tbtc.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtc.js +11 -0
- package/dist/esm/impl/btc/tbtc4.d.ts +10 -0
- package/dist/esm/impl/btc/tbtc4.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtc4.js +11 -0
- package/dist/esm/impl/btc/tbtcbgsig.d.ts +10 -0
- package/dist/esm/impl/btc/tbtcbgsig.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcbgsig.js +11 -0
- package/dist/esm/impl/btc/tbtcsig.d.ts +10 -0
- package/dist/esm/impl/btc/tbtcsig.d.ts.map +1 -0
- package/dist/esm/impl/btc/tbtcsig.js +11 -0
- package/dist/esm/impl/btg/btg.d.ts +7 -0
- package/dist/esm/impl/btg/btg.d.ts.map +1 -0
- package/dist/esm/impl/btg/btg.js +11 -0
- package/dist/esm/impl/btg/index.d.ts +2 -0
- package/dist/esm/impl/btg/index.d.ts.map +1 -0
- package/dist/esm/impl/btg/index.js +2 -0
- package/dist/esm/impl/dash/dash.d.ts +7 -0
- package/dist/esm/impl/dash/dash.d.ts.map +1 -0
- package/dist/esm/impl/dash/dash.js +11 -0
- package/dist/esm/impl/dash/index.d.ts +3 -0
- package/dist/esm/impl/dash/index.d.ts.map +1 -0
- package/dist/esm/impl/dash/index.js +3 -0
- package/dist/esm/impl/dash/tdash.d.ts +10 -0
- package/dist/esm/impl/dash/tdash.d.ts.map +1 -0
- package/dist/esm/impl/dash/tdash.js +11 -0
- package/dist/esm/impl/doge/doge.d.ts +32 -0
- package/dist/esm/impl/doge/doge.d.ts.map +1 -0
- package/dist/esm/impl/doge/doge.js +75 -0
- package/dist/esm/impl/doge/index.d.ts +3 -0
- package/dist/esm/impl/doge/index.d.ts.map +1 -0
- package/dist/esm/impl/doge/index.js +3 -0
- package/dist/esm/impl/doge/tdoge.d.ts +10 -0
- package/dist/esm/impl/doge/tdoge.d.ts.map +1 -0
- package/dist/esm/impl/doge/tdoge.js +11 -0
- package/dist/esm/impl/index.d.ts +10 -0
- package/dist/esm/impl/index.d.ts.map +1 -0
- package/dist/esm/impl/index.js +10 -0
- package/dist/esm/impl/ltc/index.d.ts +3 -0
- package/dist/esm/impl/ltc/index.d.ts.map +1 -0
- package/dist/esm/impl/ltc/index.js +3 -0
- package/dist/esm/impl/ltc/ltc.d.ts +7 -0
- package/dist/esm/impl/ltc/ltc.d.ts.map +1 -0
- package/dist/esm/impl/ltc/ltc.js +15 -0
- package/dist/esm/impl/ltc/tltc.d.ts +7 -0
- package/dist/esm/impl/ltc/tltc.d.ts.map +1 -0
- package/dist/esm/impl/ltc/tltc.js +14 -0
- package/dist/esm/impl/zec/index.d.ts +3 -0
- package/dist/esm/impl/zec/index.d.ts.map +1 -0
- package/dist/esm/impl/zec/index.js +3 -0
- package/dist/esm/impl/zec/tzec.d.ts +7 -0
- package/dist/esm/impl/zec/tzec.d.ts.map +1 -0
- package/dist/esm/impl/zec/tzec.js +11 -0
- package/dist/esm/impl/zec/zec.d.ts +10 -0
- package/dist/esm/impl/zec/zec.d.ts.map +1 -0
- package/dist/esm/impl/zec/zec.js +11 -0
- package/dist/esm/index.d.ts +21 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +21 -0
- package/dist/esm/keychains.d.ts +52 -0
- package/dist/esm/keychains.d.ts.map +1 -0
- package/dist/esm/keychains.js +92 -0
- package/dist/esm/names.d.ts +26 -0
- package/dist/esm/names.d.ts.map +1 -0
- package/dist/esm/names.js +171 -0
- package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts +8 -0
- package/dist/esm/offlineVault/OfflineVaultHalfSigned.d.ts.map +1 -0
- package/dist/esm/offlineVault/OfflineVaultHalfSigned.js +23 -0
- package/dist/esm/offlineVault/OfflineVaultSignable.d.ts +46 -0
- package/dist/esm/offlineVault/OfflineVaultSignable.d.ts.map +1 -0
- package/dist/esm/offlineVault/OfflineVaultSignable.js +18 -0
- package/dist/esm/offlineVault/TransactionExplanation.d.ts +15 -0
- package/dist/esm/offlineVault/TransactionExplanation.d.ts.map +1 -0
- package/dist/esm/offlineVault/TransactionExplanation.js +13 -0
- package/dist/esm/offlineVault/descriptor/index.d.ts +2 -0
- package/dist/esm/offlineVault/descriptor/index.d.ts.map +1 -0
- package/dist/esm/offlineVault/descriptor/index.js +2 -0
- package/dist/esm/offlineVault/descriptor/transaction.d.ts +38 -0
- package/dist/esm/offlineVault/descriptor/transaction.d.ts.map +1 -0
- package/dist/esm/offlineVault/descriptor/transaction.js +41 -0
- package/dist/esm/offlineVault/index.d.ts +6 -0
- package/dist/esm/offlineVault/index.d.ts.map +1 -0
- package/dist/esm/offlineVault/index.js +4 -0
- package/dist/esm/recovery/RecoveryProvider.d.ts +22 -0
- package/dist/{src → esm}/recovery/RecoveryProvider.d.ts.map +1 -1
- package/dist/esm/recovery/RecoveryProvider.js +19 -0
- package/dist/esm/recovery/backupKeyRecovery.d.ts +89 -0
- package/dist/esm/recovery/backupKeyRecovery.d.ts.map +1 -0
- package/dist/esm/recovery/backupKeyRecovery.js +317 -0
- package/dist/esm/recovery/baseApi.d.ts +24 -0
- package/dist/esm/recovery/baseApi.d.ts.map +1 -0
- package/dist/esm/recovery/baseApi.js +64 -0
- package/dist/esm/recovery/coingeckoApi.d.ts +6 -0
- package/dist/esm/recovery/coingeckoApi.d.ts.map +1 -0
- package/dist/esm/recovery/coingeckoApi.js +40 -0
- package/dist/esm/recovery/crossChainRecovery.d.ts +96 -0
- package/dist/esm/recovery/crossChainRecovery.d.ts.map +1 -0
- package/dist/esm/recovery/crossChainRecovery.js +303 -0
- package/dist/esm/recovery/index.d.ts +7 -0
- package/dist/{src → esm}/recovery/index.d.ts.map +1 -1
- package/dist/esm/recovery/index.js +7 -0
- package/dist/esm/recovery/mempoolApi.d.ts +7 -0
- package/dist/{src → esm}/recovery/mempoolApi.d.ts.map +1 -1
- package/dist/esm/recovery/mempoolApi.js +29 -0
- package/dist/esm/recovery/psbt.d.ts +30 -0
- package/dist/esm/recovery/psbt.d.ts.map +1 -0
- package/dist/esm/recovery/psbt.js +167 -0
- package/dist/esm/transaction/bip322.d.ts +27 -0
- package/dist/esm/transaction/bip322.d.ts.map +1 -0
- package/dist/esm/transaction/bip322.js +86 -0
- package/dist/esm/transaction/common/verifyPayGoAmount.d.ts +1 -0
- package/dist/esm/transaction/common/verifyPayGoAmount.d.ts.map +1 -0
- package/dist/esm/transaction/common/verifyPayGoAmount.js +1 -0
- package/dist/esm/transaction/decode.d.ts +11 -0
- package/dist/esm/transaction/decode.d.ts.map +1 -0
- package/dist/esm/transaction/decode.js +43 -0
- package/dist/esm/transaction/descriptor/explainPsbt.d.ts +5 -0
- package/dist/esm/transaction/descriptor/explainPsbt.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/explainPsbt.js +44 -0
- package/dist/esm/transaction/descriptor/index.d.ts +7 -0
- package/dist/esm/transaction/descriptor/index.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/index.js +6 -0
- package/dist/esm/transaction/descriptor/parse.d.ts +16 -0
- package/dist/esm/transaction/descriptor/parse.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/parse.js +79 -0
- package/dist/esm/transaction/descriptor/parseToAmountType.d.ts +14 -0
- package/dist/esm/transaction/descriptor/parseToAmountType.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/parseToAmountType.js +55 -0
- package/dist/esm/transaction/descriptor/recipient.d.ts +5 -0
- package/dist/esm/transaction/descriptor/recipient.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/recipient.js +2 -0
- package/dist/esm/transaction/descriptor/signPsbt.d.ts +25 -0
- package/dist/esm/transaction/descriptor/signPsbt.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/signPsbt.js +38 -0
- package/dist/esm/transaction/descriptor/verifyTransaction.d.ts +36 -0
- package/dist/esm/transaction/descriptor/verifyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/descriptor/verifyTransaction.js +66 -0
- package/dist/esm/transaction/explainTransaction.d.ts +18 -0
- package/dist/esm/transaction/explainTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/explainTransaction.js +52 -0
- package/dist/esm/transaction/fetchInputs.d.ts +26 -0
- package/dist/esm/transaction/fetchInputs.d.ts.map +1 -0
- package/dist/esm/transaction/fetchInputs.js +72 -0
- package/dist/esm/transaction/fixedScript/SigningError.d.ts +24 -0
- package/dist/esm/transaction/fixedScript/SigningError.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/SigningError.js +21 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts +11 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/explainPsbtWasm.js +64 -0
- package/dist/esm/transaction/fixedScript/explainTransaction.d.ts +73 -0
- package/dist/esm/transaction/fixedScript/explainTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/explainTransaction.js +307 -0
- package/dist/esm/transaction/fixedScript/index.d.ts +10 -0
- package/dist/esm/transaction/fixedScript/index.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/index.js +9 -0
- package/dist/esm/transaction/fixedScript/musig2.d.ts +4 -0
- package/dist/esm/transaction/fixedScript/musig2.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/musig2.js +2 -0
- package/dist/esm/transaction/fixedScript/parseOutput.d.ts +28 -0
- package/dist/esm/transaction/fixedScript/parseOutput.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/parseOutput.js +213 -0
- package/dist/esm/transaction/fixedScript/parseTransaction.d.ts +8 -0
- package/dist/esm/transaction/fixedScript/parseTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/parseTransaction.js +176 -0
- package/dist/esm/transaction/fixedScript/replayProtection.d.ts +7 -0
- package/dist/esm/transaction/fixedScript/replayProtection.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/replayProtection.js +39 -0
- package/dist/esm/transaction/fixedScript/signLegacyTransaction.d.ts +30 -0
- package/dist/esm/transaction/fixedScript/signLegacyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/signLegacyTransaction.js +112 -0
- package/dist/esm/transaction/fixedScript/signPsbt.d.ts +30 -0
- package/dist/esm/transaction/fixedScript/signPsbt.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/signPsbt.js +134 -0
- package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts +22 -0
- package/dist/esm/transaction/fixedScript/signPsbtWasm.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/signPsbtWasm.js +122 -0
- package/dist/esm/transaction/fixedScript/signTransaction.d.ts +17 -0
- package/dist/esm/transaction/fixedScript/signTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/signTransaction.js +44 -0
- package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts +21 -0
- package/dist/esm/transaction/fixedScript/verifyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/fixedScript/verifyTransaction.js +160 -0
- package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts +9 -0
- package/dist/esm/transaction/getPayGoVerificationPubkey.d.ts.map +1 -0
- package/dist/esm/transaction/getPayGoVerificationPubkey.js +17 -0
- package/dist/esm/transaction/index.d.ts +8 -0
- package/dist/esm/transaction/index.d.ts.map +1 -0
- package/dist/esm/transaction/index.js +8 -0
- package/dist/esm/transaction/outputDifference.d.ts +40 -0
- package/dist/esm/transaction/outputDifference.d.ts.map +1 -0
- package/dist/esm/transaction/outputDifference.js +42 -0
- package/dist/esm/transaction/parseTransaction.d.ts +4 -0
- package/dist/esm/transaction/parseTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/parseTransaction.js +12 -0
- package/dist/esm/transaction/recipient.d.ts +29 -0
- package/dist/esm/transaction/recipient.d.ts.map +1 -0
- package/dist/esm/transaction/recipient.js +48 -0
- package/dist/esm/transaction/signTransaction.d.ts +6 -0
- package/dist/esm/transaction/signTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/signTransaction.js +66 -0
- package/dist/esm/transaction/types.d.ts +49 -0
- package/dist/esm/transaction/types.d.ts.map +1 -0
- package/dist/esm/transaction/types.js +4 -0
- package/dist/esm/transaction/verifyTransaction.d.ts +4 -0
- package/dist/esm/transaction/verifyTransaction.d.ts.map +1 -0
- package/dist/esm/transaction/verifyTransaction.js +14 -0
- package/dist/esm/verifyKey.d.ts +29 -0
- package/dist/esm/verifyKey.d.ts.map +1 -0
- package/dist/esm/verifyKey.js +123 -0
- package/dist/esm/wallet.d.ts +15 -0
- package/dist/esm/wallet.d.ts.map +1 -0
- package/dist/esm/wallet.js +5 -0
- package/package.json +48 -18
- package/.eslintignore +0 -5
- package/CHANGELOG.md +0 -253
- package/dist/src/abstractUtxoCoin.d.ts +0 -392
- package/dist/src/abstractUtxoCoin.d.ts.map +0 -1
- package/dist/src/abstractUtxoCoin.js +0 -931
- package/dist/src/config.js +0 -14
- package/dist/src/index.d.ts +0 -6
- package/dist/src/index.d.ts.map +0 -1
- package/dist/src/index.js +0 -18
- package/dist/src/parseOutput.d.ts +0 -22
- package/dist/src/parseOutput.d.ts.map +0 -1
- package/dist/src/parseOutput.js +0 -181
- package/dist/src/recovery/RecoveryProvider.js +0 -24
- package/dist/src/recovery/backupKeyRecovery.d.ts +0 -62
- package/dist/src/recovery/backupKeyRecovery.d.ts.map +0 -1
- package/dist/src/recovery/backupKeyRecovery.js +0 -293
- package/dist/src/recovery/baseApi.d.ts.map +0 -1
- package/dist/src/recovery/baseApi.js +0 -73
- package/dist/src/recovery/coingeckoApi.d.ts.map +0 -1
- package/dist/src/recovery/coingeckoApi.js +0 -47
- package/dist/src/recovery/crossChainRecovery.d.ts.map +0 -1
- package/dist/src/recovery/crossChainRecovery.js +0 -294
- package/dist/src/recovery/mempoolApi.js +0 -33
- package/dist/src/recovery/smartbitApi.d.ts +0 -11
- package/dist/src/recovery/smartbitApi.d.ts.map +0 -1
- package/dist/src/recovery/smartbitApi.js +0 -36
- package/dist/src/replayProtection.d.ts +0 -4
- package/dist/src/replayProtection.d.ts.map +0 -1
- package/dist/src/replayProtection.js +0 -21
- package/dist/src/sign.d.ts +0 -31
- package/dist/src/sign.d.ts.map +0 -1
- package/dist/src/sign.js +0 -104
- package/dist/tsconfig.tsbuildinfo +0 -8179
- /package/dist/{src → cjs/src}/config.d.ts +0 -0
- /package/dist/{src → cjs/src}/recovery/mempoolApi.d.ts +0 -0
- /package/dist/{src → esm}/config.d.ts.map +0 -0
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
19
|
+
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
20
|
+
};
|
|
21
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
22
|
+
var ownKeys = function(o) {
|
|
23
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
24
|
+
var ar = [];
|
|
25
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
26
|
+
return ar;
|
|
27
|
+
};
|
|
28
|
+
return ownKeys(o);
|
|
29
|
+
};
|
|
30
|
+
return function (mod) {
|
|
31
|
+
if (mod && mod.__esModule) return mod;
|
|
32
|
+
var result = {};
|
|
33
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
34
|
+
__setModuleDefault(result, mod);
|
|
35
|
+
return result;
|
|
36
|
+
};
|
|
37
|
+
})();
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.bip322 = exports.verifyTransaction = exports.parseTransaction = exports.explainTx = void 0;
|
|
40
|
+
__exportStar(require("./types"), exports);
|
|
41
|
+
__exportStar(require("./recipient"), exports);
|
|
42
|
+
var explainTransaction_1 = require("./explainTransaction");
|
|
43
|
+
Object.defineProperty(exports, "explainTx", { enumerable: true, get: function () { return explainTransaction_1.explainTx; } });
|
|
44
|
+
var parseTransaction_1 = require("./parseTransaction");
|
|
45
|
+
Object.defineProperty(exports, "parseTransaction", { enumerable: true, get: function () { return parseTransaction_1.parseTransaction; } });
|
|
46
|
+
var verifyTransaction_1 = require("./verifyTransaction");
|
|
47
|
+
Object.defineProperty(exports, "verifyTransaction", { enumerable: true, get: function () { return verifyTransaction_1.verifyTransaction; } });
|
|
48
|
+
__exportStar(require("./fetchInputs"), exports);
|
|
49
|
+
exports.bip322 = __importStar(require("./bip322"));
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBQUEsMENBQXdCO0FBQ3hCLDhDQUE0QjtBQUM1QiwyREFBaUQ7QUFBeEMsK0dBQUEsU0FBUyxPQUFBO0FBQ2xCLHVEQUFzRDtBQUE3QyxvSEFBQSxnQkFBZ0IsT0FBQTtBQUN6Qix5REFBd0Q7QUFBL0Msc0hBQUEsaUJBQWlCLE9BQUE7QUFDMUIsZ0RBQThCO0FBQzlCLG1EQUFtQyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vdHlwZXMnO1xuZXhwb3J0ICogZnJvbSAnLi9yZWNpcGllbnQnO1xuZXhwb3J0IHsgZXhwbGFpblR4IH0gZnJvbSAnLi9leHBsYWluVHJhbnNhY3Rpb24nO1xuZXhwb3J0IHsgcGFyc2VUcmFuc2FjdGlvbiB9IGZyb20gJy4vcGFyc2VUcmFuc2FjdGlvbic7XG5leHBvcnQgeyB2ZXJpZnlUcmFuc2FjdGlvbiB9IGZyb20gJy4vdmVyaWZ5VHJhbnNhY3Rpb24nO1xuZXhwb3J0ICogZnJvbSAnLi9mZXRjaElucHV0cyc7XG5leHBvcnQgKiBhcyBiaXAzMjIgZnJvbSAnLi9iaXAzMjInO1xuIl19
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
export type ComparableOutput<TValue> = {
|
|
2
|
+
script: Buffer;
|
|
3
|
+
value: TValue;
|
|
4
|
+
};
|
|
5
|
+
/** Actual outputs have fixed values. */
|
|
6
|
+
export type ActualOutput = ComparableOutput<bigint>;
|
|
7
|
+
/** Expected outputs can have a fixed value or 'max'. */
|
|
8
|
+
export type ExpectedOutput = ComparableOutput<bigint | 'max'>;
|
|
9
|
+
/**
|
|
10
|
+
* @param a
|
|
11
|
+
* @param b
|
|
12
|
+
* @returns whether the two outputs are equal. Outputs with value `max` are considered equal to any other output with the same script.
|
|
13
|
+
*/
|
|
14
|
+
export declare function matchingOutput<TValue>(a: ComparableOutput<TValue>, b: ComparableOutput<TValue>): boolean;
|
|
15
|
+
/**
|
|
16
|
+
* @returns all outputs in the first array that are not in the second array.
|
|
17
|
+
* Outputs can occur more than once in each array.
|
|
18
|
+
* An output with value `max` is considered equal to any other output with the same script.
|
|
19
|
+
*/
|
|
20
|
+
export declare function outputDifference<A extends ActualOutput | ExpectedOutput, B extends ActualOutput | ExpectedOutput>(first: A[], second: B[]): A[];
|
|
21
|
+
export type OutputDifferenceWithExpected<TActual extends ActualOutput, TExpected extends ExpectedOutput> = {
|
|
22
|
+
/** These are the external outputs that were expected and found in the transaction. */
|
|
23
|
+
explicitOutputs: TActual[];
|
|
24
|
+
/**
|
|
25
|
+
* These are the surprise external outputs that were not explicitly specified in the transaction.
|
|
26
|
+
* They can be PayGo fees.
|
|
27
|
+
*/
|
|
28
|
+
implicitOutputs: TActual[];
|
|
29
|
+
/**
|
|
30
|
+
* These are the outputs that were expected to be in the transaction but were not found.
|
|
31
|
+
*/
|
|
32
|
+
missingOutputs: TExpected[];
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* @param actualOutputs - external outputs in the transaction
|
|
36
|
+
* @param expectedOutputs - external outputs that were expected to be in the transaction
|
|
37
|
+
* @returns the difference between the actual and expected external outputs
|
|
38
|
+
*/
|
|
39
|
+
export declare function outputDifferencesWithExpected<TActual extends ActualOutput, TExpected extends ExpectedOutput>(actualOutputs: TActual[], expectedOutputs: TExpected[]): OutputDifferenceWithExpected<TActual, TExpected>;
|
|
40
|
+
//# sourceMappingURL=outputDifference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outputDifference.d.ts","sourceRoot":"","sources":["../../../../src/transaction/outputDifference.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,gBAAgB,CAAC,MAAM,IAAI;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,wCAAwC;AACxC,MAAM,MAAM,YAAY,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;AAEpD,wDAAwD;AACxD,MAAM,MAAM,cAAc,GAAG,gBAAgB,CAAC,MAAM,GAAG,KAAK,CAAC,CAAC;AAE9D;;;;GAIG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,gBAAgB,CAAC,MAAM,CAAC,GAAG,OAAO,CAKxG;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,YAAY,GAAG,cAAc,EAAE,CAAC,SAAS,YAAY,GAAG,cAAc,EAC/G,KAAK,EAAE,CAAC,EAAE,EACV,MAAM,EAAE,CAAC,EAAE,GACV,CAAC,EAAE,CASL;AAED,MAAM,MAAM,4BAA4B,CAAC,OAAO,SAAS,YAAY,EAAE,SAAS,SAAS,cAAc,IAAI;IACzG,sFAAsF;IACtF,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B;;;OAGG;IACH,eAAe,EAAE,OAAO,EAAE,CAAC;IAC3B;;OAEG;IACH,cAAc,EAAE,SAAS,EAAE,CAAC;CAC7B,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,OAAO,SAAS,YAAY,EAAE,SAAS,SAAS,cAAc,EAC1G,aAAa,EAAE,OAAO,EAAE,EACxB,eAAe,EAAE,SAAS,EAAE,GAC3B,4BAA4B,CAAC,OAAO,EAAE,SAAS,CAAC,CASlD"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.matchingOutput = matchingOutput;
|
|
4
|
+
exports.outputDifference = outputDifference;
|
|
5
|
+
exports.outputDifferencesWithExpected = outputDifferencesWithExpected;
|
|
6
|
+
/**
|
|
7
|
+
* @param a
|
|
8
|
+
* @param b
|
|
9
|
+
* @returns whether the two outputs are equal. Outputs with value `max` are considered equal to any other output with the same script.
|
|
10
|
+
*/
|
|
11
|
+
function matchingOutput(a, b) {
|
|
12
|
+
if (a.value === 'max' || b.value === 'max') {
|
|
13
|
+
return a.script.equals(b.script);
|
|
14
|
+
}
|
|
15
|
+
return a.script.equals(b.script) && a.value === b.value;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* @returns all outputs in the first array that are not in the second array.
|
|
19
|
+
* Outputs can occur more than once in each array.
|
|
20
|
+
* An output with value `max` is considered equal to any other output with the same script.
|
|
21
|
+
*/
|
|
22
|
+
function outputDifference(first, second) {
|
|
23
|
+
first = first.slice();
|
|
24
|
+
for (const output of second) {
|
|
25
|
+
const index = first.findIndex((o) => matchingOutput(o, output));
|
|
26
|
+
if (index !== -1) {
|
|
27
|
+
first.splice(index, 1);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return first;
|
|
31
|
+
}
|
|
32
|
+
/**
|
|
33
|
+
* @param actualOutputs - external outputs in the transaction
|
|
34
|
+
* @param expectedOutputs - external outputs that were expected to be in the transaction
|
|
35
|
+
* @returns the difference between the actual and expected external outputs
|
|
36
|
+
*/
|
|
37
|
+
function outputDifferencesWithExpected(actualOutputs, expectedOutputs) {
|
|
38
|
+
const implicitOutputs = outputDifference(actualOutputs, expectedOutputs);
|
|
39
|
+
const explicitOutputs = outputDifference(actualOutputs, implicitOutputs);
|
|
40
|
+
const missingOutputs = outputDifference(expectedOutputs, actualOutputs);
|
|
41
|
+
return {
|
|
42
|
+
explicitOutputs,
|
|
43
|
+
implicitOutputs,
|
|
44
|
+
missingOutputs,
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3V0cHV0RGlmZmVyZW5jZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2FjdGlvbi9vdXRwdXREaWZmZXJlbmNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7O0FBZ0JBLHdDQUtDO0FBT0QsNENBWUM7QUFxQkQsc0VBWUM7QUE5REQ7Ozs7R0FJRztBQUNILFNBQWdCLGNBQWMsQ0FBUyxDQUEyQixFQUFFLENBQTJCO0lBQzdGLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxLQUFLLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxLQUFLLEVBQUUsQ0FBQztRQUMzQyxPQUFPLENBQUMsQ0FBQyxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuQyxDQUFDO0lBQ0QsT0FBTyxDQUFDLENBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssS0FBSyxDQUFDLENBQUMsS0FBSyxDQUFDO0FBQzFELENBQUM7QUFFRDs7OztHQUlHO0FBQ0gsU0FBZ0IsZ0JBQWdCLENBQzlCLEtBQVUsRUFDVixNQUFXO0lBRVgsS0FBSyxHQUFHLEtBQUssQ0FBQyxLQUFLLEVBQUUsQ0FBQztJQUN0QixLQUFLLE1BQU0sTUFBTSxJQUFJLE1BQU0sRUFBRSxDQUFDO1FBQzVCLE1BQU0sS0FBSyxHQUFHLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLGNBQWMsQ0FBQyxDQUFDLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUNoRSxJQUFJLEtBQUssS0FBSyxDQUFDLENBQUMsRUFBRSxDQUFDO1lBQ2pCLEtBQUssQ0FBQyxNQUFNLENBQUMsS0FBSyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBQ3pCLENBQUM7SUFDSCxDQUFDO0lBQ0QsT0FBTyxLQUFLLENBQUM7QUFDZixDQUFDO0FBZ0JEOzs7O0dBSUc7QUFDSCxTQUFnQiw2QkFBNkIsQ0FDM0MsYUFBd0IsRUFDeEIsZUFBNEI7SUFFNUIsTUFBTSxlQUFlLEdBQUcsZ0JBQWdCLENBQUMsYUFBYSxFQUFFLGVBQWUsQ0FBQyxDQUFDO0lBQ3pFLE1BQU0sZUFBZSxHQUFHLGdCQUFnQixDQUFDLGFBQWEsRUFBRSxlQUFlLENBQUMsQ0FBQztJQUN6RSxNQUFNLGNBQWMsR0FBRyxnQkFBZ0IsQ0FBQyxlQUFlLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDeEUsT0FBTztRQUNMLGVBQWU7UUFDZixlQUFlO1FBQ2YsY0FBYztLQUNmLENBQUM7QUFDSixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHR5cGUgQ29tcGFyYWJsZU91dHB1dDxUVmFsdWU+ID0ge1xuICBzY3JpcHQ6IEJ1ZmZlcjtcbiAgdmFsdWU6IFRWYWx1ZTtcbn07XG5cbi8qKiBBY3R1YWwgb3V0cHV0cyBoYXZlIGZpeGVkIHZhbHVlcy4gKi9cbmV4cG9ydCB0eXBlIEFjdHVhbE91dHB1dCA9IENvbXBhcmFibGVPdXRwdXQ8YmlnaW50PjtcblxuLyoqIEV4cGVjdGVkIG91dHB1dHMgY2FuIGhhdmUgYSBmaXhlZCB2YWx1ZSBvciAnbWF4Jy4gKi9cbmV4cG9ydCB0eXBlIEV4cGVjdGVkT3V0cHV0ID0gQ29tcGFyYWJsZU91dHB1dDxiaWdpbnQgfCAnbWF4Jz47XG5cbi8qKlxuICogQHBhcmFtIGFcbiAqIEBwYXJhbSBiXG4gKiBAcmV0dXJucyB3aGV0aGVyIHRoZSB0d28gb3V0cHV0cyBhcmUgZXF1YWwuIE91dHB1dHMgd2l0aCB2YWx1ZSBgbWF4YCBhcmUgY29uc2lkZXJlZCBlcXVhbCB0byBhbnkgb3RoZXIgb3V0cHV0IHdpdGggdGhlIHNhbWUgc2NyaXB0LlxuICovXG5leHBvcnQgZnVuY3Rpb24gbWF0Y2hpbmdPdXRwdXQ8VFZhbHVlPihhOiBDb21wYXJhYmxlT3V0cHV0PFRWYWx1ZT4sIGI6IENvbXBhcmFibGVPdXRwdXQ8VFZhbHVlPik6IGJvb2xlYW4ge1xuICBpZiAoYS52YWx1ZSA9PT0gJ21heCcgfHwgYi52YWx1ZSA9PT0gJ21heCcpIHtcbiAgICByZXR1cm4gYS5zY3JpcHQuZXF1YWxzKGIuc2NyaXB0KTtcbiAgfVxuICByZXR1cm4gYS5zY3JpcHQuZXF1YWxzKGIuc2NyaXB0KSAmJiBhLnZhbHVlID09PSBiLnZhbHVlO1xufVxuXG4vKipcbiAqIEByZXR1cm5zIGFsbCBvdXRwdXRzIGluIHRoZSBmaXJzdCBhcnJheSB0aGF0IGFyZSBub3QgaW4gdGhlIHNlY29uZCBhcnJheS5cbiAqIE91dHB1dHMgY2FuIG9jY3VyIG1vcmUgdGhhbiBvbmNlIGluIGVhY2ggYXJyYXkuXG4gKiBBbiBvdXRwdXQgd2l0aCB2YWx1ZSBgbWF4YCBpcyBjb25zaWRlcmVkIGVxdWFsIHRvIGFueSBvdGhlciBvdXRwdXQgd2l0aCB0aGUgc2FtZSBzY3JpcHQuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBvdXRwdXREaWZmZXJlbmNlPEEgZXh0ZW5kcyBBY3R1YWxPdXRwdXQgfCBFeHBlY3RlZE91dHB1dCwgQiBleHRlbmRzIEFjdHVhbE91dHB1dCB8IEV4cGVjdGVkT3V0cHV0PihcbiAgZmlyc3Q6IEFbXSxcbiAgc2Vjb25kOiBCW11cbik6IEFbXSB7XG4gIGZpcnN0ID0gZmlyc3Quc2xpY2UoKTtcbiAgZm9yIChjb25zdCBvdXRwdXQgb2Ygc2Vjb25kKSB7XG4gICAgY29uc3QgaW5kZXggPSBmaXJzdC5maW5kSW5kZXgoKG8pID0+IG1hdGNoaW5nT3V0cHV0KG8sIG91dHB1dCkpO1xuICAgIGlmIChpbmRleCAhPT0gLTEpIHtcbiAgICAgIGZpcnN0LnNwbGljZShpbmRleCwgMSk7XG4gICAgfVxuICB9XG4gIHJldHVybiBmaXJzdDtcbn1cblxuZXhwb3J0IHR5cGUgT3V0cHV0RGlmZmVyZW5jZVdpdGhFeHBlY3RlZDxUQWN0dWFsIGV4dGVuZHMgQWN0dWFsT3V0cHV0LCBURXhwZWN0ZWQgZXh0ZW5kcyBFeHBlY3RlZE91dHB1dD4gPSB7XG4gIC8qKiBUaGVzZSBhcmUgdGhlIGV4dGVybmFsIG91dHB1dHMgdGhhdCB3ZXJlIGV4cGVjdGVkIGFuZCBmb3VuZCBpbiB0aGUgdHJhbnNhY3Rpb24uICovXG4gIGV4cGxpY2l0T3V0cHV0czogVEFjdHVhbFtdO1xuICAvKipcbiAgICogVGhlc2UgYXJlIHRoZSBzdXJwcmlzZSBleHRlcm5hbCBvdXRwdXRzIHRoYXQgd2VyZSBub3QgZXhwbGljaXRseSBzcGVjaWZpZWQgaW4gdGhlIHRyYW5zYWN0aW9uLlxuICAgKiBUaGV5IGNhbiBiZSBQYXlHbyBmZWVzLlxuICAgKi9cbiAgaW1wbGljaXRPdXRwdXRzOiBUQWN0dWFsW107XG4gIC8qKlxuICAgKiBUaGVzZSBhcmUgdGhlIG91dHB1dHMgdGhhdCB3ZXJlIGV4cGVjdGVkIHRvIGJlIGluIHRoZSB0cmFuc2FjdGlvbiBidXQgd2VyZSBub3QgZm91bmQuXG4gICAqL1xuICBtaXNzaW5nT3V0cHV0czogVEV4cGVjdGVkW107XG59O1xuXG4vKipcbiAqIEBwYXJhbSBhY3R1YWxPdXRwdXRzIC0gZXh0ZXJuYWwgb3V0cHV0cyBpbiB0aGUgdHJhbnNhY3Rpb25cbiAqIEBwYXJhbSBleHBlY3RlZE91dHB1dHMgLSBleHRlcm5hbCBvdXRwdXRzIHRoYXQgd2VyZSBleHBlY3RlZCB0byBiZSBpbiB0aGUgdHJhbnNhY3Rpb25cbiAqIEByZXR1cm5zIHRoZSBkaWZmZXJlbmNlIGJldHdlZW4gdGhlIGFjdHVhbCBhbmQgZXhwZWN0ZWQgZXh0ZXJuYWwgb3V0cHV0c1xuICovXG5leHBvcnQgZnVuY3Rpb24gb3V0cHV0RGlmZmVyZW5jZXNXaXRoRXhwZWN0ZWQ8VEFjdHVhbCBleHRlbmRzIEFjdHVhbE91dHB1dCwgVEV4cGVjdGVkIGV4dGVuZHMgRXhwZWN0ZWRPdXRwdXQ+KFxuICBhY3R1YWxPdXRwdXRzOiBUQWN0dWFsW10sXG4gIGV4cGVjdGVkT3V0cHV0czogVEV4cGVjdGVkW11cbik6IE91dHB1dERpZmZlcmVuY2VXaXRoRXhwZWN0ZWQ8VEFjdHVhbCwgVEV4cGVjdGVkPiB7XG4gIGNvbnN0IGltcGxpY2l0T3V0cHV0cyA9IG91dHB1dERpZmZlcmVuY2UoYWN0dWFsT3V0cHV0cywgZXhwZWN0ZWRPdXRwdXRzKTtcbiAgY29uc3QgZXhwbGljaXRPdXRwdXRzID0gb3V0cHV0RGlmZmVyZW5jZShhY3R1YWxPdXRwdXRzLCBpbXBsaWNpdE91dHB1dHMpO1xuICBjb25zdCBtaXNzaW5nT3V0cHV0cyA9IG91dHB1dERpZmZlcmVuY2UoZXhwZWN0ZWRPdXRwdXRzLCBhY3R1YWxPdXRwdXRzKTtcbiAgcmV0dXJuIHtcbiAgICBleHBsaWNpdE91dHB1dHMsXG4gICAgaW1wbGljaXRPdXRwdXRzLFxuICAgIG1pc3NpbmdPdXRwdXRzLFxuICB9O1xufVxuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { AbstractUtxoCoin, ParseTransactionOptions } from '../abstractUtxoCoin';
|
|
2
|
+
import { ParsedTransaction } from './types';
|
|
3
|
+
export declare function parseTransaction<TNumber extends bigint | number>(coin: AbstractUtxoCoin, params: ParseTransactionOptions<TNumber>): Promise<ParsedTransaction<TNumber>>;
|
|
4
|
+
//# sourceMappingURL=parseTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"parseTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/parseTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAGhF,OAAO,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAI5C,wBAAsB,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACpE,IAAI,EAAE,gBAAgB,EACtB,MAAM,EAAE,uBAAuB,CAAC,OAAO,CAAC,GACvC,OAAO,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC,CAMrC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.parseTransaction = parseTransaction;
|
|
37
|
+
const descriptor_1 = require("../descriptor");
|
|
38
|
+
const descriptor = __importStar(require("./descriptor"));
|
|
39
|
+
const fixedScript = __importStar(require("./fixedScript"));
|
|
40
|
+
async function parseTransaction(coin, params) {
|
|
41
|
+
if ((0, descriptor_1.isDescriptorWallet)(params.wallet)) {
|
|
42
|
+
return descriptor.parseToAmountType(coin, params.wallet, params);
|
|
43
|
+
}
|
|
44
|
+
else {
|
|
45
|
+
return fixedScript.parseTransaction(coin, params);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VUcmFuc2FjdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy90cmFuc2FjdGlvbi9wYXJzZVRyYW5zYWN0aW9uLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBT0EsNENBU0M7QUFmRCw4Q0FBbUQ7QUFHbkQseURBQTJDO0FBQzNDLDJEQUE2QztBQUV0QyxLQUFLLFVBQVUsZ0JBQWdCLENBQ3BDLElBQXNCLEVBQ3RCLE1BQXdDO0lBRXhDLElBQUksSUFBQSwrQkFBa0IsRUFBQyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUN0QyxPQUFPLFVBQVUsQ0FBQyxpQkFBaUIsQ0FBQyxJQUFJLEVBQUUsTUFBTSxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNuRSxDQUFDO1NBQU0sQ0FBQztRQUNOLE9BQU8sV0FBVyxDQUFDLGdCQUFnQixDQUFDLElBQUksRUFBRSxNQUFNLENBQUMsQ0FBQztJQUNwRCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEFic3RyYWN0VXR4b0NvaW4sIFBhcnNlVHJhbnNhY3Rpb25PcHRpb25zIH0gZnJvbSAnLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBpc0Rlc2NyaXB0b3JXYWxsZXQgfSBmcm9tICcuLi9kZXNjcmlwdG9yJztcblxuaW1wb3J0IHsgUGFyc2VkVHJhbnNhY3Rpb24gfSBmcm9tICcuL3R5cGVzJztcbmltcG9ydCAqIGFzIGRlc2NyaXB0b3IgZnJvbSAnLi9kZXNjcmlwdG9yJztcbmltcG9ydCAqIGFzIGZpeGVkU2NyaXB0IGZyb20gJy4vZml4ZWRTY3JpcHQnO1xuXG5leHBvcnQgYXN5bmMgZnVuY3Rpb24gcGFyc2VUcmFuc2FjdGlvbjxUTnVtYmVyIGV4dGVuZHMgYmlnaW50IHwgbnVtYmVyPihcbiAgY29pbjogQWJzdHJhY3RVdHhvQ29pbixcbiAgcGFyYW1zOiBQYXJzZVRyYW5zYWN0aW9uT3B0aW9uczxUTnVtYmVyPlxuKTogUHJvbWlzZTxQYXJzZWRUcmFuc2FjdGlvbjxUTnVtYmVyPj4ge1xuICBpZiAoaXNEZXNjcmlwdG9yV2FsbGV0KHBhcmFtcy53YWxsZXQpKSB7XG4gICAgcmV0dXJuIGRlc2NyaXB0b3IucGFyc2VUb0Ftb3VudFR5cGUoY29pbiwgcGFyYW1zLndhbGxldCwgcGFyYW1zKTtcbiAgfSBlbHNlIHtcbiAgICByZXR1cm4gZml4ZWRTY3JpcHQucGFyc2VUcmFuc2FjdGlvbihjb2luLCBwYXJhbXMpO1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
|
+
/**
|
|
3
|
+
* Check if the address is a script recipient (starts with `scriptPubKey:`).
|
|
4
|
+
* @param address
|
|
5
|
+
*/
|
|
6
|
+
export declare function isScriptRecipient(address: string): boolean;
|
|
7
|
+
/**
|
|
8
|
+
* An extended address is one that encodes either a regular address or a hex encoded script with the prefix `scriptPubKey:`.
|
|
9
|
+
* This function converts the extended address format to either a script or an address.
|
|
10
|
+
* @param extendedAddress
|
|
11
|
+
*/
|
|
12
|
+
export declare function fromExtendedAddressFormat(extendedAddress: string): {
|
|
13
|
+
address: string;
|
|
14
|
+
} | {
|
|
15
|
+
script: string;
|
|
16
|
+
};
|
|
17
|
+
export declare function fromExtendedAddressFormatToScript(extendedAddress: string, network: utxolib.Network): Buffer;
|
|
18
|
+
/**
|
|
19
|
+
* Convert a script or address to the extended address format.
|
|
20
|
+
* @param script
|
|
21
|
+
* @param network
|
|
22
|
+
* @returns if the script is an OP_RETURN script, then it will be prefixed with `scriptPubKey:`, otherwise it will be converted to an address.
|
|
23
|
+
*/
|
|
24
|
+
export declare function toExtendedAddressFormat(script: Buffer, network: utxolib.Network): string;
|
|
25
|
+
export declare function assertValidTransactionRecipient(output: {
|
|
26
|
+
amount: bigint | number | string;
|
|
27
|
+
address?: string;
|
|
28
|
+
}): void;
|
|
29
|
+
//# sourceMappingURL=recipient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"recipient.d.ts","sourceRoot":"","sources":["../../../../src/transaction/recipient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAIhD;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAE1D;AAED;;;;GAIG;AACH,wBAAgB,yBAAyB,CAAC,eAAe,EAAE,MAAM,GAAG;IAAE,OAAO,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,CAK3G;AAED,wBAAgB,iCAAiC,CAAC,eAAe,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,MAAM,CAM3G;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,CAAC,OAAO,GAAG,MAAM,CAIxF;AAED,wBAAgB,+BAA+B,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAUpH"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.isScriptRecipient = isScriptRecipient;
|
|
37
|
+
exports.fromExtendedAddressFormat = fromExtendedAddressFormat;
|
|
38
|
+
exports.fromExtendedAddressFormatToScript = fromExtendedAddressFormatToScript;
|
|
39
|
+
exports.toExtendedAddressFormat = toExtendedAddressFormat;
|
|
40
|
+
exports.assertValidTransactionRecipient = assertValidTransactionRecipient;
|
|
41
|
+
const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
|
|
42
|
+
const ScriptRecipientPrefix = 'scriptPubKey:';
|
|
43
|
+
/**
|
|
44
|
+
* Check if the address is a script recipient (starts with `scriptPubKey:`).
|
|
45
|
+
* @param address
|
|
46
|
+
*/
|
|
47
|
+
function isScriptRecipient(address) {
|
|
48
|
+
return address.toLowerCase().startsWith(ScriptRecipientPrefix.toLowerCase());
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* An extended address is one that encodes either a regular address or a hex encoded script with the prefix `scriptPubKey:`.
|
|
52
|
+
* This function converts the extended address format to either a script or an address.
|
|
53
|
+
* @param extendedAddress
|
|
54
|
+
*/
|
|
55
|
+
function fromExtendedAddressFormat(extendedAddress) {
|
|
56
|
+
if (isScriptRecipient(extendedAddress)) {
|
|
57
|
+
return { script: extendedAddress.slice(ScriptRecipientPrefix.length) };
|
|
58
|
+
}
|
|
59
|
+
return { address: extendedAddress };
|
|
60
|
+
}
|
|
61
|
+
function fromExtendedAddressFormatToScript(extendedAddress, network) {
|
|
62
|
+
const result = fromExtendedAddressFormat(extendedAddress);
|
|
63
|
+
if ('script' in result) {
|
|
64
|
+
return Buffer.from(result.script, 'hex');
|
|
65
|
+
}
|
|
66
|
+
return utxolib.addressFormat.toOutputScriptTryFormats(result.address, network);
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Convert a script or address to the extended address format.
|
|
70
|
+
* @param script
|
|
71
|
+
* @param network
|
|
72
|
+
* @returns if the script is an OP_RETURN script, then it will be prefixed with `scriptPubKey:`, otherwise it will be converted to an address.
|
|
73
|
+
*/
|
|
74
|
+
function toExtendedAddressFormat(script, network) {
|
|
75
|
+
return script[0] === utxolib.opcodes.OP_RETURN
|
|
76
|
+
? `${ScriptRecipientPrefix}${script.toString('hex')}`
|
|
77
|
+
: utxolib.address.fromOutputScript(script, network);
|
|
78
|
+
}
|
|
79
|
+
function assertValidTransactionRecipient(output) {
|
|
80
|
+
// In the case that this is an OP_RETURN output or another non-encodable scriptPubkey, we dont have an address.
|
|
81
|
+
// We will verify that the amount is zero, and if it isnt then we will throw an error.
|
|
82
|
+
if (!output.address || isScriptRecipient(output.address)) {
|
|
83
|
+
if (output.amount.toString() !== '0') {
|
|
84
|
+
throw new Error(`Only zero amounts allowed for non-encodeable scriptPubkeys: amount: ${output.amount}, address: ${output.address}`);
|
|
85
|
+
}
|
|
86
|
+
}
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVjaXBpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zYWN0aW9uL3JlY2lwaWVudC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQVFBLDhDQUVDO0FBT0QsOERBS0M7QUFFRCw4RUFNQztBQVFELDBEQUlDO0FBRUQsMEVBVUM7QUF0REQsOERBQWdEO0FBRWhELE1BQU0scUJBQXFCLEdBQUcsZUFBZSxDQUFDO0FBRTlDOzs7R0FHRztBQUNILFNBQWdCLGlCQUFpQixDQUFDLE9BQWU7SUFDL0MsT0FBTyxPQUFPLENBQUMsV0FBVyxFQUFFLENBQUMsVUFBVSxDQUFDLHFCQUFxQixDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUM7QUFDL0UsQ0FBQztBQUVEOzs7O0dBSUc7QUFDSCxTQUFnQix5QkFBeUIsQ0FBQyxlQUF1QjtJQUMvRCxJQUFJLGlCQUFpQixDQUFDLGVBQWUsQ0FBQyxFQUFFLENBQUM7UUFDdkMsT0FBTyxFQUFFLE1BQU0sRUFBRSxlQUFlLENBQUMsS0FBSyxDQUFDLHFCQUFxQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7SUFDekUsQ0FBQztJQUNELE9BQU8sRUFBRSxPQUFPLEVBQUUsZUFBZSxFQUFFLENBQUM7QUFDdEMsQ0FBQztBQUVELFNBQWdCLGlDQUFpQyxDQUFDLGVBQXVCLEVBQUUsT0FBd0I7SUFDakcsTUFBTSxNQUFNLEdBQUcseUJBQXlCLENBQUMsZUFBZSxDQUFDLENBQUM7SUFDMUQsSUFBSSxRQUFRLElBQUksTUFBTSxFQUFFLENBQUM7UUFDdkIsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsS0FBSyxDQUFDLENBQUM7SUFDM0MsQ0FBQztJQUNELE9BQU8sT0FBTyxDQUFDLGFBQWEsQ0FBQyx3QkFBd0IsQ0FBQyxNQUFNLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0FBQ2pGLENBQUM7QUFFRDs7Ozs7R0FLRztBQUNILFNBQWdCLHVCQUF1QixDQUFDLE1BQWMsRUFBRSxPQUF3QjtJQUM5RSxPQUFPLE1BQU0sQ0FBQyxDQUFDLENBQUMsS0FBSyxPQUFPLENBQUMsT0FBTyxDQUFDLFNBQVM7UUFDNUMsQ0FBQyxDQUFDLEdBQUcscUJBQXFCLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRTtRQUNyRCxDQUFDLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxnQkFBZ0IsQ0FBQyxNQUFNLEVBQUUsT0FBTyxDQUFDLENBQUM7QUFDeEQsQ0FBQztBQUVELFNBQWdCLCtCQUErQixDQUFDLE1BQThEO0lBQzVHLCtHQUErRztJQUMvRyxzRkFBc0Y7SUFDdEYsSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLElBQUksaUJBQWlCLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxFQUFFLENBQUM7UUFDekQsSUFBSSxNQUFNLENBQUMsTUFBTSxDQUFDLFFBQVEsRUFBRSxLQUFLLEdBQUcsRUFBRSxDQUFDO1lBQ3JDLE1BQU0sSUFBSSxLQUFLLENBQ2IsdUVBQXVFLE1BQU0sQ0FBQyxNQUFNLGNBQWMsTUFBTSxDQUFDLE9BQU8sRUFBRSxDQUNuSCxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0ICogYXMgdXR4b2xpYiBmcm9tICdAYml0Z28tYmV0YS91dHhvLWxpYic7XG5cbmNvbnN0IFNjcmlwdFJlY2lwaWVudFByZWZpeCA9ICdzY3JpcHRQdWJLZXk6JztcblxuLyoqXG4gKiBDaGVjayBpZiB0aGUgYWRkcmVzcyBpcyBhIHNjcmlwdCByZWNpcGllbnQgKHN0YXJ0cyB3aXRoIGBzY3JpcHRQdWJLZXk6YCkuXG4gKiBAcGFyYW0gYWRkcmVzc1xuICovXG5leHBvcnQgZnVuY3Rpb24gaXNTY3JpcHRSZWNpcGllbnQoYWRkcmVzczogc3RyaW5nKTogYm9vbGVhbiB7XG4gIHJldHVybiBhZGRyZXNzLnRvTG93ZXJDYXNlKCkuc3RhcnRzV2l0aChTY3JpcHRSZWNpcGllbnRQcmVmaXgudG9Mb3dlckNhc2UoKSk7XG59XG5cbi8qKlxuICogQW4gZXh0ZW5kZWQgYWRkcmVzcyBpcyBvbmUgdGhhdCBlbmNvZGVzIGVpdGhlciBhIHJlZ3VsYXIgYWRkcmVzcyBvciBhIGhleCBlbmNvZGVkIHNjcmlwdCB3aXRoIHRoZSBwcmVmaXggYHNjcmlwdFB1YktleTpgLlxuICogVGhpcyBmdW5jdGlvbiBjb252ZXJ0cyB0aGUgZXh0ZW5kZWQgYWRkcmVzcyBmb3JtYXQgdG8gZWl0aGVyIGEgc2NyaXB0IG9yIGFuIGFkZHJlc3MuXG4gKiBAcGFyYW0gZXh0ZW5kZWRBZGRyZXNzXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBmcm9tRXh0ZW5kZWRBZGRyZXNzRm9ybWF0KGV4dGVuZGVkQWRkcmVzczogc3RyaW5nKTogeyBhZGRyZXNzOiBzdHJpbmcgfSB8IHsgc2NyaXB0OiBzdHJpbmcgfSB7XG4gIGlmIChpc1NjcmlwdFJlY2lwaWVudChleHRlbmRlZEFkZHJlc3MpKSB7XG4gICAgcmV0dXJuIHsgc2NyaXB0OiBleHRlbmRlZEFkZHJlc3Muc2xpY2UoU2NyaXB0UmVjaXBpZW50UHJlZml4Lmxlbmd0aCkgfTtcbiAgfVxuICByZXR1cm4geyBhZGRyZXNzOiBleHRlbmRlZEFkZHJlc3MgfTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGZyb21FeHRlbmRlZEFkZHJlc3NGb3JtYXRUb1NjcmlwdChleHRlbmRlZEFkZHJlc3M6IHN0cmluZywgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrKTogQnVmZmVyIHtcbiAgY29uc3QgcmVzdWx0ID0gZnJvbUV4dGVuZGVkQWRkcmVzc0Zvcm1hdChleHRlbmRlZEFkZHJlc3MpO1xuICBpZiAoJ3NjcmlwdCcgaW4gcmVzdWx0KSB7XG4gICAgcmV0dXJuIEJ1ZmZlci5mcm9tKHJlc3VsdC5zY3JpcHQsICdoZXgnKTtcbiAgfVxuICByZXR1cm4gdXR4b2xpYi5hZGRyZXNzRm9ybWF0LnRvT3V0cHV0U2NyaXB0VHJ5Rm9ybWF0cyhyZXN1bHQuYWRkcmVzcywgbmV0d29yayk7XG59XG5cbi8qKlxuICogQ29udmVydCBhIHNjcmlwdCBvciBhZGRyZXNzIHRvIHRoZSBleHRlbmRlZCBhZGRyZXNzIGZvcm1hdC5cbiAqIEBwYXJhbSBzY3JpcHRcbiAqIEBwYXJhbSBuZXR3b3JrXG4gKiBAcmV0dXJucyBpZiB0aGUgc2NyaXB0IGlzIGFuIE9QX1JFVFVSTiBzY3JpcHQsIHRoZW4gaXQgd2lsbCBiZSBwcmVmaXhlZCB3aXRoIGBzY3JpcHRQdWJLZXk6YCwgb3RoZXJ3aXNlIGl0IHdpbGwgYmUgY29udmVydGVkIHRvIGFuIGFkZHJlc3MuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0V4dGVuZGVkQWRkcmVzc0Zvcm1hdChzY3JpcHQ6IEJ1ZmZlciwgbmV0d29yazogdXR4b2xpYi5OZXR3b3JrKTogc3RyaW5nIHtcbiAgcmV0dXJuIHNjcmlwdFswXSA9PT0gdXR4b2xpYi5vcGNvZGVzLk9QX1JFVFVSTlxuICAgID8gYCR7U2NyaXB0UmVjaXBpZW50UHJlZml4fSR7c2NyaXB0LnRvU3RyaW5nKCdoZXgnKX1gXG4gICAgOiB1dHhvbGliLmFkZHJlc3MuZnJvbU91dHB1dFNjcmlwdChzY3JpcHQsIG5ldHdvcmspO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gYXNzZXJ0VmFsaWRUcmFuc2FjdGlvblJlY2lwaWVudChvdXRwdXQ6IHsgYW1vdW50OiBiaWdpbnQgfCBudW1iZXIgfCBzdHJpbmc7IGFkZHJlc3M/OiBzdHJpbmcgfSk6IHZvaWQge1xuICAvLyBJbiB0aGUgY2FzZSB0aGF0IHRoaXMgaXMgYW4gT1BfUkVUVVJOIG91dHB1dCBvciBhbm90aGVyIG5vbi1lbmNvZGFibGUgc2NyaXB0UHVia2V5LCB3ZSBkb250IGhhdmUgYW4gYWRkcmVzcy5cbiAgLy8gV2Ugd2lsbCB2ZXJpZnkgdGhhdCB0aGUgYW1vdW50IGlzIHplcm8sIGFuZCBpZiBpdCBpc250IHRoZW4gd2Ugd2lsbCB0aHJvdyBhbiBlcnJvci5cbiAgaWYgKCFvdXRwdXQuYWRkcmVzcyB8fCBpc1NjcmlwdFJlY2lwaWVudChvdXRwdXQuYWRkcmVzcykpIHtcbiAgICBpZiAob3V0cHV0LmFtb3VudC50b1N0cmluZygpICE9PSAnMCcpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihcbiAgICAgICAgYE9ubHkgemVybyBhbW91bnRzIGFsbG93ZWQgZm9yIG5vbi1lbmNvZGVhYmxlIHNjcmlwdFB1YmtleXM6IGFtb3VudDogJHtvdXRwdXQuYW1vdW50fSwgYWRkcmVzczogJHtvdXRwdXQuYWRkcmVzc31gXG4gICAgICApO1xuICAgIH1cbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { BitGoBase } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { AbstractUtxoCoin, SignTransactionOptions } from '../abstractUtxoCoin';
|
|
3
|
+
export declare function signTransaction<TNumber extends number | bigint>(coin: AbstractUtxoCoin, bitgo: BitGoBase, params: SignTransactionOptions<TNumber>): Promise<{
|
|
4
|
+
txHex: string;
|
|
5
|
+
}>;
|
|
6
|
+
//# sourceMappingURL=signTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"signTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/signTransaction.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAKjD,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AAyB/E,wBAAsB,eAAe,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACnE,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,sBAAsB,CAAC,OAAO,CAAC,GACtC,OAAO,CAAC;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CA2C5B"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.signTransaction = signTransaction;
|
|
40
|
+
const lodash_1 = __importDefault(require("lodash"));
|
|
41
|
+
const utxolib = __importStar(require("@bitgo-beta/utxo-lib"));
|
|
42
|
+
const secp256k1_1 = require("@bitgo-beta/secp256k1");
|
|
43
|
+
const debug_1 = __importDefault(require("debug"));
|
|
44
|
+
const descriptor_1 = require("../descriptor");
|
|
45
|
+
const keychains_1 = require("../keychains");
|
|
46
|
+
const fixedScript = __importStar(require("./fixedScript"));
|
|
47
|
+
const descriptor = __importStar(require("./descriptor"));
|
|
48
|
+
const decode_1 = require("./decode");
|
|
49
|
+
const debug = (0, debug_1.default)('bitgo:abstract-utxo:transaction:signTransaction');
|
|
50
|
+
function getSignerKeychain(userPrv) {
|
|
51
|
+
if (userPrv === undefined) {
|
|
52
|
+
return undefined;
|
|
53
|
+
}
|
|
54
|
+
if (typeof userPrv !== 'string') {
|
|
55
|
+
throw new Error('expected user private key to be a string');
|
|
56
|
+
}
|
|
57
|
+
const signerKeychain = secp256k1_1.bip32.fromBase58(userPrv, utxolib.networks.bitcoin);
|
|
58
|
+
if (signerKeychain.isNeutered()) {
|
|
59
|
+
throw new Error('expected user private key but received public key');
|
|
60
|
+
}
|
|
61
|
+
debug(`Here is the public key of the xprv you used to sign: ${signerKeychain.neutered().toBase58()}`);
|
|
62
|
+
return signerKeychain;
|
|
63
|
+
}
|
|
64
|
+
async function signTransaction(coin, bitgo, params) {
|
|
65
|
+
const txPrebuild = params.txPrebuild;
|
|
66
|
+
if (lodash_1.default.isUndefined(txPrebuild) || !lodash_1.default.isObject(txPrebuild)) {
|
|
67
|
+
if (!lodash_1.default.isUndefined(txPrebuild) && !lodash_1.default.isObject(txPrebuild)) {
|
|
68
|
+
throw new Error(`txPrebuild must be an object, got type ${typeof txPrebuild}`);
|
|
69
|
+
}
|
|
70
|
+
throw new Error('missing txPrebuild parameter');
|
|
71
|
+
}
|
|
72
|
+
const tx = coin.decodeTransactionFromPrebuild(params.txPrebuild);
|
|
73
|
+
const signerKeychain = getSignerKeychain(params.prv);
|
|
74
|
+
const { wallet } = params;
|
|
75
|
+
if (wallet && (0, descriptor_1.isDescriptorWallet)(wallet)) {
|
|
76
|
+
if (!signerKeychain) {
|
|
77
|
+
throw new Error('missing signer');
|
|
78
|
+
}
|
|
79
|
+
const walletKeys = (0, keychains_1.toBip32Triple)(await (0, keychains_1.fetchKeychains)(coin, wallet));
|
|
80
|
+
const descriptorMap = (0, descriptor_1.getDescriptorMapFromWallet)(wallet, walletKeys, (0, descriptor_1.getPolicyForEnv)(bitgo.env));
|
|
81
|
+
if (tx instanceof utxolib.bitgo.UtxoPsbt) {
|
|
82
|
+
descriptor.signPsbt(tx, descriptorMap, signerKeychain, {
|
|
83
|
+
onUnknownInput: 'throw',
|
|
84
|
+
});
|
|
85
|
+
return { txHex: tx.toHex() };
|
|
86
|
+
}
|
|
87
|
+
else {
|
|
88
|
+
throw new Error('expected a UtxoPsbt object');
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
else {
|
|
92
|
+
const signedTx = await fixedScript.signTransaction(coin, tx, getSignerKeychain(params.prv), coin.network, {
|
|
93
|
+
walletId: params.txPrebuild.walletId,
|
|
94
|
+
txInfo: params.txPrebuild.txInfo,
|
|
95
|
+
isLastSignature: params.isLastSignature ?? false,
|
|
96
|
+
signingStep: params.signingStep,
|
|
97
|
+
allowNonSegwitSigningWithoutPrevTx: params.allowNonSegwitSigningWithoutPrevTx ?? false,
|
|
98
|
+
pubs: params.pubs,
|
|
99
|
+
cosignerPub: params.cosignerPub,
|
|
100
|
+
});
|
|
101
|
+
const buffer = Buffer.isBuffer(signedTx) ? signedTx : (0, decode_1.encodeTransaction)(signedTx);
|
|
102
|
+
return { txHex: buffer.toString('hex') };
|
|
103
|
+
}
|
|
104
|
+
}
|
|
105
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lnblRyYW5zYWN0aW9uLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3RyYW5zYWN0aW9uL3NpZ25UcmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQStCQSwwQ0ErQ0M7QUE5RUQsb0RBQXVCO0FBRXZCLDhEQUFnRDtBQUNoRCxxREFBOEM7QUFDOUMsa0RBQStCO0FBRy9CLDhDQUFnRztBQUNoRyw0Q0FBNkQ7QUFFN0QsMkRBQTZDO0FBQzdDLHlEQUEyQztBQUMzQyxxQ0FBNkM7QUFFN0MsTUFBTSxLQUFLLEdBQUcsSUFBQSxlQUFVLEVBQUMsaURBQWlELENBQUMsQ0FBQztBQUU1RSxTQUFTLGlCQUFpQixDQUFDLE9BQWdCO0lBQ3pDLElBQUksT0FBTyxLQUFLLFNBQVMsRUFBRSxDQUFDO1FBQzFCLE9BQU8sU0FBUyxDQUFDO0lBQ25CLENBQUM7SUFDRCxJQUFJLE9BQU8sT0FBTyxLQUFLLFFBQVEsRUFBRSxDQUFDO1FBQ2hDLE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLENBQUMsQ0FBQztJQUM5RCxDQUFDO0lBQ0QsTUFBTSxjQUFjLEdBQUcsaUJBQUssQ0FBQyxVQUFVLENBQUMsT0FBTyxFQUFFLE9BQU8sQ0FBQyxRQUFRLENBQUMsT0FBTyxDQUFDLENBQUM7SUFDM0UsSUFBSSxjQUFjLENBQUMsVUFBVSxFQUFFLEVBQUUsQ0FBQztRQUNoQyxNQUFNLElBQUksS0FBSyxDQUFDLG1EQUFtRCxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELEtBQUssQ0FBQyx3REFBd0QsY0FBYyxDQUFDLFFBQVEsRUFBRSxDQUFDLFFBQVEsRUFBRSxFQUFFLENBQUMsQ0FBQztJQUN0RyxPQUFPLGNBQWMsQ0FBQztBQUN4QixDQUFDO0FBRU0sS0FBSyxVQUFVLGVBQWUsQ0FDbkMsSUFBc0IsRUFDdEIsS0FBZ0IsRUFDaEIsTUFBdUM7SUFFdkMsTUFBTSxVQUFVLEdBQUcsTUFBTSxDQUFDLFVBQVUsQ0FBQztJQUVyQyxJQUFJLGdCQUFDLENBQUMsV0FBVyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsZ0JBQUMsQ0FBQyxRQUFRLENBQUMsVUFBVSxDQUFDLEVBQUUsQ0FBQztRQUN6RCxJQUFJLENBQUMsZ0JBQUMsQ0FBQyxXQUFXLENBQUMsVUFBVSxDQUFDLElBQUksQ0FBQyxnQkFBQyxDQUFDLFFBQVEsQ0FBQyxVQUFVLENBQUMsRUFBRSxDQUFDO1lBQzFELE1BQU0sSUFBSSxLQUFLLENBQUMsMENBQTBDLE9BQU8sVUFBVSxFQUFFLENBQUMsQ0FBQztRQUNqRixDQUFDO1FBQ0QsTUFBTSxJQUFJLEtBQUssQ0FBQyw4QkFBOEIsQ0FBQyxDQUFDO0lBQ2xELENBQUM7SUFFRCxNQUFNLEVBQUUsR0FBRyxJQUFJLENBQUMsNkJBQTZCLENBQUMsTUFBTSxDQUFDLFVBQVUsQ0FBQyxDQUFDO0lBRWpFLE1BQU0sY0FBYyxHQUFHLGlCQUFpQixDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUVyRCxNQUFNLEVBQUUsTUFBTSxFQUFFLEdBQUcsTUFBTSxDQUFDO0lBRTFCLElBQUksTUFBTSxJQUFJLElBQUEsK0JBQWtCLEVBQUMsTUFBTSxDQUFDLEVBQUUsQ0FBQztRQUN6QyxJQUFJLENBQUMsY0FBYyxFQUFFLENBQUM7WUFDcEIsTUFBTSxJQUFJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDO1FBQ3BDLENBQUM7UUFDRCxNQUFNLFVBQVUsR0FBRyxJQUFBLHlCQUFhLEVBQUMsTUFBTSxJQUFBLDBCQUFjLEVBQUMsSUFBSSxFQUFFLE1BQU0sQ0FBQyxDQUFDLENBQUM7UUFDckUsTUFBTSxhQUFhLEdBQUcsSUFBQSx1Q0FBMEIsRUFBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUEsNEJBQWUsRUFBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztRQUNqRyxJQUFJLEVBQUUsWUFBWSxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRSxDQUFDO1lBQ3pDLFVBQVUsQ0FBQyxRQUFRLENBQUMsRUFBRSxFQUFFLGFBQWEsRUFBRSxjQUFjLEVBQUU7Z0JBQ3JELGNBQWMsRUFBRSxPQUFPO2FBQ3hCLENBQUMsQ0FBQztZQUNILE9BQU8sRUFBRSxLQUFLLEVBQUUsRUFBRSxDQUFDLEtBQUssRUFBRSxFQUFFLENBQUM7UUFDL0IsQ0FBQzthQUFNLENBQUM7WUFDTixNQUFNLElBQUksS0FBSyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFDaEQsQ0FBQztJQUNILENBQUM7U0FBTSxDQUFDO1FBQ04sTUFBTSxRQUFRLEdBQUcsTUFBTSxXQUFXLENBQUMsZUFBZSxDQUFDLElBQUksRUFBRSxFQUFFLEVBQUUsaUJBQWlCLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxFQUFFLElBQUksQ0FBQyxPQUFPLEVBQUU7WUFDeEcsUUFBUSxFQUFFLE1BQU0sQ0FBQyxVQUFVLENBQUMsUUFBUTtZQUNwQyxNQUFNLEVBQUUsTUFBTSxDQUFDLFVBQVUsQ0FBQyxNQUFNO1lBQ2hDLGVBQWUsRUFBRSxNQUFNLENBQUMsZUFBZSxJQUFJLEtBQUs7WUFDaEQsV0FBVyxFQUFFLE1BQU0sQ0FBQyxXQUFXO1lBQy9CLGtDQUFrQyxFQUFFLE1BQU0sQ0FBQyxrQ0FBa0MsSUFBSSxLQUFLO1lBQ3RGLElBQUksRUFBRSxNQUFNLENBQUMsSUFBSTtZQUNqQixXQUFXLEVBQUUsTUFBTSxDQUFDLFdBQVc7U0FDaEMsQ0FBQyxDQUFDO1FBQ0gsTUFBTSxNQUFNLEdBQUcsTUFBTSxDQUFDLFFBQVEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxDQUFDLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQyxJQUFBLDBCQUFpQixFQUFDLFFBQVEsQ0FBQyxDQUFDO1FBQ2xGLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsRUFBRSxDQUFDO0lBQzNDLENBQUM7QUFDSCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IF8gZnJvbSAnbG9kYXNoJztcbmltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgYmlwMzIgfSBmcm9tICdAYml0Z28tYmV0YS9zZWNwMjU2azEnO1xuaW1wb3J0IGJ1aWxkRGVidWcgZnJvbSAnZGVidWcnO1xuXG5pbXBvcnQgeyBBYnN0cmFjdFV0eG9Db2luLCBTaWduVHJhbnNhY3Rpb25PcHRpb25zIH0gZnJvbSAnLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBnZXREZXNjcmlwdG9yTWFwRnJvbVdhbGxldCwgZ2V0UG9saWN5Rm9yRW52LCBpc0Rlc2NyaXB0b3JXYWxsZXQgfSBmcm9tICcuLi9kZXNjcmlwdG9yJztcbmltcG9ydCB7IGZldGNoS2V5Y2hhaW5zLCB0b0JpcDMyVHJpcGxlIH0gZnJvbSAnLi4va2V5Y2hhaW5zJztcblxuaW1wb3J0ICogYXMgZml4ZWRTY3JpcHQgZnJvbSAnLi9maXhlZFNjcmlwdCc7XG5pbXBvcnQgKiBhcyBkZXNjcmlwdG9yIGZyb20gJy4vZGVzY3JpcHRvcic7XG5pbXBvcnQgeyBlbmNvZGVUcmFuc2FjdGlvbiB9IGZyb20gJy4vZGVjb2RlJztcblxuY29uc3QgZGVidWcgPSBidWlsZERlYnVnKCdiaXRnbzphYnN0cmFjdC11dHhvOnRyYW5zYWN0aW9uOnNpZ25UcmFuc2FjdGlvbicpO1xuXG5mdW5jdGlvbiBnZXRTaWduZXJLZXljaGFpbih1c2VyUHJ2OiB1bmtub3duKTogdXR4b2xpYi5CSVAzMkludGVyZmFjZSB8IHVuZGVmaW5lZCB7XG4gIGlmICh1c2VyUHJ2ID09PSB1bmRlZmluZWQpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGlmICh0eXBlb2YgdXNlclBydiAhPT0gJ3N0cmluZycpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ2V4cGVjdGVkIHVzZXIgcHJpdmF0ZSBrZXkgdG8gYmUgYSBzdHJpbmcnKTtcbiAgfVxuICBjb25zdCBzaWduZXJLZXljaGFpbiA9IGJpcDMyLmZyb21CYXNlNTgodXNlclBydiwgdXR4b2xpYi5uZXR3b3Jrcy5iaXRjb2luKTtcbiAgaWYgKHNpZ25lcktleWNoYWluLmlzTmV1dGVyZWQoKSkge1xuICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgdXNlciBwcml2YXRlIGtleSBidXQgcmVjZWl2ZWQgcHVibGljIGtleScpO1xuICB9XG4gIGRlYnVnKGBIZXJlIGlzIHRoZSBwdWJsaWMga2V5IG9mIHRoZSB4cHJ2IHlvdSB1c2VkIHRvIHNpZ246ICR7c2lnbmVyS2V5Y2hhaW4ubmV1dGVyZWQoKS50b0Jhc2U1OCgpfWApO1xuICByZXR1cm4gc2lnbmVyS2V5Y2hhaW47XG59XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaWduVHJhbnNhY3Rpb248VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4oXG4gIGNvaW46IEFic3RyYWN0VXR4b0NvaW4sXG4gIGJpdGdvOiBCaXRHb0Jhc2UsXG4gIHBhcmFtczogU2lnblRyYW5zYWN0aW9uT3B0aW9uczxUTnVtYmVyPlxuKTogUHJvbWlzZTx7IHR4SGV4OiBzdHJpbmcgfT4ge1xuICBjb25zdCB0eFByZWJ1aWxkID0gcGFyYW1zLnR4UHJlYnVpbGQ7XG5cbiAgaWYgKF8uaXNVbmRlZmluZWQodHhQcmVidWlsZCkgfHwgIV8uaXNPYmplY3QodHhQcmVidWlsZCkpIHtcbiAgICBpZiAoIV8uaXNVbmRlZmluZWQodHhQcmVidWlsZCkgJiYgIV8uaXNPYmplY3QodHhQcmVidWlsZCkpIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcihgdHhQcmVidWlsZCBtdXN0IGJlIGFuIG9iamVjdCwgZ290IHR5cGUgJHt0eXBlb2YgdHhQcmVidWlsZH1gKTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKCdtaXNzaW5nIHR4UHJlYnVpbGQgcGFyYW1ldGVyJyk7XG4gIH1cblxuICBjb25zdCB0eCA9IGNvaW4uZGVjb2RlVHJhbnNhY3Rpb25Gcm9tUHJlYnVpbGQocGFyYW1zLnR4UHJlYnVpbGQpO1xuXG4gIGNvbnN0IHNpZ25lcktleWNoYWluID0gZ2V0U2lnbmVyS2V5Y2hhaW4ocGFyYW1zLnBydik7XG5cbiAgY29uc3QgeyB3YWxsZXQgfSA9IHBhcmFtcztcblxuICBpZiAod2FsbGV0ICYmIGlzRGVzY3JpcHRvcldhbGxldCh3YWxsZXQpKSB7XG4gICAgaWYgKCFzaWduZXJLZXljaGFpbikge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdtaXNzaW5nIHNpZ25lcicpO1xuICAgIH1cbiAgICBjb25zdCB3YWxsZXRLZXlzID0gdG9CaXAzMlRyaXBsZShhd2FpdCBmZXRjaEtleWNoYWlucyhjb2luLCB3YWxsZXQpKTtcbiAgICBjb25zdCBkZXNjcmlwdG9yTWFwID0gZ2V0RGVzY3JpcHRvck1hcEZyb21XYWxsZXQod2FsbGV0LCB3YWxsZXRLZXlzLCBnZXRQb2xpY3lGb3JFbnYoYml0Z28uZW52KSk7XG4gICAgaWYgKHR4IGluc3RhbmNlb2YgdXR4b2xpYi5iaXRnby5VdHhvUHNidCkge1xuICAgICAgZGVzY3JpcHRvci5zaWduUHNidCh0eCwgZGVzY3JpcHRvck1hcCwgc2lnbmVyS2V5Y2hhaW4sIHtcbiAgICAgICAgb25Vbmtub3duSW5wdXQ6ICd0aHJvdycsXG4gICAgICB9KTtcbiAgICAgIHJldHVybiB7IHR4SGV4OiB0eC50b0hleCgpIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignZXhwZWN0ZWQgYSBVdHhvUHNidCBvYmplY3QnKTtcbiAgICB9XG4gIH0gZWxzZSB7XG4gICAgY29uc3Qgc2lnbmVkVHggPSBhd2FpdCBmaXhlZFNjcmlwdC5zaWduVHJhbnNhY3Rpb24oY29pbiwgdHgsIGdldFNpZ25lcktleWNoYWluKHBhcmFtcy5wcnYpLCBjb2luLm5ldHdvcmssIHtcbiAgICAgIHdhbGxldElkOiBwYXJhbXMudHhQcmVidWlsZC53YWxsZXRJZCxcbiAgICAgIHR4SW5mbzogcGFyYW1zLnR4UHJlYnVpbGQudHhJbmZvLFxuICAgICAgaXNMYXN0U2lnbmF0dXJlOiBwYXJhbXMuaXNMYXN0U2lnbmF0dXJlID8/IGZhbHNlLFxuICAgICAgc2lnbmluZ1N0ZXA6IHBhcmFtcy5zaWduaW5nU3RlcCxcbiAgICAgIGFsbG93Tm9uU2Vnd2l0U2lnbmluZ1dpdGhvdXRQcmV2VHg6IHBhcmFtcy5hbGxvd05vblNlZ3dpdFNpZ25pbmdXaXRob3V0UHJldlR4ID8/IGZhbHNlLFxuICAgICAgcHViczogcGFyYW1zLnB1YnMsXG4gICAgICBjb3NpZ25lclB1YjogcGFyYW1zLmNvc2lnbmVyUHViLFxuICAgIH0pO1xuICAgIGNvbnN0IGJ1ZmZlciA9IEJ1ZmZlci5pc0J1ZmZlcihzaWduZWRUeCkgPyBzaWduZWRUeCA6IGVuY29kZVRyYW5zYWN0aW9uKHNpZ25lZFR4KTtcbiAgICByZXR1cm4geyB0eEhleDogYnVmZmVyLnRvU3RyaW5nKCdoZXgnKSB9O1xuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
|
+
import { fixedScriptWallet } from '@bitgo/wasm-utxo';
|
|
3
|
+
import type { UtxoNamedKeychains } from '../keychains';
|
|
4
|
+
import type { CustomChangeOptions } from './fixedScript';
|
|
5
|
+
export type SdkBackend = 'utxolib' | 'wasm-utxo';
|
|
6
|
+
export declare function isSdkBackend(backend: string): backend is SdkBackend;
|
|
7
|
+
export type DecodedTransaction<TNumber extends number | bigint> = utxolib.bitgo.UtxoTransaction<TNumber> | utxolib.bitgo.UtxoPsbt | fixedScriptWallet.BitGoPsbt;
|
|
8
|
+
export interface BaseOutput<TAmount = string | number> {
|
|
9
|
+
address: string;
|
|
10
|
+
amount: TAmount;
|
|
11
|
+
external?: boolean;
|
|
12
|
+
}
|
|
13
|
+
export interface FixedScriptWalletOutput<TAmount = string | number> extends BaseOutput<TAmount> {
|
|
14
|
+
needsCustomChangeKeySignatureVerification?: boolean;
|
|
15
|
+
chain: number;
|
|
16
|
+
index: number;
|
|
17
|
+
}
|
|
18
|
+
export type Output<TAmount = string | number> = BaseOutput<TAmount> | FixedScriptWalletOutput<TAmount>;
|
|
19
|
+
export type BaseParsedTransactionOutputs<TNumber extends number | bigint, TOutput> = {
|
|
20
|
+
/** all transaction outputs */
|
|
21
|
+
outputs: TOutput[];
|
|
22
|
+
/** transaction outputs that were specified as recipients but are missing from the transaction */
|
|
23
|
+
missingOutputs: TOutput[];
|
|
24
|
+
/** transaction outputs that were specified as recipients and are present in the transaction */
|
|
25
|
+
explicitExternalOutputs: TOutput[];
|
|
26
|
+
/** transaction outputs that were not specified as recipients but are present in the transaction */
|
|
27
|
+
implicitExternalOutputs: TOutput[];
|
|
28
|
+
/** transaction outputs that are change outputs */
|
|
29
|
+
changeOutputs: TOutput[];
|
|
30
|
+
/** sum of all explicit external outputs */
|
|
31
|
+
explicitExternalSpendAmount: TNumber;
|
|
32
|
+
/** sum of all implicit external outputs */
|
|
33
|
+
implicitExternalSpendAmount: TNumber;
|
|
34
|
+
};
|
|
35
|
+
export type BaseParsedTransaction<TNumber extends number | bigint, TOutput> = BaseParsedTransactionOutputs<TNumber, TOutput> /** Some extra properties that have nothing to do with an individual transaction */ & {
|
|
36
|
+
keychains: UtxoNamedKeychains;
|
|
37
|
+
keySignatures: {
|
|
38
|
+
backupPub?: string;
|
|
39
|
+
bitgoPub?: string;
|
|
40
|
+
};
|
|
41
|
+
needsCustomChangeKeySignatureVerification: boolean;
|
|
42
|
+
customChange?: CustomChangeOptions;
|
|
43
|
+
};
|
|
44
|
+
/**
|
|
45
|
+
* This type is a bit silly because it allows the type for the aggregate amounts to be different from the type of
|
|
46
|
+
* individual amounts.
|
|
47
|
+
*/
|
|
48
|
+
export type ParsedTransaction<TNumber extends number | bigint = number> = BaseParsedTransaction<TNumber, Output>;
|
|
49
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/transaction/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAErD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAEvD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEzD,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,WAAW,CAAC;AAEjD,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,IAAI,UAAU,CAEnE;AAED,MAAM,MAAM,kBAAkB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,IAC1D,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,OAAO,CAAC,GACtC,OAAO,CAAC,KAAK,CAAC,QAAQ,GACtB,iBAAiB,CAAC,SAAS,CAAC;AAEhC,MAAM,WAAW,UAAU,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM;IACnD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;IAGhB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,CAAE,SAAQ,UAAU,CAAC,OAAO,CAAC;IAC7F,yCAAyC,CAAC,EAAE,OAAO,CAAC;IACpD,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AAED,MAAM,MAAM,MAAM,CAAC,OAAO,GAAG,MAAM,GAAG,MAAM,IAAI,UAAU,CAAC,OAAO,CAAC,GAAG,uBAAuB,CAAC,OAAO,CAAC,CAAC;AAEvG,MAAM,MAAM,4BAA4B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,OAAO,IAAI;IACnF,8BAA8B;IAC9B,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,iGAAiG;IACjG,cAAc,EAAE,OAAO,EAAE,CAAC;IAC1B,+FAA+F;IAC/F,uBAAuB,EAAE,OAAO,EAAE,CAAC;IACnC,mGAAmG;IACnG,uBAAuB,EAAE,OAAO,EAAE,CAAC;IACnC,kDAAkD;IAClD,aAAa,EAAE,OAAO,EAAE,CAAC;IACzB,2CAA2C;IAC3C,2BAA2B,EAAE,OAAO,CAAC;IACrC,2CAA2C;IAC3C,2BAA2B,EAAE,OAAO,CAAC;CACtC,CAAC;AAEF,MAAM,MAAM,qBAAqB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EAAE,OAAO,IAAI,4BAA4B,CACxG,OAAO,EACP,OAAO,CACR,CAAC,mFAAmF,GAAG;IACtF,SAAS,EAAE,kBAAkB,CAAC;IAC9B,aAAa,EAAE;QACb,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,yCAAyC,EAAE,OAAO,CAAC;IACnD,YAAY,CAAC,EAAE,mBAAmB,CAAC;CACpC,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,qBAAqB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.isSdkBackend = isSdkBackend;
|
|
4
|
+
function isSdkBackend(backend) {
|
|
5
|
+
return backend === 'utxolib' || backend === 'wasm-utxo';
|
|
6
|
+
}
|
|
7
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHlwZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vdHlwZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7QUFTQSxvQ0FFQztBQUZELFNBQWdCLFlBQVksQ0FBQyxPQUFlO0lBQzFDLE9BQU8sT0FBTyxLQUFLLFNBQVMsSUFBSSxPQUFPLEtBQUssV0FBVyxDQUFDO0FBQzFELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgKiBhcyB1dHhvbGliIGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcbmltcG9ydCB7IGZpeGVkU2NyaXB0V2FsbGV0IH0gZnJvbSAnQGJpdGdvL3dhc20tdXR4byc7XG5cbmltcG9ydCB0eXBlIHsgVXR4b05hbWVkS2V5Y2hhaW5zIH0gZnJvbSAnLi4va2V5Y2hhaW5zJztcblxuaW1wb3J0IHR5cGUgeyBDdXN0b21DaGFuZ2VPcHRpb25zIH0gZnJvbSAnLi9maXhlZFNjcmlwdCc7XG5cbmV4cG9ydCB0eXBlIFNka0JhY2tlbmQgPSAndXR4b2xpYicgfCAnd2FzbS11dHhvJztcblxuZXhwb3J0IGZ1bmN0aW9uIGlzU2RrQmFja2VuZChiYWNrZW5kOiBzdHJpbmcpOiBiYWNrZW5kIGlzIFNka0JhY2tlbmQge1xuICByZXR1cm4gYmFja2VuZCA9PT0gJ3V0eG9saWInIHx8IGJhY2tlbmQgPT09ICd3YXNtLXV0eG8nO1xufVxuXG5leHBvcnQgdHlwZSBEZWNvZGVkVHJhbnNhY3Rpb248VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludD4gPVxuICB8IHV0eG9saWIuYml0Z28uVXR4b1RyYW5zYWN0aW9uPFROdW1iZXI+XG4gIHwgdXR4b2xpYi5iaXRnby5VdHhvUHNidFxuICB8IGZpeGVkU2NyaXB0V2FsbGV0LkJpdEdvUHNidDtcblxuZXhwb3J0IGludGVyZmFjZSBCYXNlT3V0cHV0PFRBbW91bnQgPSBzdHJpbmcgfCBudW1iZXI+IHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBhbW91bnQ6IFRBbW91bnQ7XG4gIC8vIEV2ZW4gdGhvdWdoIHRoaXMgZXh0ZXJuYWwgZmxhZyBpcyByZWR1bmRhbnQgd2l0aCB0aGUgY2hhaW4gcHJvcGVydHksIGl0IGlzIG5lY2Vzc2FyeSBmb3IgYmFja3dhcmRzIGNvbXBhdGliaWxpdHlcbiAgLy8gd2l0aCBsZWdhY3kgdHJhbnNhY3Rpb24gZm9ybWF0LlxuICBleHRlcm5hbD86IGJvb2xlYW47XG59XG5cbmV4cG9ydCBpbnRlcmZhY2UgRml4ZWRTY3JpcHRXYWxsZXRPdXRwdXQ8VEFtb3VudCA9IHN0cmluZyB8IG51bWJlcj4gZXh0ZW5kcyBCYXNlT3V0cHV0PFRBbW91bnQ+IHtcbiAgbmVlZHNDdXN0b21DaGFuZ2VLZXlTaWduYXR1cmVWZXJpZmljYXRpb24/OiBib29sZWFuO1xuICBjaGFpbjogbnVtYmVyO1xuICBpbmRleDogbnVtYmVyO1xufVxuXG5leHBvcnQgdHlwZSBPdXRwdXQ8VEFtb3VudCA9IHN0cmluZyB8IG51bWJlcj4gPSBCYXNlT3V0cHV0PFRBbW91bnQ+IHwgRml4ZWRTY3JpcHRXYWxsZXRPdXRwdXQ8VEFtb3VudD47XG5cbmV4cG9ydCB0eXBlIEJhc2VQYXJzZWRUcmFuc2FjdGlvbk91dHB1dHM8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludCwgVE91dHB1dD4gPSB7XG4gIC8qKiBhbGwgdHJhbnNhY3Rpb24gb3V0cHV0cyAqL1xuICBvdXRwdXRzOiBUT3V0cHV0W107XG4gIC8qKiB0cmFuc2FjdGlvbiBvdXRwdXRzIHRoYXQgd2VyZSBzcGVjaWZpZWQgYXMgcmVjaXBpZW50cyBidXQgYXJlIG1pc3NpbmcgZnJvbSB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgbWlzc2luZ091dHB1dHM6IFRPdXRwdXRbXTtcbiAgLyoqIHRyYW5zYWN0aW9uIG91dHB1dHMgdGhhdCB3ZXJlIHNwZWNpZmllZCBhcyByZWNpcGllbnRzIGFuZCBhcmUgcHJlc2VudCBpbiB0aGUgdHJhbnNhY3Rpb24gKi9cbiAgZXhwbGljaXRFeHRlcm5hbE91dHB1dHM6IFRPdXRwdXRbXTtcbiAgLyoqIHRyYW5zYWN0aW9uIG91dHB1dHMgdGhhdCB3ZXJlIG5vdCBzcGVjaWZpZWQgYXMgcmVjaXBpZW50cyBidXQgYXJlIHByZXNlbnQgaW4gdGhlIHRyYW5zYWN0aW9uICovXG4gIGltcGxpY2l0RXh0ZXJuYWxPdXRwdXRzOiBUT3V0cHV0W107XG4gIC8qKiB0cmFuc2FjdGlvbiBvdXRwdXRzIHRoYXQgYXJlIGNoYW5nZSBvdXRwdXRzICovXG4gIGNoYW5nZU91dHB1dHM6IFRPdXRwdXRbXTtcbiAgLyoqIHN1bSBvZiBhbGwgZXhwbGljaXQgZXh0ZXJuYWwgb3V0cHV0cyAqL1xuICBleHBsaWNpdEV4dGVybmFsU3BlbmRBbW91bnQ6IFROdW1iZXI7XG4gIC8qKiBzdW0gb2YgYWxsIGltcGxpY2l0IGV4dGVybmFsIG91dHB1dHMgKi9cbiAgaW1wbGljaXRFeHRlcm5hbFNwZW5kQW1vdW50OiBUTnVtYmVyO1xufTtcblxuZXhwb3J0IHR5cGUgQmFzZVBhcnNlZFRyYW5zYWN0aW9uPFROdW1iZXIgZXh0ZW5kcyBudW1iZXIgfCBiaWdpbnQsIFRPdXRwdXQ+ID0gQmFzZVBhcnNlZFRyYW5zYWN0aW9uT3V0cHV0czxcbiAgVE51bWJlcixcbiAgVE91dHB1dFxuPiAvKiogU29tZSBleHRyYSBwcm9wZXJ0aWVzIHRoYXQgaGF2ZSBub3RoaW5nIHRvIGRvIHdpdGggYW4gaW5kaXZpZHVhbCB0cmFuc2FjdGlvbiAqLyAmIHtcbiAga2V5Y2hhaW5zOiBVdHhvTmFtZWRLZXljaGFpbnM7XG4gIGtleVNpZ25hdHVyZXM6IHtcbiAgICBiYWNrdXBQdWI/OiBzdHJpbmc7XG4gICAgYml0Z29QdWI/OiBzdHJpbmc7XG4gIH07XG4gIG5lZWRzQ3VzdG9tQ2hhbmdlS2V5U2lnbmF0dXJlVmVyaWZpY2F0aW9uOiBib29sZWFuO1xuICBjdXN0b21DaGFuZ2U/OiBDdXN0b21DaGFuZ2VPcHRpb25zO1xufTtcblxuLyoqXG4gKiBUaGlzIHR5cGUgaXMgYSBiaXQgc2lsbHkgYmVjYXVzZSBpdCBhbGxvd3MgdGhlIHR5cGUgZm9yIHRoZSBhZ2dyZWdhdGUgYW1vdW50cyB0byBiZSBkaWZmZXJlbnQgZnJvbSB0aGUgdHlwZSBvZlxuICogaW5kaXZpZHVhbCBhbW91bnRzLlxuICovXG5leHBvcnQgdHlwZSBQYXJzZWRUcmFuc2FjdGlvbjxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50ID0gbnVtYmVyPiA9IEJhc2VQYXJzZWRUcmFuc2FjdGlvbjxUTnVtYmVyLCBPdXRwdXQ+O1xuIl19
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { BitGoBase } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { AbstractUtxoCoin, VerifyTransactionOptions } from '../abstractUtxoCoin';
|
|
3
|
+
export declare function verifyTransaction<TNumber extends bigint | number>(coin: AbstractUtxoCoin, bitgo: BitGoBase, params: VerifyTransactionOptions<TNumber>): Promise<boolean>;
|
|
4
|
+
//# sourceMappingURL=verifyTransaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"verifyTransaction.d.ts","sourceRoot":"","sources":["../../../../src/transaction/verifyTransaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAOjF,wBAAsB,iBAAiB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,EACrE,IAAI,EAAE,gBAAgB,EACtB,KAAK,EAAE,SAAS,EAChB,MAAM,EAAE,wBAAwB,CAAC,OAAO,CAAC,GACxC,OAAO,CAAC,OAAO,CAAC,CAWlB"}
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
exports.verifyTransaction = verifyTransaction;
|
|
37
|
+
const descriptor_1 = require("../descriptor");
|
|
38
|
+
const keychains_1 = require("../keychains");
|
|
39
|
+
const fixedScript = __importStar(require("./fixedScript"));
|
|
40
|
+
const descriptor = __importStar(require("./descriptor"));
|
|
41
|
+
async function verifyTransaction(coin, bitgo, params) {
|
|
42
|
+
if ((0, descriptor_1.isDescriptorWallet)(params.wallet)) {
|
|
43
|
+
const walletKeys = (0, keychains_1.toBip32Triple)(await (0, keychains_1.fetchKeychains)(coin, params.wallet));
|
|
44
|
+
return descriptor.verifyTransaction(coin, params, (0, descriptor_1.getDescriptorMapFromWallet)(params.wallet, walletKeys, (0, descriptor_1.getPolicyForEnv)(bitgo.env)));
|
|
45
|
+
}
|
|
46
|
+
else {
|
|
47
|
+
return fixedScript.verifyTransaction(coin, bitgo, params);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidmVyaWZ5VHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvdHJhbnNhY3Rpb24vdmVyaWZ5VHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFTQSw4Q0FlQztBQXJCRCw4Q0FBZ0c7QUFDaEcsNENBQTZEO0FBRTdELDJEQUE2QztBQUM3Qyx5REFBMkM7QUFFcEMsS0FBSyxVQUFVLGlCQUFpQixDQUNyQyxJQUFzQixFQUN0QixLQUFnQixFQUNoQixNQUF5QztJQUV6QyxJQUFJLElBQUEsK0JBQWtCLEVBQUMsTUFBTSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDdEMsTUFBTSxVQUFVLEdBQUcsSUFBQSx5QkFBYSxFQUFDLE1BQU0sSUFBQSwwQkFBYyxFQUFDLElBQUksRUFBRSxNQUFNLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQztRQUM1RSxPQUFPLFVBQVUsQ0FBQyxpQkFBaUIsQ0FDakMsSUFBSSxFQUNKLE1BQU0sRUFDTixJQUFBLHVDQUEwQixFQUFDLE1BQU0sQ0FBQyxNQUFNLEVBQUUsVUFBVSxFQUFFLElBQUEsNEJBQWUsRUFBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FDbEYsQ0FBQztJQUNKLENBQUM7U0FBTSxDQUFDO1FBQ04sT0FBTyxXQUFXLENBQUMsaUJBQWlCLENBQUMsSUFBSSxFQUFFLEtBQUssRUFBRSxNQUFNLENBQUMsQ0FBQztJQUM1RCxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJpdEdvQmFzZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcblxuaW1wb3J0IHsgQWJzdHJhY3RVdHhvQ29pbiwgVmVyaWZ5VHJhbnNhY3Rpb25PcHRpb25zIH0gZnJvbSAnLi4vYWJzdHJhY3RVdHhvQ29pbic7XG5pbXBvcnQgeyBnZXREZXNjcmlwdG9yTWFwRnJvbVdhbGxldCwgaXNEZXNjcmlwdG9yV2FsbGV0LCBnZXRQb2xpY3lGb3JFbnYgfSBmcm9tICcuLi9kZXNjcmlwdG9yJztcbmltcG9ydCB7IGZldGNoS2V5Y2hhaW5zLCB0b0JpcDMyVHJpcGxlIH0gZnJvbSAnLi4va2V5Y2hhaW5zJztcblxuaW1wb3J0ICogYXMgZml4ZWRTY3JpcHQgZnJvbSAnLi9maXhlZFNjcmlwdCc7XG5pbXBvcnQgKiBhcyBkZXNjcmlwdG9yIGZyb20gJy4vZGVzY3JpcHRvcic7XG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiB2ZXJpZnlUcmFuc2FjdGlvbjxUTnVtYmVyIGV4dGVuZHMgYmlnaW50IHwgbnVtYmVyPihcbiAgY29pbjogQWJzdHJhY3RVdHhvQ29pbixcbiAgYml0Z286IEJpdEdvQmFzZSxcbiAgcGFyYW1zOiBWZXJpZnlUcmFuc2FjdGlvbk9wdGlvbnM8VE51bWJlcj5cbik6IFByb21pc2U8Ym9vbGVhbj4ge1xuICBpZiAoaXNEZXNjcmlwdG9yV2FsbGV0KHBhcmFtcy53YWxsZXQpKSB7XG4gICAgY29uc3Qgd2FsbGV0S2V5cyA9IHRvQmlwMzJUcmlwbGUoYXdhaXQgZmV0Y2hLZXljaGFpbnMoY29pbiwgcGFyYW1zLndhbGxldCkpO1xuICAgIHJldHVybiBkZXNjcmlwdG9yLnZlcmlmeVRyYW5zYWN0aW9uKFxuICAgICAgY29pbixcbiAgICAgIHBhcmFtcyxcbiAgICAgIGdldERlc2NyaXB0b3JNYXBGcm9tV2FsbGV0KHBhcmFtcy53YWxsZXQsIHdhbGxldEtleXMsIGdldFBvbGljeUZvckVudihiaXRnby5lbnYpKVxuICAgICk7XG4gIH0gZWxzZSB7XG4gICAgcmV0dXJuIGZpeGVkU2NyaXB0LnZlcmlmeVRyYW5zYWN0aW9uKGNvaW4sIGJpdGdvLCBwYXJhbXMpO1xuICB9XG59XG4iXX0=
|