TxParams
The transaction parameters every build* function in this package takes alongside its own arguments: either SingleSigTxParams or MultiSigTxParams. Builders pass them to makeUnsignedContractCall and return an unsigned StacksTransactionWire that calls pox-5.
Usage
import { buildUpdateBondRegistration } from '@stacks/bitcoin-staking';
const args = {
signerManager: 'SP2C2YFP12AJZB4MABJBAJ55XECVS7E4PMMZ89YZR.new-signer-manager',
oldSignerManager: 'SP2C2YFP12AJZB4MABJBAJ55XECVS7E4PMMZ89YZR.old-signer-manager',
};
// Single-sig origin
const tx = await buildUpdateBondRegistration({
...args,
publicKey,
fee: 10_000n,
nonce,
network: 'mainnet',
});
// 2-of-3 multisig origin
const multisigTx = await buildUpdateBondRegistration({
...args,
publicKeys: [pubKeyA, pubKeyB, pubKeyC],
numSignatures: 2,
fee: 10_000n,
nonce,
network: 'mainnet',
});Notes
Builders take the single-sig path when
publicKeyis defined and the multisig path otherwise.The transaction is unsigned. Sign it, then broadcast it with broadcastTransaction. A transaction ID confirms submission, not success: a failed pox-5 assert is mined as
abort_by_responsewith an(err uN)result, which parsePox5Error and describePox5Error decode.
Definition
Values
Single-signature origin, identified by publicKey
M-of-N multisig origin, identified by publicKeys and numSignatures
Was this helpful?