@bitgo-beta/abstract-utxo 1.6.1-alpha.45 → 1.6.1-alpha.450
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 +390 -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 +84 -0
- package/dist/cjs/src/recovery/psbt.d.ts.map +1 -0
- package/dist/cjs/src/recovery/psbt.js +251 -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 +350 -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 +84 -0
- package/dist/esm/recovery/psbt.d.ts.map +1 -0
- package/dist/esm/recovery/psbt.js +208 -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,171 @@
|
|
|
1
|
+
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
|
+
export const utxoCoinsMainnet = ['btc', 'bch', 'bcha', 'bsv', 'btg', 'dash', 'doge', 'ltc', 'zec'];
|
|
3
|
+
export const utxoCoinsTestnet = [
|
|
4
|
+
'tbtc',
|
|
5
|
+
'tbch',
|
|
6
|
+
'tbsv',
|
|
7
|
+
'tdash',
|
|
8
|
+
'tdoge',
|
|
9
|
+
'tltc',
|
|
10
|
+
'tzec',
|
|
11
|
+
'tbtcsig',
|
|
12
|
+
'tbtc4',
|
|
13
|
+
'tbtcbgsig',
|
|
14
|
+
];
|
|
15
|
+
export function isUtxoCoinNameMainnet(coinName) {
|
|
16
|
+
return utxoCoinsMainnet.includes(coinName);
|
|
17
|
+
}
|
|
18
|
+
export function isUtxoCoinNameTestnet(coinName) {
|
|
19
|
+
return utxoCoinsTestnet.includes(coinName);
|
|
20
|
+
}
|
|
21
|
+
export function isUtxoCoinName(coinName) {
|
|
22
|
+
return isUtxoCoinNameMainnet(coinName) || isUtxoCoinNameTestnet(coinName);
|
|
23
|
+
}
|
|
24
|
+
function getNetworkName(n) {
|
|
25
|
+
const name = utxolib.getNetworkName(n);
|
|
26
|
+
if (!name) {
|
|
27
|
+
throw new Error('Unknown network');
|
|
28
|
+
}
|
|
29
|
+
return name;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @param n
|
|
33
|
+
* @returns the family name for a network. Testnets and mainnets of the same coin share the same family name.
|
|
34
|
+
*/
|
|
35
|
+
export function getFamilyFromNetwork(n) {
|
|
36
|
+
switch (getNetworkName(n)) {
|
|
37
|
+
case 'bitcoin':
|
|
38
|
+
case 'testnet':
|
|
39
|
+
case 'bitcoinPublicSignet':
|
|
40
|
+
case 'bitcoinTestnet4':
|
|
41
|
+
case 'bitcoinBitGoSignet':
|
|
42
|
+
return 'btc';
|
|
43
|
+
case 'bitcoincash':
|
|
44
|
+
case 'bitcoincashTestnet':
|
|
45
|
+
return 'bch';
|
|
46
|
+
case 'ecash':
|
|
47
|
+
case 'ecashTest':
|
|
48
|
+
return 'bcha';
|
|
49
|
+
case 'bitcoingold':
|
|
50
|
+
case 'bitcoingoldTestnet':
|
|
51
|
+
return 'btg';
|
|
52
|
+
case 'bitcoinsv':
|
|
53
|
+
case 'bitcoinsvTestnet':
|
|
54
|
+
return 'bsv';
|
|
55
|
+
case 'dash':
|
|
56
|
+
case 'dashTest':
|
|
57
|
+
return 'dash';
|
|
58
|
+
case 'dogecoin':
|
|
59
|
+
case 'dogecoinTest':
|
|
60
|
+
return 'doge';
|
|
61
|
+
case 'litecoin':
|
|
62
|
+
case 'litecoinTest':
|
|
63
|
+
return 'ltc';
|
|
64
|
+
case 'zcash':
|
|
65
|
+
case 'zcashTest':
|
|
66
|
+
return 'zec';
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Get the chain name for a network.
|
|
71
|
+
* The chain is different for every network.
|
|
72
|
+
*/
|
|
73
|
+
export function getChainFromNetwork(n) {
|
|
74
|
+
switch (getNetworkName(n)) {
|
|
75
|
+
case 'bitcoinPublicSignet':
|
|
76
|
+
return 'tbtcsig';
|
|
77
|
+
case 'bitcoinTestnet4':
|
|
78
|
+
return 'tbtc4';
|
|
79
|
+
case 'bitcoinBitGoSignet':
|
|
80
|
+
return 'tbtcbgsig';
|
|
81
|
+
case 'bitcoin':
|
|
82
|
+
case 'testnet':
|
|
83
|
+
case 'bitcoincash':
|
|
84
|
+
case 'bitcoincashTestnet':
|
|
85
|
+
case 'ecash':
|
|
86
|
+
case 'ecashTest':
|
|
87
|
+
case 'bitcoingold':
|
|
88
|
+
case 'bitcoingoldTestnet':
|
|
89
|
+
case 'bitcoinsv':
|
|
90
|
+
case 'bitcoinsvTestnet':
|
|
91
|
+
case 'dash':
|
|
92
|
+
case 'dashTest':
|
|
93
|
+
case 'dogecoin':
|
|
94
|
+
case 'dogecoinTest':
|
|
95
|
+
case 'litecoin':
|
|
96
|
+
case 'litecoinTest':
|
|
97
|
+
case 'zcash':
|
|
98
|
+
case 'zcashTest':
|
|
99
|
+
const mainnetName = getFamilyFromNetwork(n);
|
|
100
|
+
return utxolib.isTestnet(n) ? `t${mainnetName}` : mainnetName;
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* @param coinName - the name of the coin (e.g. 'btc', 'bch', 'ltc'). Also called 'chain' in some contexts.
|
|
105
|
+
* @returns the network for a coin. This is the mainnet network for the coin.
|
|
106
|
+
*/
|
|
107
|
+
export function getNetworkFromChain(coinName) {
|
|
108
|
+
for (const network of utxolib.getNetworkList()) {
|
|
109
|
+
if (getChainFromNetwork(network) === coinName) {
|
|
110
|
+
return network;
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
throw new Error(`Unknown chain ${coinName}`);
|
|
114
|
+
}
|
|
115
|
+
export function getFullNameFromNetwork(n) {
|
|
116
|
+
const name = getNetworkName(n);
|
|
117
|
+
let prefix;
|
|
118
|
+
switch (name) {
|
|
119
|
+
case 'bitcoinTestnet4':
|
|
120
|
+
prefix = 'Testnet4 ';
|
|
121
|
+
break;
|
|
122
|
+
case 'bitcoinPublicSignet':
|
|
123
|
+
prefix = 'Public Signet ';
|
|
124
|
+
break;
|
|
125
|
+
case 'bitcoinBitGoSignet':
|
|
126
|
+
prefix = 'BitGo Signet ';
|
|
127
|
+
break;
|
|
128
|
+
default:
|
|
129
|
+
if (utxolib.isTestnet(n)) {
|
|
130
|
+
prefix = 'Testnet ';
|
|
131
|
+
}
|
|
132
|
+
else {
|
|
133
|
+
prefix = '';
|
|
134
|
+
}
|
|
135
|
+
}
|
|
136
|
+
switch (name) {
|
|
137
|
+
case 'bitcoin':
|
|
138
|
+
case 'testnet':
|
|
139
|
+
case 'bitcoinTestnet4':
|
|
140
|
+
case 'bitcoinPublicSignet':
|
|
141
|
+
case 'bitcoinBitGoSignet':
|
|
142
|
+
return prefix + 'Bitcoin';
|
|
143
|
+
case 'bitcoincash':
|
|
144
|
+
case 'bitcoincashTestnet':
|
|
145
|
+
return prefix + 'Bitcoin Cash';
|
|
146
|
+
case 'ecash':
|
|
147
|
+
case 'ecashTest':
|
|
148
|
+
return prefix + 'Bitcoin ABC';
|
|
149
|
+
case 'bitcoingold':
|
|
150
|
+
case 'bitcoingoldTestnet':
|
|
151
|
+
return prefix + 'Bitcoin Gold';
|
|
152
|
+
case 'bitcoinsv':
|
|
153
|
+
case 'bitcoinsvTestnet':
|
|
154
|
+
return prefix + 'Bitcoin SV';
|
|
155
|
+
case 'dash':
|
|
156
|
+
case 'dashTest':
|
|
157
|
+
return prefix + 'Dash';
|
|
158
|
+
case 'dogecoin':
|
|
159
|
+
case 'dogecoinTest':
|
|
160
|
+
return prefix + 'Dogecoin';
|
|
161
|
+
case 'litecoin':
|
|
162
|
+
case 'litecoinTest':
|
|
163
|
+
return prefix + 'Litecoin';
|
|
164
|
+
case 'zcash':
|
|
165
|
+
case 'zcashTest':
|
|
166
|
+
return prefix + 'ZCash';
|
|
167
|
+
default:
|
|
168
|
+
throw new Error('Unknown network');
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmFtZXMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbmFtZXMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxNQUFNLENBQUMsTUFBTSxnQkFBZ0IsR0FBRyxDQUFDLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxDQUFVLENBQUM7QUFDNUcsTUFBTSxDQUFDLE1BQU0sZ0JBQWdCLEdBQUc7SUFDOUIsTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sT0FBTztJQUNQLE9BQU87SUFDUCxNQUFNO0lBQ04sTUFBTTtJQUNOLFNBQVM7SUFDVCxPQUFPO0lBQ1AsV0FBVztDQUNILENBQUM7QUFNWCxNQUFNLFVBQVUscUJBQXFCLENBQUMsUUFBZ0I7SUFDcEQsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBK0IsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFRCxNQUFNLFVBQVUscUJBQXFCLENBQUMsUUFBZ0I7SUFDcEQsT0FBTyxnQkFBZ0IsQ0FBQyxRQUFRLENBQUMsUUFBK0IsQ0FBQyxDQUFDO0FBQ3BFLENBQUM7QUFFRCxNQUFNLFVBQVUsY0FBYyxDQUFDLFFBQWdCO0lBQzdDLE9BQU8scUJBQXFCLENBQUMsUUFBUSxDQUFDLElBQUkscUJBQXFCLENBQUMsUUFBUSxDQUFDLENBQUM7QUFDNUUsQ0FBQztBQUVELFNBQVMsY0FBYyxDQUFDLENBQWtCO0lBQ3hDLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDdkMsSUFBSSxDQUFDLElBQUksRUFBRSxDQUFDO1FBQ1YsTUFBTSxJQUFJLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO0lBQ3JDLENBQUM7SUFDRCxPQUFPLElBQUksQ0FBQztBQUNkLENBQUM7QUFFRDs7O0dBR0c7QUFDSCxNQUFNLFVBQVUsb0JBQW9CLENBQUMsQ0FBa0I7SUFDckQsUUFBUSxjQUFjLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztRQUMxQixLQUFLLFNBQVMsQ0FBQztRQUNmLEtBQUssU0FBUyxDQUFDO1FBQ2YsS0FBSyxxQkFBcUIsQ0FBQztRQUMzQixLQUFLLGlCQUFpQixDQUFDO1FBQ3ZCLEtBQUssb0JBQW9CO1lBQ3ZCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsS0FBSyxhQUFhLENBQUM7UUFDbkIsS0FBSyxvQkFBb0I7WUFDdkIsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLE9BQU8sQ0FBQztRQUNiLEtBQUssV0FBVztZQUNkLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssYUFBYSxDQUFDO1FBQ25CLEtBQUssb0JBQW9CO1lBQ3ZCLE9BQU8sS0FBSyxDQUFDO1FBQ2YsS0FBSyxXQUFXLENBQUM7UUFDakIsS0FBSyxrQkFBa0I7WUFDckIsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssVUFBVTtZQUNiLE9BQU8sTUFBTSxDQUFDO1FBQ2hCLEtBQUssVUFBVSxDQUFDO1FBQ2hCLEtBQUssY0FBYztZQUNqQixPQUFPLE1BQU0sQ0FBQztRQUNoQixLQUFLLFVBQVUsQ0FBQztRQUNoQixLQUFLLGNBQWM7WUFDakIsT0FBTyxLQUFLLENBQUM7UUFDZixLQUFLLE9BQU8sQ0FBQztRQUNiLEtBQUssV0FBVztZQUNkLE9BQU8sS0FBSyxDQUFDO0lBQ2pCLENBQUM7QUFDSCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLENBQWtCO0lBQ3BELFFBQVEsY0FBYyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7UUFDMUIsS0FBSyxxQkFBcUI7WUFDeEIsT0FBTyxTQUFTLENBQUM7UUFDbkIsS0FBSyxpQkFBaUI7WUFDcEIsT0FBTyxPQUFPLENBQUM7UUFDakIsS0FBSyxvQkFBb0I7WUFDdkIsT0FBTyxXQUFXLENBQUM7UUFDckIsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLFNBQVMsQ0FBQztRQUNmLEtBQUssYUFBYSxDQUFDO1FBQ25CLEtBQUssb0JBQW9CLENBQUM7UUFDMUIsS0FBSyxPQUFPLENBQUM7UUFDYixLQUFLLFdBQVcsQ0FBQztRQUNqQixLQUFLLGFBQWEsQ0FBQztRQUNuQixLQUFLLG9CQUFvQixDQUFDO1FBQzFCLEtBQUssV0FBVyxDQUFDO1FBQ2pCLEtBQUssa0JBQWtCLENBQUM7UUFDeEIsS0FBSyxNQUFNLENBQUM7UUFDWixLQUFLLFVBQVUsQ0FBQztRQUNoQixLQUFLLFVBQVUsQ0FBQztRQUNoQixLQUFLLGNBQWMsQ0FBQztRQUNwQixLQUFLLFVBQVUsQ0FBQztRQUNoQixLQUFLLGNBQWMsQ0FBQztRQUNwQixLQUFLLE9BQU8sQ0FBQztRQUNiLEtBQUssV0FBVztZQUNkLE1BQU0sV0FBVyxHQUFHLG9CQUFvQixDQUFDLENBQUMsQ0FBQyxDQUFDO1lBQzVDLE9BQU8sT0FBTyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxXQUFXLEVBQUUsQ0FBQyxDQUFDLENBQUMsV0FBVyxDQUFDO0lBQ2xFLENBQUM7QUFDSCxDQUFDO0FBRUQ7OztHQUdHO0FBQ0gsTUFBTSxVQUFVLG1CQUFtQixDQUFDLFFBQWdCO0lBQ2xELEtBQUssTUFBTSxPQUFPLElBQUksT0FBTyxDQUFDLGNBQWMsRUFBRSxFQUFFLENBQUM7UUFDL0MsSUFBSSxtQkFBbUIsQ0FBQyxPQUFPLENBQUMsS0FBSyxRQUFRLEVBQUUsQ0FBQztZQUM5QyxPQUFPLE9BQU8sQ0FBQztRQUNqQixDQUFDO0lBQ0gsQ0FBQztJQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLFFBQVEsRUFBRSxDQUFDLENBQUM7QUFDL0MsQ0FBQztBQUVELE1BQU0sVUFBVSxzQkFBc0IsQ0FBQyxDQUFrQjtJQUN2RCxNQUFNLElBQUksR0FBRyxjQUFjLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFFL0IsSUFBSSxNQUFjLENBQUM7SUFDbkIsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNiLEtBQUssaUJBQWlCO1lBQ3BCLE1BQU0sR0FBRyxXQUFXLENBQUM7WUFDckIsTUFBTTtRQUNSLEtBQUsscUJBQXFCO1lBQ3hCLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQztZQUMxQixNQUFNO1FBQ1IsS0FBSyxvQkFBb0I7WUFDdkIsTUFBTSxHQUFHLGVBQWUsQ0FBQztZQUN6QixNQUFNO1FBQ1I7WUFDRSxJQUFJLE9BQU8sQ0FBQyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztnQkFDekIsTUFBTSxHQUFHLFVBQVUsQ0FBQztZQUN0QixDQUFDO2lCQUFNLENBQUM7Z0JBQ04sTUFBTSxHQUFHLEVBQUUsQ0FBQztZQUNkLENBQUM7SUFDTCxDQUFDO0lBRUQsUUFBUSxJQUFJLEVBQUUsQ0FBQztRQUNiLEtBQUssU0FBUyxDQUFDO1FBQ2YsS0FBSyxTQUFTLENBQUM7UUFDZixLQUFLLGlCQUFpQixDQUFDO1FBQ3ZCLEtBQUsscUJBQXFCLENBQUM7UUFDM0IsS0FBSyxvQkFBb0I7WUFDdkIsT0FBTyxNQUFNLEdBQUcsU0FBUyxDQUFDO1FBQzVCLEtBQUssYUFBYSxDQUFDO1FBQ25CLEtBQUssb0JBQW9CO1lBQ3ZCLE9BQU8sTUFBTSxHQUFHLGNBQWMsQ0FBQztRQUNqQyxLQUFLLE9BQU8sQ0FBQztRQUNiLEtBQUssV0FBVztZQUNkLE9BQU8sTUFBTSxHQUFHLGFBQWEsQ0FBQztRQUNoQyxLQUFLLGFBQWEsQ0FBQztRQUNuQixLQUFLLG9CQUFvQjtZQUN2QixPQUFPLE1BQU0sR0FBRyxjQUFjLENBQUM7UUFDakMsS0FBSyxXQUFXLENBQUM7UUFDakIsS0FBSyxrQkFBa0I7WUFDckIsT0FBTyxNQUFNLEdBQUcsWUFBWSxDQUFDO1FBQy9CLEtBQUssTUFBTSxDQUFDO1FBQ1osS0FBSyxVQUFVO1lBQ2IsT0FBTyxNQUFNLEdBQUcsTUFBTSxDQUFDO1FBQ3pCLEtBQUssVUFBVSxDQUFDO1FBQ2hCLEtBQUssY0FBYztZQUNqQixPQUFPLE1BQU0sR0FBRyxVQUFVLENBQUM7UUFDN0IsS0FBSyxVQUFVLENBQUM7UUFDaEIsS0FBSyxjQUFjO1lBQ2pCLE9BQU8sTUFBTSxHQUFHLFVBQVUsQ0FBQztRQUM3QixLQUFLLE9BQU8sQ0FBQztRQUNiLEtBQUssV0FBVztZQUNkLE9BQU8sTUFBTSxHQUFHLE9BQU8sQ0FBQztRQUMxQjtZQUNFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsQ0FBQztJQUN2QyxDQUFDO0FBQ0gsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuXG5leHBvcnQgY29uc3QgdXR4b0NvaW5zTWFpbm5ldCA9IFsnYnRjJywgJ2JjaCcsICdiY2hhJywgJ2JzdicsICdidGcnLCAnZGFzaCcsICdkb2dlJywgJ2x0YycsICd6ZWMnXSBhcyBjb25zdDtcbmV4cG9ydCBjb25zdCB1dHhvQ29pbnNUZXN0bmV0ID0gW1xuICAndGJ0YycsXG4gICd0YmNoJyxcbiAgJ3Ric3YnLFxuICAndGRhc2gnLFxuICAndGRvZ2UnLFxuICAndGx0YycsXG4gICd0emVjJyxcbiAgJ3RidGNzaWcnLFxuICAndGJ0YzQnLFxuICAndGJ0Y2Jnc2lnJyxcbl0gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIFV0eG9Db2luTmFtZU1haW5uZXQgPSAodHlwZW9mIHV0eG9Db2luc01haW5uZXQpW251bWJlcl07XG5leHBvcnQgdHlwZSBVdHhvQ29pbk5hbWVUZXN0bmV0ID0gKHR5cGVvZiB1dHhvQ29pbnNUZXN0bmV0KVtudW1iZXJdO1xuZXhwb3J0IHR5cGUgVXR4b0NvaW5OYW1lID0gVXR4b0NvaW5OYW1lTWFpbm5ldCB8IFV0eG9Db2luTmFtZVRlc3RuZXQ7XG5cbmV4cG9ydCBmdW5jdGlvbiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWU6IHN0cmluZyk6IGNvaW5OYW1lIGlzIFV0eG9Db2luTmFtZU1haW5uZXQge1xuICByZXR1cm4gdXR4b0NvaW5zTWFpbm5ldC5pbmNsdWRlcyhjb2luTmFtZSBhcyBVdHhvQ29pbk5hbWVNYWlubmV0KTtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZTogc3RyaW5nKTogY29pbk5hbWUgaXMgVXR4b0NvaW5OYW1lVGVzdG5ldCB7XG4gIHJldHVybiB1dHhvQ29pbnNUZXN0bmV0LmluY2x1ZGVzKGNvaW5OYW1lIGFzIFV0eG9Db2luTmFtZVRlc3RuZXQpO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gaXNVdHhvQ29pbk5hbWUoY29pbk5hbWU6IHN0cmluZyk6IGNvaW5OYW1lIGlzIFV0eG9Db2luTmFtZSB7XG4gIHJldHVybiBpc1V0eG9Db2luTmFtZU1haW5uZXQoY29pbk5hbWUpIHx8IGlzVXR4b0NvaW5OYW1lVGVzdG5ldChjb2luTmFtZSk7XG59XG5cbmZ1bmN0aW9uIGdldE5ldHdvcmtOYW1lKG46IHV0eG9saWIuTmV0d29yayk6IHV0eG9saWIuTmV0d29ya05hbWUge1xuICBjb25zdCBuYW1lID0gdXR4b2xpYi5nZXROZXR3b3JrTmFtZShuKTtcbiAgaWYgKCFuYW1lKSB7XG4gICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIG5ldHdvcmsnKTtcbiAgfVxuICByZXR1cm4gbmFtZTtcbn1cblxuLyoqXG4gKiBAcGFyYW0gblxuICogQHJldHVybnMgdGhlIGZhbWlseSBuYW1lIGZvciBhIG5ldHdvcmsuIFRlc3RuZXRzIGFuZCBtYWlubmV0cyBvZiB0aGUgc2FtZSBjb2luIHNoYXJlIHRoZSBzYW1lIGZhbWlseSBuYW1lLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0RmFtaWx5RnJvbU5ldHdvcmsobjogdXR4b2xpYi5OZXR3b3JrKTogVXR4b0NvaW5OYW1lTWFpbm5ldCB7XG4gIHN3aXRjaCAoZ2V0TmV0d29ya05hbWUobikpIHtcbiAgICBjYXNlICdiaXRjb2luJzpcbiAgICBjYXNlICd0ZXN0bmV0JzpcbiAgICBjYXNlICdiaXRjb2luUHVibGljU2lnbmV0JzpcbiAgICBjYXNlICdiaXRjb2luVGVzdG5ldDQnOlxuICAgIGNhc2UgJ2JpdGNvaW5CaXRHb1NpZ25ldCc6XG4gICAgICByZXR1cm4gJ2J0Yyc7XG4gICAgY2FzZSAnYml0Y29pbmNhc2gnOlxuICAgIGNhc2UgJ2JpdGNvaW5jYXNoVGVzdG5ldCc6XG4gICAgICByZXR1cm4gJ2JjaCc7XG4gICAgY2FzZSAnZWNhc2gnOlxuICAgIGNhc2UgJ2VjYXNoVGVzdCc6XG4gICAgICByZXR1cm4gJ2JjaGEnO1xuICAgIGNhc2UgJ2JpdGNvaW5nb2xkJzpcbiAgICBjYXNlICdiaXRjb2luZ29sZFRlc3RuZXQnOlxuICAgICAgcmV0dXJuICdidGcnO1xuICAgIGNhc2UgJ2JpdGNvaW5zdic6XG4gICAgY2FzZSAnYml0Y29pbnN2VGVzdG5ldCc6XG4gICAgICByZXR1cm4gJ2Jzdic7XG4gICAgY2FzZSAnZGFzaCc6XG4gICAgY2FzZSAnZGFzaFRlc3QnOlxuICAgICAgcmV0dXJuICdkYXNoJztcbiAgICBjYXNlICdkb2dlY29pbic6XG4gICAgY2FzZSAnZG9nZWNvaW5UZXN0JzpcbiAgICAgIHJldHVybiAnZG9nZSc7XG4gICAgY2FzZSAnbGl0ZWNvaW4nOlxuICAgIGNhc2UgJ2xpdGVjb2luVGVzdCc6XG4gICAgICByZXR1cm4gJ2x0Yyc7XG4gICAgY2FzZSAnemNhc2gnOlxuICAgIGNhc2UgJ3pjYXNoVGVzdCc6XG4gICAgICByZXR1cm4gJ3plYyc7XG4gIH1cbn1cblxuLyoqXG4gKiBHZXQgdGhlIGNoYWluIG5hbWUgZm9yIGEgbmV0d29yay5cbiAqIFRoZSBjaGFpbiBpcyBkaWZmZXJlbnQgZm9yIGV2ZXJ5IG5ldHdvcmsuXG4gKi9cbmV4cG9ydCBmdW5jdGlvbiBnZXRDaGFpbkZyb21OZXR3b3JrKG46IHV0eG9saWIuTmV0d29yayk6IHN0cmluZyB7XG4gIHN3aXRjaCAoZ2V0TmV0d29ya05hbWUobikpIHtcbiAgICBjYXNlICdiaXRjb2luUHVibGljU2lnbmV0JzpcbiAgICAgIHJldHVybiAndGJ0Y3NpZyc7XG4gICAgY2FzZSAnYml0Y29pblRlc3RuZXQ0JzpcbiAgICAgIHJldHVybiAndGJ0YzQnO1xuICAgIGNhc2UgJ2JpdGNvaW5CaXRHb1NpZ25ldCc6XG4gICAgICByZXR1cm4gJ3RidGNiZ3NpZyc7XG4gICAgY2FzZSAnYml0Y29pbic6XG4gICAgY2FzZSAndGVzdG5ldCc6XG4gICAgY2FzZSAnYml0Y29pbmNhc2gnOlxuICAgIGNhc2UgJ2JpdGNvaW5jYXNoVGVzdG5ldCc6XG4gICAgY2FzZSAnZWNhc2gnOlxuICAgIGNhc2UgJ2VjYXNoVGVzdCc6XG4gICAgY2FzZSAnYml0Y29pbmdvbGQnOlxuICAgIGNhc2UgJ2JpdGNvaW5nb2xkVGVzdG5ldCc6XG4gICAgY2FzZSAnYml0Y29pbnN2JzpcbiAgICBjYXNlICdiaXRjb2luc3ZUZXN0bmV0JzpcbiAgICBjYXNlICdkYXNoJzpcbiAgICBjYXNlICdkYXNoVGVzdCc6XG4gICAgY2FzZSAnZG9nZWNvaW4nOlxuICAgIGNhc2UgJ2RvZ2Vjb2luVGVzdCc6XG4gICAgY2FzZSAnbGl0ZWNvaW4nOlxuICAgIGNhc2UgJ2xpdGVjb2luVGVzdCc6XG4gICAgY2FzZSAnemNhc2gnOlxuICAgIGNhc2UgJ3pjYXNoVGVzdCc6XG4gICAgICBjb25zdCBtYWlubmV0TmFtZSA9IGdldEZhbWlseUZyb21OZXR3b3JrKG4pO1xuICAgICAgcmV0dXJuIHV0eG9saWIuaXNUZXN0bmV0KG4pID8gYHQke21haW5uZXROYW1lfWAgOiBtYWlubmV0TmFtZTtcbiAgfVxufVxuXG4vKipcbiAqIEBwYXJhbSBjb2luTmFtZSAtIHRoZSBuYW1lIG9mIHRoZSBjb2luIChlLmcuICdidGMnLCAnYmNoJywgJ2x0YycpLiBBbHNvIGNhbGxlZCAnY2hhaW4nIGluIHNvbWUgY29udGV4dHMuXG4gKiBAcmV0dXJucyB0aGUgbmV0d29yayBmb3IgYSBjb2luLiBUaGlzIGlzIHRoZSBtYWlubmV0IG5ldHdvcmsgZm9yIHRoZSBjb2luLlxuICovXG5leHBvcnQgZnVuY3Rpb24gZ2V0TmV0d29ya0Zyb21DaGFpbihjb2luTmFtZTogc3RyaW5nKTogdXR4b2xpYi5OZXR3b3JrIHtcbiAgZm9yIChjb25zdCBuZXR3b3JrIG9mIHV0eG9saWIuZ2V0TmV0d29ya0xpc3QoKSkge1xuICAgIGlmIChnZXRDaGFpbkZyb21OZXR3b3JrKG5ldHdvcmspID09PSBjb2luTmFtZSkge1xuICAgICAgcmV0dXJuIG5ldHdvcms7XG4gICAgfVxuICB9XG4gIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBjaGFpbiAke2NvaW5OYW1lfWApO1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RnVsbE5hbWVGcm9tTmV0d29yayhuOiB1dHhvbGliLk5ldHdvcmspOiBzdHJpbmcge1xuICBjb25zdCBuYW1lID0gZ2V0TmV0d29ya05hbWUobik7XG5cbiAgbGV0IHByZWZpeDogc3RyaW5nO1xuICBzd2l0Y2ggKG5hbWUpIHtcbiAgICBjYXNlICdiaXRjb2luVGVzdG5ldDQnOlxuICAgICAgcHJlZml4ID0gJ1Rlc3RuZXQ0ICc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdiaXRjb2luUHVibGljU2lnbmV0JzpcbiAgICAgIHByZWZpeCA9ICdQdWJsaWMgU2lnbmV0ICc7XG4gICAgICBicmVhaztcbiAgICBjYXNlICdiaXRjb2luQml0R29TaWduZXQnOlxuICAgICAgcHJlZml4ID0gJ0JpdEdvIFNpZ25ldCAnO1xuICAgICAgYnJlYWs7XG4gICAgZGVmYXVsdDpcbiAgICAgIGlmICh1dHhvbGliLmlzVGVzdG5ldChuKSkge1xuICAgICAgICBwcmVmaXggPSAnVGVzdG5ldCAnO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgcHJlZml4ID0gJyc7XG4gICAgICB9XG4gIH1cblxuICBzd2l0Y2ggKG5hbWUpIHtcbiAgICBjYXNlICdiaXRjb2luJzpcbiAgICBjYXNlICd0ZXN0bmV0JzpcbiAgICBjYXNlICdiaXRjb2luVGVzdG5ldDQnOlxuICAgIGNhc2UgJ2JpdGNvaW5QdWJsaWNTaWduZXQnOlxuICAgIGNhc2UgJ2JpdGNvaW5CaXRHb1NpZ25ldCc6XG4gICAgICByZXR1cm4gcHJlZml4ICsgJ0JpdGNvaW4nO1xuICAgIGNhc2UgJ2JpdGNvaW5jYXNoJzpcbiAgICBjYXNlICdiaXRjb2luY2FzaFRlc3RuZXQnOlxuICAgICAgcmV0dXJuIHByZWZpeCArICdCaXRjb2luIENhc2gnO1xuICAgIGNhc2UgJ2VjYXNoJzpcbiAgICBjYXNlICdlY2FzaFRlc3QnOlxuICAgICAgcmV0dXJuIHByZWZpeCArICdCaXRjb2luIEFCQyc7XG4gICAgY2FzZSAnYml0Y29pbmdvbGQnOlxuICAgIGNhc2UgJ2JpdGNvaW5nb2xkVGVzdG5ldCc6XG4gICAgICByZXR1cm4gcHJlZml4ICsgJ0JpdGNvaW4gR29sZCc7XG4gICAgY2FzZSAnYml0Y29pbnN2JzpcbiAgICBjYXNlICdiaXRjb2luc3ZUZXN0bmV0JzpcbiAgICAgIHJldHVybiBwcmVmaXggKyAnQml0Y29pbiBTVic7XG4gICAgY2FzZSAnZGFzaCc6XG4gICAgY2FzZSAnZGFzaFRlc3QnOlxuICAgICAgcmV0dXJuIHByZWZpeCArICdEYXNoJztcbiAgICBjYXNlICdkb2dlY29pbic6XG4gICAgY2FzZSAnZG9nZWNvaW5UZXN0JzpcbiAgICAgIHJldHVybiBwcmVmaXggKyAnRG9nZWNvaW4nO1xuICAgIGNhc2UgJ2xpdGVjb2luJzpcbiAgICBjYXNlICdsaXRlY29pblRlc3QnOlxuICAgICAgcmV0dXJuIHByZWZpeCArICdMaXRlY29pbic7XG4gICAgY2FzZSAnemNhc2gnOlxuICAgIGNhc2UgJ3pjYXNoVGVzdCc6XG4gICAgICByZXR1cm4gcHJlZml4ICsgJ1pDYXNoJztcbiAgICBkZWZhdWx0OlxuICAgICAgdGhyb3cgbmV3IEVycm9yKCdVbmtub3duIG5ldHdvcmsnKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { BIP32Interface } from '@bitgo-beta/secp256k1';
|
|
2
|
+
export type OfflineVaultHalfSigned = {
|
|
3
|
+
halfSigned: {
|
|
4
|
+
txHex: string;
|
|
5
|
+
};
|
|
6
|
+
};
|
|
7
|
+
export declare function createHalfSigned(coin: string, prv: string | BIP32Interface, derivationId: string, tx: unknown): OfflineVaultHalfSigned;
|
|
8
|
+
//# sourceMappingURL=OfflineVaultHalfSigned.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OfflineVaultHalfSigned.d.ts","sourceRoot":"","sources":["../../../src/offlineVault/OfflineVaultHalfSigned.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAS,MAAM,uBAAuB,CAAC;AAS9D,MAAM,MAAM,sBAAsB,GAAG;IACnC,UAAU,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/B,CAAC;AAMF,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,MAAM,EACZ,GAAG,EAAE,MAAM,GAAG,cAAc,EAC5B,YAAY,EAAE,MAAM,EACpB,EAAE,EAAE,OAAO,GACV,sBAAsB,CAaxB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { bip32 } from '@bitgo-beta/secp256k1';
|
|
2
|
+
import { BaseCoin } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import { getNetworkFromChain } from '../names';
|
|
4
|
+
import { OfflineVaultSignable } from './OfflineVaultSignable';
|
|
5
|
+
import { DescriptorTransaction, getHalfSignedPsbt } from './descriptor';
|
|
6
|
+
function createHalfSignedFromPsbt(psbt) {
|
|
7
|
+
return { halfSigned: { txHex: psbt.toHex() } };
|
|
8
|
+
}
|
|
9
|
+
export function createHalfSigned(coin, prv, derivationId, tx) {
|
|
10
|
+
const network = getNetworkFromChain(coin);
|
|
11
|
+
if (typeof prv === 'string') {
|
|
12
|
+
prv = bip32.fromBase58(prv);
|
|
13
|
+
}
|
|
14
|
+
prv = BaseCoin.deriveKeyWithSeedBip32(prv, derivationId).key;
|
|
15
|
+
if (!OfflineVaultSignable.is(tx)) {
|
|
16
|
+
throw new Error('unsupported transaction type');
|
|
17
|
+
}
|
|
18
|
+
if (DescriptorTransaction.is(tx)) {
|
|
19
|
+
return createHalfSignedFromPsbt(getHalfSignedPsbt(tx, prv, network));
|
|
20
|
+
}
|
|
21
|
+
throw new Error('unsupported transaction type');
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmbGluZVZhdWx0SGFsZlNpZ25lZC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vZmZsaW5lVmF1bHQvT2ZmbGluZVZhdWx0SGFsZlNpZ25lZC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQWtCLEtBQUssRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTlELE9BQU8sRUFBRSxRQUFRLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUVoRCxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGlCQUFpQixFQUFFLE1BQU0sY0FBYyxDQUFDO0FBTXhFLFNBQVMsd0JBQXdCLENBQUMsSUFBa0I7SUFDbEQsT0FBTyxFQUFFLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxJQUFJLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSxDQUFDO0FBQ2pELENBQUM7QUFFRCxNQUFNLFVBQVUsZ0JBQWdCLENBQzlCLElBQVksRUFDWixHQUE0QixFQUM1QixZQUFvQixFQUNwQixFQUFXO0lBRVgsTUFBTSxPQUFPLEdBQUcsbUJBQW1CLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDMUMsSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUUsQ0FBQztRQUM1QixHQUFHLEdBQUcsS0FBSyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUMsQ0FBQztJQUM5QixDQUFDO0lBQ0QsR0FBRyxHQUFHLFFBQVEsQ0FBQyxzQkFBc0IsQ0FBQyxHQUFHLEVBQUUsWUFBWSxDQUFDLENBQUMsR0FBRyxDQUFDO0lBQzdELElBQUksQ0FBQyxvQkFBb0IsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNqQyxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7SUFDbEQsQ0FBQztJQUNELElBQUkscUJBQXFCLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUM7UUFDakMsT0FBTyx3QkFBd0IsQ0FBQyxpQkFBaUIsQ0FBQyxFQUFFLEVBQUUsR0FBRyxFQUFFLE9BQU8sQ0FBQyxDQUFDLENBQUM7SUFDdkUsQ0FBQztJQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsOEJBQThCLENBQUMsQ0FBQztBQUNsRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQklQMzJJbnRlcmZhY2UsIGJpcDMyIH0gZnJvbSAnQGJpdGdvLWJldGEvc2VjcDI1NmsxJztcbmltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0IHsgQmFzZUNvaW4gfSBmcm9tICdAYml0Z28tYmV0YS9zZGstY29yZSc7XG5cbmltcG9ydCB7IGdldE5ldHdvcmtGcm9tQ2hhaW4gfSBmcm9tICcuLi9uYW1lcyc7XG5cbmltcG9ydCB7IE9mZmxpbmVWYXVsdFNpZ25hYmxlIH0gZnJvbSAnLi9PZmZsaW5lVmF1bHRTaWduYWJsZSc7XG5pbXBvcnQgeyBEZXNjcmlwdG9yVHJhbnNhY3Rpb24sIGdldEhhbGZTaWduZWRQc2J0IH0gZnJvbSAnLi9kZXNjcmlwdG9yJztcblxuZXhwb3J0IHR5cGUgT2ZmbGluZVZhdWx0SGFsZlNpZ25lZCA9IHtcbiAgaGFsZlNpZ25lZDogeyB0eEhleDogc3RyaW5nIH07XG59O1xuXG5mdW5jdGlvbiBjcmVhdGVIYWxmU2lnbmVkRnJvbVBzYnQocHNidDogdXR4b2xpYi5Qc2J0KTogT2ZmbGluZVZhdWx0SGFsZlNpZ25lZCB7XG4gIHJldHVybiB7IGhhbGZTaWduZWQ6IHsgdHhIZXg6IHBzYnQudG9IZXgoKSB9IH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBjcmVhdGVIYWxmU2lnbmVkKFxuICBjb2luOiBzdHJpbmcsXG4gIHBydjogc3RyaW5nIHwgQklQMzJJbnRlcmZhY2UsXG4gIGRlcml2YXRpb25JZDogc3RyaW5nLFxuICB0eDogdW5rbm93blxuKTogT2ZmbGluZVZhdWx0SGFsZlNpZ25lZCB7XG4gIGNvbnN0IG5ldHdvcmsgPSBnZXROZXR3b3JrRnJvbUNoYWluKGNvaW4pO1xuICBpZiAodHlwZW9mIHBydiA9PT0gJ3N0cmluZycpIHtcbiAgICBwcnYgPSBiaXAzMi5mcm9tQmFzZTU4KHBydik7XG4gIH1cbiAgcHJ2ID0gQmFzZUNvaW4uZGVyaXZlS2V5V2l0aFNlZWRCaXAzMihwcnYsIGRlcml2YXRpb25JZCkua2V5O1xuICBpZiAoIU9mZmxpbmVWYXVsdFNpZ25hYmxlLmlzKHR4KSkge1xuICAgIHRocm93IG5ldyBFcnJvcigndW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xuICB9XG4gIGlmIChEZXNjcmlwdG9yVHJhbnNhY3Rpb24uaXModHgpKSB7XG4gICAgcmV0dXJuIGNyZWF0ZUhhbGZTaWduZWRGcm9tUHNidChnZXRIYWxmU2lnbmVkUHNidCh0eCwgcHJ2LCBuZXR3b3JrKSk7XG4gIH1cbiAgdGhyb3cgbmV3IEVycm9yKCd1bnN1cHBvcnRlZCB0cmFuc2FjdGlvbiB0eXBlJyk7XG59XG4iXX0=
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { BIP32Interface } from '@bitgo-beta/secp256k1';
|
|
2
|
+
import { Triple } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import * as t from 'io-ts';
|
|
4
|
+
export declare const XPubWithDerivationPath: t.IntersectionC<[t.TypeC<{
|
|
5
|
+
xpub: t.StringC;
|
|
6
|
+
}>, t.PartialC<{
|
|
7
|
+
derivedFromParentWithSeed: t.StringC;
|
|
8
|
+
}>]>;
|
|
9
|
+
export type XPubWithDerivationPath = t.TypeOf<typeof XPubWithDerivationPath>;
|
|
10
|
+
/**
|
|
11
|
+
* This is the transaction payload that is sent to the offline vault to sign.
|
|
12
|
+
*/
|
|
13
|
+
export declare const OfflineVaultSignable: t.TypeC<{
|
|
14
|
+
xpubsWithDerivationPath: t.TypeC<{
|
|
15
|
+
user: t.IntersectionC<[t.TypeC<{
|
|
16
|
+
xpub: t.StringC;
|
|
17
|
+
}>, t.PartialC<{
|
|
18
|
+
derivedFromParentWithSeed: t.StringC;
|
|
19
|
+
}>]>;
|
|
20
|
+
backup: t.IntersectionC<[t.TypeC<{
|
|
21
|
+
xpub: t.StringC;
|
|
22
|
+
}>, t.PartialC<{
|
|
23
|
+
derivedFromParentWithSeed: t.StringC;
|
|
24
|
+
}>]>;
|
|
25
|
+
bitgo: t.IntersectionC<[t.TypeC<{
|
|
26
|
+
xpub: t.StringC;
|
|
27
|
+
}>, t.PartialC<{
|
|
28
|
+
derivedFromParentWithSeed: t.StringC;
|
|
29
|
+
}>]>;
|
|
30
|
+
}>;
|
|
31
|
+
coinSpecific: t.TypeC<{
|
|
32
|
+
txHex: t.StringC;
|
|
33
|
+
}>;
|
|
34
|
+
}>;
|
|
35
|
+
export type OfflineVaultUnsigned = t.TypeOf<typeof OfflineVaultSignable>;
|
|
36
|
+
type WithXpub = {
|
|
37
|
+
xpub: string;
|
|
38
|
+
};
|
|
39
|
+
type NamedKeys = {
|
|
40
|
+
user: WithXpub;
|
|
41
|
+
backup: WithXpub;
|
|
42
|
+
bitgo: WithXpub;
|
|
43
|
+
};
|
|
44
|
+
export declare function toKeyTriple(xpubs: NamedKeys): Triple<BIP32Interface>;
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=OfflineVaultSignable.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OfflineVaultSignable.d.ts","sourceRoot":"","sources":["../../../src/offlineVault/OfflineVaultSignable.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAS,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAC9C,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B,eAAO,MAAM,sBAAsB;;;;IAGlC,CAAC;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAE7E;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;EAUhC,CAAC;AAEF,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAEzE,KAAK,QAAQ,GAAG;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AACjC,KAAK,SAAS,GAAG;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,QAAQ,CAAC;IAAC,KAAK,EAAE,QAAQ,CAAA;CAAE,CAAC;AACvE,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,CAAC,cAAc,CAAC,CAIpE"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { bip32 } from '@bitgo-beta/secp256k1';
|
|
2
|
+
import * as t from 'io-ts';
|
|
3
|
+
export const XPubWithDerivationPath = t.intersection([t.type({ xpub: t.string }), t.partial({ derivedFromParentWithSeed: t.string })], 'XPubWithDerivationPath');
|
|
4
|
+
/**
|
|
5
|
+
* This is the transaction payload that is sent to the offline vault to sign.
|
|
6
|
+
*/
|
|
7
|
+
export const OfflineVaultSignable = t.type({
|
|
8
|
+
xpubsWithDerivationPath: t.type({
|
|
9
|
+
user: XPubWithDerivationPath,
|
|
10
|
+
backup: XPubWithDerivationPath,
|
|
11
|
+
bitgo: XPubWithDerivationPath,
|
|
12
|
+
}),
|
|
13
|
+
coinSpecific: t.type({ txHex: t.string }),
|
|
14
|
+
}, 'BaseTransaction');
|
|
15
|
+
export function toKeyTriple(xpubs) {
|
|
16
|
+
return [xpubs.user.xpub, xpubs.backup.xpub, xpubs.bitgo.xpub].map((xpub) => bip32.fromBase58(xpub));
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiT2ZmbGluZVZhdWx0U2lnbmFibGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvb2ZmbGluZVZhdWx0L09mZmxpbmVWYXVsdFNpZ25hYmxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBa0IsS0FBSyxFQUFFLE1BQU0sdUJBQXVCLENBQUM7QUFFOUQsT0FBTyxLQUFLLENBQUMsTUFBTSxPQUFPLENBQUM7QUFFM0IsTUFBTSxDQUFDLE1BQU0sc0JBQXNCLEdBQUcsQ0FBQyxDQUFDLFlBQVksQ0FDbEQsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxPQUFPLENBQUMsRUFBRSx5QkFBeUIsRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUMsQ0FBQyxFQUNoRix3QkFBd0IsQ0FDekIsQ0FBQztBQUlGOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sb0JBQW9CLEdBQUcsQ0FBQyxDQUFDLElBQUksQ0FDeEM7SUFDRSx1QkFBdUIsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDO1FBQzlCLElBQUksRUFBRSxzQkFBc0I7UUFDNUIsTUFBTSxFQUFFLHNCQUFzQjtRQUM5QixLQUFLLEVBQUUsc0JBQXNCO0tBQzlCLENBQUM7SUFDRixZQUFZLEVBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsTUFBTSxFQUFFLENBQUM7Q0FDMUMsRUFDRCxpQkFBaUIsQ0FDbEIsQ0FBQztBQU1GLE1BQU0sVUFBVSxXQUFXLENBQUMsS0FBZ0I7SUFDMUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxNQUFNLENBQUMsSUFBSSxFQUFFLEtBQUssQ0FBQyxLQUFLLENBQUMsSUFBSSxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxFQUFFLEVBQUUsQ0FDekUsS0FBSyxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsQ0FDRyxDQUFDO0FBQzlCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCSVAzMkludGVyZmFjZSwgYmlwMzIgfSBmcm9tICdAYml0Z28tYmV0YS9zZWNwMjU2azEnO1xuaW1wb3J0IHsgVHJpcGxlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0ICogYXMgdCBmcm9tICdpby10cyc7XG5cbmV4cG9ydCBjb25zdCBYUHViV2l0aERlcml2YXRpb25QYXRoID0gdC5pbnRlcnNlY3Rpb24oXG4gIFt0LnR5cGUoeyB4cHViOiB0LnN0cmluZyB9KSwgdC5wYXJ0aWFsKHsgZGVyaXZlZEZyb21QYXJlbnRXaXRoU2VlZDogdC5zdHJpbmcgfSldLFxuICAnWFB1YldpdGhEZXJpdmF0aW9uUGF0aCdcbik7XG5cbmV4cG9ydCB0eXBlIFhQdWJXaXRoRGVyaXZhdGlvblBhdGggPSB0LlR5cGVPZjx0eXBlb2YgWFB1YldpdGhEZXJpdmF0aW9uUGF0aD47XG5cbi8qKlxuICogVGhpcyBpcyB0aGUgdHJhbnNhY3Rpb24gcGF5bG9hZCB0aGF0IGlzIHNlbnQgdG8gdGhlIG9mZmxpbmUgdmF1bHQgdG8gc2lnbi5cbiAqL1xuZXhwb3J0IGNvbnN0IE9mZmxpbmVWYXVsdFNpZ25hYmxlID0gdC50eXBlKFxuICB7XG4gICAgeHB1YnNXaXRoRGVyaXZhdGlvblBhdGg6IHQudHlwZSh7XG4gICAgICB1c2VyOiBYUHViV2l0aERlcml2YXRpb25QYXRoLFxuICAgICAgYmFja3VwOiBYUHViV2l0aERlcml2YXRpb25QYXRoLFxuICAgICAgYml0Z286IFhQdWJXaXRoRGVyaXZhdGlvblBhdGgsXG4gICAgfSksXG4gICAgY29pblNwZWNpZmljOiB0LnR5cGUoeyB0eEhleDogdC5zdHJpbmcgfSksXG4gIH0sXG4gICdCYXNlVHJhbnNhY3Rpb24nXG4pO1xuXG5leHBvcnQgdHlwZSBPZmZsaW5lVmF1bHRVbnNpZ25lZCA9IHQuVHlwZU9mPHR5cGVvZiBPZmZsaW5lVmF1bHRTaWduYWJsZT47XG5cbnR5cGUgV2l0aFhwdWIgPSB7IHhwdWI6IHN0cmluZyB9O1xudHlwZSBOYW1lZEtleXMgPSB7IHVzZXI6IFdpdGhYcHViOyBiYWNrdXA6IFdpdGhYcHViOyBiaXRnbzogV2l0aFhwdWIgfTtcbmV4cG9ydCBmdW5jdGlvbiB0b0tleVRyaXBsZSh4cHViczogTmFtZWRLZXlzKTogVHJpcGxlPEJJUDMySW50ZXJmYWNlPiB7XG4gIHJldHVybiBbeHB1YnMudXNlci54cHViLCB4cHVicy5iYWNrdXAueHB1YiwgeHB1YnMuYml0Z28ueHB1Yl0ubWFwKCh4cHViKSA9PlxuICAgIGJpcDMyLmZyb21CYXNlNTgoeHB1YilcbiAgKSBhcyBUcmlwbGU8QklQMzJJbnRlcmZhY2U+O1xufVxuIl19
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export interface ExplanationOutput {
|
|
2
|
+
address: string;
|
|
3
|
+
amount: string | number;
|
|
4
|
+
}
|
|
5
|
+
export interface TransactionExplanation<TFee> {
|
|
6
|
+
outputs: ExplanationOutput[];
|
|
7
|
+
changeOutputs: ExplanationOutput[];
|
|
8
|
+
fee: {
|
|
9
|
+
fee: TFee;
|
|
10
|
+
payGoFeeString: string | number | undefined;
|
|
11
|
+
payGoFeeAddress: string | undefined;
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
export declare function getTransactionExplanation(coin: string, tx: unknown): TransactionExplanation<string>;
|
|
15
|
+
//# sourceMappingURL=TransactionExplanation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionExplanation.d.ts","sourceRoot":"","sources":["../../../src/offlineVault/TransactionExplanation.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,sBAAsB,CAAC,IAAI;IAC1C,OAAO,EAAE,iBAAiB,EAAE,CAAC;IAC7B,aAAa,EAAE,iBAAiB,EAAE,CAAC;IACnC,GAAG,EAAE;QAEH,GAAG,EAAE,IAAI,CAAC;QACV,cAAc,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAAC;QAC5C,eAAe,EAAE,MAAM,GAAG,SAAS,CAAC;KACrC,CAAC;CACH;AAED,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,GAAG,sBAAsB,CAAC,MAAM,CAAC,CASnG"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { getNetworkFromChain } from '../names';
|
|
2
|
+
import { OfflineVaultSignable } from './OfflineVaultSignable';
|
|
3
|
+
import { DescriptorTransaction, getTransactionExplanationFromPsbt } from './descriptor';
|
|
4
|
+
export function getTransactionExplanation(coin, tx) {
|
|
5
|
+
if (!OfflineVaultSignable.is(tx)) {
|
|
6
|
+
throw new Error('not a signable transaction');
|
|
7
|
+
}
|
|
8
|
+
if (DescriptorTransaction.is(tx)) {
|
|
9
|
+
return getTransactionExplanationFromPsbt(tx, getNetworkFromChain(coin));
|
|
10
|
+
}
|
|
11
|
+
throw new Error('unsupported transaction type');
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiVHJhbnNhY3Rpb25FeHBsYW5hdGlvbi5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9vZmZsaW5lVmF1bHQvVHJhbnNhY3Rpb25FeHBsYW5hdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsbUJBQW1CLEVBQUUsTUFBTSxVQUFVLENBQUM7QUFFL0MsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFDOUQsT0FBTyxFQUFFLHFCQUFxQixFQUFFLGlDQUFpQyxFQUFFLE1BQU0sY0FBYyxDQUFDO0FBa0J4RixNQUFNLFVBQVUseUJBQXlCLENBQUMsSUFBWSxFQUFFLEVBQVc7SUFDakUsSUFBSSxDQUFDLG9CQUFvQixDQUFDLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDO1FBQ2pDLE1BQU0sSUFBSSxLQUFLLENBQUMsNEJBQTRCLENBQUMsQ0FBQztJQUNoRCxDQUFDO0lBQ0QsSUFBSSxxQkFBcUIsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQztRQUNqQyxPQUFPLGlDQUFpQyxDQUFDLEVBQUUsRUFBRSxtQkFBbUIsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDO0lBQzFFLENBQUM7SUFFRCxNQUFNLElBQUksS0FBSyxDQUFDLDhCQUE4QixDQUFDLENBQUM7QUFDbEQsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldE5ldHdvcmtGcm9tQ2hhaW4gfSBmcm9tICcuLi9uYW1lcyc7XG5cbmltcG9ydCB7IE9mZmxpbmVWYXVsdFNpZ25hYmxlIH0gZnJvbSAnLi9PZmZsaW5lVmF1bHRTaWduYWJsZSc7XG5pbXBvcnQgeyBEZXNjcmlwdG9yVHJhbnNhY3Rpb24sIGdldFRyYW5zYWN0aW9uRXhwbGFuYXRpb25Gcm9tUHNidCB9IGZyb20gJy4vZGVzY3JpcHRvcic7XG5cbmV4cG9ydCBpbnRlcmZhY2UgRXhwbGFuYXRpb25PdXRwdXQge1xuICBhZGRyZXNzOiBzdHJpbmc7XG4gIGFtb3VudDogc3RyaW5nIHwgbnVtYmVyO1xufVxuXG5leHBvcnQgaW50ZXJmYWNlIFRyYW5zYWN0aW9uRXhwbGFuYXRpb248VEZlZT4ge1xuICBvdXRwdXRzOiBFeHBsYW5hdGlvbk91dHB1dFtdO1xuICBjaGFuZ2VPdXRwdXRzOiBFeHBsYW5hdGlvbk91dHB1dFtdO1xuICBmZWU6IHtcbiAgICAvKiBuZXR3b3JrIGZlZSAqL1xuICAgIGZlZTogVEZlZTtcbiAgICBwYXlHb0ZlZVN0cmluZzogc3RyaW5nIHwgbnVtYmVyIHwgdW5kZWZpbmVkO1xuICAgIHBheUdvRmVlQWRkcmVzczogc3RyaW5nIHwgdW5kZWZpbmVkO1xuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gZ2V0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbihjb2luOiBzdHJpbmcsIHR4OiB1bmtub3duKTogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbjxzdHJpbmc+IHtcbiAgaWYgKCFPZmZsaW5lVmF1bHRTaWduYWJsZS5pcyh0eCkpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ25vdCBhIHNpZ25hYmxlIHRyYW5zYWN0aW9uJyk7XG4gIH1cbiAgaWYgKERlc2NyaXB0b3JUcmFuc2FjdGlvbi5pcyh0eCkpIHtcbiAgICByZXR1cm4gZ2V0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbkZyb21Qc2J0KHR4LCBnZXROZXR3b3JrRnJvbUNoYWluKGNvaW4pKTtcbiAgfVxuXG4gIHRocm93IG5ldyBFcnJvcigndW5zdXBwb3J0ZWQgdHJhbnNhY3Rpb24gdHlwZScpO1xufVxuIl19
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/offlineVault/descriptor/index.ts"],"names":[],"mappings":"AAAA,cAAc,eAAe,CAAC"}
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export * from './transaction';
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvb2ZmbGluZVZhdWx0L2Rlc2NyaXB0b3IvaW5kZXgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsY0FBYyxlQUFlLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL3RyYW5zYWN0aW9uJztcbiJdfQ==
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
|
+
import * as t from 'io-ts';
|
|
3
|
+
import { DescriptorMap } from '../../descriptor';
|
|
4
|
+
import { TransactionExplanation } from '../TransactionExplanation';
|
|
5
|
+
export declare const DescriptorTransaction: t.IntersectionC<[t.TypeC<{
|
|
6
|
+
xpubsWithDerivationPath: t.TypeC<{
|
|
7
|
+
user: t.IntersectionC<[t.TypeC<{
|
|
8
|
+
xpub: t.StringC;
|
|
9
|
+
}>, t.PartialC<{
|
|
10
|
+
derivedFromParentWithSeed: t.StringC;
|
|
11
|
+
}>]>;
|
|
12
|
+
backup: t.IntersectionC<[t.TypeC<{
|
|
13
|
+
xpub: t.StringC;
|
|
14
|
+
}>, t.PartialC<{
|
|
15
|
+
derivedFromParentWithSeed: t.StringC;
|
|
16
|
+
}>]>;
|
|
17
|
+
bitgo: t.IntersectionC<[t.TypeC<{
|
|
18
|
+
xpub: t.StringC;
|
|
19
|
+
}>, t.PartialC<{
|
|
20
|
+
derivedFromParentWithSeed: t.StringC;
|
|
21
|
+
}>]>;
|
|
22
|
+
}>;
|
|
23
|
+
coinSpecific: t.TypeC<{
|
|
24
|
+
txHex: t.StringC;
|
|
25
|
+
}>;
|
|
26
|
+
}>, t.TypeC<{
|
|
27
|
+
descriptors: t.ArrayC<t.IntersectionC<[t.TypeC<{
|
|
28
|
+
name: t.StringC;
|
|
29
|
+
value: t.StringC;
|
|
30
|
+
}>, t.PartialC<{
|
|
31
|
+
signatures: t.UnionC<[t.ArrayC<t.StringC>, t.UndefinedC]>;
|
|
32
|
+
}>]>>;
|
|
33
|
+
}>]>;
|
|
34
|
+
export type DescriptorTransaction = t.TypeOf<typeof DescriptorTransaction>;
|
|
35
|
+
export declare function getDescriptorsFromDescriptorTransaction(tx: DescriptorTransaction): DescriptorMap;
|
|
36
|
+
export declare function getHalfSignedPsbt(tx: DescriptorTransaction, prv: utxolib.BIP32Interface, network: utxolib.Network): utxolib.Psbt;
|
|
37
|
+
export declare function getTransactionExplanationFromPsbt(tx: DescriptorTransaction, network: utxolib.Network): TransactionExplanation<string>;
|
|
38
|
+
//# sourceMappingURL=transaction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../../../src/offlineVault/descriptor/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,OAAO,MAAM,sBAAsB,CAAC;AAChD,OAAO,KAAK,CAAC,MAAM,OAAO,CAAC;AAE3B,OAAO,EAAE,aAAa,EAAmB,MAAM,kBAAkB,CAAC;AASlE,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAGjC,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAE3E,wBAAgB,uCAAuC,CAAC,EAAE,EAAE,qBAAqB,GAAG,aAAa,CAUhG;AAED,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,qBAAqB,EACzB,GAAG,EAAE,OAAO,CAAC,cAAc,EAC3B,OAAO,EAAE,OAAO,CAAC,OAAO,GACvB,OAAO,CAAC,IAAI,CAKd;AAED,wBAAgB,iCAAiC,CAC/C,EAAE,EAAE,qBAAqB,EACzB,OAAO,EAAE,OAAO,CAAC,OAAO,GACvB,sBAAsB,CAAC,MAAM,CAAC,CAehC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
|
+
import * as t from 'io-ts';
|
|
3
|
+
import { NamedDescriptor } from '../../descriptor';
|
|
4
|
+
import { OfflineVaultSignable, toKeyTriple } from '../OfflineVaultSignable';
|
|
5
|
+
import { getValidatorOneOfTemplates, getValidatorSignedByUserKey, getValidatorSome, toDescriptorMapValidate, } from '../../descriptor/validatePolicy';
|
|
6
|
+
import { explainPsbt, signPsbt } from '../../transaction/descriptor';
|
|
7
|
+
export const DescriptorTransaction = t.intersection([OfflineVaultSignable, t.type({ descriptors: t.array(NamedDescriptor) })], 'DescriptorTransaction');
|
|
8
|
+
export function getDescriptorsFromDescriptorTransaction(tx) {
|
|
9
|
+
const { descriptors, xpubsWithDerivationPath } = tx;
|
|
10
|
+
const pubkeys = toKeyTriple(xpubsWithDerivationPath);
|
|
11
|
+
const policy = getValidatorSome([
|
|
12
|
+
// allow all 2-of-3-ish descriptors where the keys match the wallet keys
|
|
13
|
+
getValidatorOneOfTemplates(['Wsh2Of3', 'Wsh2Of3CltvDrop', 'ShWsh2Of3CltvDrop']),
|
|
14
|
+
// allow all descriptors signed by the user key
|
|
15
|
+
getValidatorSignedByUserKey(),
|
|
16
|
+
]);
|
|
17
|
+
return toDescriptorMapValidate(descriptors, pubkeys, policy);
|
|
18
|
+
}
|
|
19
|
+
export function getHalfSignedPsbt(tx, prv, network) {
|
|
20
|
+
const psbt = utxolib.bitgo.createPsbtDecode(tx.coinSpecific.txHex, network);
|
|
21
|
+
const descriptorMap = getDescriptorsFromDescriptorTransaction(tx);
|
|
22
|
+
signPsbt(psbt, descriptorMap, prv, { onUnknownInput: 'throw' });
|
|
23
|
+
return psbt;
|
|
24
|
+
}
|
|
25
|
+
export function getTransactionExplanationFromPsbt(tx, network) {
|
|
26
|
+
const psbt = utxolib.bitgo.createPsbtDecode(tx.coinSpecific.txHex, network);
|
|
27
|
+
const descriptorMap = getDescriptorsFromDescriptorTransaction(tx);
|
|
28
|
+
const { outputs, changeOutputs, fee } = explainPsbt(psbt, descriptorMap);
|
|
29
|
+
return {
|
|
30
|
+
outputs,
|
|
31
|
+
changeOutputs,
|
|
32
|
+
fee: {
|
|
33
|
+
/* network fee */
|
|
34
|
+
fee,
|
|
35
|
+
/* TODO */
|
|
36
|
+
payGoFeeString: undefined,
|
|
37
|
+
payGoFeeAddress: undefined,
|
|
38
|
+
},
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvb2ZmbGluZVZhdWx0L2Rlc2NyaXB0b3IvdHJhbnNhY3Rpb24udHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxLQUFLLE9BQU8sTUFBTSxzQkFBc0IsQ0FBQztBQUNoRCxPQUFPLEtBQUssQ0FBQyxNQUFNLE9BQU8sQ0FBQztBQUUzQixPQUFPLEVBQWlCLGVBQWUsRUFBRSxNQUFNLGtCQUFrQixDQUFDO0FBQ2xFLE9BQU8sRUFBRSxvQkFBb0IsRUFBRSxXQUFXLEVBQUUsTUFBTSx5QkFBeUIsQ0FBQztBQUM1RSxPQUFPLEVBQ0wsMEJBQTBCLEVBQzFCLDJCQUEyQixFQUMzQixnQkFBZ0IsRUFDaEIsdUJBQXVCLEdBQ3hCLE1BQU0saUNBQWlDLENBQUM7QUFDekMsT0FBTyxFQUFFLFdBQVcsRUFBRSxRQUFRLEVBQUUsTUFBTSw4QkFBOEIsQ0FBQztBQUdyRSxNQUFNLENBQUMsTUFBTSxxQkFBcUIsR0FBRyxDQUFDLENBQUMsWUFBWSxDQUNqRCxDQUFDLG9CQUFvQixFQUFFLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxXQUFXLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxlQUFlLENBQUMsRUFBRSxDQUFDLENBQUMsRUFDekUsdUJBQXVCLENBQ3hCLENBQUM7QUFJRixNQUFNLFVBQVUsdUNBQXVDLENBQUMsRUFBeUI7SUFDL0UsTUFBTSxFQUFFLFdBQVcsRUFBRSx1QkFBdUIsRUFBRSxHQUFHLEVBQUUsQ0FBQztJQUNwRCxNQUFNLE9BQU8sR0FBRyxXQUFXLENBQUMsdUJBQXVCLENBQUMsQ0FBQztJQUNyRCxNQUFNLE1BQU0sR0FBRyxnQkFBZ0IsQ0FBQztRQUM5Qix3RUFBd0U7UUFDeEUsMEJBQTBCLENBQUMsQ0FBQyxTQUFTLEVBQUUsaUJBQWlCLEVBQUUsbUJBQW1CLENBQUMsQ0FBQztRQUMvRSwrQ0FBK0M7UUFDL0MsMkJBQTJCLEVBQUU7S0FDOUIsQ0FBQyxDQUFDO0lBQ0gsT0FBTyx1QkFBdUIsQ0FBQyxXQUFXLEVBQUUsT0FBTyxFQUFFLE1BQU0sQ0FBQyxDQUFDO0FBQy9ELENBQUM7QUFFRCxNQUFNLFVBQVUsaUJBQWlCLENBQy9CLEVBQXlCLEVBQ3pCLEdBQTJCLEVBQzNCLE9BQXdCO0lBRXhCLE1BQU0sSUFBSSxHQUFHLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLENBQUMsRUFBRSxDQUFDLFlBQVksQ0FBQyxLQUFLLEVBQUUsT0FBTyxDQUFDLENBQUM7SUFDNUUsTUFBTSxhQUFhLEdBQUcsdUNBQXVDLENBQUMsRUFBRSxDQUFDLENBQUM7SUFDbEUsUUFBUSxDQUFDLElBQUksRUFBRSxhQUFhLEVBQUUsR0FBRyxFQUFFLEVBQUUsY0FBYyxFQUFFLE9BQU8sRUFBRSxDQUFDLENBQUM7SUFDaEUsT0FBTyxJQUFJLENBQUM7QUFDZCxDQUFDO0FBRUQsTUFBTSxVQUFVLGlDQUFpQyxDQUMvQyxFQUF5QixFQUN6QixPQUF3QjtJQUV4QixNQUFNLElBQUksR0FBRyxPQUFPLENBQUMsS0FBSyxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQyxZQUFZLENBQUMsS0FBSyxFQUFFLE9BQU8sQ0FBQyxDQUFDO0lBQzVFLE1BQU0sYUFBYSxHQUFHLHVDQUF1QyxDQUFDLEVBQUUsQ0FBQyxDQUFDO0lBQ2xFLE1BQU0sRUFBRSxPQUFPLEVBQUUsYUFBYSxFQUFFLEdBQUcsRUFBRSxHQUFHLFdBQVcsQ0FBQyxJQUFJLEVBQUUsYUFBYSxDQUFDLENBQUM7SUFDekUsT0FBTztRQUNMLE9BQU87UUFDUCxhQUFhO1FBQ2IsR0FBRyxFQUFFO1lBQ0gsaUJBQWlCO1lBQ2pCLEdBQUc7WUFDSCxVQUFVO1lBQ1YsY0FBYyxFQUFFLFNBQVM7WUFDekIsZUFBZSxFQUFFLFNBQVM7U0FDM0I7S0FDRixDQUFDO0FBQ0osQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCAqIGFzIHV0eG9saWIgZnJvbSAnQGJpdGdvLWJldGEvdXR4by1saWInO1xuaW1wb3J0ICogYXMgdCBmcm9tICdpby10cyc7XG5cbmltcG9ydCB7IERlc2NyaXB0b3JNYXAsIE5hbWVkRGVzY3JpcHRvciB9IGZyb20gJy4uLy4uL2Rlc2NyaXB0b3InO1xuaW1wb3J0IHsgT2ZmbGluZVZhdWx0U2lnbmFibGUsIHRvS2V5VHJpcGxlIH0gZnJvbSAnLi4vT2ZmbGluZVZhdWx0U2lnbmFibGUnO1xuaW1wb3J0IHtcbiAgZ2V0VmFsaWRhdG9yT25lT2ZUZW1wbGF0ZXMsXG4gIGdldFZhbGlkYXRvclNpZ25lZEJ5VXNlcktleSxcbiAgZ2V0VmFsaWRhdG9yU29tZSxcbiAgdG9EZXNjcmlwdG9yTWFwVmFsaWRhdGUsXG59IGZyb20gJy4uLy4uL2Rlc2NyaXB0b3IvdmFsaWRhdGVQb2xpY3knO1xuaW1wb3J0IHsgZXhwbGFpblBzYnQsIHNpZ25Qc2J0IH0gZnJvbSAnLi4vLi4vdHJhbnNhY3Rpb24vZGVzY3JpcHRvcic7XG5pbXBvcnQgeyBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIH0gZnJvbSAnLi4vVHJhbnNhY3Rpb25FeHBsYW5hdGlvbic7XG5cbmV4cG9ydCBjb25zdCBEZXNjcmlwdG9yVHJhbnNhY3Rpb24gPSB0LmludGVyc2VjdGlvbihcbiAgW09mZmxpbmVWYXVsdFNpZ25hYmxlLCB0LnR5cGUoeyBkZXNjcmlwdG9yczogdC5hcnJheShOYW1lZERlc2NyaXB0b3IpIH0pXSxcbiAgJ0Rlc2NyaXB0b3JUcmFuc2FjdGlvbidcbik7XG5cbmV4cG9ydCB0eXBlIERlc2NyaXB0b3JUcmFuc2FjdGlvbiA9IHQuVHlwZU9mPHR5cGVvZiBEZXNjcmlwdG9yVHJhbnNhY3Rpb24+O1xuXG5leHBvcnQgZnVuY3Rpb24gZ2V0RGVzY3JpcHRvcnNGcm9tRGVzY3JpcHRvclRyYW5zYWN0aW9uKHR4OiBEZXNjcmlwdG9yVHJhbnNhY3Rpb24pOiBEZXNjcmlwdG9yTWFwIHtcbiAgY29uc3QgeyBkZXNjcmlwdG9ycywgeHB1YnNXaXRoRGVyaXZhdGlvblBhdGggfSA9IHR4O1xuICBjb25zdCBwdWJrZXlzID0gdG9LZXlUcmlwbGUoeHB1YnNXaXRoRGVyaXZhdGlvblBhdGgpO1xuICBjb25zdCBwb2xpY3kgPSBnZXRWYWxpZGF0b3JTb21lKFtcbiAgICAvLyBhbGxvdyBhbGwgMi1vZi0zLWlzaCBkZXNjcmlwdG9ycyB3aGVyZSB0aGUga2V5cyBtYXRjaCB0aGUgd2FsbGV0IGtleXNcbiAgICBnZXRWYWxpZGF0b3JPbmVPZlRlbXBsYXRlcyhbJ1dzaDJPZjMnLCAnV3NoMk9mM0NsdHZEcm9wJywgJ1NoV3NoMk9mM0NsdHZEcm9wJ10pLFxuICAgIC8vIGFsbG93IGFsbCBkZXNjcmlwdG9ycyBzaWduZWQgYnkgdGhlIHVzZXIga2V5XG4gICAgZ2V0VmFsaWRhdG9yU2lnbmVkQnlVc2VyS2V5KCksXG4gIF0pO1xuICByZXR1cm4gdG9EZXNjcmlwdG9yTWFwVmFsaWRhdGUoZGVzY3JpcHRvcnMsIHB1YmtleXMsIHBvbGljeSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRIYWxmU2lnbmVkUHNidChcbiAgdHg6IERlc2NyaXB0b3JUcmFuc2FjdGlvbixcbiAgcHJ2OiB1dHhvbGliLkJJUDMySW50ZXJmYWNlLFxuICBuZXR3b3JrOiB1dHhvbGliLk5ldHdvcmtcbik6IHV0eG9saWIuUHNidCB7XG4gIGNvbnN0IHBzYnQgPSB1dHhvbGliLmJpdGdvLmNyZWF0ZVBzYnREZWNvZGUodHguY29pblNwZWNpZmljLnR4SGV4LCBuZXR3b3JrKTtcbiAgY29uc3QgZGVzY3JpcHRvck1hcCA9IGdldERlc2NyaXB0b3JzRnJvbURlc2NyaXB0b3JUcmFuc2FjdGlvbih0eCk7XG4gIHNpZ25Qc2J0KHBzYnQsIGRlc2NyaXB0b3JNYXAsIHBydiwgeyBvblVua25vd25JbnB1dDogJ3Rocm93JyB9KTtcbiAgcmV0dXJuIHBzYnQ7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUcmFuc2FjdGlvbkV4cGxhbmF0aW9uRnJvbVBzYnQoXG4gIHR4OiBEZXNjcmlwdG9yVHJhbnNhY3Rpb24sXG4gIG5ldHdvcms6IHV0eG9saWIuTmV0d29ya1xuKTogVHJhbnNhY3Rpb25FeHBsYW5hdGlvbjxzdHJpbmc+IHtcbiAgY29uc3QgcHNidCA9IHV0eG9saWIuYml0Z28uY3JlYXRlUHNidERlY29kZSh0eC5jb2luU3BlY2lmaWMudHhIZXgsIG5ldHdvcmspO1xuICBjb25zdCBkZXNjcmlwdG9yTWFwID0gZ2V0RGVzY3JpcHRvcnNGcm9tRGVzY3JpcHRvclRyYW5zYWN0aW9uKHR4KTtcbiAgY29uc3QgeyBvdXRwdXRzLCBjaGFuZ2VPdXRwdXRzLCBmZWUgfSA9IGV4cGxhaW5Qc2J0KHBzYnQsIGRlc2NyaXB0b3JNYXApO1xuICByZXR1cm4ge1xuICAgIG91dHB1dHMsXG4gICAgY2hhbmdlT3V0cHV0cyxcbiAgICBmZWU6IHtcbiAgICAgIC8qIG5ldHdvcmsgZmVlICovXG4gICAgICBmZWUsXG4gICAgICAvKiBUT0RPICovXG4gICAgICBwYXlHb0ZlZVN0cmluZzogdW5kZWZpbmVkLFxuICAgICAgcGF5R29GZWVBZGRyZXNzOiB1bmRlZmluZWQsXG4gICAgfSxcbiAgfTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export * as descriptor from './descriptor';
|
|
2
|
+
export * from './OfflineVaultHalfSigned';
|
|
3
|
+
export { getTransactionExplanation } from './TransactionExplanation';
|
|
4
|
+
export { TransactionExplanation } from './TransactionExplanation';
|
|
5
|
+
export { ExplanationOutput } from './TransactionExplanation';
|
|
6
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/offlineVault/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,UAAU,MAAM,cAAc,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,OAAO,EAAE,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,0BAA0B,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export * as descriptor from './descriptor';
|
|
2
|
+
export * from './OfflineVaultHalfSigned';
|
|
3
|
+
export { getTransactionExplanation } from './TransactionExplanation';
|
|
4
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvb2ZmbGluZVZhdWx0L2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxVQUFVLE1BQU0sY0FBYyxDQUFDO0FBQzNDLGNBQWMsMEJBQTBCLENBQUM7QUFDekMsT0FBTyxFQUFFLHlCQUF5QixFQUFFLE1BQU0sMEJBQTBCLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBhcyBkZXNjcmlwdG9yIGZyb20gJy4vZGVzY3JpcHRvcic7XG5leHBvcnQgKiBmcm9tICcuL09mZmxpbmVWYXVsdEhhbGZTaWduZWQnO1xuZXhwb3J0IHsgZ2V0VHJhbnNhY3Rpb25FeHBsYW5hdGlvbiB9IGZyb20gJy4vVHJhbnNhY3Rpb25FeHBsYW5hdGlvbic7XG5leHBvcnQgeyBUcmFuc2FjdGlvbkV4cGxhbmF0aW9uIH0gZnJvbSAnLi9UcmFuc2FjdGlvbkV4cGxhbmF0aW9uJztcbmV4cG9ydCB7IEV4cGxhbmF0aW9uT3V0cHV0IH0gZnJvbSAnLi9UcmFuc2FjdGlvbkV4cGxhbmF0aW9uJztcbiJdfQ==
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { AddressInfo, TransactionIO } from '@bitgo-beta/blockapis';
|
|
2
|
+
import { bitgo } from '@bitgo-beta/utxo-lib';
|
|
3
|
+
type Unspent<TNumber extends number | bigint = number> = bitgo.Unspent<TNumber>;
|
|
4
|
+
/**
|
|
5
|
+
* An account with bear minimum information required for recoveries.
|
|
6
|
+
*/
|
|
7
|
+
export interface RecoveryAccountData {
|
|
8
|
+
txCount: number;
|
|
9
|
+
totalBalance: number;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* Factory for AddressApi & UtxoApi
|
|
13
|
+
*/
|
|
14
|
+
export interface RecoveryProvider<TNumber extends number | bigint = number> {
|
|
15
|
+
getUnspentsForAddresses(addresses: string[]): Promise<Unspent<TNumber>[]>;
|
|
16
|
+
getAddressInfo(address: string): Promise<AddressInfo>;
|
|
17
|
+
getTransactionHex(txid: string): Promise<string>;
|
|
18
|
+
getTransactionIO(txid: string): Promise<TransactionIO>;
|
|
19
|
+
}
|
|
20
|
+
export declare function forCoin(coinName: string, apiToken?: string): RecoveryProvider<number>;
|
|
21
|
+
export {};
|
|
22
|
+
//# sourceMappingURL=RecoveryProvider.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"RecoveryProvider.d.ts","sourceRoot":"","sources":["../../../src/recovery/RecoveryProvider.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"RecoveryProvider.d.ts","sourceRoot":"","sources":["../../../src/recovery/RecoveryProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,WAAW,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAClF,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAI7C,KAAK,OAAO,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;AAEhF;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM,GAAG,MAAM;IACxE,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC1E,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC;IACtD,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAAC;CACxD;AAED,wBAAgB,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAgBrF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { BlockchairApi } from '@bitgo-beta/blockapis';
|
|
2
|
+
import { ApiNotImplementedError } from './baseApi';
|
|
3
|
+
export function forCoin(coinName, apiToken) {
|
|
4
|
+
switch (coinName) {
|
|
5
|
+
case 'btc':
|
|
6
|
+
case 'tbtc':
|
|
7
|
+
case 'bch':
|
|
8
|
+
case 'bcha':
|
|
9
|
+
case 'bsv':
|
|
10
|
+
case 'btg':
|
|
11
|
+
case 'dash':
|
|
12
|
+
case 'doge':
|
|
13
|
+
case 'ltc':
|
|
14
|
+
case 'zec':
|
|
15
|
+
return BlockchairApi.forCoin(coinName, { apiToken });
|
|
16
|
+
}
|
|
17
|
+
throw new ApiNotImplementedError(coinName);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiUmVjb3ZlcnlQcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9yZWNvdmVyeS9SZWNvdmVyeVByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxhQUFhLEVBQThCLE1BQU0sdUJBQXVCLENBQUM7QUFHbEYsT0FBTyxFQUFFLHNCQUFzQixFQUFFLE1BQU0sV0FBVyxDQUFDO0FBc0JuRCxNQUFNLFVBQVUsT0FBTyxDQUFDLFFBQWdCLEVBQUUsUUFBaUI7SUFDekQsUUFBUSxRQUFRLEVBQUUsQ0FBQztRQUNqQixLQUFLLEtBQUssQ0FBQztRQUNYLEtBQUssTUFBTSxDQUFDO1FBQ1osS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssS0FBSyxDQUFDO1FBQ1gsS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLE1BQU0sQ0FBQztRQUNaLEtBQUssTUFBTSxDQUFDO1FBQ1osS0FBSyxLQUFLLENBQUM7UUFDWCxLQUFLLEtBQUs7WUFDUixPQUFPLGFBQWEsQ0FBQyxPQUFPLENBQUMsUUFBUSxFQUFFLEVBQUUsUUFBUSxFQUFFLENBQUMsQ0FBQztJQUN6RCxDQUFDO0lBRUQsTUFBTSxJQUFJLHNCQUFzQixDQUFDLFFBQVEsQ0FBQyxDQUFDO0FBQzdDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBCbG9ja2NoYWlyQXBpLCBBZGRyZXNzSW5mbywgVHJhbnNhY3Rpb25JTyB9IGZyb20gJ0BiaXRnby1iZXRhL2Jsb2NrYXBpcyc7XG5pbXBvcnQgeyBiaXRnbyB9IGZyb20gJ0BiaXRnby1iZXRhL3V0eG8tbGliJztcblxuaW1wb3J0IHsgQXBpTm90SW1wbGVtZW50ZWRFcnJvciB9IGZyb20gJy4vYmFzZUFwaSc7XG5cbnR5cGUgVW5zcGVudDxUTnVtYmVyIGV4dGVuZHMgbnVtYmVyIHwgYmlnaW50ID0gbnVtYmVyPiA9IGJpdGdvLlVuc3BlbnQ8VE51bWJlcj47XG5cbi8qKlxuICogQW4gYWNjb3VudCB3aXRoIGJlYXIgbWluaW11bSBpbmZvcm1hdGlvbiByZXF1aXJlZCBmb3IgcmVjb3Zlcmllcy5cbiAqL1xuZXhwb3J0IGludGVyZmFjZSBSZWNvdmVyeUFjY291bnREYXRhIHtcbiAgdHhDb3VudDogbnVtYmVyO1xuICB0b3RhbEJhbGFuY2U6IG51bWJlcjtcbn1cblxuLyoqXG4gKiBGYWN0b3J5IGZvciBBZGRyZXNzQXBpICYgVXR4b0FwaVxuICovXG5leHBvcnQgaW50ZXJmYWNlIFJlY292ZXJ5UHJvdmlkZXI8VE51bWJlciBleHRlbmRzIG51bWJlciB8IGJpZ2ludCA9IG51bWJlcj4ge1xuICBnZXRVbnNwZW50c0ZvckFkZHJlc3NlcyhhZGRyZXNzZXM6IHN0cmluZ1tdKTogUHJvbWlzZTxVbnNwZW50PFROdW1iZXI+W10+O1xuICBnZXRBZGRyZXNzSW5mbyhhZGRyZXNzOiBzdHJpbmcpOiBQcm9taXNlPEFkZHJlc3NJbmZvPjtcbiAgZ2V0VHJhbnNhY3Rpb25IZXgodHhpZDogc3RyaW5nKTogUHJvbWlzZTxzdHJpbmc+O1xuICBnZXRUcmFuc2FjdGlvbklPKHR4aWQ6IHN0cmluZyk6IFByb21pc2U8VHJhbnNhY3Rpb25JTz47XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBmb3JDb2luKGNvaW5OYW1lOiBzdHJpbmcsIGFwaVRva2VuPzogc3RyaW5nKTogUmVjb3ZlcnlQcm92aWRlcjxudW1iZXI+IHtcbiAgc3dpdGNoIChjb2luTmFtZSkge1xuICAgIGNhc2UgJ2J0Yyc6XG4gICAgY2FzZSAndGJ0Yyc6XG4gICAgY2FzZSAnYmNoJzpcbiAgICBjYXNlICdiY2hhJzpcbiAgICBjYXNlICdic3YnOlxuICAgIGNhc2UgJ2J0Zyc6XG4gICAgY2FzZSAnZGFzaCc6XG4gICAgY2FzZSAnZG9nZSc6XG4gICAgY2FzZSAnbHRjJzpcbiAgICBjYXNlICd6ZWMnOlxuICAgICAgcmV0dXJuIEJsb2NrY2hhaXJBcGkuZm9yQ29pbihjb2luTmFtZSwgeyBhcGlUb2tlbiB9KTtcbiAgfVxuXG4gIHRocm93IG5ldyBBcGlOb3RJbXBsZW1lbnRlZEVycm9yKGNvaW5OYW1lKTtcbn1cbiJdfQ==
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import * as utxolib from '@bitgo-beta/utxo-lib';
|
|
2
|
+
import { BitGoBase } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import { AbstractUtxoCoin } from '../abstractUtxoCoin';
|
|
4
|
+
import { RecoveryProvider } from './RecoveryProvider';
|
|
5
|
+
type ScriptType2Of3 = utxolib.bitgo.outputScripts.ScriptType2Of3;
|
|
6
|
+
type WalletUnspentJSON = utxolib.bitgo.WalletUnspent & {
|
|
7
|
+
valueString: string;
|
|
8
|
+
};
|
|
9
|
+
export declare const DEFAULT_RECOVERY_FEERATE_SAT_VBYTE_V1 = 50;
|
|
10
|
+
export declare const DEFAULT_RECOVERY_FEERATE_SAT_VBYTE_V1_SWEEP = 100;
|
|
11
|
+
export declare const DEFAULT_RECOVERY_FEERATE_SAT_VBYTE_V2 = 50;
|
|
12
|
+
export interface FormattedOfflineVaultTxInfo {
|
|
13
|
+
txInfo: {
|
|
14
|
+
unspents?: WalletUnspentJSON[];
|
|
15
|
+
};
|
|
16
|
+
txHex: string;
|
|
17
|
+
feeInfo: Record<string, never>;
|
|
18
|
+
coin: string;
|
|
19
|
+
}
|
|
20
|
+
export interface RecoverParams {
|
|
21
|
+
scan?: number;
|
|
22
|
+
userKey: string;
|
|
23
|
+
backupKey: string;
|
|
24
|
+
bitgoKey: string;
|
|
25
|
+
recoveryDestination: string;
|
|
26
|
+
krsProvider?: string;
|
|
27
|
+
ignoreAddressTypes: ScriptType2Of3[];
|
|
28
|
+
walletPassphrase?: string;
|
|
29
|
+
apiKey?: string;
|
|
30
|
+
userKeyPath?: string;
|
|
31
|
+
recoveryProvider?: RecoveryProvider;
|
|
32
|
+
/** Satoshi per byte */
|
|
33
|
+
feeRate?: number;
|
|
34
|
+
}
|
|
35
|
+
export type BackupKeyRecoveryTransansaction = {
|
|
36
|
+
inputs?: WalletUnspentJSON[];
|
|
37
|
+
transactionHex: string;
|
|
38
|
+
coin: string;
|
|
39
|
+
backupKey: string;
|
|
40
|
+
recoveryAmount: number;
|
|
41
|
+
recoveryAmountString: string;
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Builds a funds recovery transaction without BitGo.
|
|
45
|
+
*
|
|
46
|
+
* Returns transaction hex in legacy format for unsigned sweep transaction, half signed backup recovery transaction with KRS provider (only keyternal),
|
|
47
|
+
* fully signed backup recovery transaction without a KRS provider.
|
|
48
|
+
*
|
|
49
|
+
* Returns PSBT hex for half signed backup recovery transaction with KRS provider (excluding keyternal)
|
|
50
|
+
* For PSBT hex cases, Unspents are not required in response.
|
|
51
|
+
*
|
|
52
|
+
* @param coin
|
|
53
|
+
* @param bitgo
|
|
54
|
+
* @param params
|
|
55
|
+
* - userKey: [encrypted] xprv, or xpub
|
|
56
|
+
* - backupKey: [encrypted] xprv, or xpub if the xprv is held by a KRS provider
|
|
57
|
+
* - walletPassphrase: necessary if one of the xprvs is encrypted
|
|
58
|
+
* - bitgoKey: xpub
|
|
59
|
+
* - krsProvider: necessary if backup key is held by KRS
|
|
60
|
+
* - recoveryDestination: target address to send recovered funds to
|
|
61
|
+
* - scan: the amount of consecutive addresses without unspents to scan through before stopping
|
|
62
|
+
* - ignoreAddressTypes: (optional) scripts to ignore
|
|
63
|
+
* for example: ['p2shP2wsh', 'p2wsh'] will prevent code from checking for wrapped-segwit and native-segwit chains on the public block explorers
|
|
64
|
+
*/
|
|
65
|
+
export declare function backupKeyRecovery(coin: AbstractUtxoCoin, bitgo: BitGoBase, params: RecoverParams): Promise<BackupKeyRecoveryTransansaction | FormattedOfflineVaultTxInfo>;
|
|
66
|
+
export interface BitGoV1Unspent {
|
|
67
|
+
tx_hash: string;
|
|
68
|
+
tx_output_n: number;
|
|
69
|
+
value: number;
|
|
70
|
+
}
|
|
71
|
+
export interface V1SweepParams {
|
|
72
|
+
walletId: string;
|
|
73
|
+
walletPassphrase: string;
|
|
74
|
+
unspents: BitGoV1Unspent[];
|
|
75
|
+
recoveryDestination: string;
|
|
76
|
+
userKey: string;
|
|
77
|
+
otp: string;
|
|
78
|
+
}
|
|
79
|
+
export interface V1RecoverParams extends Omit<V1SweepParams, 'otp'> {
|
|
80
|
+
backupKey: string;
|
|
81
|
+
}
|
|
82
|
+
export declare function v1BackupKeyRecovery(coin: AbstractUtxoCoin, bitgo: BitGoBase, params: V1RecoverParams): Promise<string>;
|
|
83
|
+
export declare function v1Sweep(coin: AbstractUtxoCoin, bitgo: BitGoBase, params: V1SweepParams): Promise<{
|
|
84
|
+
tx: string;
|
|
85
|
+
hash: string;
|
|
86
|
+
status: string;
|
|
87
|
+
}>;
|
|
88
|
+
export {};
|
|
89
|
+
//# sourceMappingURL=backupKeyRecovery.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"backupKeyRecovery.d.ts","sourceRoot":"","sources":["../../../src/recovery/backupKeyRecovery.ts"],"names":[],"mappings":"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"}
|