const semiModularAccountBytecodeAbi: readonly [
{
inputs: readonly [
{
internalType: "contract IEntryPoint";
name: "entryPoint";
type: "address";
},
{
internalType: "contract ExecutionInstallDelegate";
name: "executionInstallDelegate";
type: "address";
},
];
stateMutability: "nonpayable";
type: "constructor";
},
{
stateMutability: "payable";
type: "fallback";
},
{
stateMutability: "payable";
type: "receive";
},
{
inputs: readonly [];
name: "accountId";
outputs: readonly [
{
internalType: "string";
name: "";
type: "string";
},
];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [];
name: "entryPoint";
outputs: readonly [
{
internalType: "contract IEntryPoint";
name: "";
type: "address";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "target";
type: "address";
},
{
internalType: "uint256";
name: "value";
type: "uint256";
},
{
internalType: "bytes";
name: "data";
type: "bytes";
},
];
name: "execute";
outputs: readonly [
{
internalType: "bytes";
name: "result";
type: "bytes";
},
];
stateMutability: "payable";
type: "function";
},
{
inputs: readonly [
{
components: readonly [
{
internalType: "address";
name: "target";
type: "address";
},
{
internalType: "uint256";
name: "value";
type: "uint256";
},
{
internalType: "bytes";
name: "data";
type: "bytes";
},
];
internalType: "struct Call[]";
name: "calls";
type: "tuple[]";
},
];
name: "executeBatch";
outputs: readonly [
{
internalType: "bytes[]";
name: "results";
type: "bytes[]";
},
];
stateMutability: "payable";
type: "function";
},
{
inputs: readonly [
{
components: readonly [
{
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: "bytes32";
name: "accountGasLimits";
type: "bytes32";
},
{
internalType: "uint256";
name: "preVerificationGas";
type: "uint256";
},
{
internalType: "bytes32";
name: "gasFees";
type: "bytes32";
},
{
internalType: "bytes";
name: "paymasterAndData";
type: "bytes";
},
{
internalType: "bytes";
name: "signature";
type: "bytes";
},
];
internalType: "struct PackedUserOperation";
name: "userOp";
type: "tuple";
},
{
internalType: "bytes32";
name: "";
type: "bytes32";
},
];
name: "executeUserOp";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "bytes";
name: "data";
type: "bytes";
},
{
internalType: "bytes";
name: "authorization";
type: "bytes";
},
];
name: "executeWithRuntimeValidation";
outputs: readonly [
{
internalType: "bytes";
name: "";
type: "bytes";
},
];
stateMutability: "payable";
type: "function";
},
{
inputs: readonly [
{
internalType: "bytes4";
name: "selector";
type: "bytes4";
},
];
name: "getExecutionData";
outputs: readonly [
{
components: readonly [
{
internalType: "address";
name: "module";
type: "address";
},
{
internalType: "bool";
name: "skipRuntimeValidation";
type: "bool";
},
{
internalType: "bool";
name: "allowGlobalValidation";
type: "bool";
},
{
internalType: "HookConfig[]";
name: "executionHooks";
type: "bytes25[]";
},
];
internalType: "struct ExecutionDataView";
name: "data";
type: "tuple";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [];
name: "getFallbackSignerData";
outputs: readonly [
{
internalType: "address";
name: "";
type: "address";
},
{
internalType: "bool";
name: "";
type: "bool";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
internalType: "ModuleEntity";
name: "validationFunction";
type: "bytes24";
},
];
name: "getValidationData";
outputs: readonly [
{
components: readonly [
{
internalType: "ValidationFlags";
name: "validationFlags";
type: "uint8";
},
{
internalType: "HookConfig[]";
name: "validationHooks";
type: "bytes25[]";
},
{
internalType: "HookConfig[]";
name: "executionHooks";
type: "bytes25[]";
},
{
internalType: "bytes4[]";
name: "selectors";
type: "bytes4[]";
},
];
internalType: "struct ValidationDataView";
name: "data";
type: "tuple";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "module";
type: "address";
},
{
components: readonly [
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "bool";
name: "skipRuntimeValidation";
type: "bool";
},
{
internalType: "bool";
name: "allowGlobalValidation";
type: "bool";
},
];
internalType: "struct ManifestExecutionFunction[]";
name: "executionFunctions";
type: "tuple[]";
},
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "uint32";
name: "entityId";
type: "uint32";
},
{
internalType: "bool";
name: "isPreHook";
type: "bool";
},
{
internalType: "bool";
name: "isPostHook";
type: "bool";
},
];
internalType: "struct ManifestExecutionHook[]";
name: "executionHooks";
type: "tuple[]";
},
{
internalType: "bytes4[]";
name: "interfaceIds";
type: "bytes4[]";
},
];
internalType: "struct ExecutionManifest";
name: "manifest";
type: "tuple";
},
{
internalType: "bytes";
name: "moduleInstallData";
type: "bytes";
},
];
name: "installExecution";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "ValidationConfig";
name: "validationConfig";
type: "bytes25";
},
{
internalType: "bytes4[]";
name: "selectors";
type: "bytes4[]";
},
{
internalType: "bytes";
name: "installData";
type: "bytes";
},
{
internalType: "bytes[]";
name: "hooks";
type: "bytes[]";
},
];
name: "installValidation";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "bytes32";
name: "hash";
type: "bytes32";
},
{
internalType: "bytes";
name: "signature";
type: "bytes";
},
];
name: "isValidSignature";
outputs: readonly [
{
internalType: "bytes4";
name: "";
type: "bytes4";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
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: readonly [
{
internalType: "bytes4";
name: "";
type: "bytes4";
},
];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [
{
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: readonly [
{
internalType: "bytes4";
name: "";
type: "bytes4";
},
];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "";
type: "address";
},
{
internalType: "address";
name: "";
type: "address";
},
{
internalType: "uint256";
name: "";
type: "uint256";
},
{
internalType: "bytes";
name: "";
type: "bytes";
},
];
name: "onERC721Received";
outputs: readonly [
{
internalType: "bytes4";
name: "";
type: "bytes4";
},
];
stateMutability: "pure";
type: "function";
},
{
inputs: readonly [
{
internalType: "uint256";
name: "value";
type: "uint256";
},
{
internalType: "bytes";
name: "initCode";
type: "bytes";
},
{
internalType: "bool";
name: "isCreate2";
type: "bool";
},
{
internalType: "bytes32";
name: "salt";
type: "bytes32";
},
];
name: "performCreate";
outputs: readonly [
{
internalType: "address";
name: "createdAddr";
type: "address";
},
];
stateMutability: "payable";
type: "function";
},
{
inputs: readonly [];
name: "proxiableUUID";
outputs: readonly [
{
internalType: "bytes32";
name: "";
type: "bytes32";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
internalType: "bytes4";
name: "interfaceId";
type: "bytes4";
},
];
name: "supportsInterface";
outputs: readonly [
{
internalType: "bool";
name: "";
type: "bool";
},
];
stateMutability: "view";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "module";
type: "address";
},
{
components: readonly [
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "bool";
name: "skipRuntimeValidation";
type: "bool";
},
{
internalType: "bool";
name: "allowGlobalValidation";
type: "bool";
},
];
internalType: "struct ManifestExecutionFunction[]";
name: "executionFunctions";
type: "tuple[]";
},
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "uint32";
name: "entityId";
type: "uint32";
},
{
internalType: "bool";
name: "isPreHook";
type: "bool";
},
{
internalType: "bool";
name: "isPostHook";
type: "bool";
},
];
internalType: "struct ManifestExecutionHook[]";
name: "executionHooks";
type: "tuple[]";
},
{
internalType: "bytes4[]";
name: "interfaceIds";
type: "bytes4[]";
},
];
internalType: "struct ExecutionManifest";
name: "manifest";
type: "tuple";
},
{
internalType: "bytes";
name: "moduleUninstallData";
type: "bytes";
},
];
name: "uninstallExecution";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "ModuleEntity";
name: "validationFunction";
type: "bytes24";
},
{
internalType: "bytes";
name: "uninstallData";
type: "bytes";
},
{
internalType: "bytes[]";
name: "hookUninstallData";
type: "bytes[]";
},
];
name: "uninstallValidation";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "fallbackSigner";
type: "address";
},
{
internalType: "bool";
name: "isDisabled";
type: "bool";
},
];
name: "updateFallbackSignerData";
outputs: readonly [];
stateMutability: "nonpayable";
type: "function";
},
{
inputs: readonly [
{
internalType: "address";
name: "newImplementation";
type: "address";
},
{
internalType: "bytes";
name: "data";
type: "bytes";
},
];
name: "upgradeToAndCall";
outputs: readonly [];
stateMutability: "payable";
type: "function";
},
{
inputs: readonly [
{
components: readonly [
{
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: "bytes32";
name: "accountGasLimits";
type: "bytes32";
},
{
internalType: "uint256";
name: "preVerificationGas";
type: "uint256";
},
{
internalType: "bytes32";
name: "gasFees";
type: "bytes32";
},
{
internalType: "bytes";
name: "paymasterAndData";
type: "bytes";
},
{
internalType: "bytes";
name: "signature";
type: "bytes";
},
];
internalType: "struct PackedUserOperation";
name: "userOp";
type: "tuple";
},
{
internalType: "bytes32";
name: "userOpHash";
type: "bytes32";
},
{
internalType: "uint256";
name: "missingAccountFunds";
type: "uint256";
},
];
name: "validateUserOp";
outputs: readonly [
{
internalType: "uint256";
name: "validationData";
type: "uint256";
},
];
stateMutability: "nonpayable";
type: "function";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "module";
type: "address";
},
{
components: readonly [
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "bool";
name: "skipRuntimeValidation";
type: "bool";
},
{
internalType: "bool";
name: "allowGlobalValidation";
type: "bool";
},
];
internalType: "struct ManifestExecutionFunction[]";
name: "executionFunctions";
type: "tuple[]";
},
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "uint32";
name: "entityId";
type: "uint32";
},
{
internalType: "bool";
name: "isPreHook";
type: "bool";
},
{
internalType: "bool";
name: "isPostHook";
type: "bool";
},
];
internalType: "struct ManifestExecutionHook[]";
name: "executionHooks";
type: "tuple[]";
},
{
internalType: "bytes4[]";
name: "interfaceIds";
type: "bytes4[]";
},
];
indexed: false;
internalType: "struct ExecutionManifest";
name: "manifest";
type: "tuple";
},
];
name: "ExecutionInstalled";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "module";
type: "address";
},
{
indexed: false;
internalType: "bool";
name: "onUninstallSucceeded";
type: "bool";
},
{
components: readonly [
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "bool";
name: "skipRuntimeValidation";
type: "bool";
},
{
internalType: "bool";
name: "allowGlobalValidation";
type: "bool";
},
];
internalType: "struct ManifestExecutionFunction[]";
name: "executionFunctions";
type: "tuple[]";
},
{
components: readonly [
{
internalType: "bytes4";
name: "executionSelector";
type: "bytes4";
},
{
internalType: "uint32";
name: "entityId";
type: "uint32";
},
{
internalType: "bool";
name: "isPreHook";
type: "bool";
},
{
internalType: "bool";
name: "isPostHook";
type: "bool";
},
];
internalType: "struct ManifestExecutionHook[]";
name: "executionHooks";
type: "tuple[]";
},
{
internalType: "bytes4[]";
name: "interfaceIds";
type: "bytes4[]";
},
];
indexed: false;
internalType: "struct ExecutionManifest";
name: "manifest";
type: "tuple";
},
];
name: "ExecutionUninstalled";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "newFallbackSigner";
type: "address";
},
{
indexed: false;
internalType: "bool";
name: "isDisabled";
type: "bool";
},
];
name: "FallbackSignerUpdated";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: false;
internalType: "uint64";
name: "version";
type: "uint64";
},
];
name: "Initialized";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "implementation";
type: "address";
},
];
name: "Upgraded";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "module";
type: "address";
},
{
indexed: true;
internalType: "uint32";
name: "entityId";
type: "uint32";
},
];
name: "ValidationInstalled";
type: "event";
},
{
anonymous: false;
inputs: readonly [
{
indexed: true;
internalType: "address";
name: "module";
type: "address";
},
{
indexed: true;
internalType: "uint32";
name: "entityId";
type: "uint32";
},
{
indexed: false;
internalType: "bool";
name: "onUninstallSucceeded";
type: "bool";
},
];
name: "ValidationUninstalled";
type: "event";
},
{
inputs: readonly [];
name: "ArrayLengthMismatch";
type: "error";
},
{
inputs: readonly [];
name: "CreateFailed";
type: "error";
},
{
inputs: readonly [];
name: "DeferredActionSignatureInvalid";
type: "error";
},
{
inputs: readonly [];
name: "DeferredValidationHasValidationHooks";
type: "error";
},
{
inputs: readonly [
{
internalType: "HookConfig";
name: "hookConfig";
type: "bytes25";
},
];
name: "ExecutionHookAlreadySet";
type: "error";
},
{
inputs: readonly [];
name: "FallbackSignerDisabled";
type: "error";
},
{
inputs: readonly [];
name: "FallbackSignerMismatch";
type: "error";
},
{
inputs: readonly [];
name: "FallbackValidationInstallationNotAllowed";
type: "error";
},
{
inputs: readonly [
{
internalType: "address";
name: "module";
type: "address";
},
];
name: "InterfaceNotSupported";
type: "error";
},
{
inputs: readonly [];
name: "InvalidInitialization";
type: "error";
},
{
inputs: readonly [];
name: "InvalidSignatureType";
type: "error";
},
{
inputs: readonly [
{
internalType: "address";
name: "module";
type: "address";
},
{
internalType: "bytes";
name: "revertReason";
type: "bytes";
},
];
name: "ModuleInstallCallbackFailed";
type: "error";
},
{
inputs: readonly [];
name: "NonCanonicalEncoding";
type: "error";
},
{
inputs: readonly [];
name: "NotEntryPoint";
type: "error";
},
{
inputs: readonly [];
name: "PreValidationHookDuplicate";
type: "error";
},
{
inputs: readonly [];
name: "RequireUserOperationContext";
type: "error";
},
{
inputs: readonly [];
name: "SegmentOutOfOrder";
type: "error";
},
{
inputs: readonly [];
name: "SelfCallRecursionDepthExceeded";
type: "error";
},
{
inputs: readonly [
{
internalType: "ModuleEntity";
name: "validationFunction";
type: "bytes24";
},
];
name: "SignatureValidationInvalid";
type: "error";
},
{
inputs: readonly [];
name: "UnauthorizedCallContext";
type: "error";
},
{
inputs: readonly [
{
internalType: "ModuleEntity";
name: "validationFunction";
type: "bytes24";
},
{
internalType: "address";
name: "aggregator";
type: "address";
},
];
name: "UnexpectedAggregator";
type: "error";
},
{
inputs: readonly [
{
internalType: "bytes4";
name: "selector";
type: "bytes4";
},
];
name: "UnrecognizedFunction";
type: "error";
},
{
inputs: readonly [];
name: "UpgradeFailed";
type: "error";
},
{
inputs: readonly [
{
internalType: "ModuleEntity";
name: "validationFunction";
type: "bytes24";
},
];
name: "UserOpValidationInvalid";
type: "error";
},
{
inputs: readonly [
{
internalType: "bytes4";
name: "selector";
type: "bytes4";
},
{
internalType: "ModuleEntity";
name: "validationFunction";
type: "bytes24";
},
];
name: "ValidationAlreadySet";
type: "error";
},
{
inputs: readonly [];
name: "ValidationAssocHookLimitExceeded";
type: "error";
},
{
inputs: readonly [];
name: "ValidationEntityIdInUse";
type: "error";
},
{
inputs: readonly [
{
internalType: "bytes4";
name: "selector";
type: "bytes4";
},
];
name: "ValidationFunctionMissing";
type: "error";
},
{
inputs: readonly [];
name: "ValidationSignatureSegmentMissing";
type: "error";
},
];Defined in: account-kit/smart-contracts/src/ma-v2/abis/semiModularAccountBytecodeAbi.ts:1