@abstraxn/account
Version:
@abstraxn/account: Empower ERC-4337 smart accounts with seamless APIs for enhanced decentralized finance experiences.
939 lines (938 loc) • 33.1 kB
JSON
[
{
"inputs": [
{ "internalType": "uint256", "name": "preOpGas", "type": "uint256" },
{ "internalType": "uint256", "name": "paid", "type": "uint256" },
{ "internalType": "uint48", "name": "validAfter", "type": "uint48" },
{ "internalType": "uint48", "name": "validUntil", "type": "uint48" },
{ "internalType": "bool", "name": "targetSuccess", "type": "bool" },
{ "internalType": "bytes", "name": "targetResult", "type": "bytes" }
],
"name": "ExecutionResult",
"type": "error"
},
{
"inputs": [
{ "internalType": "uint256", "name": "opIndex", "type": "uint256" },
{ "internalType": "string", "name": "reason", "type": "string" }
],
"name": "FailedOp",
"type": "error"
},
{
"inputs": [
{ "internalType": "address", "name": "sender", "type": "address" }
],
"name": "SenderAddressResult",
"type": "error"
},
{
"inputs": [
{ "internalType": "address", "name": "aggregator", "type": "address" }
],
"name": "SignatureValidationFailed",
"type": "error"
},
{
"inputs": [
{
"components": [
{ "internalType": "uint256", "name": "preOpGas", "type": "uint256" },
{ "internalType": "uint256", "name": "prefund", "type": "uint256" },
{ "internalType": "bool", "name": "sigFailed", "type": "bool" },
{ "internalType": "uint48", "name": "validAfter", "type": "uint48" },
{ "internalType": "uint48", "name": "validUntil", "type": "uint48" },
{
"internalType": "bytes",
"name": "paymasterContext",
"type": "bytes"
}
],
"internalType": "struct IEntryPoint.ReturnInfo",
"name": "returnInfo",
"type": "tuple"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "senderInfo",
"type": "tuple"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "factoryInfo",
"type": "tuple"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "paymasterInfo",
"type": "tuple"
}
],
"name": "ValidationResult",
"type": "error"
},
{
"inputs": [
{
"components": [
{ "internalType": "uint256", "name": "preOpGas", "type": "uint256" },
{ "internalType": "uint256", "name": "prefund", "type": "uint256" },
{ "internalType": "bool", "name": "sigFailed", "type": "bool" },
{ "internalType": "uint48", "name": "validAfter", "type": "uint48" },
{ "internalType": "uint48", "name": "validUntil", "type": "uint48" },
{
"internalType": "bytes",
"name": "paymasterContext",
"type": "bytes"
}
],
"internalType": "struct IEntryPoint.ReturnInfo",
"name": "returnInfo",
"type": "tuple"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "senderInfo",
"type": "tuple"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "factoryInfo",
"type": "tuple"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "paymasterInfo",
"type": "tuple"
},
{
"components": [
{
"internalType": "address",
"name": "aggregator",
"type": "address"
},
{
"components": [
{ "internalType": "uint256", "name": "stake", "type": "uint256" },
{
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"internalType": "struct IStakeManager.StakeInfo",
"name": "stakeInfo",
"type": "tuple"
}
],
"internalType": "struct IEntryPoint.AggregatorStakeInfo",
"name": "aggregatorInfo",
"type": "tuple"
}
],
"name": "ValidationResultWithAggregation",
"type": "error"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "userOpHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "factory",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "paymaster",
"type": "address"
}
],
"name": "AccountDeployed",
"type": "event"
},
{
"anonymous": false,
"inputs": [],
"name": "BeforeExecution",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalDeposit",
"type": "uint256"
}
],
"name": "Deposited",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "aggregator",
"type": "address"
}
],
"name": "SignatureAggregatorChanged",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "totalStaked",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "unstakeDelaySec",
"type": "uint256"
}
],
"name": "StakeLocked",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "withdrawTime",
"type": "uint256"
}
],
"name": "StakeUnlocked",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "withdrawAddress",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "StakeWithdrawn",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "userOpHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": true,
"internalType": "address",
"name": "paymaster",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "nonce",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bool",
"name": "success",
"type": "bool"
},
{
"indexed": false,
"internalType": "uint256",
"name": "actualGasCost",
"type": "uint256"
},
{
"indexed": false,
"internalType": "uint256",
"name": "actualGasUsed",
"type": "uint256"
}
],
"name": "UserOperationEvent",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "bytes32",
"name": "userOpHash",
"type": "bytes32"
},
{
"indexed": true,
"internalType": "address",
"name": "sender",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "nonce",
"type": "uint256"
},
{
"indexed": false,
"internalType": "bytes",
"name": "revertReason",
"type": "bytes"
}
],
"name": "UserOperationRevertReason",
"type": "event"
},
{
"anonymous": false,
"inputs": [
{
"indexed": true,
"internalType": "address",
"name": "account",
"type": "address"
},
{
"indexed": false,
"internalType": "address",
"name": "withdrawAddress",
"type": "address"
},
{
"indexed": false,
"internalType": "uint256",
"name": "amount",
"type": "uint256"
}
],
"name": "Withdrawn",
"type": "event"
},
{
"inputs": [],
"name": "SIG_VALIDATION_FAILED",
"outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes", "name": "initCode", "type": "bytes" },
{ "internalType": "address", "name": "sender", "type": "address" },
{ "internalType": "bytes", "name": "paymasterAndData", "type": "bytes" }
],
"name": "_validateSenderAndPaymaster",
"outputs": [],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "uint32", "name": "unstakeDelaySec", "type": "uint32" }
],
"name": "addStake",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "balanceOf",
"outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "depositTo",
"outputs": [],
"stateMutability": "payable",
"type": "function"
},
{
"inputs": [{ "internalType": "address", "name": "", "type": "address" }],
"name": "deposits",
"outputs": [
{ "internalType": "uint112", "name": "deposit", "type": "uint112" },
{ "internalType": "bool", "name": "staked", "type": "bool" },
{ "internalType": "uint112", "name": "stake", "type": "uint112" },
{ "internalType": "uint32", "name": "unstakeDelaySec", "type": "uint32" },
{ "internalType": "uint48", "name": "withdrawTime", "type": "uint48" }
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "account", "type": "address" }
],
"name": "getDepositInfo",
"outputs": [
{
"components": [
{ "internalType": "uint112", "name": "deposit", "type": "uint112" },
{ "internalType": "bool", "name": "staked", "type": "bool" },
{ "internalType": "uint112", "name": "stake", "type": "uint112" },
{
"internalType": "uint32",
"name": "unstakeDelaySec",
"type": "uint32"
},
{ "internalType": "uint48", "name": "withdrawTime", "type": "uint48" }
],
"internalType": "struct IStakeManager.DepositInfo",
"name": "info",
"type": "tuple"
}
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "sender", "type": "address" },
{ "internalType": "uint192", "name": "key", "type": "uint192" }
],
"name": "getNonce",
"outputs": [
{ "internalType": "uint256", "name": "nonce", "type": "uint256" }
],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes", "name": "initCode", "type": "bytes" }
],
"name": "getSenderAddress",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{ "internalType": "address", "name": "sender", "type": "address" },
{ "internalType": "uint256", "name": "nonce", "type": "uint256" },
{ "internalType": "bytes", "name": "initCode", "type": "bytes" },
{ "internalType": "bytes", "name": "callData", "type": "bytes" },
{
"internalType": "uint256",
"name": "callGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "verificationGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "preVerificationGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxFeePerGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxPriorityFeePerGas",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "paymasterAndData",
"type": "bytes"
},
{ "internalType": "bytes", "name": "signature", "type": "bytes" }
],
"internalType": "struct UserOperation",
"name": "userOp",
"type": "tuple"
}
],
"name": "getUserOpHash",
"outputs": [{ "internalType": "bytes32", "name": "", "type": "bytes32" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{
"components": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{ "internalType": "uint256", "name": "nonce", "type": "uint256" },
{ "internalType": "bytes", "name": "initCode", "type": "bytes" },
{ "internalType": "bytes", "name": "callData", "type": "bytes" },
{
"internalType": "uint256",
"name": "callGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "verificationGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "preVerificationGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxFeePerGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxPriorityFeePerGas",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "paymasterAndData",
"type": "bytes"
},
{ "internalType": "bytes", "name": "signature", "type": "bytes" }
],
"internalType": "struct UserOperation[]",
"name": "userOps",
"type": "tuple[]"
},
{
"internalType": "contract IAggregator",
"name": "aggregator",
"type": "address"
},
{ "internalType": "bytes", "name": "signature", "type": "bytes" }
],
"internalType": "struct IEntryPoint.UserOpsPerAggregator[]",
"name": "opsPerAggregator",
"type": "tuple[]"
},
{
"internalType": "address payable",
"name": "beneficiary",
"type": "address"
}
],
"name": "handleAggregatedOps",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{ "internalType": "address", "name": "sender", "type": "address" },
{ "internalType": "uint256", "name": "nonce", "type": "uint256" },
{ "internalType": "bytes", "name": "initCode", "type": "bytes" },
{ "internalType": "bytes", "name": "callData", "type": "bytes" },
{
"internalType": "uint256",
"name": "callGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "verificationGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "preVerificationGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxFeePerGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxPriorityFeePerGas",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "paymasterAndData",
"type": "bytes"
},
{ "internalType": "bytes", "name": "signature", "type": "bytes" }
],
"internalType": "struct UserOperation[]",
"name": "ops",
"type": "tuple[]"
},
{
"internalType": "address payable",
"name": "beneficiary",
"type": "address"
}
],
"name": "handleOps",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [{ "internalType": "uint192", "name": "key", "type": "uint192" }],
"name": "incrementNonce",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "bytes", "name": "callData", "type": "bytes" },
{
"components": [
{
"components": [
{
"internalType": "address",
"name": "sender",
"type": "address"
},
{ "internalType": "uint256", "name": "nonce", "type": "uint256" },
{
"internalType": "uint256",
"name": "callGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "verificationGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "preVerificationGas",
"type": "uint256"
},
{
"internalType": "address",
"name": "paymaster",
"type": "address"
},
{
"internalType": "uint256",
"name": "maxFeePerGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxPriorityFeePerGas",
"type": "uint256"
}
],
"internalType": "struct EntryPoint.MemoryUserOp",
"name": "mUserOp",
"type": "tuple"
},
{
"internalType": "bytes32",
"name": "userOpHash",
"type": "bytes32"
},
{ "internalType": "uint256", "name": "prefund", "type": "uint256" },
{
"internalType": "uint256",
"name": "contextOffset",
"type": "uint256"
},
{ "internalType": "uint256", "name": "preOpGas", "type": "uint256" }
],
"internalType": "struct EntryPoint.UserOpInfo",
"name": "opInfo",
"type": "tuple"
},
{ "internalType": "bytes", "name": "context", "type": "bytes" }
],
"name": "innerHandleOp",
"outputs": [
{ "internalType": "uint256", "name": "actualGasCost", "type": "uint256" }
],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{ "internalType": "address", "name": "", "type": "address" },
{ "internalType": "uint192", "name": "", "type": "uint192" }
],
"name": "nonceSequenceNumber",
"outputs": [{ "internalType": "uint256", "name": "", "type": "uint256" }],
"stateMutability": "view",
"type": "function"
},
{
"inputs": [
{
"components": [
{ "internalType": "address", "name": "sender", "type": "address" },
{ "internalType": "uint256", "name": "nonce", "type": "uint256" },
{ "internalType": "bytes", "name": "initCode", "type": "bytes" },
{ "internalType": "bytes", "name": "callData", "type": "bytes" },
{
"internalType": "uint256",
"name": "callGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "verificationGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "preVerificationGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxFeePerGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxPriorityFeePerGas",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "paymasterAndData",
"type": "bytes"
},
{ "internalType": "bytes", "name": "signature", "type": "bytes" }
],
"internalType": "struct UserOperation",
"name": "op",
"type": "tuple"
},
{ "internalType": "address", "name": "target", "type": "address" },
{ "internalType": "bytes", "name": "targetCallData", "type": "bytes" }
],
"name": "simulateHandleOp",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"components": [
{ "internalType": "address", "name": "sender", "type": "address" },
{ "internalType": "uint256", "name": "nonce", "type": "uint256" },
{ "internalType": "bytes", "name": "initCode", "type": "bytes" },
{ "internalType": "bytes", "name": "callData", "type": "bytes" },
{
"internalType": "uint256",
"name": "callGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "verificationGasLimit",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "preVerificationGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxFeePerGas",
"type": "uint256"
},
{
"internalType": "uint256",
"name": "maxPriorityFeePerGas",
"type": "uint256"
},
{
"internalType": "bytes",
"name": "paymasterAndData",
"type": "bytes"
},
{ "internalType": "bytes", "name": "signature", "type": "bytes" }
],
"internalType": "struct UserOperation",
"name": "userOp",
"type": "tuple"
}
],
"name": "simulateValidation",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [],
"name": "unlockStake",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "withdrawAddress",
"type": "address"
}
],
"name": "withdrawStake",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{
"inputs": [
{
"internalType": "address payable",
"name": "withdrawAddress",
"type": "address"
},
{ "internalType": "uint256", "name": "withdrawAmount", "type": "uint256" }
],
"name": "withdrawTo",
"outputs": [],
"stateMutability": "nonpayable",
"type": "function"
},
{ "stateMutability": "payable", "type": "receive" }
]