Skip to content

UserOperation.toRpc

Converts a UserOperation.UserOperation to a UserOperation.Rpc.

Imports

Named
import { UserOperation } from 'ox/erc4337'

Examples

import { Value } from 'ox'
import { UserOperation } from 'ox/erc4337'
 
const userOperation = UserOperation.toRpc({
  callData: '0xdeadbeef',
  callGasLimit: 300_000n,
  maxFeePerGas: Value.fromGwei('20'),
  maxPriorityFeePerGas: Value.fromGwei('2'),
  nonce: 69n,
  preVerificationGas: 100_000n,
  sender: '0x9f1fdab6458c5fc642fa0f4c5af7473c46837357',
  verificationGasLimit: 100_000n,
})

Definition

function toRpc(
  userOperation: UserOperation.UserOperation,
): Rpc

Source: src/erc4337/UserOperation.ts

Parameters

userOperation

The user operation to convert.

userOperation.callData

  • Type: 0x${string}

The data to pass to the sender during the main execution call.

userOperation.callGasLimit

  • Type: bigintType

The amount of gas to allocate the main execution call

userOperation.initCode

  • Type: 0x${string}
  • Optional

Account init code. Only for new accounts.

userOperation.maxFeePerGas

  • Type: bigintType

Maximum fee per gas.

userOperation.maxPriorityFeePerGas

  • Type: bigintType

Maximum priority fee per gas.

userOperation.nonce

  • Type: bigintType

Anti-replay parameter.

userOperation.paymasterAndData

  • Type: 0x${string}
  • Optional

Paymaster address with calldata.

userOperation.preVerificationGas

  • Type: bigintType

Extra gas to pay the Bundler.

userOperation.sender

  • Type: abitype_Address

The account making the operation.

userOperation.signature

  • Type: 0x${string}

userOperation.verificationGasLimit

  • Type: bigintType

The amount of gas to allocate for the verification step.

Return Type

An RPC-formatted user operation.

Rpc