Skip to content

AccountConfig.getAddress

Derives the stable configurable account address.

The initial config is hashed into a CREATE2 salt using fixed-width big-endian fields, not RLP. The account uses the chain-configured recovery factory and account proxy init-code hash.

The address is derived once from the initial version-0 config. Config updates do not change it.

Imports

Named
import { AccountConfig } from 'ox/tempo'

Examples

import { AccountConfig } from 'ox/tempo'
 
const initialConfig = AccountConfig.from({
  owners: [
    { owner: '0x1111111111111111111111111111111111111111', weight: 1 },
  ],
  threshold: 1,
})
 
const address = AccountConfig.getAddress(initialConfig, {
  factory: '0x7171717171717171717171717171717171717171'
})

Definition

function getAddress(
  config: Input,
  options: getAddress.Options,
): Address.Address

Source: src/tempo/AccountConfig.ts

Parameters

config

  • Type: Input

The initial account config.

config.owners

  • Type: readonly Owner[]

Weighted owner list (strictly ascending by owner address).

config.salt

  • Type: 0x${string}
  • Optional

Caller-chosen 32-byte salt mixed into the derived account address. Defaults to the zero salt (AccountConfig.zeroSalt) when omitted.

config.threshold

  • Type: numberType

Minimum total owner weight required to authorize a transaction.

config.version

  • Type: versionType
  • Optional

Configuration version as a safe integer or bigint. Defaults to 0n.

options

  • Type: getAddress.Options

The recovery factory configured by the chain.

options.factory

  • Type: abitype_Address

Recovery factory configured by the chain.

Return Type

The configurable account address.

Address.Address