Skip to content

AuthorizationTempo

Utilities for Tempo-flavoured EIP-7702 authorizations.

Tempo extends EIP-7702 to support more signature types (secp256k1, P256, and WebAuthn), enabling passkey-based account delegation. Authorizations delegate an account to a specified implementation contract.

Tempo Authorization Specification

Examples

import { Secp256k1 } from 'ox'
import { AuthorizationTempo } from 'ox/tempo'
 
const authorization = AuthorizationTempo.from({
  address: '0xbe95c3f554e9fc85ec51be69a3d807a0d55bcf2c',
  chainId: 1,
  nonce: 40n,
})
 
const payload = AuthorizationTempo.getSignPayload(authorization)
 
const signature = Secp256k1.sign({ payload, privateKey: '0x...' })
 
const authorization_signed = AuthorizationTempo.from(
  authorization,
  { signature }
)

Functions

NameDescription
AuthorizationTempo.fromConverts an EIP-7702 Authorization object into a typed AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.fromRpcConverts an AuthorizationTempo.Rpc to an AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.fromRpcListConverts an AuthorizationTempo.ListRpc to an AuthorizationTempo.List.
AuthorizationTempo.fromTupleConverts an AuthorizationTempo.Tuple to an AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.fromTupleListConverts an AuthorizationTempo.TupleList to an AuthorizationTempo.List.
AuthorizationTempo.getSignPayloadComputes the sign payload for an AuthorizationTempo.AuthorizationTempo in EIP-7702 format: `keccak256('0x05'
AuthorizationTempo.hashComputes the hash for an AuthorizationTempo.AuthorizationTempo in EIP-7702 format: `keccak256('0x05'
AuthorizationTempo.toRpcConverts an AuthorizationTempo.AuthorizationTempo to an AuthorizationTempo.Rpc.
AuthorizationTempo.toRpcListConverts an AuthorizationTempo.List to an AuthorizationTempo.ListRpc.
AuthorizationTempo.toTupleConverts an AuthorizationTempo.AuthorizationTempo to an AuthorizationTempo.Tuple.
AuthorizationTempo.toTupleListConverts an AuthorizationTempo.List to an AuthorizationTempo.TupleList.

Types

NameDescription
AuthorizationTempo.AuthorizationTempoRoot type for a Tempo Authorization.
AuthorizationTempo.ListList of AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.ListRpcRPC representation of a list of AA Authorizations.
AuthorizationTempo.ListSignedSigned representation of a list of AA Authorizations.
AuthorizationTempo.RpcRPC representation of an AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.SignedSigned representation of an AA Authorization.
AuthorizationTempo.TupleTuple representation of an AA Authorization.
AuthorizationTempo.TupleListTuple representation of a list of AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.TupleListSignedTuple representation of a list of signed AuthorizationTempo.AuthorizationTempo.
AuthorizationTempo.TupleSignedTuple representation of a signed AuthorizationTempo.AuthorizationTempo.