export declare const IPluginAbi: readonly [{ readonly type: "function"; readonly name: "onInstall"; readonly inputs: readonly [{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "onUninstall"; readonly inputs: readonly [{ readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "pluginManifest"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "tuple"; readonly internalType: "struct PluginManifest"; readonly components: readonly [{ readonly name: "interfaceIds"; readonly type: "bytes4[]"; readonly internalType: "bytes4[]"; }, { readonly name: "dependencyInterfaceIds"; readonly type: "bytes4[]"; readonly internalType: "bytes4[]"; }, { readonly name: "executionFunctions"; readonly type: "bytes4[]"; readonly internalType: "bytes4[]"; }, { readonly name: "permittedExecutionSelectors"; readonly type: "bytes4[]"; readonly internalType: "bytes4[]"; }, { readonly name: "permitAnyExternalAddress"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "canSpendNativeToken"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "permittedExternalCalls"; readonly type: "tuple[]"; readonly internalType: "struct ManifestExternalCallPermission[]"; readonly components: readonly [{ readonly name: "externalAddress"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "permitAnySelector"; readonly type: "bool"; readonly internalType: "bool"; }, { readonly name: "selectors"; readonly type: "bytes4[]"; readonly internalType: "bytes4[]"; }]; }, { readonly name: "userOpValidationFunctions"; readonly type: "tuple[]"; readonly internalType: "struct ManifestAssociatedFunction[]"; readonly components: readonly [{ readonly name: "executionSelector"; readonly type: "bytes4"; readonly internalType: "bytes4"; }, { readonly name: "associatedFunction"; readonly type: "tuple"; readonly internalType: "struct ManifestFunction"; readonly components: readonly [{ readonly name: "functionType"; readonly type: "uint8"; readonly internalType: "enum ManifestAssociatedFunctionType"; }, { readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "dependencyIndex"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }]; }, { readonly name: "runtimeValidationFunctions"; readonly type: "tuple[]"; readonly internalType: "struct ManifestAssociatedFunction[]"; readonly components: readonly [{ readonly name: "executionSelector"; readonly type: "bytes4"; readonly internalType: "bytes4"; }, { readonly name: "associatedFunction"; readonly type: "tuple"; readonly internalType: "struct ManifestFunction"; readonly components: readonly [{ readonly name: "functionType"; readonly type: "uint8"; readonly internalType: "enum ManifestAssociatedFunctionType"; }, { readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "dependencyIndex"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }]; }, { readonly name: "preUserOpValidationHooks"; readonly type: "tuple[]"; readonly internalType: "struct ManifestAssociatedFunction[]"; readonly components: readonly [{ readonly name: "executionSelector"; readonly type: "bytes4"; readonly internalType: "bytes4"; }, { readonly name: "associatedFunction"; readonly type: "tuple"; readonly internalType: "struct ManifestFunction"; readonly components: readonly [{ readonly name: "functionType"; readonly type: "uint8"; readonly internalType: "enum ManifestAssociatedFunctionType"; }, { readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "dependencyIndex"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }]; }, { readonly name: "preRuntimeValidationHooks"; readonly type: "tuple[]"; readonly internalType: "struct ManifestAssociatedFunction[]"; readonly components: readonly [{ readonly name: "executionSelector"; readonly type: "bytes4"; readonly internalType: "bytes4"; }, { readonly name: "associatedFunction"; readonly type: "tuple"; readonly internalType: "struct ManifestFunction"; readonly components: readonly [{ readonly name: "functionType"; readonly type: "uint8"; readonly internalType: "enum ManifestAssociatedFunctionType"; }, { readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "dependencyIndex"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }]; }, { readonly name: "executionHooks"; readonly type: "tuple[]"; readonly internalType: "struct ManifestExecutionHook[]"; readonly components: readonly [{ readonly name: "executionSelector"; readonly type: "bytes4"; readonly internalType: "bytes4"; }, { readonly name: "preExecHook"; readonly type: "tuple"; readonly internalType: "struct ManifestFunction"; readonly components: readonly [{ readonly name: "functionType"; readonly type: "uint8"; readonly internalType: "enum ManifestAssociatedFunctionType"; }, { readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "dependencyIndex"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }, { readonly name: "postExecHook"; readonly type: "tuple"; readonly internalType: "struct ManifestFunction"; readonly components: readonly [{ readonly name: "functionType"; readonly type: "uint8"; readonly internalType: "enum ManifestAssociatedFunctionType"; }, { readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "dependencyIndex"; readonly type: "uint256"; readonly internalType: "uint256"; }]; }]; }]; }]; readonly stateMutability: "pure"; }, { readonly type: "function"; readonly name: "pluginMetadata"; readonly inputs: readonly []; readonly outputs: readonly [{ readonly name: ""; readonly type: "tuple"; readonly internalType: "struct PluginMetadata"; readonly components: readonly [{ readonly name: "name"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "version"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "author"; readonly type: "string"; readonly internalType: "string"; }, { readonly name: "permissionDescriptors"; readonly type: "tuple[]"; readonly internalType: "struct SelectorPermission[]"; readonly components: readonly [{ readonly name: "functionSelector"; readonly type: "bytes4"; readonly internalType: "bytes4"; }, { readonly name: "permissionDescription"; readonly type: "string"; readonly internalType: "string"; }]; }]; }]; readonly stateMutability: "pure"; }, { readonly type: "function"; readonly name: "postExecutionHook"; readonly inputs: readonly [{ readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "preExecHookData"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "preExecutionHook"; readonly inputs: readonly [{ readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "sender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "value"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "preRuntimeValidationHook"; readonly inputs: readonly [{ readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "sender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "value"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "preUserOpValidationHook"; readonly inputs: readonly [{ readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "userOp"; readonly type: "tuple"; readonly internalType: "struct UserOperation"; readonly components: readonly [{ readonly name: "sender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "nonce"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "initCode"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "callData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "callGasLimit"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "verificationGasLimit"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "preVerificationGas"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "maxFeePerGas"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "maxPriorityFeePerGas"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "paymasterAndData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "signature"; readonly type: "bytes"; readonly internalType: "bytes"; }]; }, { readonly name: "userOpHash"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "runtimeValidationFunction"; readonly inputs: readonly [{ readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "sender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "value"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "data"; readonly type: "bytes"; readonly internalType: "bytes"; }]; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly name: "userOpValidationFunction"; readonly inputs: readonly [{ readonly name: "functionId"; readonly type: "uint8"; readonly internalType: "uint8"; }, { readonly name: "userOp"; readonly type: "tuple"; readonly internalType: "struct UserOperation"; readonly components: readonly [{ readonly name: "sender"; readonly type: "address"; readonly internalType: "address"; }, { readonly name: "nonce"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "initCode"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "callData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "callGasLimit"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "verificationGasLimit"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "preVerificationGas"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "maxFeePerGas"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "maxPriorityFeePerGas"; readonly type: "uint256"; readonly internalType: "uint256"; }, { readonly name: "paymasterAndData"; readonly type: "bytes"; readonly internalType: "bytes"; }, { readonly name: "signature"; readonly type: "bytes"; readonly internalType: "bytes"; }]; }, { readonly name: "userOpHash"; readonly type: "bytes32"; readonly internalType: "bytes32"; }]; readonly outputs: readonly [{ readonly name: ""; readonly type: "uint256"; readonly internalType: "uint256"; }]; readonly stateMutability: "nonpayable"; }]; //# sourceMappingURL=IPlugin.d.ts.map