Skip to content

AccountConfig.from

Normalizes an AccountConfig.Config.

Sorts owners into strictly ascending owner address order (the canonical form required for account derivation) and asserts the config is valid.

Imports

Named
import { AccountConfig } from 'ox/tempo'

Examples

import { AccountConfig } from 'ox/tempo'
 
const config = AccountConfig.from({
  owners: [
    { owner: '0x2222222222222222222222222222222222222222', weight: 1 },
    { owner: '0x1111111111111111111111111111111111111111', weight: 1 },
  ],
  threshold: 2,
})
// owners are now sorted ascending by address

Definition

function from<numberType>(
  config: Input<0 | 0n, numberType> & {
    version?: 0 | 0n | undefined;
},
): Config

Source: src/tempo/AccountConfig.ts

Parameters

config

  • Type: Input<0 | 0n, numberType> & { version?: 0 | 0n | undefined; }

The 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.

Return Type

The normalized account config.

Config<0n, numberType>