UserOperation.toPacked
Transforms a User Operation into "packed" format.
Imports
Named
import { UserOperation } from 'ox/erc4337'
Examples
import { Value } from 'ox'
import { UserOperation } from 'ox/erc4337'
const packed = UserOperation.toPacked({
callData: '0xdeadbeef',
callGasLimit: 300_000n,
maxFeePerGas: Value.fromGwei('20'),
maxPriorityFeePerGas: Value.fromGwei('2'),
nonce: 69n,
preVerificationGas: 100_000n,
sender: '0x9f1fdab6458c5fc642fa0f4c5af7473c46837357',
signature: '0x...',
verificationGasLimit: 100_000n,
})
Definition
function toPacked(
userOperation: UserOperation<'0.7', true>,
): Packed
Source: src/erc4337/UserOperation.ts
Parameters
userOperation
- Type:
UserOperation<'0.7', true>
The user operation to transform.
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
The packed user operation.