Skip to content

finalizeBTCTransaction ​

finalizeBTCTransaction(config, intentions, client, options?): Promise<EdictRuneResponse | TransferBTCResponse>

Prepares a Bitcoin transaction for the provided intentions. Calculates gas limits for EVM transactions, total fees, and handles both BTC and rune transfers.

Import ​

ts
import { finalizeBTCTransaction } from "@midl/executor";

Example ​

ts
import { finalizeBTCTransaction } from "@midl/executor";

const btcTx = await finalizeBTCTransaction(config, intentions, client, { feeRate: 10 });

Parameters ​

NameTypeDescription
configConfigThe configuration object.
intentions`TransactionIntention[]Array of transaction intentions to process.
clientClientViem's client instance.
optionsFinalizeBTCTransactionOptions (optional)Optional configuration options.

FinalizeBTCTransactionOptions ​

NameTypeDescription
stateOverrideStateOverride (optional)State override for EVM transactions.
fromstring (optional)BTC address of the account to use for signing.
feeRatenumber (optional)Custom fee rate (sats/vB).
assetsToWithdrawSizenumber (optional)Number of assets to withdraw.
skipEstimateGasMultiboolean (optional)If true, skips gas estimation for EVM transactions.
multisigAddressstring (optional)Multisig address to use for the transaction.
gasMultipliernumber (optional)Multiplier to apply to estimated gas.

Returns ​

Promise<EdictRuneResponse | TransferBTCResponse> — The BTC transaction response.

Released under the MIT License