@btc-vision/transaction 1.8.0-beta.3 → 1.8.0-beta.5
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/browser/_version.d.ts +1 -0
- package/browser/_version.d.ts.map +1 -0
- package/browser/abi/ABICoder.d.ts +1 -1
- package/browser/abi/ABICoder.d.ts.map +1 -0
- package/browser/branded/Branded.d.ts +4 -0
- package/browser/branded/Branded.d.ts.map +1 -0
- package/browser/btc-vision-bitcoin.js +11999 -2647
- package/browser/buffer/BinaryReader.d.ts +120 -1
- package/browser/buffer/BinaryReader.d.ts.map +1 -0
- package/browser/buffer/BinaryWriter.d.ts +51 -1
- package/browser/buffer/BinaryWriter.d.ts.map +1 -0
- package/browser/bytecode/Compressor.d.ts +12 -0
- package/browser/bytecode/Compressor.d.ts.map +1 -0
- package/browser/chain/ChainData.d.ts +2 -2
- package/browser/chain/ChainData.d.ts.map +1 -0
- package/browser/consensus/Consensus.d.ts +11 -3
- package/browser/consensus/Consensus.d.ts.map +1 -0
- package/browser/consensus/ConsensusConfig.d.ts +1 -0
- package/browser/consensus/ConsensusConfig.d.ts.map +1 -0
- package/browser/consensus/IConsensusConfig.d.ts +1 -0
- package/browser/consensus/IConsensusConfig.d.ts.map +1 -0
- package/browser/consensus/metadata/RoswellConsensus.d.ts +1 -0
- package/browser/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
- package/browser/crypto/crypto.d.ts +1 -0
- package/browser/crypto/crypto.d.ts.map +1 -0
- package/browser/deterministic/AddressMap.d.ts +6 -1
- package/browser/deterministic/AddressMap.d.ts.map +1 -0
- package/browser/deterministic/AddressSet.d.ts +3 -1
- package/browser/deterministic/AddressSet.d.ts.map +1 -0
- package/browser/deterministic/CustomMap.d.ts +3 -1
- package/browser/deterministic/CustomMap.d.ts.map +1 -0
- package/browser/deterministic/DeterministicMap.d.ts +3 -1
- package/browser/deterministic/DeterministicMap.d.ts.map +1 -0
- package/browser/deterministic/DeterministicSet.d.ts +3 -1
- package/browser/deterministic/DeterministicSet.d.ts.map +1 -0
- package/browser/deterministic/ExtendedAddressMap.d.ts +7 -1
- package/browser/deterministic/ExtendedAddressMap.d.ts.map +1 -0
- package/browser/deterministic/FastMap.d.ts +7 -1
- package/browser/deterministic/FastMap.d.ts.map +1 -0
- package/browser/ecc/backend.d.ts +13 -0
- package/browser/ecc/backend.d.ts.map +1 -0
- package/browser/epoch/ChallengeSolution.d.ts +33 -1
- package/browser/epoch/ChallengeSolution.d.ts.map +1 -0
- package/browser/epoch/interfaces/IChallengeSolution.d.ts +14 -13
- package/browser/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
- package/browser/epoch/validator/EpochValidator.d.ts +37 -7
- package/browser/epoch/validator/EpochValidator.d.ts.map +1 -0
- package/browser/event/NetEvent.d.ts +1 -0
- package/browser/event/NetEvent.d.ts.map +1 -0
- package/browser/generators/AddressGenerator.d.ts +4 -3
- package/browser/generators/AddressGenerator.d.ts.map +1 -0
- package/browser/generators/Features.d.ts +1 -0
- package/browser/generators/Features.d.ts.map +1 -0
- package/browser/generators/Generator.d.ts +46 -10
- package/browser/generators/Generator.d.ts.map +1 -0
- package/browser/generators/MLDSAData.d.ts +1 -0
- package/browser/generators/MLDSAData.d.ts.map +1 -0
- package/browser/generators/builders/CalldataGenerator.d.ts +25 -4
- package/browser/generators/builders/CalldataGenerator.d.ts.map +1 -0
- package/browser/generators/builders/CustomGenerator.d.ts +13 -3
- package/browser/generators/builders/CustomGenerator.d.ts.map +1 -0
- package/browser/generators/builders/DeploymentGenerator.d.ts +15 -4
- package/browser/generators/builders/DeploymentGenerator.d.ts.map +1 -0
- package/browser/generators/builders/HashCommitmentGenerator.d.ts +164 -12
- package/browser/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
- package/browser/generators/builders/LegacyCalldataGenerator.d.ts +26 -4
- package/browser/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
- package/browser/generators/builders/MultiSignGenerator.d.ts +6 -1
- package/browser/generators/builders/MultiSignGenerator.d.ts.map +1 -0
- package/browser/generators/builders/P2WDAGenerator.d.ts +42 -4
- package/browser/generators/builders/P2WDAGenerator.d.ts.map +1 -0
- package/browser/index.d.ts +1 -0
- package/browser/index.d.ts.map +1 -0
- package/browser/index.js +3558 -3167
- package/browser/keypair/Address.d.ts +283 -13
- package/browser/keypair/Address.d.ts.map +1 -0
- package/browser/keypair/AddressVerificator.d.ts +7 -6
- package/browser/keypair/AddressVerificator.d.ts.map +1 -0
- package/browser/keypair/EcKeyPair.d.ts +183 -21
- package/browser/keypair/EcKeyPair.d.ts.map +1 -0
- package/browser/keypair/MessageSigner.d.ts +17 -16
- package/browser/keypair/MessageSigner.d.ts.map +1 -0
- package/browser/keypair/Secp256k1PointDeriver.d.ts +55 -0
- package/browser/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
- package/browser/keypair/Wallet.d.ts +27 -13
- package/browser/keypair/Wallet.d.ts.map +1 -0
- package/browser/keypair/interfaces/IWallet.d.ts +19 -0
- package/browser/keypair/interfaces/IWallet.d.ts.map +1 -0
- package/browser/metadata/ContractBaseMetadata.d.ts +10 -2
- package/browser/metadata/ContractBaseMetadata.d.ts.map +1 -0
- package/browser/mnemonic/BIPStandard.d.ts +59 -0
- package/browser/mnemonic/BIPStandard.d.ts.map +1 -0
- package/browser/mnemonic/Mnemonic.d.ts +15 -3
- package/browser/mnemonic/Mnemonic.d.ts.map +1 -0
- package/browser/mnemonic/MnemonicStrength.d.ts +6 -0
- package/browser/mnemonic/MnemonicStrength.d.ts.map +1 -0
- package/browser/network/ChainId.d.ts +1 -0
- package/browser/network/ChainId.d.ts.map +1 -0
- package/browser/noble-curves.js +844 -2746
- package/browser/noble-hashes.js +1338 -2067
- package/browser/opnet.d.ts +22 -1
- package/browser/opnet.d.ts.map +1 -0
- package/browser/p2wda/P2WDADetector.d.ts +36 -9
- package/browser/p2wda/P2WDADetector.d.ts.map +1 -0
- package/browser/polyfill/disposable.d.ts +16 -0
- package/browser/polyfill/disposable.d.ts.map +1 -0
- package/browser/signer/AddressRotation.d.ts +36 -0
- package/browser/signer/AddressRotation.d.ts.map +1 -0
- package/browser/signer/IRotationSigner.d.ts +27 -3
- package/browser/signer/IRotationSigner.d.ts.map +1 -0
- package/browser/signer/ParallelSignerAdapter.d.ts +14 -0
- package/browser/signer/ParallelSignerAdapter.d.ts.map +1 -0
- package/browser/signer/SignerUtils.d.ts +11 -4
- package/browser/signer/SignerUtils.d.ts.map +1 -0
- package/browser/signer/TweakedSigner.d.ts +28 -4
- package/browser/signer/TweakedSigner.d.ts.map +1 -0
- package/browser/transaction/ContractAddress.d.ts +2 -2
- package/browser/transaction/ContractAddress.d.ts.map +1 -0
- package/browser/transaction/TransactionFactory.d.ts +140 -2
- package/browser/transaction/TransactionFactory.d.ts.map +1 -0
- package/browser/transaction/browser/BrowserSignerBase.d.ts +12 -6
- package/browser/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
- package/browser/transaction/browser/WalletNetworks.d.ts +1 -0
- package/browser/transaction/browser/WalletNetworks.d.ts.map +1 -0
- package/browser/transaction/browser/Web3Provider.d.ts +27 -0
- package/browser/transaction/browser/Web3Provider.d.ts.map +1 -0
- package/browser/transaction/browser/extensions/UnisatSigner.d.ts +9 -7
- package/browser/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
- package/browser/transaction/browser/extensions/XverseSigner.d.ts +9 -7
- package/browser/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
- package/browser/transaction/browser/types/OPWallet.d.ts +10 -0
- package/browser/transaction/browser/types/OPWallet.d.ts.map +1 -0
- package/browser/transaction/browser/types/Unisat.d.ts +1 -0
- package/browser/transaction/browser/types/Unisat.d.ts.map +1 -0
- package/browser/transaction/browser/types/Xverse.d.ts +1 -0
- package/browser/transaction/browser/types/Xverse.d.ts.map +1 -0
- package/browser/transaction/builders/CancelTransaction.d.ts +29 -4
- package/browser/transaction/builders/CancelTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
- package/browser/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts +137 -10
- package/browser/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/CustomScriptTransaction.d.ts +106 -6
- package/browser/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/DeploymentTransaction.d.ts +116 -5
- package/browser/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/FundingTransaction.d.ts +4 -3
- package/browser/transaction/builders/FundingTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/InteractionTransaction.d.ts +12 -3
- package/browser/transaction/builders/InteractionTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts +56 -5
- package/browser/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
- package/browser/transaction/builders/MultiSignTransaction.d.ts +125 -16
- package/browser/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/SharedInteractionTransaction.d.ts +103 -15
- package/browser/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
- package/browser/transaction/builders/TransactionBuilder.d.ts +243 -14
- package/browser/transaction/builders/TransactionBuilder.d.ts.map +1 -0
- package/browser/transaction/enums/TransactionType.d.ts +1 -0
- package/browser/transaction/enums/TransactionType.d.ts.map +1 -0
- package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts +2 -1
- package/browser/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
- package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +46 -3
- package/browser/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
- package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts +6 -4
- package/browser/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
- package/browser/transaction/interfaces/ITransactionParameters.d.ts +22 -10
- package/browser/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
- package/browser/transaction/interfaces/ITransactionResponses.d.ts +1 -0
- package/browser/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
- package/browser/transaction/interfaces/ITweakedTransactionData.d.ts +17 -5
- package/browser/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
- package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts +26 -0
- package/browser/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
- package/browser/transaction/interfaces/Tap.d.ts +4 -3
- package/browser/transaction/interfaces/Tap.d.ts.map +1 -0
- package/browser/transaction/mineable/IP2WSHAddress.d.ts +2 -1
- package/browser/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
- package/browser/transaction/mineable/TimelockGenerator.d.ts +12 -3
- package/browser/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
- package/browser/transaction/offline/OfflineTransactionManager.d.ts +190 -9
- package/browser/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
- package/browser/transaction/offline/TransactionReconstructor.d.ts +53 -3
- package/browser/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
- package/browser/transaction/offline/TransactionSerializer.d.ts +53 -2
- package/browser/transaction/offline/TransactionSerializer.d.ts.map +1 -0
- package/browser/transaction/offline/TransactionStateCapture.d.ts +64 -5
- package/browser/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
- package/browser/transaction/offline/interfaces/ISerializableState.d.ts +71 -0
- package/browser/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
- package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts +76 -0
- package/browser/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
- package/browser/transaction/psbt/PSBTTypes.d.ts +1 -0
- package/browser/transaction/psbt/PSBTTypes.d.ts.map +1 -0
- package/browser/transaction/shared/P2TR_MS.d.ts +11 -2
- package/browser/transaction/shared/P2TR_MS.d.ts.map +1 -0
- package/browser/transaction/shared/TweakedTransaction.d.ts +274 -33
- package/browser/transaction/shared/TweakedTransaction.d.ts.map +1 -0
- package/browser/transaction/utils/WitnessUtils.d.ts +7 -1
- package/browser/transaction/utils/WitnessUtils.d.ts.map +1 -0
- package/browser/utils/BitcoinUtils.d.ts +19 -0
- package/browser/utils/BitcoinUtils.d.ts.map +1 -0
- package/browser/utils/BufferHelper.d.ts +1 -0
- package/browser/utils/BufferHelper.d.ts.map +1 -0
- package/browser/utils/StringToBuffer.d.ts +1 -0
- package/browser/utils/StringToBuffer.d.ts.map +1 -0
- package/browser/utils/lengths.d.ts +1 -0
- package/browser/utils/lengths.d.ts.map +1 -0
- package/browser/utils/types.d.ts +1 -0
- package/browser/utils/types.d.ts.map +1 -0
- package/browser/utxo/OPNetLimitedProvider.d.ts +37 -1
- package/browser/utxo/OPNetLimitedProvider.d.ts.map +1 -0
- package/browser/utxo/interfaces/BroadcastResponse.d.ts +1 -0
- package/browser/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
- package/browser/utxo/interfaces/IUTXO.d.ts +11 -5
- package/browser/utxo/interfaces/IUTXO.d.ts.map +1 -0
- package/browser/vendors.js +14351 -10031
- package/browser/verification/TapscriptVerificator.d.ts +10 -8
- package/browser/verification/TapscriptVerificator.d.ts.map +1 -0
- package/build/_version.d.ts +1 -0
- package/build/_version.d.ts.map +1 -0
- package/build/_version.js +1 -0
- package/build/_version.js.map +1 -0
- package/build/abi/ABICoder.d.ts +1 -1
- package/build/abi/ABICoder.d.ts.map +1 -0
- package/build/abi/ABICoder.js +9 -10
- package/build/abi/ABICoder.js.map +1 -0
- package/build/branded/Branded.d.ts +4 -0
- package/build/branded/Branded.d.ts.map +1 -0
- package/build/branded/Branded.js +2 -0
- package/build/branded/Branded.js.map +1 -0
- package/build/buffer/BinaryReader.d.ts +121 -2
- package/build/buffer/BinaryReader.d.ts.map +1 -0
- package/build/buffer/BinaryReader.js +129 -5
- package/build/buffer/BinaryReader.js.map +1 -0
- package/build/buffer/BinaryWriter.d.ts +52 -2
- package/build/buffer/BinaryWriter.d.ts.map +1 -0
- package/build/buffer/BinaryWriter.js +62 -2
- package/build/buffer/BinaryWriter.js.map +1 -0
- package/build/bytecode/Compressor.d.ts +12 -0
- package/build/bytecode/Compressor.d.ts.map +1 -0
- package/build/bytecode/Compressor.js +17 -5
- package/build/bytecode/Compressor.js.map +1 -0
- package/build/chain/ChainData.d.ts +2 -2
- package/build/chain/ChainData.d.ts.map +1 -0
- package/build/chain/ChainData.js +35 -17
- package/build/chain/ChainData.js.map +1 -0
- package/build/consensus/Consensus.d.ts +11 -3
- package/build/consensus/Consensus.d.ts.map +1 -0
- package/build/consensus/Consensus.js +8 -0
- package/build/consensus/Consensus.js.map +1 -0
- package/build/consensus/ConsensusConfig.d.ts +2 -1
- package/build/consensus/ConsensusConfig.d.ts.map +1 -0
- package/build/consensus/ConsensusConfig.js +1 -0
- package/build/consensus/ConsensusConfig.js.map +1 -0
- package/build/consensus/IConsensusConfig.d.ts +1 -0
- package/build/consensus/IConsensusConfig.d.ts.map +1 -0
- package/build/consensus/IConsensusConfig.js +2 -1
- package/build/consensus/IConsensusConfig.js.map +1 -0
- package/build/consensus/metadata/RoswellConsensus.d.ts +2 -1
- package/build/consensus/metadata/RoswellConsensus.d.ts.map +1 -0
- package/build/consensus/metadata/RoswellConsensus.js +2 -0
- package/build/consensus/metadata/RoswellConsensus.js.map +1 -0
- package/build/crypto/crypto.d.ts +1 -0
- package/build/crypto/crypto.d.ts.map +1 -0
- package/build/crypto/crypto.js +1 -0
- package/build/crypto/crypto.js.map +1 -0
- package/build/deterministic/AddressMap.d.ts +6 -1
- package/build/deterministic/AddressMap.d.ts.map +1 -0
- package/build/deterministic/AddressMap.js +8 -0
- package/build/deterministic/AddressMap.js.map +1 -0
- package/build/deterministic/AddressSet.d.ts +3 -1
- package/build/deterministic/AddressSet.d.ts.map +1 -0
- package/build/deterministic/AddressSet.js +7 -0
- package/build/deterministic/AddressSet.js.map +1 -0
- package/build/deterministic/CustomMap.d.ts +3 -1
- package/build/deterministic/CustomMap.d.ts.map +1 -0
- package/build/deterministic/CustomMap.js +65 -47
- package/build/deterministic/CustomMap.js.map +1 -0
- package/build/deterministic/DeterministicMap.d.ts +4 -2
- package/build/deterministic/DeterministicMap.d.ts.map +1 -0
- package/build/deterministic/DeterministicMap.js +24 -27
- package/build/deterministic/DeterministicMap.js.map +1 -0
- package/build/deterministic/DeterministicSet.d.ts +3 -1
- package/build/deterministic/DeterministicSet.d.ts.map +1 -0
- package/build/deterministic/DeterministicSet.js +6 -0
- package/build/deterministic/DeterministicSet.js.map +1 -0
- package/build/deterministic/ExtendedAddressMap.d.ts +7 -1
- package/build/deterministic/ExtendedAddressMap.d.ts.map +1 -0
- package/build/deterministic/ExtendedAddressMap.js +18 -2
- package/build/deterministic/ExtendedAddressMap.js.map +1 -0
- package/build/deterministic/FastMap.d.ts +7 -1
- package/build/deterministic/FastMap.d.ts.map +1 -0
- package/build/deterministic/FastMap.js +7 -2
- package/build/deterministic/FastMap.js.map +1 -0
- package/build/ecc/backend.d.ts +13 -0
- package/build/ecc/backend.d.ts.map +1 -0
- package/build/ecc/backend.js +15 -0
- package/build/ecc/backend.js.map +1 -0
- package/build/epoch/ChallengeSolution.d.ts +34 -2
- package/build/epoch/ChallengeSolution.d.ts.map +1 -0
- package/build/epoch/ChallengeSolution.js +52 -0
- package/build/epoch/ChallengeSolution.js.map +1 -0
- package/build/epoch/interfaces/IChallengeSolution.d.ts +14 -13
- package/build/epoch/interfaces/IChallengeSolution.d.ts.map +1 -0
- package/build/epoch/interfaces/IChallengeSolution.js +2 -1
- package/build/epoch/interfaces/IChallengeSolution.js.map +1 -0
- package/build/epoch/validator/EpochValidator.d.ts +38 -8
- package/build/epoch/validator/EpochValidator.d.ts.map +1 -0
- package/build/epoch/validator/EpochValidator.js +45 -19
- package/build/epoch/validator/EpochValidator.js.map +1 -0
- package/build/event/NetEvent.d.ts +1 -0
- package/build/event/NetEvent.d.ts.map +1 -0
- package/build/event/NetEvent.js +3 -0
- package/build/event/NetEvent.js.map +1 -0
- package/build/generators/AddressGenerator.d.ts +4 -3
- package/build/generators/AddressGenerator.d.ts.map +1 -0
- package/build/generators/AddressGenerator.js +9 -4
- package/build/generators/AddressGenerator.js.map +1 -0
- package/build/generators/Features.d.ts +4 -3
- package/build/generators/Features.d.ts.map +1 -0
- package/build/generators/Features.js +1 -0
- package/build/generators/Features.js.map +1 -0
- package/build/generators/Generator.d.ts +47 -11
- package/build/generators/Generator.d.ts.map +1 -0
- package/build/generators/Generator.js +48 -12
- package/build/generators/Generator.js.map +1 -0
- package/build/generators/MLDSAData.d.ts +1 -0
- package/build/generators/MLDSAData.d.ts.map +1 -0
- package/build/generators/MLDSAData.js +1 -0
- package/build/generators/MLDSAData.js.map +1 -0
- package/build/generators/builders/CalldataGenerator.d.ts +27 -6
- package/build/generators/builders/CalldataGenerator.d.ts.map +1 -0
- package/build/generators/builders/CalldataGenerator.js +33 -4
- package/build/generators/builders/CalldataGenerator.js.map +1 -0
- package/build/generators/builders/CustomGenerator.d.ts +13 -3
- package/build/generators/builders/CustomGenerator.d.ts.map +1 -0
- package/build/generators/builders/CustomGenerator.js +11 -0
- package/build/generators/builders/CustomGenerator.js.map +1 -0
- package/build/generators/builders/DeploymentGenerator.d.ts +17 -6
- package/build/generators/builders/DeploymentGenerator.d.ts.map +1 -0
- package/build/generators/builders/DeploymentGenerator.js +18 -2
- package/build/generators/builders/DeploymentGenerator.js.map +1 -0
- package/build/generators/builders/HashCommitmentGenerator.d.ts +166 -14
- package/build/generators/builders/HashCommitmentGenerator.d.ts.map +1 -0
- package/build/generators/builders/HashCommitmentGenerator.js +193 -27
- package/build/generators/builders/HashCommitmentGenerator.js.map +1 -0
- package/build/generators/builders/LegacyCalldataGenerator.d.ts +27 -5
- package/build/generators/builders/LegacyCalldataGenerator.d.ts.map +1 -0
- package/build/generators/builders/LegacyCalldataGenerator.js +35 -5
- package/build/generators/builders/LegacyCalldataGenerator.js.map +1 -0
- package/build/generators/builders/MultiSignGenerator.d.ts +6 -1
- package/build/generators/builders/MultiSignGenerator.d.ts.map +1 -0
- package/build/generators/builders/MultiSignGenerator.js +20 -10
- package/build/generators/builders/MultiSignGenerator.js.map +1 -0
- package/build/generators/builders/P2WDAGenerator.d.ts +44 -6
- package/build/generators/builders/P2WDAGenerator.d.ts.map +1 -0
- package/build/generators/builders/P2WDAGenerator.js +41 -2
- package/build/generators/builders/P2WDAGenerator.js.map +1 -0
- package/build/index.d.ts +1 -0
- package/build/index.d.ts.map +1 -0
- package/build/index.js +1 -0
- package/build/index.js.map +1 -0
- package/build/keypair/Address.d.ts +284 -14
- package/build/keypair/Address.d.ts.map +1 -0
- package/build/keypair/Address.js +446 -128
- package/build/keypair/Address.js.map +1 -0
- package/build/keypair/AddressVerificator.d.ts +7 -6
- package/build/keypair/AddressVerificator.d.ts.map +1 -0
- package/build/keypair/AddressVerificator.js +4 -5
- package/build/keypair/AddressVerificator.js.map +1 -0
- package/build/keypair/EcKeyPair.d.ts +185 -23
- package/build/keypair/EcKeyPair.d.ts.map +1 -0
- package/build/keypair/EcKeyPair.js +218 -50
- package/build/keypair/EcKeyPair.js.map +1 -0
- package/build/keypair/MessageSigner.d.ts +18 -17
- package/build/keypair/MessageSigner.d.ts.map +1 -0
- package/build/keypair/MessageSigner.js +34 -25
- package/build/keypair/MessageSigner.js.map +1 -0
- package/build/keypair/Secp256k1PointDeriver.d.ts +55 -0
- package/build/keypair/Secp256k1PointDeriver.d.ts.map +1 -0
- package/build/keypair/Secp256k1PointDeriver.js +66 -0
- package/build/keypair/Secp256k1PointDeriver.js.map +1 -0
- package/build/keypair/Wallet.d.ts +29 -15
- package/build/keypair/Wallet.d.ts.map +1 -0
- package/build/keypair/Wallet.js +46 -14
- package/build/keypair/Wallet.js.map +1 -0
- package/build/keypair/interfaces/IWallet.d.ts +19 -0
- package/build/keypair/interfaces/IWallet.d.ts.map +1 -0
- package/build/keypair/interfaces/IWallet.js +1 -0
- package/build/keypair/interfaces/IWallet.js.map +1 -0
- package/build/metadata/ContractBaseMetadata.d.ts +10 -2
- package/build/metadata/ContractBaseMetadata.d.ts.map +1 -0
- package/build/metadata/ContractBaseMetadata.js +10 -1
- package/build/metadata/ContractBaseMetadata.js.map +1 -0
- package/build/mnemonic/BIPStandard.d.ts +59 -0
- package/build/mnemonic/BIPStandard.d.ts.map +1 -0
- package/build/mnemonic/BIPStandard.js +59 -0
- package/build/mnemonic/BIPStandard.js.map +1 -0
- package/build/mnemonic/Mnemonic.d.ts +16 -4
- package/build/mnemonic/Mnemonic.d.ts.map +1 -0
- package/build/mnemonic/Mnemonic.js +35 -8
- package/build/mnemonic/Mnemonic.js.map +1 -0
- package/build/mnemonic/MnemonicStrength.d.ts +6 -0
- package/build/mnemonic/MnemonicStrength.d.ts.map +1 -0
- package/build/mnemonic/MnemonicStrength.js +6 -0
- package/build/mnemonic/MnemonicStrength.js.map +1 -0
- package/build/network/ChainId.d.ts +1 -0
- package/build/network/ChainId.d.ts.map +1 -0
- package/build/network/ChainId.js +1 -0
- package/build/network/ChainId.js.map +1 -0
- package/build/opnet.d.ts +26 -3
- package/build/opnet.d.ts.map +1 -0
- package/build/opnet.js +23 -0
- package/build/opnet.js.map +1 -0
- package/build/p2wda/P2WDADetector.d.ts +38 -11
- package/build/p2wda/P2WDADetector.d.ts.map +1 -0
- package/build/p2wda/P2WDADetector.js +43 -10
- package/build/p2wda/P2WDADetector.js.map +1 -0
- package/build/polyfill/disposable.d.ts +16 -0
- package/build/polyfill/disposable.d.ts.map +1 -0
- package/build/polyfill/disposable.js +23 -0
- package/build/polyfill/disposable.js.map +1 -0
- package/build/signer/AddressRotation.d.ts +37 -1
- package/build/signer/AddressRotation.d.ts.map +1 -0
- package/build/signer/AddressRotation.js +16 -0
- package/build/signer/AddressRotation.js.map +1 -0
- package/build/signer/IRotationSigner.d.ts +27 -3
- package/build/signer/IRotationSigner.d.ts.map +1 -0
- package/build/signer/IRotationSigner.js +2 -1
- package/build/signer/IRotationSigner.js.map +1 -0
- package/build/signer/ParallelSignerAdapter.d.ts +14 -0
- package/build/signer/ParallelSignerAdapter.d.ts.map +1 -0
- package/build/signer/ParallelSignerAdapter.js +51 -0
- package/build/signer/ParallelSignerAdapter.js.map +1 -0
- package/build/signer/SignerUtils.d.ts +11 -4
- package/build/signer/SignerUtils.d.ts.map +1 -0
- package/build/signer/SignerUtils.js +16 -0
- package/build/signer/SignerUtils.js.map +1 -0
- package/build/signer/TweakedSigner.d.ts +28 -4
- package/build/signer/TweakedSigner.d.ts.map +1 -0
- package/build/signer/TweakedSigner.js +23 -6
- package/build/signer/TweakedSigner.js.map +1 -0
- package/build/transaction/ContractAddress.d.ts +2 -2
- package/build/transaction/ContractAddress.d.ts.map +1 -0
- package/build/transaction/ContractAddress.js +4 -8
- package/build/transaction/ContractAddress.js.map +1 -0
- package/build/transaction/TransactionFactory.d.ts +147 -9
- package/build/transaction/TransactionFactory.d.ts.map +1 -0
- package/build/transaction/TransactionFactory.js +145 -26
- package/build/transaction/TransactionFactory.js.map +1 -0
- package/build/transaction/browser/BrowserSignerBase.d.ts +12 -6
- package/build/transaction/browser/BrowserSignerBase.d.ts.map +1 -0
- package/build/transaction/browser/BrowserSignerBase.js +7 -0
- package/build/transaction/browser/BrowserSignerBase.js.map +1 -0
- package/build/transaction/browser/WalletNetworks.d.ts +1 -0
- package/build/transaction/browser/WalletNetworks.d.ts.map +1 -0
- package/build/transaction/browser/WalletNetworks.js +1 -0
- package/build/transaction/browser/WalletNetworks.js.map +1 -0
- package/build/transaction/browser/Web3Provider.d.ts +30 -3
- package/build/transaction/browser/Web3Provider.d.ts.map +1 -0
- package/build/transaction/browser/Web3Provider.js +1 -0
- package/build/transaction/browser/Web3Provider.js.map +1 -0
- package/build/transaction/browser/extensions/UnisatSigner.d.ts +11 -9
- package/build/transaction/browser/extensions/UnisatSigner.d.ts.map +1 -0
- package/build/transaction/browser/extensions/UnisatSigner.js +27 -17
- package/build/transaction/browser/extensions/UnisatSigner.js.map +1 -0
- package/build/transaction/browser/extensions/XverseSigner.d.ts +10 -8
- package/build/transaction/browser/extensions/XverseSigner.d.ts.map +1 -0
- package/build/transaction/browser/extensions/XverseSigner.js +25 -15
- package/build/transaction/browser/extensions/XverseSigner.js.map +1 -0
- package/build/transaction/browser/types/OPWallet.d.ts +12 -2
- package/build/transaction/browser/types/OPWallet.d.ts.map +1 -0
- package/build/transaction/browser/types/OPWallet.js +4 -0
- package/build/transaction/browser/types/OPWallet.js.map +1 -0
- package/build/transaction/browser/types/Unisat.d.ts +2 -1
- package/build/transaction/browser/types/Unisat.d.ts.map +1 -0
- package/build/transaction/browser/types/Unisat.js +2 -0
- package/build/transaction/browser/types/Unisat.js.map +1 -0
- package/build/transaction/browser/types/Xverse.d.ts +1 -0
- package/build/transaction/browser/types/Xverse.d.ts.map +1 -0
- package/build/transaction/browser/types/Xverse.js +1 -0
- package/build/transaction/browser/types/Xverse.js.map +1 -0
- package/build/transaction/builders/CancelTransaction.d.ts +31 -6
- package/build/transaction/builders/CancelTransaction.d.ts.map +1 -0
- package/build/transaction/builders/CancelTransaction.js +116 -33
- package/build/transaction/builders/CancelTransaction.js.map +1 -0
- package/build/transaction/builders/ChallengeSolutionTransaction.d.ts +1 -0
- package/build/transaction/builders/ChallengeSolutionTransaction.d.ts.map +1 -0
- package/build/transaction/builders/ChallengeSolutionTransaction.js +88 -0
- package/build/transaction/builders/ChallengeSolutionTransaction.js.map +1 -0
- package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts +140 -13
- package/build/transaction/builders/ConsolidatedInteractionTransaction.d.ts.map +1 -0
- package/build/transaction/builders/ConsolidatedInteractionTransaction.js +197 -20
- package/build/transaction/builders/ConsolidatedInteractionTransaction.js.map +1 -0
- package/build/transaction/builders/CustomScriptTransaction.d.ts +108 -8
- package/build/transaction/builders/CustomScriptTransaction.d.ts.map +1 -0
- package/build/transaction/builders/CustomScriptTransaction.js +176 -39
- package/build/transaction/builders/CustomScriptTransaction.js.map +1 -0
- package/build/transaction/builders/DeploymentTransaction.d.ts +120 -9
- package/build/transaction/builders/DeploymentTransaction.d.ts.map +1 -0
- package/build/transaction/builders/DeploymentTransaction.js +194 -51
- package/build/transaction/builders/DeploymentTransaction.js.map +1 -0
- package/build/transaction/builders/FundingTransaction.d.ts +5 -4
- package/build/transaction/builders/FundingTransaction.d.ts.map +1 -0
- package/build/transaction/builders/FundingTransaction.js +15 -8
- package/build/transaction/builders/FundingTransaction.js.map +1 -0
- package/build/transaction/builders/InteractionTransaction.d.ts +14 -5
- package/build/transaction/builders/InteractionTransaction.d.ts.map +1 -0
- package/build/transaction/builders/InteractionTransaction.js +18 -5
- package/build/transaction/builders/InteractionTransaction.js.map +1 -0
- package/build/transaction/builders/InteractionTransactionP2WDA.d.ts +58 -7
- package/build/transaction/builders/InteractionTransactionP2WDA.d.ts.map +1 -0
- package/build/transaction/builders/InteractionTransactionP2WDA.js +95 -18
- package/build/transaction/builders/InteractionTransactionP2WDA.js.map +1 -0
- package/build/transaction/builders/MultiSignTransaction.d.ts +126 -17
- package/build/transaction/builders/MultiSignTransaction.d.ts.map +1 -0
- package/build/transaction/builders/MultiSignTransaction.js +201 -76
- package/build/transaction/builders/MultiSignTransaction.js.map +1 -0
- package/build/transaction/builders/SharedInteractionTransaction.d.ts +106 -18
- package/build/transaction/builders/SharedInteractionTransaction.d.ts.map +1 -0
- package/build/transaction/builders/SharedInteractionTransaction.js +158 -40
- package/build/transaction/builders/SharedInteractionTransaction.js.map +1 -0
- package/build/transaction/builders/TransactionBuilder.d.ts +249 -19
- package/build/transaction/builders/TransactionBuilder.d.ts.map +1 -0
- package/build/transaction/builders/TransactionBuilder.js +375 -60
- package/build/transaction/builders/TransactionBuilder.js.map +1 -0
- package/build/transaction/enums/TransactionType.d.ts +1 -0
- package/build/transaction/enums/TransactionType.d.ts.map +1 -0
- package/build/transaction/enums/TransactionType.js +1 -0
- package/build/transaction/enums/TransactionType.js.map +1 -0
- package/build/transaction/interfaces/ICancelTransactionParameters.d.ts +3 -2
- package/build/transaction/interfaces/ICancelTransactionParameters.d.ts.map +1 -0
- package/build/transaction/interfaces/ICancelTransactionParameters.js +1 -0
- package/build/transaction/interfaces/ICancelTransactionParameters.js.map +1 -0
- package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts +48 -5
- package/build/transaction/interfaces/IConsolidatedTransactionParameters.d.ts.map +1 -0
- package/build/transaction/interfaces/IConsolidatedTransactionParameters.js +1 -0
- package/build/transaction/interfaces/IConsolidatedTransactionParameters.js.map +1 -0
- package/build/transaction/interfaces/ICustomTransactionParameters.d.ts +7 -5
- package/build/transaction/interfaces/ICustomTransactionParameters.d.ts.map +1 -0
- package/build/transaction/interfaces/ICustomTransactionParameters.js +1 -0
- package/build/transaction/interfaces/ICustomTransactionParameters.js.map +1 -0
- package/build/transaction/interfaces/ITransactionParameters.d.ts +27 -15
- package/build/transaction/interfaces/ITransactionParameters.d.ts.map +1 -0
- package/build/transaction/interfaces/ITransactionParameters.js +1 -0
- package/build/transaction/interfaces/ITransactionParameters.js.map +1 -0
- package/build/transaction/interfaces/ITransactionResponses.d.ts +3 -2
- package/build/transaction/interfaces/ITransactionResponses.d.ts.map +1 -0
- package/build/transaction/interfaces/ITransactionResponses.js +1 -0
- package/build/transaction/interfaces/ITransactionResponses.js.map +1 -0
- package/build/transaction/interfaces/ITweakedTransactionData.d.ts +21 -8
- package/build/transaction/interfaces/ITweakedTransactionData.d.ts.map +1 -0
- package/build/transaction/interfaces/ITweakedTransactionData.js +1 -0
- package/build/transaction/interfaces/ITweakedTransactionData.js.map +1 -0
- package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts +29 -3
- package/build/transaction/interfaces/IWeb3ProviderTypes.d.ts.map +1 -0
- package/build/transaction/interfaces/IWeb3ProviderTypes.js +2 -1
- package/build/transaction/interfaces/IWeb3ProviderTypes.js.map +1 -0
- package/build/transaction/interfaces/Tap.d.ts +4 -3
- package/build/transaction/interfaces/Tap.d.ts.map +1 -0
- package/build/transaction/interfaces/Tap.js +1 -0
- package/build/transaction/interfaces/Tap.js.map +1 -0
- package/build/transaction/mineable/IP2WSHAddress.d.ts +2 -1
- package/build/transaction/mineable/IP2WSHAddress.d.ts.map +1 -0
- package/build/transaction/mineable/IP2WSHAddress.js +1 -0
- package/build/transaction/mineable/IP2WSHAddress.js.map +1 -0
- package/build/transaction/mineable/TimelockGenerator.d.ts +13 -4
- package/build/transaction/mineable/TimelockGenerator.d.ts.map +1 -0
- package/build/transaction/mineable/TimelockGenerator.js +12 -3
- package/build/transaction/mineable/TimelockGenerator.js.map +1 -0
- package/build/transaction/offline/OfflineTransactionManager.d.ts +193 -12
- package/build/transaction/offline/OfflineTransactionManager.d.ts.map +1 -0
- package/build/transaction/offline/OfflineTransactionManager.js +192 -8
- package/build/transaction/offline/OfflineTransactionManager.js.map +1 -0
- package/build/transaction/offline/TransactionReconstructor.d.ts +56 -6
- package/build/transaction/offline/TransactionReconstructor.d.ts.map +1 -0
- package/build/transaction/offline/TransactionReconstructor.js +111 -75
- package/build/transaction/offline/TransactionReconstructor.js.map +1 -0
- package/build/transaction/offline/TransactionSerializer.d.ts +54 -3
- package/build/transaction/offline/TransactionSerializer.d.ts.map +1 -0
- package/build/transaction/offline/TransactionSerializer.js +206 -95
- package/build/transaction/offline/TransactionSerializer.js.map +1 -0
- package/build/transaction/offline/TransactionStateCapture.d.ts +66 -7
- package/build/transaction/offline/TransactionStateCapture.d.ts.map +1 -0
- package/build/transaction/offline/TransactionStateCapture.js +124 -60
- package/build/transaction/offline/TransactionStateCapture.js.map +1 -0
- package/build/transaction/offline/interfaces/ISerializableState.d.ts +72 -1
- package/build/transaction/offline/interfaces/ISerializableState.d.ts.map +1 -0
- package/build/transaction/offline/interfaces/ISerializableState.js +10 -1
- package/build/transaction/offline/interfaces/ISerializableState.js.map +1 -0
- package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts +77 -1
- package/build/transaction/offline/interfaces/ITypeSpecificData.d.ts.map +1 -0
- package/build/transaction/offline/interfaces/ITypeSpecificData.js +19 -0
- package/build/transaction/offline/interfaces/ITypeSpecificData.js.map +1 -0
- package/build/transaction/psbt/PSBTTypes.d.ts +1 -0
- package/build/transaction/psbt/PSBTTypes.d.ts.map +1 -0
- package/build/transaction/psbt/PSBTTypes.js +1 -0
- package/build/transaction/psbt/PSBTTypes.js.map +1 -0
- package/build/transaction/shared/P2TR_MS.d.ts +11 -2
- package/build/transaction/shared/P2TR_MS.d.ts.map +1 -0
- package/build/transaction/shared/P2TR_MS.js +10 -0
- package/build/transaction/shared/P2TR_MS.js.map +1 -0
- package/build/transaction/shared/TweakedTransaction.d.ts +281 -38
- package/build/transaction/shared/TweakedTransaction.d.ts.map +1 -0
- package/build/transaction/shared/TweakedTransaction.js +576 -114
- package/build/transaction/shared/TweakedTransaction.js.map +1 -0
- package/build/transaction/utils/WitnessUtils.d.ts +7 -1
- package/build/transaction/utils/WitnessUtils.d.ts.map +1 -0
- package/build/transaction/utils/WitnessUtils.js +17 -3
- package/build/transaction/utils/WitnessUtils.js.map +1 -0
- package/build/tsconfig.build.tsbuildinfo +1 -1
- package/build/utils/BitcoinUtils.d.ts +19 -0
- package/build/utils/BitcoinUtils.d.ts.map +1 -0
- package/build/utils/BitcoinUtils.js +19 -0
- package/build/utils/BitcoinUtils.js.map +1 -0
- package/build/utils/BufferHelper.d.ts +2 -1
- package/build/utils/BufferHelper.d.ts.map +1 -0
- package/build/utils/BufferHelper.js +38 -32
- package/build/utils/BufferHelper.js.map +1 -0
- package/build/utils/StringToBuffer.d.ts +1 -0
- package/build/utils/StringToBuffer.d.ts.map +1 -0
- package/build/utils/StringToBuffer.js +1 -0
- package/build/utils/StringToBuffer.js.map +1 -0
- package/build/utils/lengths.d.ts +1 -0
- package/build/utils/lengths.d.ts.map +1 -0
- package/build/utils/lengths.js +1 -0
- package/build/utils/lengths.js.map +1 -0
- package/build/utils/types.d.ts +1 -0
- package/build/utils/types.d.ts.map +1 -0
- package/build/utils/types.js +2 -1
- package/build/utils/types.js.map +1 -0
- package/build/utxo/OPNetLimitedProvider.d.ts +39 -3
- package/build/utxo/OPNetLimitedProvider.d.ts.map +1 -0
- package/build/utxo/OPNetLimitedProvider.js +43 -5
- package/build/utxo/OPNetLimitedProvider.js.map +1 -0
- package/build/utxo/interfaces/BroadcastResponse.d.ts +1 -0
- package/build/utxo/interfaces/BroadcastResponse.d.ts.map +1 -0
- package/build/utxo/interfaces/BroadcastResponse.js +1 -0
- package/build/utxo/interfaces/BroadcastResponse.js.map +1 -0
- package/build/utxo/interfaces/IUTXO.d.ts +13 -7
- package/build/utxo/interfaces/IUTXO.d.ts.map +1 -0
- package/build/utxo/interfaces/IUTXO.js +1 -0
- package/build/utxo/interfaces/IUTXO.js.map +1 -0
- package/build/verification/TapscriptVerificator.d.ts +12 -10
- package/build/verification/TapscriptVerificator.d.ts.map +1 -0
- package/build/verification/TapscriptVerificator.js +28 -38
- package/build/verification/TapscriptVerificator.js.map +1 -0
- package/eslint.config.js +0 -1
- package/package.json +12 -35
- package/src/abi/ABICoder.ts +0 -13
- package/src/branded/Branded.ts +5 -0
- package/src/buffer/BinaryReader.ts +7 -7
- package/src/buffer/BinaryWriter.ts +29 -24
- package/src/bytecode/Compressor.ts +1 -1
- package/src/chain/ChainData.ts +34 -27
- package/src/consensus/ConsensusConfig.ts +1 -1
- package/src/consensus/IConsensusConfig.ts +0 -17
- package/src/consensus/metadata/RoswellConsensus.ts +1 -17
- package/src/deterministic/AddressMap.ts +5 -1
- package/src/deterministic/AddressSet.ts +5 -1
- package/src/deterministic/CustomMap.ts +6 -2
- package/src/deterministic/DeterministicMap.ts +8 -4
- package/src/deterministic/DeterministicSet.ts +6 -2
- package/src/deterministic/ExtendedAddressMap.ts +9 -4
- package/src/deterministic/FastMap.ts +9 -5
- package/src/ecc/backend.ts +17 -0
- package/src/epoch/ChallengeSolution.ts +3 -3
- package/src/epoch/interfaces/IChallengeSolution.ts +13 -13
- package/src/epoch/validator/EpochValidator.ts +24 -43
- package/src/generators/AddressGenerator.ts +4 -7
- package/src/generators/Features.ts +3 -3
- package/src/generators/Generator.ts +42 -26
- package/src/generators/builders/CalldataGenerator.ts +26 -24
- package/src/generators/builders/CustomGenerator.ts +4 -4
- package/src/generators/builders/DeploymentGenerator.ts +25 -23
- package/src/generators/builders/HashCommitmentGenerator.ts +31 -31
- package/src/generators/builders/LegacyCalldataGenerator.ts +26 -24
- package/src/generators/builders/MultiSignGenerator.ts +12 -12
- package/src/generators/builders/P2WDAGenerator.ts +10 -10
- package/src/keypair/Address.ts +114 -71
- package/src/keypair/AddressVerificator.ts +14 -148
- package/src/keypair/EcKeyPair.ts +104 -116
- package/src/keypair/MessageSigner.ts +70 -150
- package/src/keypair/Wallet.ts +56 -241
- package/src/metadata/ContractBaseMetadata.ts +2 -2
- package/src/mnemonic/Mnemonic.ts +31 -222
- package/src/opnet.ts +12 -6
- package/src/p2wda/P2WDADetector.ts +23 -72
- package/src/polyfill/disposable.ts +29 -0
- package/src/signer/AddressRotation.ts +1 -1
- package/src/signer/IRotationSigner.ts +3 -3
- package/src/signer/ParallelSignerAdapter.ts +59 -0
- package/src/signer/SignerUtils.ts +4 -4
- package/src/signer/TweakedSigner.ts +26 -14
- package/src/transaction/ContractAddress.ts +3 -7
- package/src/transaction/TransactionFactory.ts +28 -50
- package/src/transaction/browser/BrowserSignerBase.ts +12 -6
- package/src/transaction/browser/Web3Provider.ts +3 -3
- package/src/transaction/browser/extensions/UnisatSigner.ts +52 -48
- package/src/transaction/browser/extensions/XverseSigner.ts +55 -38
- package/src/transaction/browser/types/OPWallet.ts +2 -2
- package/src/transaction/browser/types/Unisat.ts +1 -1
- package/src/transaction/builders/CancelTransaction.ts +59 -24
- package/src/transaction/builders/ChallengeSolutionTransaction.ts +3 -3
- package/src/transaction/builders/ConsolidatedInteractionTransaction.ts +39 -34
- package/src/transaction/builders/CustomScriptTransaction.ts +79 -56
- package/src/transaction/builders/DeploymentTransaction.ts +82 -63
- package/src/transaction/builders/FundingTransaction.ts +11 -11
- package/src/transaction/builders/InteractionTransaction.ts +10 -10
- package/src/transaction/builders/InteractionTransactionP2WDA.ts +38 -40
- package/src/transaction/builders/MultiSignTransaction.ts +68 -61
- package/src/transaction/builders/SharedInteractionTransaction.ts +81 -57
- package/src/transaction/builders/TransactionBuilder.ts +99 -81
- package/src/transaction/interfaces/ICancelTransactionParameters.ts +2 -2
- package/src/transaction/interfaces/IConsolidatedTransactionParameters.ts +5 -5
- package/src/transaction/interfaces/ICustomTransactionParameters.ts +5 -5
- package/src/transaction/interfaces/ITransactionParameters.ts +15 -15
- package/src/transaction/interfaces/ITransactionResponses.ts +2 -2
- package/src/transaction/interfaces/ITweakedTransactionData.ts +17 -8
- package/src/transaction/interfaces/IWeb3ProviderTypes.ts +3 -3
- package/src/transaction/interfaces/Tap.ts +3 -3
- package/src/transaction/mineable/IP2WSHAddress.ts +1 -1
- package/src/transaction/mineable/TimelockGenerator.ts +19 -12
- package/src/transaction/offline/OfflineTransactionManager.ts +22 -23
- package/src/transaction/offline/TransactionReconstructor.ts +83 -91
- package/src/transaction/offline/TransactionSerializer.ts +151 -101
- package/src/transaction/offline/TransactionStateCapture.ts +83 -79
- package/src/transaction/offline/interfaces/ISerializableState.ts +1 -1
- package/src/transaction/offline/interfaces/ITypeSpecificData.ts +1 -1
- package/src/transaction/shared/P2TR_MS.ts +4 -4
- package/src/transaction/shared/TweakedTransaction.ts +326 -124
- package/src/transaction/utils/WitnessUtils.ts +18 -9
- package/src/utils/BufferHelper.ts +39 -37
- package/src/utxo/OPNetLimitedProvider.ts +9 -9
- package/src/utxo/interfaces/IUTXO.ts +7 -7
- package/src/verification/TapscriptVerificator.ts +73 -86
- package/test/address-rotation.test.ts +24 -24
- package/test/address.test.ts +12 -12
- package/test/addressmap.test.ts +30 -30
- package/test/binary-reader-writer.test.ts +8 -8
- package/test/browser/offline-transaction.test.ts +2206 -0
- package/test/browser/parallel-signing.test.ts +316 -0
- package/test/browser/setup.ts +11 -0
- package/test/browser/transaction-signing.test.ts +416 -0
- package/test/buffer-helper.test.ts +287 -0
- package/test/derivePath.test.ts +4 -3
- package/test/disposable.test.ts +279 -0
- package/test/fastmap-setall.test.ts +1 -1
- package/test/fastmap.test.ts +3 -3
- package/test/messagesigner-mldsa.test.ts +3 -3
- package/test/messagesigner-schnorr.test.ts +9 -9
- package/test/offline-transaction.test.ts +461 -288
- package/test/old/FastBigIntMap.ts +3 -3
- package/test/oldfastmap.test.ts +6 -6
- package/test/transaction-builders.test.ts +321 -0
- package/tsconfig.base.json +34 -18
- package/tsconfig.browser.json +15 -0
- package/tsconfig.json +3 -8
- package/vite.config.browser.ts +4 -5
- package/vitest.config.browser.ts +68 -0
- package/vitest.config.ts +1 -1
- package/browser/valibot.js +0 -4948
- package/tsconfig.webpack.json +0 -18
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionSerializer.js","sourceRoot":"","sources":["../../../src/transaction/offline/TransactionSerializer.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,23 +1,45 @@
|
|
|
1
1
|
import { TransactionType } from '../enums/TransactionType.js';
|
|
2
|
-
import { ISerializableTransactionState, PrecomputedData } from './interfaces/ISerializableState.js';
|
|
3
|
-
import { IDeploymentParameters, IFundingTransactionParameters, IInteractionParameters, ITransactionParameters } from '../interfaces/ITransactionParameters.js';
|
|
2
|
+
import type { ISerializableTransactionState, PrecomputedData } from './interfaces/ISerializableState.js';
|
|
3
|
+
import type { IDeploymentParameters, IFundingTransactionParameters, IInteractionParameters, ITransactionParameters } from '../interfaces/ITransactionParameters.js';
|
|
4
|
+
/**
|
|
5
|
+
* Parameters required to capture state from any transaction builder
|
|
6
|
+
*/
|
|
4
7
|
export interface CaptureParams {
|
|
8
|
+
/** The original transaction parameters */
|
|
5
9
|
params: ITransactionParameters;
|
|
10
|
+
/** The transaction type */
|
|
6
11
|
type: TransactionType;
|
|
12
|
+
/** Pre-computed data from the builder */
|
|
7
13
|
precomputed?: Partial<PrecomputedData>;
|
|
8
14
|
}
|
|
15
|
+
/**
|
|
16
|
+
* Captures transaction state from builders for offline signing.
|
|
17
|
+
* This class creates serializable state objects from transaction parameters.
|
|
18
|
+
*/
|
|
9
19
|
export declare class TransactionStateCapture {
|
|
20
|
+
/**
|
|
21
|
+
* Capture state from a FundingTransaction
|
|
22
|
+
*/
|
|
10
23
|
static fromFunding(params: IFundingTransactionParameters, precomputed?: Partial<PrecomputedData>): ISerializableTransactionState;
|
|
24
|
+
/**
|
|
25
|
+
* Capture state from a DeploymentTransaction
|
|
26
|
+
*/
|
|
11
27
|
static fromDeployment(params: IDeploymentParameters, precomputed: Partial<PrecomputedData> & {
|
|
12
28
|
compiledTargetScript: string;
|
|
13
29
|
randomBytes: string;
|
|
14
30
|
}): ISerializableTransactionState;
|
|
31
|
+
/**
|
|
32
|
+
* Capture state from an InteractionTransaction
|
|
33
|
+
*/
|
|
15
34
|
static fromInteraction(params: IInteractionParameters, precomputed: Partial<PrecomputedData> & {
|
|
16
35
|
compiledTargetScript: string;
|
|
17
36
|
randomBytes: string;
|
|
18
37
|
}): ISerializableTransactionState;
|
|
38
|
+
/**
|
|
39
|
+
* Capture state from a MultiSignTransaction
|
|
40
|
+
*/
|
|
19
41
|
static fromMultiSig(params: ITransactionParameters & {
|
|
20
|
-
pubkeys:
|
|
42
|
+
pubkeys: Uint8Array[];
|
|
21
43
|
minimumSignatures: number;
|
|
22
44
|
receiver: string;
|
|
23
45
|
requestedAmount: bigint;
|
|
@@ -25,18 +47,39 @@ export declare class TransactionStateCapture {
|
|
|
25
47
|
originalInputCount?: number;
|
|
26
48
|
existingPsbtBase64?: string;
|
|
27
49
|
}, precomputed?: Partial<PrecomputedData>): ISerializableTransactionState;
|
|
50
|
+
/**
|
|
51
|
+
* Capture state from a CustomScriptTransaction
|
|
52
|
+
*/
|
|
28
53
|
static fromCustomScript(params: ITransactionParameters & {
|
|
29
|
-
scriptElements: (
|
|
30
|
-
witnesses:
|
|
31
|
-
annex?:
|
|
54
|
+
scriptElements: (Uint8Array | number)[];
|
|
55
|
+
witnesses: Uint8Array[];
|
|
56
|
+
annex?: Uint8Array;
|
|
32
57
|
}, precomputed?: Partial<PrecomputedData>): ISerializableTransactionState;
|
|
58
|
+
/**
|
|
59
|
+
* Capture state from a CancelTransaction
|
|
60
|
+
*/
|
|
33
61
|
static fromCancel(params: ITransactionParameters & {
|
|
34
|
-
compiledTargetScript:
|
|
62
|
+
compiledTargetScript: Uint8Array | string;
|
|
35
63
|
}, precomputed?: Partial<PrecomputedData>): ISerializableTransactionState;
|
|
64
|
+
/**
|
|
65
|
+
* Main state capture method
|
|
66
|
+
*/
|
|
36
67
|
private static captureState;
|
|
68
|
+
/**
|
|
69
|
+
* Create serialization header
|
|
70
|
+
*/
|
|
37
71
|
private static createHeader;
|
|
72
|
+
/**
|
|
73
|
+
* Extract base parameters common to all transaction types
|
|
74
|
+
*/
|
|
38
75
|
private static extractBaseParams;
|
|
76
|
+
/**
|
|
77
|
+
* Extract signer mappings for address rotation mode
|
|
78
|
+
*/
|
|
39
79
|
private static extractSignerMappings;
|
|
80
|
+
/**
|
|
81
|
+
* Extract type-specific data based on transaction type
|
|
82
|
+
*/
|
|
40
83
|
private static extractTypeSpecificData;
|
|
41
84
|
private static extractFundingData;
|
|
42
85
|
private static extractDeploymentData;
|
|
@@ -44,9 +87,25 @@ export declare class TransactionStateCapture {
|
|
|
44
87
|
private static extractMultiSigData;
|
|
45
88
|
private static extractCustomScriptData;
|
|
46
89
|
private static extractCancelData;
|
|
90
|
+
/**
|
|
91
|
+
* Build precomputed data object
|
|
92
|
+
*/
|
|
47
93
|
private static buildPrecomputedData;
|
|
94
|
+
/**
|
|
95
|
+
* Serialize UTXOs array
|
|
96
|
+
*/
|
|
48
97
|
private static serializeUTXOs;
|
|
98
|
+
/**
|
|
99
|
+
* Serialize outputs array
|
|
100
|
+
*/
|
|
49
101
|
private static serializeOutputs;
|
|
102
|
+
/**
|
|
103
|
+
* Convert network to name string
|
|
104
|
+
*/
|
|
50
105
|
private static networkToName;
|
|
106
|
+
/**
|
|
107
|
+
* Convert network to chain ID
|
|
108
|
+
*/
|
|
51
109
|
private static networkToChainId;
|
|
52
110
|
}
|
|
111
|
+
//# sourceMappingURL=TransactionStateCapture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionStateCapture.d.ts","sourceRoot":"","sources":["../../../src/transaction/offline/TransactionStateCapture.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,15 +1,26 @@
|
|
|
1
|
+
import { toHex } from '@btc-vision/bitcoin';
|
|
1
2
|
import { ChainId } from '../../network/ChainId.js';
|
|
2
3
|
import { currentConsensus } from '../../consensus/ConsensusConfig.js';
|
|
3
4
|
import { TransactionType } from '../enums/TransactionType.js';
|
|
4
|
-
import { SERIALIZATION_FORMAT_VERSION
|
|
5
|
+
import { SERIALIZATION_FORMAT_VERSION } from './interfaces/ISerializableState.js';
|
|
6
|
+
/**
|
|
7
|
+
* Captures transaction state from builders for offline signing.
|
|
8
|
+
* This class creates serializable state objects from transaction parameters.
|
|
9
|
+
*/
|
|
5
10
|
export class TransactionStateCapture {
|
|
11
|
+
/**
|
|
12
|
+
* Capture state from a FundingTransaction
|
|
13
|
+
*/
|
|
6
14
|
static fromFunding(params, precomputed) {
|
|
7
15
|
return this.captureState({
|
|
8
16
|
params,
|
|
9
17
|
type: TransactionType.FUNDING,
|
|
10
|
-
precomputed,
|
|
18
|
+
...(precomputed !== undefined ? { precomputed } : {}),
|
|
11
19
|
});
|
|
12
20
|
}
|
|
21
|
+
/**
|
|
22
|
+
* Capture state from a DeploymentTransaction
|
|
23
|
+
*/
|
|
13
24
|
static fromDeployment(params, precomputed) {
|
|
14
25
|
return this.captureState({
|
|
15
26
|
params: params,
|
|
@@ -17,6 +28,9 @@ export class TransactionStateCapture {
|
|
|
17
28
|
precomputed,
|
|
18
29
|
});
|
|
19
30
|
}
|
|
31
|
+
/**
|
|
32
|
+
* Capture state from an InteractionTransaction
|
|
33
|
+
*/
|
|
20
34
|
static fromInteraction(params, precomputed) {
|
|
21
35
|
return this.captureState({
|
|
22
36
|
params,
|
|
@@ -24,27 +38,39 @@ export class TransactionStateCapture {
|
|
|
24
38
|
precomputed,
|
|
25
39
|
});
|
|
26
40
|
}
|
|
41
|
+
/**
|
|
42
|
+
* Capture state from a MultiSignTransaction
|
|
43
|
+
*/
|
|
27
44
|
static fromMultiSig(params, precomputed) {
|
|
28
45
|
return this.captureState({
|
|
29
46
|
params,
|
|
30
47
|
type: TransactionType.MULTI_SIG,
|
|
31
|
-
precomputed,
|
|
48
|
+
...(precomputed !== undefined ? { precomputed } : {}),
|
|
32
49
|
});
|
|
33
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Capture state from a CustomScriptTransaction
|
|
53
|
+
*/
|
|
34
54
|
static fromCustomScript(params, precomputed) {
|
|
35
55
|
return this.captureState({
|
|
36
56
|
params,
|
|
37
57
|
type: TransactionType.CUSTOM_CODE,
|
|
38
|
-
precomputed,
|
|
58
|
+
...(precomputed !== undefined ? { precomputed } : {}),
|
|
39
59
|
});
|
|
40
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Capture state from a CancelTransaction
|
|
63
|
+
*/
|
|
41
64
|
static fromCancel(params, precomputed) {
|
|
42
65
|
return this.captureState({
|
|
43
66
|
params,
|
|
44
67
|
type: TransactionType.CANCEL,
|
|
45
|
-
precomputed,
|
|
68
|
+
...(precomputed !== undefined ? { precomputed } : {}),
|
|
46
69
|
});
|
|
47
70
|
}
|
|
71
|
+
/**
|
|
72
|
+
* Main state capture method
|
|
73
|
+
*/
|
|
48
74
|
static captureState(capture) {
|
|
49
75
|
const { params, type, precomputed } = capture;
|
|
50
76
|
return {
|
|
@@ -59,6 +85,9 @@ export class TransactionStateCapture {
|
|
|
59
85
|
precomputedData: this.buildPrecomputedData(precomputed),
|
|
60
86
|
};
|
|
61
87
|
}
|
|
88
|
+
/**
|
|
89
|
+
* Create serialization header
|
|
90
|
+
*/
|
|
62
91
|
static createHeader(type, network, chainId) {
|
|
63
92
|
return {
|
|
64
93
|
formatVersion: SERIALIZATION_FORMAT_VERSION,
|
|
@@ -68,33 +97,41 @@ export class TransactionStateCapture {
|
|
|
68
97
|
timestamp: Date.now(),
|
|
69
98
|
};
|
|
70
99
|
}
|
|
100
|
+
/**
|
|
101
|
+
* Extract base parameters common to all transaction types
|
|
102
|
+
*/
|
|
71
103
|
static extractBaseParams(params) {
|
|
72
104
|
const note = params.note
|
|
73
|
-
?
|
|
74
|
-
? params.note
|
|
75
|
-
:
|
|
105
|
+
? params.note instanceof Uint8Array
|
|
106
|
+
? toHex(params.note)
|
|
107
|
+
: toHex(new TextEncoder().encode(params.note))
|
|
76
108
|
: undefined;
|
|
109
|
+
// Handle optional priorityFee and gasSatFee (not present in MultiSig)
|
|
77
110
|
const priorityFee = params.priorityFee ?? 0n;
|
|
78
111
|
const gasSatFee = params.gasSatFee ?? 0n;
|
|
79
112
|
return {
|
|
80
113
|
from: params.from || '',
|
|
81
|
-
to: params.to,
|
|
82
114
|
feeRate: params.feeRate,
|
|
83
115
|
priorityFee: priorityFee.toString(),
|
|
84
116
|
gasSatFee: gasSatFee.toString(),
|
|
85
117
|
networkName: this.networkToName(params.network),
|
|
86
118
|
txVersion: params.txVersion ?? 2,
|
|
87
|
-
note,
|
|
88
119
|
anchor: params.anchor ?? false,
|
|
89
|
-
|
|
120
|
+
...(params.to !== undefined ? { to: params.to } : {}),
|
|
121
|
+
...(note !== undefined ? { note } : {}),
|
|
122
|
+
...(params.debugFees !== undefined ? { debugFees: params.debugFees } : {}),
|
|
90
123
|
};
|
|
91
124
|
}
|
|
125
|
+
/**
|
|
126
|
+
* Extract signer mappings for address rotation mode
|
|
127
|
+
*/
|
|
92
128
|
static extractSignerMappings(params) {
|
|
93
129
|
if (!params.addressRotation?.enabled) {
|
|
94
130
|
return [];
|
|
95
131
|
}
|
|
96
132
|
const mappings = [];
|
|
97
133
|
const addressToIndices = new Map();
|
|
134
|
+
// Build mapping from UTXOs
|
|
98
135
|
params.utxos.forEach((utxo, index) => {
|
|
99
136
|
const address = utxo.scriptPubKey?.address;
|
|
100
137
|
if (address) {
|
|
@@ -107,6 +144,7 @@ export class TransactionStateCapture {
|
|
|
107
144
|
}
|
|
108
145
|
}
|
|
109
146
|
});
|
|
147
|
+
// Add optional inputs
|
|
110
148
|
const utxoCount = params.utxos.length;
|
|
111
149
|
(params.optionalInputs || []).forEach((utxo, index) => {
|
|
112
150
|
const address = utxo.scriptPubKey?.address;
|
|
@@ -120,11 +158,15 @@ export class TransactionStateCapture {
|
|
|
120
158
|
}
|
|
121
159
|
}
|
|
122
160
|
});
|
|
161
|
+
// Convert to serializable format
|
|
123
162
|
addressToIndices.forEach((indices, address) => {
|
|
124
163
|
mappings.push({ address, inputIndices: indices });
|
|
125
164
|
});
|
|
126
165
|
return mappings;
|
|
127
166
|
}
|
|
167
|
+
/**
|
|
168
|
+
* Extract type-specific data based on transaction type
|
|
169
|
+
*/
|
|
128
170
|
static extractTypeSpecificData(type, params) {
|
|
129
171
|
switch (type) {
|
|
130
172
|
case TransactionType.FUNDING:
|
|
@@ -153,44 +195,44 @@ export class TransactionStateCapture {
|
|
|
153
195
|
static extractDeploymentData(params) {
|
|
154
196
|
return {
|
|
155
197
|
type: TransactionType.DEPLOYMENT,
|
|
156
|
-
bytecode: params.bytecode
|
|
157
|
-
calldata: params.calldata?.toString('hex'),
|
|
198
|
+
bytecode: toHex(params.bytecode),
|
|
158
199
|
challenge: params.challenge.toRaw(),
|
|
159
|
-
|
|
160
|
-
|
|
200
|
+
...(params.calldata ? { calldata: toHex(params.calldata) } : {}),
|
|
201
|
+
...(params.revealMLDSAPublicKey !== undefined ? { revealMLDSAPublicKey: params.revealMLDSAPublicKey } : {}),
|
|
202
|
+
...(params.linkMLDSAPublicKeyToAddress !== undefined ? { linkMLDSAPublicKeyToAddress: params.linkMLDSAPublicKeyToAddress } : {}),
|
|
161
203
|
};
|
|
162
204
|
}
|
|
163
205
|
static extractInteractionData(params) {
|
|
164
206
|
return {
|
|
165
207
|
type: TransactionType.INTERACTION,
|
|
166
|
-
calldata: params.calldata
|
|
167
|
-
contract: params.contract,
|
|
208
|
+
calldata: toHex(params.calldata),
|
|
168
209
|
challenge: params.challenge.toRaw(),
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
210
|
+
...(params.contract !== undefined ? { contract: params.contract } : {}),
|
|
211
|
+
...(params.loadedStorage !== undefined ? { loadedStorage: params.loadedStorage } : {}),
|
|
212
|
+
...(params.isCancellation !== undefined ? { isCancellation: params.isCancellation } : {}),
|
|
213
|
+
...(params.disableAutoRefund !== undefined ? { disableAutoRefund: params.disableAutoRefund } : {}),
|
|
214
|
+
...(params.revealMLDSAPublicKey !== undefined ? { revealMLDSAPublicKey: params.revealMLDSAPublicKey } : {}),
|
|
215
|
+
...(params.linkMLDSAPublicKeyToAddress !== undefined ? { linkMLDSAPublicKeyToAddress: params.linkMLDSAPublicKeyToAddress } : {}),
|
|
174
216
|
};
|
|
175
217
|
}
|
|
176
218
|
static extractMultiSigData(params) {
|
|
177
219
|
return {
|
|
178
220
|
type: TransactionType.MULTI_SIG,
|
|
179
|
-
pubkeys: (params.pubkeys || []).map((pk) => pk
|
|
221
|
+
pubkeys: (params.pubkeys || []).map((pk) => toHex(pk)),
|
|
180
222
|
minimumSignatures: params.minimumSignatures || 0,
|
|
181
223
|
receiver: params.receiver || '',
|
|
182
224
|
requestedAmount: (params.requestedAmount || 0n).toString(),
|
|
183
225
|
refundVault: params.refundVault || '',
|
|
184
226
|
originalInputCount: params.originalInputCount || params.utxos.length,
|
|
185
|
-
existingPsbtBase64: params.existingPsbtBase64,
|
|
227
|
+
...(params.existingPsbtBase64 !== undefined ? { existingPsbtBase64: params.existingPsbtBase64 } : {}),
|
|
186
228
|
};
|
|
187
229
|
}
|
|
188
230
|
static extractCustomScriptData(params) {
|
|
189
231
|
const scriptElements = (params.scriptElements || []).map((element) => {
|
|
190
|
-
if (
|
|
232
|
+
if (element instanceof Uint8Array) {
|
|
191
233
|
return {
|
|
192
234
|
elementType: 'buffer',
|
|
193
|
-
value: element
|
|
235
|
+
value: toHex(element),
|
|
194
236
|
};
|
|
195
237
|
}
|
|
196
238
|
else {
|
|
@@ -203,65 +245,82 @@ export class TransactionStateCapture {
|
|
|
203
245
|
return {
|
|
204
246
|
type: TransactionType.CUSTOM_CODE,
|
|
205
247
|
scriptElements,
|
|
206
|
-
witnesses: (params.witnesses || []).map((w) => w
|
|
207
|
-
annex: params.annex
|
|
248
|
+
witnesses: (params.witnesses || []).map((w) => toHex(w)),
|
|
249
|
+
...(params.annex ? { annex: toHex(params.annex) } : {}),
|
|
208
250
|
};
|
|
209
251
|
}
|
|
210
252
|
static extractCancelData(params) {
|
|
211
253
|
const script = params.compiledTargetScript;
|
|
212
|
-
const scriptHex = script ? (
|
|
254
|
+
const scriptHex = script ? (script instanceof Uint8Array ? toHex(script) : script) : '';
|
|
213
255
|
return {
|
|
214
256
|
type: TransactionType.CANCEL,
|
|
215
257
|
compiledTargetScript: scriptHex,
|
|
216
258
|
};
|
|
217
259
|
}
|
|
260
|
+
/**
|
|
261
|
+
* Build precomputed data object
|
|
262
|
+
*/
|
|
218
263
|
static buildPrecomputedData(precomputed) {
|
|
219
264
|
return {
|
|
220
|
-
compiledTargetScript: precomputed
|
|
221
|
-
randomBytes: precomputed
|
|
222
|
-
estimatedFees: precomputed
|
|
223
|
-
contractSeed: precomputed
|
|
224
|
-
contractAddress: precomputed
|
|
265
|
+
...(precomputed?.compiledTargetScript !== undefined ? { compiledTargetScript: precomputed.compiledTargetScript } : {}),
|
|
266
|
+
...(precomputed?.randomBytes !== undefined ? { randomBytes: precomputed.randomBytes } : {}),
|
|
267
|
+
...(precomputed?.estimatedFees !== undefined ? { estimatedFees: precomputed.estimatedFees } : {}),
|
|
268
|
+
...(precomputed?.contractSeed !== undefined ? { contractSeed: precomputed.contractSeed } : {}),
|
|
269
|
+
...(precomputed?.contractAddress !== undefined ? { contractAddress: precomputed.contractAddress } : {}),
|
|
225
270
|
};
|
|
226
271
|
}
|
|
272
|
+
/**
|
|
273
|
+
* Serialize UTXOs array
|
|
274
|
+
*/
|
|
227
275
|
static serializeUTXOs(utxos) {
|
|
228
|
-
return utxos.map((utxo) =>
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
scriptPubKeyHex: utxo.scriptPubKey.hex,
|
|
233
|
-
scriptPubKeyAddress: utxo.scriptPubKey.address,
|
|
234
|
-
redeemScript: utxo.redeemScript
|
|
235
|
-
? Buffer.isBuffer(utxo.redeemScript)
|
|
236
|
-
? utxo.redeemScript.toString('hex')
|
|
276
|
+
return utxos.map((utxo) => {
|
|
277
|
+
const redeemScript = utxo.redeemScript
|
|
278
|
+
? utxo.redeemScript instanceof Uint8Array
|
|
279
|
+
? toHex(utxo.redeemScript)
|
|
237
280
|
: utxo.redeemScript
|
|
238
|
-
: undefined
|
|
239
|
-
witnessScript
|
|
240
|
-
?
|
|
241
|
-
? utxo.witnessScript
|
|
281
|
+
: undefined;
|
|
282
|
+
const witnessScript = utxo.witnessScript
|
|
283
|
+
? utxo.witnessScript instanceof Uint8Array
|
|
284
|
+
? toHex(utxo.witnessScript)
|
|
242
285
|
: utxo.witnessScript
|
|
243
|
-
: undefined
|
|
244
|
-
nonWitnessUtxo
|
|
245
|
-
?
|
|
246
|
-
? utxo.nonWitnessUtxo
|
|
286
|
+
: undefined;
|
|
287
|
+
const nonWitnessUtxo = utxo.nonWitnessUtxo
|
|
288
|
+
? utxo.nonWitnessUtxo instanceof Uint8Array
|
|
289
|
+
? toHex(utxo.nonWitnessUtxo)
|
|
247
290
|
: utxo.nonWitnessUtxo
|
|
248
|
-
: undefined
|
|
249
|
-
|
|
291
|
+
: undefined;
|
|
292
|
+
return {
|
|
293
|
+
transactionId: utxo.transactionId,
|
|
294
|
+
outputIndex: utxo.outputIndex,
|
|
295
|
+
value: utxo.value.toString(),
|
|
296
|
+
scriptPubKeyHex: utxo.scriptPubKey.hex,
|
|
297
|
+
...(utxo.scriptPubKey.address !== undefined ? { scriptPubKeyAddress: utxo.scriptPubKey.address } : {}),
|
|
298
|
+
...(redeemScript !== undefined ? { redeemScript } : {}),
|
|
299
|
+
...(witnessScript !== undefined ? { witnessScript } : {}),
|
|
300
|
+
...(nonWitnessUtxo !== undefined ? { nonWitnessUtxo } : {}),
|
|
301
|
+
};
|
|
302
|
+
});
|
|
250
303
|
}
|
|
304
|
+
/**
|
|
305
|
+
* Serialize outputs array
|
|
306
|
+
*/
|
|
251
307
|
static serializeOutputs(outputs) {
|
|
252
308
|
return outputs.map((output) => {
|
|
253
309
|
const address = 'address' in output ? output.address : undefined;
|
|
254
310
|
const script = 'script' in output ? output.script : undefined;
|
|
311
|
+
const scriptHex = script ? toHex(script) : undefined;
|
|
312
|
+
const tapInternalKeyHex = output.tapInternalKey ? toHex(output.tapInternalKey) : undefined;
|
|
255
313
|
return {
|
|
256
|
-
value: output.value,
|
|
257
|
-
address,
|
|
258
|
-
|
|
259
|
-
tapInternalKey:
|
|
260
|
-
? output.tapInternalKey.toString('hex')
|
|
261
|
-
: undefined,
|
|
314
|
+
value: Number(output.value),
|
|
315
|
+
...(address !== undefined ? { address } : {}),
|
|
316
|
+
...(scriptHex !== undefined ? { script: scriptHex } : {}),
|
|
317
|
+
...(tapInternalKeyHex !== undefined ? { tapInternalKey: tapInternalKeyHex } : {}),
|
|
262
318
|
};
|
|
263
319
|
});
|
|
264
320
|
}
|
|
321
|
+
/**
|
|
322
|
+
* Convert network to name string
|
|
323
|
+
*/
|
|
265
324
|
static networkToName(network) {
|
|
266
325
|
if (network.bech32 === 'bc')
|
|
267
326
|
return 'mainnet';
|
|
@@ -269,7 +328,12 @@ export class TransactionStateCapture {
|
|
|
269
328
|
return 'testnet';
|
|
270
329
|
return 'regtest';
|
|
271
330
|
}
|
|
272
|
-
|
|
331
|
+
/**
|
|
332
|
+
* Convert network to chain ID
|
|
333
|
+
*/
|
|
334
|
+
static networkToChainId(_network) {
|
|
335
|
+
// Default to Bitcoin chain
|
|
273
336
|
return ChainId.Bitcoin;
|
|
274
337
|
}
|
|
275
338
|
}
|
|
339
|
+
//# sourceMappingURL=TransactionStateCapture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionStateCapture.js","sourceRoot":"","sources":["../../../src/transaction/offline/TransactionStateCapture.ts"],"names":[],"mappings":"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"}
|