UNPKG

@abstract-foundation/agw-client

Version:
1,843 lines (1,841 loc) 35.3 kB
const AGWAccountAbi = [ { inputs: [], stateMutability: 'nonpayable', type: 'constructor', }, { inputs: [], name: 'ADDRESS_ALREADY_EXISTS', type: 'error', }, { inputs: [], name: 'ADDRESS_NOT_EXISTS', type: 'error', }, { inputs: [], name: 'BYTES_ALREADY_EXISTS', type: 'error', }, { inputs: [], name: 'BYTES_NOT_EXISTS', type: 'error', }, { inputs: [], name: 'CALL_FAILED', type: 'error', }, { inputs: [], name: 'EMPTY_HOOK_ADDRESS', type: 'error', }, { inputs: [], name: 'EMPTY_MODULE_ADDRESS', type: 'error', }, { inputs: [], name: 'EMPTY_OWNERS', type: 'error', }, { inputs: [], name: 'EMPTY_VALIDATORS', type: 'error', }, { inputs: [], name: 'FEE_PAYMENT_FAILED', type: 'error', }, { inputs: [], name: 'HOOK_ERC165_FAIL', type: 'error', }, { inputs: [], name: 'INSUFFICIENT_FUNDS', type: 'error', }, { inputs: [], name: 'INVALID_ADDRESS', type: 'error', }, { inputs: [], name: 'INVALID_BYTES', type: 'error', }, { inputs: [], name: 'INVALID_KEY', type: 'error', }, { inputs: [], name: 'INVALID_PUBKEY_LENGTH', type: 'error', }, { inputs: [], name: 'INVALID_SALT', type: 'error', }, { inputs: [], name: 'InvalidInitialization', type: 'error', }, { inputs: [], name: 'MODULE_ERC165_FAIL', type: 'error', }, { inputs: [ { internalType: 'uint256', name: 'actualValue', type: 'uint256', }, { internalType: 'uint256', name: 'expectedValue', type: 'uint256', }, ], name: 'MsgValueMismatch', type: 'error', }, { inputs: [], name: 'NOT_FROM_BOOTLOADER', type: 'error', }, { inputs: [], name: 'NOT_FROM_DEPLOYER', type: 'error', }, { inputs: [], name: 'NOT_FROM_HOOK', type: 'error', }, { inputs: [], name: 'NOT_FROM_MODULE', type: 'error', }, { inputs: [], name: 'NOT_FROM_SELF', type: 'error', }, { inputs: [], name: 'NOT_FROM_SELF_OR_MODULE', type: 'error', }, { inputs: [], name: 'NotInitializing', type: 'error', }, { inputs: [], name: 'RECUSIVE_MODULE_CALL', type: 'error', }, { inputs: [], name: 'SAME_IMPLEMENTATION', type: 'error', }, { inputs: [], name: 'UNAUTHORIZED_OUTSIDE_TRANSACTION', type: 'error', }, { inputs: [], name: 'VALIDATION_HOOK_FAILED', type: 'error', }, { inputs: [], name: 'VALIDATOR_ERC165_FAIL', type: 'error', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'hook', type: 'address', }, ], name: 'AddHook', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'module', type: 'address', }, ], name: 'AddModule', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'validator', type: 'address', }, ], name: 'AddModuleValidator', type: 'event', }, { anonymous: false, inputs: [], name: 'EIP712DomainChanged', type: 'event', }, { anonymous: false, inputs: [], name: 'FeePaid', type: 'event', }, { anonymous: false, inputs: [ { indexed: false, internalType: 'uint64', name: 'version', type: 'uint64', }, ], name: 'Initialized', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'addr', type: 'address', }, ], name: 'K1AddOwner', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'validator', type: 'address', }, ], name: 'K1AddValidator', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'addr', type: 'address', }, ], name: 'K1RemoveOwner', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'validator', type: 'address', }, ], name: 'K1RemoveValidator', type: 'event', }, { anonymous: false, inputs: [ { indexed: false, internalType: 'bytes', name: 'pubKey', type: 'bytes', }, ], name: 'R1AddOwner', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'validator', type: 'address', }, ], name: 'R1AddValidator', type: 'event', }, { anonymous: false, inputs: [ { indexed: false, internalType: 'bytes', name: 'pubKey', type: 'bytes', }, ], name: 'R1RemoveOwner', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'validator', type: 'address', }, ], name: 'R1RemoveValidator', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'hook', type: 'address', }, ], name: 'RemoveHook', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'module', type: 'address', }, ], name: 'RemoveModule', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'validator', type: 'address', }, ], name: 'RemoveModuleValidator', type: 'event', }, { anonymous: false, inputs: [], name: 'ResetOwners', type: 'event', }, { anonymous: false, inputs: [ { indexed: true, internalType: 'address', name: 'oldImplementation', type: 'address', }, { indexed: true, internalType: 'address', name: 'newImplementation', type: 'address', }, ], name: 'Upgraded', type: 'event', }, { stateMutability: 'payable', type: 'fallback', }, { inputs: [], name: 'VERSION', outputs: [ { internalType: 'uint256', name: '', type: 'uint256', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'bytes', name: 'hookAndData', type: 'bytes', }, { internalType: 'bool', name: 'isValidation', type: 'bool', }, ], name: 'addHook', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes', name: 'moduleAndData', type: 'bytes', }, ], name: 'addModule', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, { internalType: 'bytes', name: 'initialAccountValidationKey', type: 'bytes', }, ], name: 'addModuleValidator', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { components: [ { internalType: 'address', name: 'target', type: 'address', }, { internalType: 'bool', name: 'allowFailure', type: 'bool', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'bytes', name: 'callData', type: 'bytes', }, ], internalType: 'struct Call[]', name: '_calls', type: 'tuple[]', }, ], name: 'batchCall', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [], name: 'agwMessageTypeHash', outputs: [ { internalType: 'bytes32', name: '', type: 'bytes32', }, ], stateMutability: 'pure', type: 'function', }, { inputs: [ { components: [ { internalType: 'address', name: 'target', type: 'address', }, { internalType: 'bool', name: 'allowFailure', type: 'bool', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'bytes', name: 'callData', type: 'bytes', }, ], internalType: 'struct Call[]', name: '_calls', type: 'tuple[]', }, ], name: 'batchCall', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [], name: 'eip712Domain', outputs: [ { internalType: 'bytes1', name: 'fields', type: 'bytes1', }, { internalType: 'string', name: 'name', type: 'string', }, { internalType: 'string', name: 'version', type: 'string', }, { internalType: 'uint256', name: 'chainId', type: 'uint256', }, { internalType: 'address', name: 'verifyingContract', type: 'address', }, { internalType: 'bytes32', name: 'salt', type: 'bytes32', }, { internalType: 'uint256[]', name: 'extensions', type: 'uint256[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'to', type: 'address', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, ], name: 'executeFromModule', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes32', name: '', type: 'bytes32', }, { internalType: 'bytes32', name: '', type: 'bytes32', }, { components: [ { internalType: 'uint256', name: 'txType', type: 'uint256', }, { internalType: 'uint256', name: 'from', type: 'uint256', }, { internalType: 'uint256', name: 'to', type: 'uint256', }, { internalType: 'uint256', name: 'gasLimit', type: 'uint256', }, { internalType: 'uint256', name: 'gasPerPubdataByteLimit', type: 'uint256', }, { internalType: 'uint256', name: 'maxFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'maxPriorityFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'paymaster', type: 'uint256', }, { internalType: 'uint256', name: 'nonce', type: 'uint256', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'uint256[4]', name: 'reserved', type: 'uint256[4]', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, { internalType: 'bytes', name: 'signature', type: 'bytes', }, { internalType: 'bytes32[]', name: 'factoryDeps', type: 'bytes32[]', }, { internalType: 'bytes', name: 'paymasterInput', type: 'bytes', }, { internalType: 'bytes', name: 'reservedDynamic', type: 'bytes', }, ], internalType: 'struct Transaction', name: 'transaction', type: 'tuple', }, ], name: 'executeTransaction', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [ { components: [ { internalType: 'uint256', name: 'txType', type: 'uint256', }, { internalType: 'uint256', name: 'from', type: 'uint256', }, { internalType: 'uint256', name: 'to', type: 'uint256', }, { internalType: 'uint256', name: 'gasLimit', type: 'uint256', }, { internalType: 'uint256', name: 'gasPerPubdataByteLimit', type: 'uint256', }, { internalType: 'uint256', name: 'maxFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'maxPriorityFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'paymaster', type: 'uint256', }, { internalType: 'uint256', name: 'nonce', type: 'uint256', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'uint256[4]', name: 'reserved', type: 'uint256[4]', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, { internalType: 'bytes', name: 'signature', type: 'bytes', }, { internalType: 'bytes32[]', name: 'factoryDeps', type: 'bytes32[]', }, { internalType: 'bytes', name: 'paymasterInput', type: 'bytes', }, { internalType: 'bytes', name: 'reservedDynamic', type: 'bytes', }, ], internalType: 'struct Transaction', name: 'transaction', type: 'tuple', }, ], name: 'executeTransactionFromOutside', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [ { components: [ { internalType: 'bytes32', name: 'signedHash', type: 'bytes32', }, ], internalType: 'struct ERC1271Handler.AGWMessage', name: 'agwMessage', type: 'tuple', }, ], name: 'getEip712Hash', outputs: [ { internalType: 'bytes32', name: '', type: 'bytes32', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'hook', type: 'address', }, { internalType: 'bytes32', name: 'key', type: 'bytes32', }, ], name: 'getHookData', outputs: [ { internalType: 'bytes', name: '', type: 'bytes', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'implementationAddress', outputs: [ { internalType: 'address', name: '', type: 'address', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'initialK1Owner', type: 'address', }, { internalType: 'address', name: 'initialK1Validator', type: 'address', }, { internalType: 'bytes[]', name: 'modules', type: 'bytes[]', }, { components: [ { internalType: 'address', name: 'target', type: 'address', }, { internalType: 'bool', name: 'allowFailure', type: 'bool', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'bytes', name: 'callData', type: 'bytes', }, ], internalType: 'struct Call', name: 'initCall', type: 'tuple', }, ], name: 'initialize', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'addr', type: 'address', }, ], name: 'isHook', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'addr', type: 'address', }, ], name: 'isModule', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'isModuleValidator', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'bytes32', name: 'signedHash', type: 'bytes32', }, { internalType: 'bytes', name: 'signatureAndValidator', type: 'bytes', }, ], name: 'isValidSignature', outputs: [ { internalType: 'bytes4', name: 'magicValue', type: 'bytes4', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'addr', type: 'address', }, ], name: 'k1AddOwner', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'k1AddValidator', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'addr', type: 'address', }, ], name: 'k1IsOwner', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'k1IsValidator', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'k1ListOwners', outputs: [ { internalType: 'address[]', name: 'k1OwnerList', type: 'address[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'k1ListValidators', outputs: [ { internalType: 'address[]', name: 'validatorList', type: 'address[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'addr', type: 'address', }, ], name: 'k1RemoveOwner', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'k1RemoveValidator', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bool', name: 'isValidation', type: 'bool', }, ], name: 'listHooks', outputs: [ { internalType: 'address[]', name: 'hookList', type: 'address[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'listModuleValidators', outputs: [ { internalType: 'address[]', name: 'validatorList', type: 'address[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'listModules', outputs: [ { internalType: 'address[]', name: 'moduleList', type: 'address[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: '', type: 'address', }, { internalType: 'address', name: '', type: 'address', }, { internalType: 'uint256[]', name: '', type: 'uint256[]', }, { internalType: 'uint256[]', name: '', type: 'uint256[]', }, { internalType: 'bytes', name: '', type: 'bytes', }, ], name: 'onERC1155BatchReceived', outputs: [ { internalType: 'bytes4', name: '', type: 'bytes4', }, ], stateMutability: 'pure', type: 'function', }, { inputs: [ { internalType: 'address', name: '', type: 'address', }, { internalType: 'address', name: '', type: 'address', }, { internalType: 'uint256', name: '', type: 'uint256', }, { internalType: 'uint256', name: '', type: 'uint256', }, { internalType: 'bytes', name: '', type: 'bytes', }, ], name: 'onERC1155Received', outputs: [ { internalType: 'bytes4', name: '', type: 'bytes4', }, ], stateMutability: 'pure', type: 'function', }, { inputs: [ { internalType: 'address', name: '', type: 'address', }, { internalType: 'address', name: '', type: 'address', }, { internalType: 'uint256', name: '', type: 'uint256', }, { internalType: 'bytes', name: '', type: 'bytes', }, ], name: 'onERC721Received', outputs: [ { internalType: 'bytes4', name: '', type: 'bytes4', }, ], stateMutability: 'pure', type: 'function', }, { inputs: [ { internalType: 'bytes32', name: '', type: 'bytes32', }, { internalType: 'bytes32', name: '', type: 'bytes32', }, { components: [ { internalType: 'uint256', name: 'txType', type: 'uint256', }, { internalType: 'uint256', name: 'from', type: 'uint256', }, { internalType: 'uint256', name: 'to', type: 'uint256', }, { internalType: 'uint256', name: 'gasLimit', type: 'uint256', }, { internalType: 'uint256', name: 'gasPerPubdataByteLimit', type: 'uint256', }, { internalType: 'uint256', name: 'maxFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'maxPriorityFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'paymaster', type: 'uint256', }, { internalType: 'uint256', name: 'nonce', type: 'uint256', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'uint256[4]', name: 'reserved', type: 'uint256[4]', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, { internalType: 'bytes', name: 'signature', type: 'bytes', }, { internalType: 'bytes32[]', name: 'factoryDeps', type: 'bytes32[]', }, { internalType: 'bytes', name: 'paymasterInput', type: 'bytes', }, { internalType: 'bytes', name: 'reservedDynamic', type: 'bytes', }, ], internalType: 'struct Transaction', name: 'transaction', type: 'tuple', }, ], name: 'payForTransaction', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [ { internalType: 'bytes32', name: '', type: 'bytes32', }, { internalType: 'bytes32', name: '', type: 'bytes32', }, { components: [ { internalType: 'uint256', name: 'txType', type: 'uint256', }, { internalType: 'uint256', name: 'from', type: 'uint256', }, { internalType: 'uint256', name: 'to', type: 'uint256', }, { internalType: 'uint256', name: 'gasLimit', type: 'uint256', }, { internalType: 'uint256', name: 'gasPerPubdataByteLimit', type: 'uint256', }, { internalType: 'uint256', name: 'maxFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'maxPriorityFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'paymaster', type: 'uint256', }, { internalType: 'uint256', name: 'nonce', type: 'uint256', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'uint256[4]', name: 'reserved', type: 'uint256[4]', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, { internalType: 'bytes', name: 'signature', type: 'bytes', }, { internalType: 'bytes32[]', name: 'factoryDeps', type: 'bytes32[]', }, { internalType: 'bytes', name: 'paymasterInput', type: 'bytes', }, { internalType: 'bytes', name: 'reservedDynamic', type: 'bytes', }, ], internalType: 'struct Transaction', name: 'transaction', type: 'tuple', }, ], name: 'prepareForPaymaster', outputs: [], stateMutability: 'payable', type: 'function', }, { inputs: [ { internalType: 'bytes', name: 'pubKey', type: 'bytes', }, ], name: 'r1AddOwner', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'r1AddValidator', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes', name: 'pubKey', type: 'bytes', }, ], name: 'r1IsOwner', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'r1IsValidator', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'r1ListOwners', outputs: [ { internalType: 'bytes[]', name: 'r1OwnerList', type: 'bytes[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [], name: 'r1ListValidators', outputs: [ { internalType: 'address[]', name: 'validatorList', type: 'address[]', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'bytes', name: 'pubKey', type: 'bytes', }, ], name: 'r1RemoveOwner', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'r1RemoveValidator', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'hook', type: 'address', }, { internalType: 'bool', name: 'isValidation', type: 'bool', }, ], name: 'removeHook', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'module', type: 'address', }, ], name: 'removeModule', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'address', name: 'validator', type: 'address', }, ], name: 'removeModuleValidator', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes', name: 'pubKey', type: 'bytes', }, ], name: 'resetOwners', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes32', name: 'key', type: 'bytes32', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, ], name: 'setHookData', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes4', name: 'interfaceId', type: 'bytes4', }, ], name: 'supportsInterface', outputs: [ { internalType: 'bool', name: '', type: 'bool', }, ], stateMutability: 'view', type: 'function', }, { inputs: [ { internalType: 'address', name: 'newImplementation', type: 'address', }, ], name: 'upgradeTo', outputs: [], stateMutability: 'nonpayable', type: 'function', }, { inputs: [ { internalType: 'bytes32', name: '', type: 'bytes32', }, { internalType: 'bytes32', name: 'suggestedSignedHash', type: 'bytes32', }, { components: [ { internalType: 'uint256', name: 'txType', type: 'uint256', }, { internalType: 'uint256', name: 'from', type: 'uint256', }, { internalType: 'uint256', name: 'to', type: 'uint256', }, { internalType: 'uint256', name: 'gasLimit', type: 'uint256', }, { internalType: 'uint256', name: 'gasPerPubdataByteLimit', type: 'uint256', }, { internalType: 'uint256', name: 'maxFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'maxPriorityFeePerGas', type: 'uint256', }, { internalType: 'uint256', name: 'paymaster', type: 'uint256', }, { internalType: 'uint256', name: 'nonce', type: 'uint256', }, { internalType: 'uint256', name: 'value', type: 'uint256', }, { internalType: 'uint256[4]', name: 'reserved', type: 'uint256[4]', }, { internalType: 'bytes', name: 'data', type: 'bytes', }, { internalType: 'bytes', name: 'signature', type: 'bytes', }, { internalType: 'bytes32[]', name: 'factoryDeps', type: 'bytes32[]', }, { internalType: 'bytes', name: 'paymasterInput', type: 'bytes', }, { internalType: 'bytes', name: 'reservedDynamic', type: 'bytes', }, ], internalType: 'struct Transaction', name: 'transaction', type: 'tuple', }, ], name: 'validateTransaction', outputs: [ { internalType: 'bytes4', name: 'magic', type: 'bytes4', }, ], stateMutability: 'payable', type: 'function', }, { stateMutability: 'payable', type: 'receive', }, ] as const; export default AGWAccountAbi;