@btc-vision/transaction 1.8.0-beta.1 → 1.8.0-beta.4
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 +12420 -3637
- 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 +3602 -3203
- 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 +920 -2966
- package/browser/noble-hashes.js +2067 -1038
- 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 +18 -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 +275 -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 +13940 -9389
- 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 +10 -3
- 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 +447 -129
- 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 +6 -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 +223 -54
- 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 +48 -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 +36 -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 +24 -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 +377 -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 +41 -3
- 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 +16 -39
- 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/crypto/crypto-browser.js +3 -4
- 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 +6 -6
- 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 +115 -72
- package/src/keypair/AddressVerificator.ts +16 -147
- package/src/keypair/EcKeyPair.ts +109 -118
- package/src/keypair/MessageSigner.ts +70 -150
- package/src/keypair/Wallet.ts +59 -240
- package/src/metadata/ContractBaseMetadata.ts +2 -2
- package/src/mnemonic/Mnemonic.ts +32 -221
- 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 +28 -13
- 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 +101 -79
- 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 +7 -7
- 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":"OfflineTransactionManager.js","sourceRoot":"","sources":["../../../src/transaction/offline/OfflineTransactionManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,28 +1,78 @@
|
|
|
1
|
-
import { Signer } from '@btc-vision/bitcoin';
|
|
2
|
-
import {
|
|
3
|
-
import { QuantumBIP32Interface } from '@btc-vision/bip32';
|
|
4
|
-
import { SignerMap } from '../../signer/AddressRotation.js';
|
|
1
|
+
import { type Signer } from '@btc-vision/bitcoin';
|
|
2
|
+
import { type UniversalSigner } from '@btc-vision/ecpair';
|
|
3
|
+
import type { QuantumBIP32Interface } from '@btc-vision/bip32';
|
|
4
|
+
import type { SignerMap } from '../../signer/AddressRotation.js';
|
|
5
5
|
import { TransactionType } from '../enums/TransactionType.js';
|
|
6
6
|
import { TransactionBuilder } from '../builders/TransactionBuilder.js';
|
|
7
|
-
import { ISerializableTransactionState } from './interfaces/ISerializableState.js';
|
|
7
|
+
import type { ISerializableTransactionState } from './interfaces/ISerializableState.js';
|
|
8
|
+
/**
|
|
9
|
+
* Options for reconstructing a transaction from serialized state
|
|
10
|
+
*/
|
|
8
11
|
export interface ReconstructionOptions {
|
|
9
|
-
signer
|
|
12
|
+
/** Primary signer (used for normal mode or as default in rotation mode) */
|
|
13
|
+
signer: Signer | UniversalSigner;
|
|
14
|
+
/** Optional: Override fee rate for fee bumping */
|
|
10
15
|
newFeeRate?: number;
|
|
16
|
+
/** Optional: Override priority fee */
|
|
11
17
|
newPriorityFee?: bigint;
|
|
18
|
+
/** Optional: Override gas sat fee */
|
|
12
19
|
newGasSatFee?: bigint;
|
|
20
|
+
/** Signer map for address rotation mode (keyed by address) */
|
|
13
21
|
signerMap?: SignerMap;
|
|
22
|
+
/** MLDSA signer (for quantum-resistant features) */
|
|
14
23
|
mldsaSigner?: QuantumBIP32Interface | null;
|
|
15
24
|
}
|
|
25
|
+
/**
|
|
26
|
+
* Reconstructs transaction builders from serialized state.
|
|
27
|
+
* Supports fee bumping by allowing parameter overrides during reconstruction.
|
|
28
|
+
*/
|
|
16
29
|
export declare class TransactionReconstructor {
|
|
30
|
+
/**
|
|
31
|
+
* Reconstruct and optionally rebuild transaction with new parameters
|
|
32
|
+
* @param state - Serialized transaction state
|
|
33
|
+
* @param options - Signer(s) and optional fee overrides
|
|
34
|
+
* @returns Reconstructed transaction builder ready for signing
|
|
35
|
+
*/
|
|
17
36
|
static reconstruct(state: ISerializableTransactionState, options: ReconstructionOptions): TransactionBuilder<TransactionType>;
|
|
37
|
+
/**
|
|
38
|
+
* Reconstruct a FundingTransaction
|
|
39
|
+
*/
|
|
18
40
|
private static reconstructFunding;
|
|
41
|
+
/**
|
|
42
|
+
* Reconstruct a DeploymentTransaction
|
|
43
|
+
*/
|
|
19
44
|
private static reconstructDeployment;
|
|
45
|
+
/**
|
|
46
|
+
* Reconstruct an InteractionTransaction
|
|
47
|
+
*/
|
|
20
48
|
private static reconstructInteraction;
|
|
49
|
+
/**
|
|
50
|
+
* Reconstruct a MultiSignTransaction
|
|
51
|
+
*/
|
|
21
52
|
private static reconstructMultiSig;
|
|
53
|
+
/**
|
|
54
|
+
* Reconstruct a CustomScriptTransaction
|
|
55
|
+
*/
|
|
22
56
|
private static reconstructCustomScript;
|
|
57
|
+
/**
|
|
58
|
+
* Reconstruct a CancelTransaction
|
|
59
|
+
*/
|
|
23
60
|
private static reconstructCancel;
|
|
61
|
+
/**
|
|
62
|
+
* Build address rotation config from options
|
|
63
|
+
*/
|
|
24
64
|
private static buildAddressRotationConfig;
|
|
65
|
+
/**
|
|
66
|
+
* Deserialize UTXOs from serialized format
|
|
67
|
+
*/
|
|
25
68
|
private static deserializeUTXOs;
|
|
69
|
+
/**
|
|
70
|
+
* Deserialize outputs from serialized format
|
|
71
|
+
*/
|
|
26
72
|
private static deserializeOutputs;
|
|
73
|
+
/**
|
|
74
|
+
* Convert network name to Network object
|
|
75
|
+
*/
|
|
27
76
|
private static nameToNetwork;
|
|
28
77
|
}
|
|
78
|
+
//# sourceMappingURL=TransactionReconstructor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionReconstructor.d.ts","sourceRoot":"","sources":["../../../src/transaction/offline/TransactionReconstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EAMH,KAAK,MAAM,EAGd,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAE/D,OAAO,KAAK,EAAyB,SAAS,EAAE,MAAM,iCAAiC,CAAC;AAExF,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAOvE,OAAO,KAAK,EACR,6BAA6B,EAGhC,MAAM,oCAAoC,CAAC;AAuB5C;;GAEG;AACH,MAAM,WAAW,qBAAqB;IAClC,2EAA2E;IAC3E,MAAM,EAAE,MAAM,GAAG,eAAe,CAAC;IAEjC,kDAAkD;IAClD,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,sCAAsC;IACtC,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,qCAAqC;IACrC,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,8DAA8D;IAC9D,SAAS,CAAC,EAAE,SAAS,CAAC;IAEtB,oDAAoD;IACpD,WAAW,CAAC,EAAE,qBAAqB,GAAG,IAAI,CAAC;CAC9C;AAED;;;GAGG;AACH,qBAAa,wBAAwB;IACjC;;;;;OAKG;WACW,WAAW,CACrB,KAAK,EAAE,6BAA6B,EACpC,OAAO,EAAE,qBAAqB,GAC/B,kBAAkB,CAAC,eAAe,CAAC;IA4DtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAajC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAoBpC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,sBAAsB;IA4BrC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA4ClC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,uBAAuB;IAgCtC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAYhC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAoBzC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAkB/B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAiBjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,aAAa;CAY/B"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
import { networks } from '@btc-vision/bitcoin';
|
|
1
|
+
import { fromHex, networks, toSatoshi, } from '@btc-vision/bitcoin';
|
|
2
|
+
import {} from '@btc-vision/ecpair';
|
|
2
3
|
import { ChallengeSolution } from '../../epoch/ChallengeSolution.js';
|
|
4
|
+
import { TransactionType } from '../enums/TransactionType.js';
|
|
5
|
+
import { TransactionBuilder } from '../builders/TransactionBuilder.js';
|
|
3
6
|
import { FundingTransaction } from '../builders/FundingTransaction.js';
|
|
4
7
|
import { DeploymentTransaction } from '../builders/DeploymentTransaction.js';
|
|
5
8
|
import { InteractionTransaction } from '../builders/InteractionTransaction.js';
|
|
@@ -7,41 +10,51 @@ import { MultiSignTransaction } from '../builders/MultiSignTransaction.js';
|
|
|
7
10
|
import { CustomScriptTransaction } from '../builders/CustomScriptTransaction.js';
|
|
8
11
|
import { CancelTransaction } from '../builders/CancelTransaction.js';
|
|
9
12
|
import { isCancelSpecificData, isCustomScriptSpecificData, isDeploymentSpecificData, isFundingSpecificData, isInteractionSpecificData, isMultiSigSpecificData, } from './interfaces/ITypeSpecificData.js';
|
|
13
|
+
/**
|
|
14
|
+
* Reconstructs transaction builders from serialized state.
|
|
15
|
+
* Supports fee bumping by allowing parameter overrides during reconstruction.
|
|
16
|
+
*/
|
|
10
17
|
export class TransactionReconstructor {
|
|
18
|
+
/**
|
|
19
|
+
* Reconstruct and optionally rebuild transaction with new parameters
|
|
20
|
+
* @param state - Serialized transaction state
|
|
21
|
+
* @param options - Signer(s) and optional fee overrides
|
|
22
|
+
* @returns Reconstructed transaction builder ready for signing
|
|
23
|
+
*/
|
|
11
24
|
static reconstruct(state, options) {
|
|
12
25
|
const network = this.nameToNetwork(state.baseParams.networkName);
|
|
13
26
|
const utxos = this.deserializeUTXOs(state.utxos);
|
|
14
27
|
const optionalInputs = this.deserializeUTXOs(state.optionalInputs);
|
|
15
28
|
const optionalOutputs = this.deserializeOutputs(state.optionalOutputs);
|
|
29
|
+
// Build address rotation config
|
|
16
30
|
const addressRotation = this.buildAddressRotationConfig(state.addressRotationEnabled, options.signerMap);
|
|
31
|
+
// Apply fee overrides
|
|
17
32
|
const feeRate = options.newFeeRate ?? state.baseParams.feeRate;
|
|
18
33
|
const priorityFee = options.newPriorityFee ?? BigInt(state.baseParams.priorityFee);
|
|
19
34
|
const gasSatFee = options.newGasSatFee ?? BigInt(state.baseParams.gasSatFee);
|
|
35
|
+
// Build base params
|
|
20
36
|
const baseParams = {
|
|
21
37
|
signer: options.signer,
|
|
22
38
|
mldsaSigner: options.mldsaSigner ?? null,
|
|
23
39
|
network,
|
|
24
|
-
chainId: state.header.chainId,
|
|
25
40
|
utxos,
|
|
26
41
|
optionalInputs,
|
|
27
42
|
optionalOutputs,
|
|
28
43
|
from: state.baseParams.from,
|
|
29
|
-
to: state.baseParams.to,
|
|
30
44
|
feeRate,
|
|
31
45
|
priorityFee,
|
|
32
46
|
gasSatFee,
|
|
33
|
-
txVersion: state.baseParams.txVersion,
|
|
34
|
-
note: state.baseParams.note ? Buffer.from(state.baseParams.note, 'hex') : undefined,
|
|
35
47
|
anchor: state.baseParams.anchor,
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
48
|
+
...(state.header.chainId !== undefined ? { chainId: state.header.chainId } : {}),
|
|
49
|
+
...(state.baseParams.to !== undefined ? { to: state.baseParams.to } : {}),
|
|
50
|
+
...(state.baseParams.txVersion !== undefined ? { txVersion: state.baseParams.txVersion } : {}),
|
|
51
|
+
...(state.baseParams.note !== undefined ? { note: fromHex(state.baseParams.note) } : {}),
|
|
52
|
+
...(state.baseParams.debugFees !== undefined ? { debugFees: state.baseParams.debugFees } : {}),
|
|
53
|
+
...(addressRotation !== undefined ? { addressRotation } : {}),
|
|
54
|
+
...(state.precomputedData.estimatedFees !== undefined ? { estimatedFees: BigInt(state.precomputedData.estimatedFees) } : {}),
|
|
55
|
+
...(state.precomputedData.compiledTargetScript !== undefined ? { compiledTargetScript: fromHex(state.precomputedData.compiledTargetScript) } : {}),
|
|
44
56
|
};
|
|
57
|
+
// Dispatch based on transaction type
|
|
45
58
|
const typeData = state.typeSpecificData;
|
|
46
59
|
if (isFundingSpecificData(typeData)) {
|
|
47
60
|
return this.reconstructFunding(baseParams, typeData);
|
|
@@ -63,6 +76,9 @@ export class TransactionReconstructor {
|
|
|
63
76
|
}
|
|
64
77
|
throw new Error(`Unsupported transaction type: ${state.header.transactionType}`);
|
|
65
78
|
}
|
|
79
|
+
/**
|
|
80
|
+
* Reconstruct a FundingTransaction
|
|
81
|
+
*/
|
|
66
82
|
static reconstructFunding(baseParams, data) {
|
|
67
83
|
const params = {
|
|
68
84
|
...baseParams,
|
|
@@ -71,21 +87,25 @@ export class TransactionReconstructor {
|
|
|
71
87
|
};
|
|
72
88
|
return new FundingTransaction(params);
|
|
73
89
|
}
|
|
90
|
+
/**
|
|
91
|
+
* Reconstruct a DeploymentTransaction
|
|
92
|
+
*/
|
|
74
93
|
static reconstructDeployment(baseParams, data, state) {
|
|
75
94
|
const challenge = new ChallengeSolution(data.challenge);
|
|
76
95
|
const params = {
|
|
77
96
|
...baseParams,
|
|
78
|
-
bytecode:
|
|
79
|
-
calldata: data.calldata ? Buffer.from(data.calldata, 'hex') : undefined,
|
|
97
|
+
bytecode: fromHex(data.bytecode),
|
|
80
98
|
challenge,
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
linkMLDSAPublicKeyToAddress: data.linkMLDSAPublicKeyToAddress,
|
|
99
|
+
...(data.calldata !== undefined ? { calldata: fromHex(data.calldata) } : {}),
|
|
100
|
+
...(state.precomputedData.randomBytes !== undefined ? { randomBytes: fromHex(state.precomputedData.randomBytes) } : {}),
|
|
101
|
+
...(data.revealMLDSAPublicKey !== undefined ? { revealMLDSAPublicKey: data.revealMLDSAPublicKey } : {}),
|
|
102
|
+
...(data.linkMLDSAPublicKeyToAddress !== undefined ? { linkMLDSAPublicKeyToAddress: data.linkMLDSAPublicKeyToAddress } : {}),
|
|
86
103
|
};
|
|
87
104
|
return new DeploymentTransaction(params);
|
|
88
105
|
}
|
|
106
|
+
/**
|
|
107
|
+
* Reconstruct an InteractionTransaction
|
|
108
|
+
*/
|
|
89
109
|
static reconstructInteraction(baseParams, data, state) {
|
|
90
110
|
const challenge = new ChallengeSolution(data.challenge);
|
|
91
111
|
if (!baseParams.to) {
|
|
@@ -94,30 +114,29 @@ export class TransactionReconstructor {
|
|
|
94
114
|
const params = {
|
|
95
115
|
...baseParams,
|
|
96
116
|
to: baseParams.to,
|
|
97
|
-
calldata:
|
|
98
|
-
contract: data.contract,
|
|
117
|
+
calldata: fromHex(data.calldata),
|
|
99
118
|
challenge,
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
linkMLDSAPublicKeyToAddress: data.linkMLDSAPublicKeyToAddress,
|
|
119
|
+
...(data.contract !== undefined ? { contract: data.contract } : {}),
|
|
120
|
+
...(state.precomputedData.randomBytes !== undefined ? { randomBytes: fromHex(state.precomputedData.randomBytes) } : {}),
|
|
121
|
+
...(data.loadedStorage !== undefined ? { loadedStorage: data.loadedStorage } : {}),
|
|
122
|
+
...(data.isCancellation !== undefined ? { isCancellation: data.isCancellation } : {}),
|
|
123
|
+
...(data.disableAutoRefund !== undefined ? { disableAutoRefund: data.disableAutoRefund } : {}),
|
|
124
|
+
...(data.revealMLDSAPublicKey !== undefined ? { revealMLDSAPublicKey: data.revealMLDSAPublicKey } : {}),
|
|
125
|
+
...(data.linkMLDSAPublicKeyToAddress !== undefined ? { linkMLDSAPublicKeyToAddress: data.linkMLDSAPublicKeyToAddress } : {}),
|
|
108
126
|
};
|
|
109
127
|
return new InteractionTransaction(params);
|
|
110
128
|
}
|
|
129
|
+
/**
|
|
130
|
+
* Reconstruct a MultiSignTransaction
|
|
131
|
+
*/
|
|
111
132
|
static reconstructMultiSig(baseParams, data) {
|
|
112
|
-
const pubkeys = data.pubkeys.map((pk) =>
|
|
133
|
+
const pubkeys = data.pubkeys.map((pk) => fromHex(pk));
|
|
134
|
+
// If there's an existing PSBT, use fromBase64 to preserve partial signatures
|
|
113
135
|
if (data.existingPsbtBase64) {
|
|
114
136
|
return MultiSignTransaction.fromBase64({
|
|
115
137
|
mldsaSigner: baseParams.mldsaSigner,
|
|
116
138
|
network: baseParams.network,
|
|
117
|
-
chainId: baseParams.chainId,
|
|
118
139
|
utxos: baseParams.utxos,
|
|
119
|
-
optionalInputs: baseParams.optionalInputs,
|
|
120
|
-
optionalOutputs: baseParams.optionalOutputs,
|
|
121
140
|
feeRate: baseParams.feeRate,
|
|
122
141
|
pubkeys,
|
|
123
142
|
minimumSignatures: data.minimumSignatures,
|
|
@@ -125,33 +144,41 @@ export class TransactionReconstructor {
|
|
|
125
144
|
requestedAmount: BigInt(data.requestedAmount),
|
|
126
145
|
refundVault: data.refundVault,
|
|
127
146
|
psbt: data.existingPsbtBase64,
|
|
147
|
+
...(baseParams.chainId !== undefined ? { chainId: baseParams.chainId } : {}),
|
|
148
|
+
...(baseParams.optionalInputs !== undefined ? { optionalInputs: baseParams.optionalInputs } : {}),
|
|
149
|
+
...(baseParams.optionalOutputs !== undefined ? { optionalOutputs: baseParams.optionalOutputs } : {}),
|
|
128
150
|
});
|
|
129
151
|
}
|
|
152
|
+
// No existing PSBT - create fresh transaction
|
|
130
153
|
const params = {
|
|
131
154
|
mldsaSigner: baseParams.mldsaSigner,
|
|
132
155
|
network: baseParams.network,
|
|
133
|
-
chainId: baseParams.chainId,
|
|
134
156
|
utxos: baseParams.utxos,
|
|
135
|
-
optionalInputs: baseParams.optionalInputs,
|
|
136
|
-
optionalOutputs: baseParams.optionalOutputs,
|
|
137
157
|
feeRate: baseParams.feeRate,
|
|
138
158
|
pubkeys,
|
|
139
159
|
minimumSignatures: data.minimumSignatures,
|
|
140
160
|
receiver: data.receiver,
|
|
141
161
|
requestedAmount: BigInt(data.requestedAmount),
|
|
142
162
|
refundVault: data.refundVault,
|
|
163
|
+
...(baseParams.chainId !== undefined ? { chainId: baseParams.chainId } : {}),
|
|
164
|
+
...(baseParams.optionalInputs !== undefined ? { optionalInputs: baseParams.optionalInputs } : {}),
|
|
165
|
+
...(baseParams.optionalOutputs !== undefined ? { optionalOutputs: baseParams.optionalOutputs } : {}),
|
|
143
166
|
};
|
|
144
167
|
return new MultiSignTransaction(params);
|
|
145
168
|
}
|
|
169
|
+
/**
|
|
170
|
+
* Reconstruct a CustomScriptTransaction
|
|
171
|
+
*/
|
|
146
172
|
static reconstructCustomScript(baseParams, data, state) {
|
|
173
|
+
// Convert serialized elements to (Uint8Array | Stack)[]
|
|
147
174
|
const scriptElements = data.scriptElements.map((el) => {
|
|
148
175
|
if (el.elementType === 'buffer') {
|
|
149
|
-
return
|
|
176
|
+
return fromHex(el.value);
|
|
150
177
|
}
|
|
178
|
+
// Opcodes stored as numbers - wrap in array for Stack type
|
|
151
179
|
return [el.value];
|
|
152
180
|
});
|
|
153
|
-
const witnesses = data.witnesses.map((w) =>
|
|
154
|
-
const annex = data.annex ? Buffer.from(data.annex, 'hex') : undefined;
|
|
181
|
+
const witnesses = data.witnesses.map((w) => fromHex(w));
|
|
155
182
|
if (!baseParams.to) {
|
|
156
183
|
throw new Error('CustomScriptTransaction requires a "to" address');
|
|
157
184
|
}
|
|
@@ -160,20 +187,24 @@ export class TransactionReconstructor {
|
|
|
160
187
|
to: baseParams.to,
|
|
161
188
|
script: scriptElements,
|
|
162
189
|
witnesses,
|
|
163
|
-
annex,
|
|
164
|
-
randomBytes: state.precomputedData.randomBytes
|
|
165
|
-
? Buffer.from(state.precomputedData.randomBytes, 'hex')
|
|
166
|
-
: undefined,
|
|
190
|
+
...(data.annex !== undefined ? { annex: fromHex(data.annex) } : {}),
|
|
191
|
+
...(state.precomputedData.randomBytes !== undefined ? { randomBytes: fromHex(state.precomputedData.randomBytes) } : {}),
|
|
167
192
|
};
|
|
168
193
|
return new CustomScriptTransaction(params);
|
|
169
194
|
}
|
|
195
|
+
/**
|
|
196
|
+
* Reconstruct a CancelTransaction
|
|
197
|
+
*/
|
|
170
198
|
static reconstructCancel(baseParams, data) {
|
|
171
199
|
const params = {
|
|
172
200
|
...baseParams,
|
|
173
|
-
compiledTargetScript:
|
|
201
|
+
compiledTargetScript: fromHex(data.compiledTargetScript),
|
|
174
202
|
};
|
|
175
203
|
return new CancelTransaction(params);
|
|
176
204
|
}
|
|
205
|
+
/**
|
|
206
|
+
* Build address rotation config from options
|
|
207
|
+
*/
|
|
177
208
|
static buildAddressRotationConfig(enabled, signerMap) {
|
|
178
209
|
if (!enabled) {
|
|
179
210
|
return undefined;
|
|
@@ -186,48 +217,52 @@ export class TransactionReconstructor {
|
|
|
186
217
|
signerMap,
|
|
187
218
|
};
|
|
188
219
|
}
|
|
220
|
+
/**
|
|
221
|
+
* Deserialize UTXOs from serialized format
|
|
222
|
+
*/
|
|
189
223
|
static deserializeUTXOs(serialized) {
|
|
190
|
-
return serialized.map((s) =>
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
224
|
+
return serialized.map((s) => {
|
|
225
|
+
const utxo = {
|
|
226
|
+
transactionId: s.transactionId,
|
|
227
|
+
outputIndex: s.outputIndex,
|
|
228
|
+
value: BigInt(s.value),
|
|
229
|
+
scriptPubKey: {
|
|
230
|
+
hex: s.scriptPubKeyHex,
|
|
231
|
+
...(s.scriptPubKeyAddress !== undefined ? { address: s.scriptPubKeyAddress } : {}),
|
|
232
|
+
},
|
|
233
|
+
};
|
|
234
|
+
if (s.redeemScript !== undefined)
|
|
235
|
+
utxo.redeemScript = fromHex(s.redeemScript);
|
|
236
|
+
if (s.witnessScript !== undefined)
|
|
237
|
+
utxo.witnessScript = fromHex(s.witnessScript);
|
|
238
|
+
if (s.nonWitnessUtxo !== undefined)
|
|
239
|
+
utxo.nonWitnessUtxo = fromHex(s.nonWitnessUtxo);
|
|
240
|
+
return utxo;
|
|
241
|
+
});
|
|
202
242
|
}
|
|
243
|
+
/**
|
|
244
|
+
* Deserialize outputs from serialized format
|
|
245
|
+
*/
|
|
203
246
|
static deserializeOutputs(serialized) {
|
|
204
247
|
return serialized.map((s) => {
|
|
205
|
-
const
|
|
206
|
-
|
|
207
|
-
|
|
248
|
+
const base = { value: toSatoshi(BigInt(s.value)) };
|
|
249
|
+
const tapKey = s.tapInternalKey !== undefined ? { tapInternalKey: fromHex(s.tapInternalKey) } : {};
|
|
250
|
+
// PsbtOutputExtended is a union type - either has address OR script, not both
|
|
208
251
|
if (s.address) {
|
|
209
|
-
return {
|
|
210
|
-
value: s.value,
|
|
211
|
-
address: s.address,
|
|
212
|
-
tapInternalKey,
|
|
213
|
-
};
|
|
252
|
+
return { ...base, address: s.address, ...tapKey };
|
|
214
253
|
}
|
|
215
254
|
else if (s.script) {
|
|
216
|
-
return {
|
|
217
|
-
value: s.value,
|
|
218
|
-
script: Buffer.from(s.script, 'hex'),
|
|
219
|
-
tapInternalKey,
|
|
220
|
-
};
|
|
255
|
+
return { ...base, script: fromHex(s.script), ...tapKey };
|
|
221
256
|
}
|
|
222
257
|
else {
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
address: '',
|
|
226
|
-
tapInternalKey,
|
|
227
|
-
};
|
|
258
|
+
// Fallback - shouldn't happen with valid data
|
|
259
|
+
return { ...base, address: '', ...tapKey };
|
|
228
260
|
}
|
|
229
261
|
});
|
|
230
262
|
}
|
|
263
|
+
/**
|
|
264
|
+
* Convert network name to Network object
|
|
265
|
+
*/
|
|
231
266
|
static nameToNetwork(name) {
|
|
232
267
|
switch (name) {
|
|
233
268
|
case 'mainnet':
|
|
@@ -241,3 +276,4 @@ export class TransactionReconstructor {
|
|
|
241
276
|
}
|
|
242
277
|
}
|
|
243
278
|
}
|
|
279
|
+
//# sourceMappingURL=TransactionReconstructor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionReconstructor.js","sourceRoot":"","sources":["../../../src/transaction/offline/TransactionReconstructor.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,OAAO,EAEP,QAAQ,EAKR,SAAS,GACZ,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAwB,MAAM,oBAAoB,CAAC;AAI1D,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAE,qBAAqB,EAAE,MAAM,sCAAsC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,uBAAuB,EAAE,MAAM,wCAAwC,CAAC;AACjF,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAMrE,OAAO,EAMH,oBAAoB,EACpB,0BAA0B,EAC1B,wBAAwB,EACxB,qBAAqB,EACrB,yBAAyB,EACzB,sBAAsB,GAEzB,MAAM,mCAAmC,CAAC;AAgC3C;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACjC;;;;;OAKG;IACI,MAAM,CAAC,WAAW,CACrB,KAAoC,EACpC,OAA8B;QAE9B,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QACjD,MAAM,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;QACnE,MAAM,eAAe,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;QAEvE,gCAAgC;QAChC,MAAM,eAAe,GAAG,IAAI,CAAC,0BAA0B,CACnD,KAAK,CAAC,sBAAsB,EAC5B,OAAO,CAAC,SAAS,CACpB,CAAC;QAEF,sBAAsB;QACtB,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,CAAC;QAC/D,MAAM,WAAW,GAAG,OAAO,CAAC,cAAc,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;QACnF,MAAM,SAAS,GAAG,OAAO,CAAC,YAAY,IAAI,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QAE7E,oBAAoB;QACpB,MAAM,UAAU,GAA2B;YACvC,MAAM,EAAE,OAAO,CAAC,MAAM;YACtB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,IAAI;YACxC,OAAO;YACP,KAAK;YACL,cAAc;YACd,eAAe;YACf,IAAI,EAAE,KAAK,CAAC,UAAU,CAAC,IAAI;YAC3B,OAAO;YACP,WAAW;YACX,SAAS;YACT,MAAM,EAAE,KAAK,CAAC,UAAU,CAAC,MAAM;YAC/B,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAChF,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,SAAwC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7H,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACxF,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC7D,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5H,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,oBAAoB,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACrJ,CAAC;QAEF,qCAAqC;QACrC,MAAM,QAAQ,GAAG,KAAK,CAAC,gBAAgB,CAAC;QAExC,IAAI,qBAAqB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAClC,OAAO,IAAI,CAAC,kBAAkB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACzD,CAAC;aAAM,IAAI,wBAAwB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,qBAAqB,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;aAAM,IAAI,yBAAyB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,sBAAsB,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACpE,CAAC;aAAM,IAAI,sBAAsB,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,OAAO,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QAC1D,CAAC;aAAM,IAAI,0BAA0B,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC9C,OAAO,IAAI,CAAC,uBAAuB,CAAC,UAAU,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;QACrE,CAAC;aAAM,IAAI,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC;IACrF,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,kBAAkB,CAC7B,UAAkC,EAClC,IAAyB;QAEzB,MAAM,MAAM,GAAkC;YAC1C,GAAG,UAAU;YACb,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC;YAC3B,eAAe,EAAE,IAAI,CAAC,eAAe;SACxC,CAAC;QAEF,OAAO,IAAI,kBAAkB,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,qBAAqB,CAChC,UAAkC,EAClC,IAA4B,EAC5B,KAAoC;QAEpC,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAExD,MAAM,MAAM,GAA0B;YAClC,GAAG,UAAU;YACb,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YAChC,SAAS;YACT,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvH,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvG,GAAG,CAAC,IAAI,CAAC,2BAA2B,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,2BAA2B,EAAE,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/H,CAAC;QAEF,OAAO,IAAI,qBAAqB,CAAC,MAAM,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,sBAAsB,CACjC,UAAkC,EAClC,IAA6B,EAC7B,KAAoC;QAEpC,MAAM,SAAS,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAExD,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,MAAM,GAA2B;YACnC,GAAG,UAAU;YACb,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,QAAQ,EAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC;YAChC,SAAS;YACT,GAAG,CAAC,IAAI,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvH,GAAG,CAAC,IAAI,CAAC,aAAa,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClF,GAAG,CAAC,IAAI,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrF,GAAG,CAAC,IAAI,CAAC,iBAAiB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,iBAAiB,EAAE,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,GAAG,CAAC,IAAI,CAAC,oBAAoB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACvG,GAAG,CAAC,IAAI,CAAC,2BAA2B,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,2BAA2B,EAAE,IAAI,CAAC,2BAA2B,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC/H,CAAC;QAEF,OAAO,IAAI,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC9C,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,mBAAmB,CAC9B,UAAkC,EAClC,IAA0B;QAE1B,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC;QAEtD,6EAA6E;QAC7E,IAAI,IAAI,CAAC,kBAAkB,EAAE,CAAC;YAC1B,OAAO,oBAAoB,CAAC,UAAU,CAAC;gBACnC,WAAW,EAAE,UAAU,CAAC,WAAW;gBACnC,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,KAAK,EAAE,UAAU,CAAC,KAAK;gBACvB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,OAAO;gBACP,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;gBACzC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;gBAC7C,WAAW,EAAE,IAAI,CAAC,WAAW;gBAC7B,IAAI,EAAE,IAAI,CAAC,kBAAkB;gBAC7B,GAAG,CAAC,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC5E,GAAG,CAAC,UAAU,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACjG,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACvG,CAAC,CAAC;QACP,CAAC;QAED,8CAA8C;QAC9C,MAAM,MAAM,GAAG;YACX,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,KAAK,EAAE,UAAU,CAAC,KAAK;YACvB,OAAO,EAAE,UAAU,CAAC,OAAO;YAC3B,OAAO;YACP,iBAAiB,EAAE,IAAI,CAAC,iBAAiB;YACzC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,eAAe,EAAE,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC;YAC7C,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,GAAG,CAAC,UAAU,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5E,GAAG,CAAC,UAAU,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,UAAU,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjG,GAAG,CAAC,UAAU,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,UAAU,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACvG,CAAC;QAEF,OAAO,IAAI,oBAAoB,CAAC,MAAM,CAAC,CAAC;IAC5C,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,uBAAuB,CAClC,UAAkC,EAClC,IAA8B,EAC9B,KAAoC;QAEpC,wDAAwD;QACxD,MAAM,cAAc,GAA2B,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE;YAC1E,IAAI,EAAE,CAAC,WAAW,KAAK,QAAQ,EAAE,CAAC;gBAC9B,OAAO,OAAO,CAAC,EAAE,CAAC,KAAe,CAAC,CAAC;YACvC,CAAC;YACD,2DAA2D;YAC3D,OAAO,CAAC,EAAE,CAAC,KAAe,CAAU,CAAC;QACzC,CAAC,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;QAExD,IAAI,CAAC,UAAU,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;QACvE,CAAC;QAED,MAAM,MAAM,GAAG;YACX,GAAG,UAAU;YACb,EAAE,EAAE,UAAU,CAAC,EAAE;YACjB,MAAM,EAAE,cAAc;YACtB,SAAS;YACT,GAAG,CAAC,IAAI,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACnE,GAAG,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1H,CAAC;QAEF,OAAO,IAAI,uBAAuB,CAAC,MAAM,CAAC,CAAC;IAC/C,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,iBAAiB,CAC5B,UAAkC,EAClC,IAAwB;QAExB,MAAM,MAAM,GAAG;YACX,GAAG,UAAU;YACb,oBAAoB,EAAE,OAAO,CAAC,IAAI,CAAC,oBAAoB,CAAC;SAC3D,CAAC;QAEF,OAAO,IAAI,iBAAiB,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,0BAA0B,CACrC,OAAgB,EAChB,SAAqB;QAErB,IAAI,CAAC,OAAO,EAAE,CAAC;YACX,OAAO,SAAS,CAAC;QACrB,CAAC;QAED,IAAI,CAAC,SAAS,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;YACrC,MAAM,IAAI,KAAK,CACX,8EAA8E,CACjF,CAAC;QACN,CAAC;QAED,OAAO;YACH,OAAO,EAAE,IAAI;YACb,SAAS;SACZ,CAAC;IACN,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,gBAAgB,CAAC,UAA4B;QACxD,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACxB,MAAM,IAAI,GAAS;gBACf,aAAa,EAAE,CAAC,CAAC,aAAa;gBAC9B,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC;gBACtB,YAAY,EAAE;oBACV,GAAG,EAAE,CAAC,CAAC,eAAe;oBACtB,GAAG,CAAC,CAAC,CAAC,mBAAmB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,mBAAmB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACrF;aACJ,CAAC;YACF,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;gBAAE,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC;YAC9E,IAAI,CAAC,CAAC,aAAa,KAAK,SAAS;gBAAE,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;YACjF,IAAI,CAAC,CAAC,cAAc,KAAK,SAAS;gBAAE,IAAI,CAAC,cAAc,GAAG,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC;YACpF,OAAO,IAAI,CAAC;QAChB,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,kBAAkB,CAAC,UAA8B;QAC5D,OAAO,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAsB,EAAE;YAC5C,MAAM,IAAI,GAAG,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YACnD,MAAM,MAAM,GAAG,CAAC,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAEnG,8EAA8E;YAC9E,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACZ,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,GAAG,MAAM,EAAE,CAAC;YACtD,CAAC;iBAAM,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;gBAClB,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC,MAAM,CAAW,EAAE,GAAG,MAAM,EAAE,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACJ,8CAA8C;gBAC9C,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC;YAC/C,CAAC;QACL,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,aAAa,CAAC,IAAuC;QAChE,QAAQ,IAAI,EAAE,CAAC;YACX,KAAK,SAAS;gBACV,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B,KAAK,SAAS;gBACV,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B,KAAK,SAAS;gBACV,OAAO,QAAQ,CAAC,OAAO,CAAC;YAC5B;gBACI,MAAM,IAAI,KAAK,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;QACpD,CAAC;IACL,CAAC;CACJ"}
|
|
@@ -1,10 +1,45 @@
|
|
|
1
|
-
import { ISerializableTransactionState } from './interfaces/ISerializableState.js';
|
|
1
|
+
import type { ISerializableTransactionState } from './interfaces/ISerializableState.js';
|
|
2
|
+
/**
|
|
3
|
+
* Serializes and deserializes transaction state for offline signing.
|
|
4
|
+
* Uses binary format for compact size.
|
|
5
|
+
*/
|
|
2
6
|
export declare class TransactionSerializer {
|
|
3
|
-
|
|
4
|
-
|
|
7
|
+
/**
|
|
8
|
+
* Serialize transaction state to binary format
|
|
9
|
+
* @param state - The transaction state to serialize
|
|
10
|
+
* @returns Uint8Array containing serialized state with checksum
|
|
11
|
+
*/
|
|
12
|
+
static serialize(state: ISerializableTransactionState): Uint8Array;
|
|
13
|
+
/**
|
|
14
|
+
* Deserialize binary format to transaction state
|
|
15
|
+
* @param data - Uint8Array containing serialized state
|
|
16
|
+
* @returns Deserialized transaction state
|
|
17
|
+
* @throws Error if checksum validation fails or format is invalid
|
|
18
|
+
*/
|
|
19
|
+
static deserialize(data: Uint8Array): ISerializableTransactionState;
|
|
20
|
+
/**
|
|
21
|
+
* Export state as base64 string (for transport)
|
|
22
|
+
* @param state - Transaction state to export
|
|
23
|
+
* @returns Base64-encoded string
|
|
24
|
+
*/
|
|
5
25
|
static toBase64(state: ISerializableTransactionState): string;
|
|
26
|
+
/**
|
|
27
|
+
* Import state from base64 string
|
|
28
|
+
* @param base64 - Base64-encoded state
|
|
29
|
+
* @returns Deserialized transaction state
|
|
30
|
+
*/
|
|
6
31
|
static fromBase64(base64: string): ISerializableTransactionState;
|
|
32
|
+
/**
|
|
33
|
+
* Export state as hex string
|
|
34
|
+
* @param state - Transaction state to export
|
|
35
|
+
* @returns Hex-encoded string
|
|
36
|
+
*/
|
|
7
37
|
static toHex(state: ISerializableTransactionState): string;
|
|
38
|
+
/**
|
|
39
|
+
* Import state from hex string
|
|
40
|
+
* @param hex - Hex-encoded state
|
|
41
|
+
* @returns Deserialized transaction state
|
|
42
|
+
*/
|
|
8
43
|
static fromHex(hex: string): ISerializableTransactionState;
|
|
9
44
|
private static writeHeader;
|
|
10
45
|
private static readHeader;
|
|
@@ -44,7 +79,23 @@ export declare class TransactionSerializer {
|
|
|
44
79
|
private static readLoadedStorage;
|
|
45
80
|
private static writePrecomputedData;
|
|
46
81
|
private static readPrecomputedData;
|
|
82
|
+
/**
|
|
83
|
+
* Calculate double SHA256 checksum (Bitcoin standard)
|
|
84
|
+
*/
|
|
47
85
|
private static calculateChecksum;
|
|
86
|
+
/**
|
|
87
|
+
* Compare two Uint8Arrays for equality
|
|
88
|
+
*/
|
|
89
|
+
private static bytesEqual;
|
|
90
|
+
/**
|
|
91
|
+
* Encode Uint8Array to base64 string
|
|
92
|
+
*/
|
|
93
|
+
private static uint8ArrayToBase64;
|
|
94
|
+
/**
|
|
95
|
+
* Decode base64 string to Uint8Array
|
|
96
|
+
*/
|
|
97
|
+
private static base64ToUint8Array;
|
|
48
98
|
private static networkNameToU8;
|
|
49
99
|
private static u8ToNetworkName;
|
|
50
100
|
}
|
|
101
|
+
//# sourceMappingURL=TransactionSerializer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"TransactionSerializer.d.ts","sourceRoot":"","sources":["../../../src/transaction/offline/TransactionSerializer.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACR,6BAA6B,EAOhC,MAAM,oCAAoC,CAAC;AAsB5C;;;GAGG;AACH,qBAAa,qBAAqB;IAC9B;;;;OAIG;WACW,SAAS,CAAC,KAAK,EAAE,6BAA6B,GAAG,UAAU;IAqCzE;;;;;OAKG;WACW,WAAW,CAAC,IAAI,EAAE,UAAU,GAAG,6BAA6B;IAyD1E;;;;OAIG;WACW,QAAQ,CAAC,KAAK,EAAE,6BAA6B,GAAG,MAAM;IAKpE;;;;OAIG;WACW,UAAU,CAAC,MAAM,EAAE,MAAM,GAAG,6BAA6B;IAIvE;;;;OAIG;WACW,KAAK,CAAC,KAAK,EAAE,6BAA6B,GAAG,MAAM;IAIjE;;;;OAIG;WACW,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,6BAA6B;IAIjE,OAAO,CAAC,MAAM,CAAC,WAAW;IAS1B,OAAO,CAAC,MAAM,CAAC,UAAU;IAiBzB,OAAO,CAAC,MAAM,CAAC,eAAe;IAmB9B,OAAO,CAAC,MAAM,CAAC,cAAc;IA8B7B,OAAO,CAAC,MAAM,CAAC,cAAc;IAO7B,OAAO,CAAC,MAAM,CAAC,SAAS;IA8BxB,OAAO,CAAC,MAAM,CAAC,aAAa;IAS5B,OAAO,CAAC,MAAM,CAAC,QAAQ;IAoCvB,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAO/B,OAAO,CAAC,MAAM,CAAC,WAAW;IAmB1B,OAAO,CAAC,MAAM,CAAC,eAAe;IAS9B,OAAO,CAAC,MAAM,CAAC,UAAU;IAwBzB,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAclC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAejC,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAyBpC,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAuBnC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAK/B,OAAO,CAAC,MAAM,CAAC,eAAe;IAS9B,OAAO,CAAC,MAAM,CAAC,mBAAmB;IAelC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IA0BjC,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAqBnC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA+BlC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAgBhC,OAAO,CAAC,MAAM,CAAC,gBAAgB;IA2B/B,OAAO,CAAC,MAAM,CAAC,qBAAqB;IAkBpC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAYjC,OAAO,CAAC,MAAM,CAAC,oBAAoB;IAwBnC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAgBhC,OAAO,CAAC,MAAM,CAAC,eAAe;IAI9B,OAAO,CAAC,MAAM,CAAC,cAAc;IAO7B,OAAO,CAAC,MAAM,CAAC,cAAc;IAgC7B,OAAO,CAAC,MAAM,CAAC,0BAA0B;IAkBzC,OAAO,CAAC,MAAM,CAAC,aAAa;IA6C5B,OAAO,CAAC,MAAM,CAAC,yBAAyB;IAwBxC,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAYjC,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAUhC,OAAO,CAAC,MAAM,CAAC,oBAAoB;IA2BnC,OAAO,CAAC,MAAM,CAAC,mBAAmB;IA6BlC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAKhC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAQzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IAQjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,kBAAkB;IASjC,OAAO,CAAC,MAAM,CAAC,eAAe;IAa9B,OAAO,CAAC,MAAM,CAAC,eAAe;CAYjC"}
|