multisig.updateConfigSync
Replaces the current owners and threshold for a native multisig account, waits for confirmation, and returns the emitted configuration with the receipt.
The transaction must be authorized by the current owner quorum. Use
multisig.updateConfig when you do not want to wait.
Usage
import { Account } from 'viem/tempo'
import { client } from './viem.config'
const owner_1 = Account.fromSecp256k1(
'0xac0974bec39a17e36ba4a6b4d238ff944bacb478cbed5efcae784d7bf4f2ff80'
)
const owner_2 = Account.fromSecp256k1(
'0x59c6995e998f97a5a0044966f0945389dc9e86dae88c7a8412f4603b6b78690d'
)
const newOwner = Account.fromSecp256k1(
'0x5de4111afa1a4b94908f83103eb1f1706367c2e68ca870fc3fb9a804cdab365a'
)
const account = Account.fromMultisig({
owners: [owner_1, owner_2],
threshold: 2,
})
const result = await client.multisig.updateConfigSync({
account,
owners: [{ owner: newOwner.address, weight: 1 }],
threshold: 1,
})import { Account, createClient } from 'viem/tempo'
export const client = createClient({
account: Account.fromSecp256k1('0x...'),
})Return Type
type ReturnType = {
account: Address
owners: readonly {
owner: Address
weight: number
}[]
receipt: TransactionReceipt
threshold: number
}Parameters
owners
- Type:
readonly { owner: Address; weight: number }[]
The complete replacement owner set. Owners are normalized into canonical address order.
threshold
- Type:
number
The replacement approval weight required to authorize the account.
account (optional)
- Type:
Account | Address
Account that will be used to send the transaction.
feeToken (optional)
- Type:
Address | bigint
Fee token for the transaction.
Can be an unpaused USD-denominated TIP-20 token address or ID. Use client.fee.validateToken({ token }) to validate a token before submitting a transaction or setting it as a fee preference.
feePayer (optional)
- Type:
Account | true
Fee payer for the transaction.
Can be a Viem Account, or true if a Fee Payer Service will be used.
gas (optional)
- Type:
bigint
Gas limit for the transaction.
maxFeePerGas (optional)
- Type:
bigint
Max fee per gas for the transaction.
maxPriorityFeePerGas (optional)
- Type:
bigint
Max priority fee per gas for the transaction.
nonce (optional)
- Type:
number
Nonce for the transaction.
nonceKey (optional)
- Type:
'expiring' | bigint
Nonce key for the transaction. Use 'expiring' to use expiring nonces (TIP-1009), which enables concurrent transaction submission without nonce ordering.
validBefore (optional)
- Type:
number
Unix timestamp before which the transaction must be included.
validAfter (optional)
- Type:
number
Unix timestamp after which the transaction can be included.
throwOnReceiptRevert (optional)
- Type:
boolean - Default:
true
Whether to throw an error if the transaction receipt indicates a revert. Only applicable to *Sync actions.