import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "./common"; export type ConditionFlatStruct = { parent: BigNumberish; paramType: BigNumberish; operator: BigNumberish; compValue: BytesLike; }; export type ConditionFlatStructOutput = [ parent: bigint, paramType: bigint, operator: bigint, compValue: string ] & { parent: bigint; paramType: bigint; operator: bigint; compValue: string; }; export interface RolesV2Interface extends Interface { getFunction(nameOrSignature: "allowFunction" | "allowTarget" | "allowances" | "assignRoles" | "avatar" | "consumed" | "defaultRoles" | "disableModule" | "enableModule" | "execTransactionFromModule" | "execTransactionFromModuleReturnData" | "execTransactionWithRole" | "execTransactionWithRoleReturnData" | "getModulesPaginated" | "invalidate" | "isModuleEnabled" | "moduleTxHash" | "owner" | "renounceOwnership" | "revokeFunction" | "revokeTarget" | "scopeFunction" | "scopeTarget" | "setAllowance" | "setAvatar" | "setDefaultRole" | "setTarget" | "setTransactionUnwrapper" | "setUp" | "target" | "transferOwnership" | "unwrappers"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "AllowFunction" | "AllowTarget" | "AssignRoles" | "AvatarSet" | "ConsumeAllowance" | "DisabledModule" | "EnabledModule" | "ExecutionFromModuleFailure" | "ExecutionFromModuleSuccess" | "HashExecuted" | "HashInvalidated" | "Initialized" | "OwnershipTransferred" | "RevokeFunction" | "RevokeTarget" | "RolesModSetup" | "ScopeFunction" | "ScopeTarget" | "SetAllowance" | "SetDefaultRole" | "SetUnwrapAdapter" | "TargetSet"): EventFragment; encodeFunctionData(functionFragment: "allowFunction", values: [BytesLike, AddressLike, BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "allowTarget", values: [BytesLike, AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "allowances", values: [BytesLike]): string; encodeFunctionData(functionFragment: "assignRoles", values: [AddressLike, BytesLike[], boolean[]]): string; encodeFunctionData(functionFragment: "avatar", values?: undefined): string; encodeFunctionData(functionFragment: "consumed", values: [AddressLike, BytesLike]): string; encodeFunctionData(functionFragment: "defaultRoles", values: [AddressLike]): string; encodeFunctionData(functionFragment: "disableModule", values: [AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "enableModule", values: [AddressLike]): string; encodeFunctionData(functionFragment: "execTransactionFromModule", values: [AddressLike, BigNumberish, BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "execTransactionFromModuleReturnData", values: [AddressLike, BigNumberish, BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "execTransactionWithRole", values: [ AddressLike, BigNumberish, BytesLike, BigNumberish, BytesLike, boolean ]): string; encodeFunctionData(functionFragment: "execTransactionWithRoleReturnData", values: [ AddressLike, BigNumberish, BytesLike, BigNumberish, BytesLike, boolean ]): string; encodeFunctionData(functionFragment: "getModulesPaginated", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "invalidate", values: [BytesLike]): string; encodeFunctionData(functionFragment: "isModuleEnabled", values: [AddressLike]): string; encodeFunctionData(functionFragment: "moduleTxHash", values: [BytesLike, BytesLike]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "revokeFunction", values: [BytesLike, AddressLike, BytesLike]): string; encodeFunctionData(functionFragment: "revokeTarget", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "scopeFunction", values: [ BytesLike, AddressLike, BytesLike, ConditionFlatStruct[], BigNumberish ]): string; encodeFunctionData(functionFragment: "scopeTarget", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "setAllowance", values: [ BytesLike, BigNumberish, BigNumberish, BigNumberish, BigNumberish, BigNumberish ]): string; encodeFunctionData(functionFragment: "setAvatar", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setDefaultRole", values: [AddressLike, BytesLike]): string; encodeFunctionData(functionFragment: "setTarget", values: [AddressLike]): string; encodeFunctionData(functionFragment: "setTransactionUnwrapper", values: [AddressLike, BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "setUp", values: [BytesLike]): string; encodeFunctionData(functionFragment: "target", values?: undefined): string; encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; encodeFunctionData(functionFragment: "unwrappers", values: [BytesLike]): string; decodeFunctionResult(functionFragment: "allowFunction", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowTarget", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowances", data: BytesLike): Result; decodeFunctionResult(functionFragment: "assignRoles", data: BytesLike): Result; decodeFunctionResult(functionFragment: "avatar", data: BytesLike): Result; decodeFunctionResult(functionFragment: "consumed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "defaultRoles", data: BytesLike): Result; decodeFunctionResult(functionFragment: "disableModule", data: BytesLike): Result; decodeFunctionResult(functionFragment: "enableModule", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execTransactionFromModule", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execTransactionFromModuleReturnData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execTransactionWithRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execTransactionWithRoleReturnData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getModulesPaginated", data: BytesLike): Result; decodeFunctionResult(functionFragment: "invalidate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isModuleEnabled", data: BytesLike): Result; decodeFunctionResult(functionFragment: "moduleTxHash", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeFunction", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeTarget", data: BytesLike): Result; decodeFunctionResult(functionFragment: "scopeFunction", data: BytesLike): Result; decodeFunctionResult(functionFragment: "scopeTarget", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAllowance", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAvatar", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setDefaultRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setTarget", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setTransactionUnwrapper", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setUp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "target", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "unwrappers", data: BytesLike): Result; } export declare namespace AllowFunctionEvent { type InputTuple = [ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike, options: BigNumberish ]; type OutputTuple = [ roleKey: string, targetAddress: string, selector: string, options: bigint ]; interface OutputObject { roleKey: string; targetAddress: string; selector: string; options: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace AllowTargetEvent { type InputTuple = [ roleKey: BytesLike, targetAddress: AddressLike, options: BigNumberish ]; type OutputTuple = [ roleKey: string, targetAddress: string, options: bigint ]; interface OutputObject { roleKey: string; targetAddress: string; options: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace AssignRolesEvent { type InputTuple = [ module: AddressLike, roleKeys: BytesLike[], memberOf: boolean[] ]; type OutputTuple = [ module: string, roleKeys: string[], memberOf: boolean[] ]; interface OutputObject { module: string; roleKeys: string[]; memberOf: boolean[]; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace AvatarSetEvent { type InputTuple = [ previousAvatar: AddressLike, newAvatar: AddressLike ]; type OutputTuple = [previousAvatar: string, newAvatar: string]; interface OutputObject { previousAvatar: string; newAvatar: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ConsumeAllowanceEvent { type InputTuple = [ allowanceKey: BytesLike, consumed: BigNumberish, newBalance: BigNumberish ]; type OutputTuple = [ allowanceKey: string, consumed: bigint, newBalance: bigint ]; interface OutputObject { allowanceKey: string; consumed: bigint; newBalance: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace DisabledModuleEvent { type InputTuple = [module: AddressLike]; type OutputTuple = [module: string]; interface OutputObject { module: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace EnabledModuleEvent { type InputTuple = [module: AddressLike]; type OutputTuple = [module: string]; interface OutputObject { module: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ExecutionFromModuleFailureEvent { type InputTuple = [module: AddressLike]; type OutputTuple = [module: string]; interface OutputObject { module: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ExecutionFromModuleSuccessEvent { type InputTuple = [module: AddressLike]; type OutputTuple = [module: string]; interface OutputObject { module: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace HashExecutedEvent { type InputTuple = [arg0: BytesLike]; type OutputTuple = [arg0: string]; interface OutputObject { arg0: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace HashInvalidatedEvent { type InputTuple = [arg0: BytesLike]; type OutputTuple = [arg0: string]; interface OutputObject { arg0: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace InitializedEvent { type InputTuple = [version: BigNumberish]; type OutputTuple = [version: bigint]; interface OutputObject { version: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace OwnershipTransferredEvent { type InputTuple = [previousOwner: AddressLike, newOwner: AddressLike]; type OutputTuple = [previousOwner: string, newOwner: string]; interface OutputObject { previousOwner: string; newOwner: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RevokeFunctionEvent { type InputTuple = [ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike ]; type OutputTuple = [ roleKey: string, targetAddress: string, selector: string ]; interface OutputObject { roleKey: string; targetAddress: string; selector: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RevokeTargetEvent { type InputTuple = [roleKey: BytesLike, targetAddress: AddressLike]; type OutputTuple = [roleKey: string, targetAddress: string]; interface OutputObject { roleKey: string; targetAddress: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RolesModSetupEvent { type InputTuple = [ initiator: AddressLike, owner: AddressLike, avatar: AddressLike, target: AddressLike ]; type OutputTuple = [ initiator: string, owner: string, avatar: string, target: string ]; interface OutputObject { initiator: string; owner: string; avatar: string; target: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ScopeFunctionEvent { type InputTuple = [ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike, conditions: ConditionFlatStruct[], options: BigNumberish ]; type OutputTuple = [ roleKey: string, targetAddress: string, selector: string, conditions: ConditionFlatStructOutput[], options: bigint ]; interface OutputObject { roleKey: string; targetAddress: string; selector: string; conditions: ConditionFlatStructOutput[]; options: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace ScopeTargetEvent { type InputTuple = [roleKey: BytesLike, targetAddress: AddressLike]; type OutputTuple = [roleKey: string, targetAddress: string]; interface OutputObject { roleKey: string; targetAddress: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace SetAllowanceEvent { type InputTuple = [ allowanceKey: BytesLike, balance: BigNumberish, maxRefill: BigNumberish, refill: BigNumberish, period: BigNumberish, timestamp: BigNumberish ]; type OutputTuple = [ allowanceKey: string, balance: bigint, maxRefill: bigint, refill: bigint, period: bigint, timestamp: bigint ]; interface OutputObject { allowanceKey: string; balance: bigint; maxRefill: bigint; refill: bigint; period: bigint; timestamp: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace SetDefaultRoleEvent { type InputTuple = [module: AddressLike, defaultRoleKey: BytesLike]; type OutputTuple = [module: string, defaultRoleKey: string]; interface OutputObject { module: string; defaultRoleKey: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace SetUnwrapAdapterEvent { type InputTuple = [ to: AddressLike, selector: BytesLike, adapter: AddressLike ]; type OutputTuple = [to: string, selector: string, adapter: string]; interface OutputObject { to: string; selector: string; adapter: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace TargetSetEvent { type InputTuple = [ previousTarget: AddressLike, newTarget: AddressLike ]; type OutputTuple = [previousTarget: string, newTarget: string]; interface OutputObject { previousTarget: string; newTarget: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface RolesV2 extends BaseContract { connect(runner?: ContractRunner | null): RolesV2; waitForDeployment(): Promise; interface: RolesV2Interface; queryFilter(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; queryFilter(filter: TypedDeferredTopicFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>>; on(event: TCEvent, listener: TypedListener): Promise; on(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; once(event: TCEvent, listener: TypedListener): Promise; once(filter: TypedDeferredTopicFilter, listener: TypedListener): Promise; listeners(event: TCEvent): Promise>>; listeners(eventName?: string): Promise>; removeAllListeners(event?: TCEvent): Promise; allowFunction: TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike, options: BigNumberish ], [ void ], "nonpayable">; allowTarget: TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, options: BigNumberish ], [ void ], "nonpayable">; allowances: TypedContractMethod<[ arg0: BytesLike ], [ [ bigint, bigint, bigint, bigint, bigint ] & { refill: bigint; maxRefill: bigint; period: bigint; balance: bigint; timestamp: bigint; } ], "view">; assignRoles: TypedContractMethod<[ module: AddressLike, roleKeys: BytesLike[], memberOf: boolean[] ], [ void ], "nonpayable">; avatar: TypedContractMethod<[], [string], "view">; consumed: TypedContractMethod<[ arg0: AddressLike, arg1: BytesLike ], [ boolean ], "view">; defaultRoles: TypedContractMethod<[arg0: AddressLike], [string], "view">; disableModule: TypedContractMethod<[ prevModule: AddressLike, module: AddressLike ], [ void ], "nonpayable">; enableModule: TypedContractMethod<[ module: AddressLike ], [ void ], "nonpayable">; execTransactionFromModule: TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish ], [ boolean ], "nonpayable">; execTransactionFromModuleReturnData: TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish ], [ [boolean, string] & { success: boolean; returnData: string; } ], "nonpayable">; execTransactionWithRole: TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish, roleKey: BytesLike, shouldRevert: boolean ], [ boolean ], "nonpayable">; execTransactionWithRoleReturnData: TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish, roleKey: BytesLike, shouldRevert: boolean ], [ [boolean, string] & { success: boolean; returnData: string; } ], "nonpayable">; getModulesPaginated: TypedContractMethod<[ start: AddressLike, pageSize: BigNumberish ], [ [string[], string] & { array: string[]; next: string; } ], "view">; invalidate: TypedContractMethod<[hash: BytesLike], [void], "nonpayable">; isModuleEnabled: TypedContractMethod<[ _module: AddressLike ], [ boolean ], "view">; moduleTxHash: TypedContractMethod<[ data: BytesLike, salt: BytesLike ], [ string ], "view">; owner: TypedContractMethod<[], [string], "view">; renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; revokeFunction: TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike ], [ void ], "nonpayable">; revokeTarget: TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike ], [ void ], "nonpayable">; scopeFunction: TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike, conditions: ConditionFlatStruct[], options: BigNumberish ], [ void ], "nonpayable">; scopeTarget: TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike ], [ void ], "nonpayable">; setAllowance: TypedContractMethod<[ key: BytesLike, balance: BigNumberish, maxRefill: BigNumberish, refill: BigNumberish, period: BigNumberish, timestamp: BigNumberish ], [ void ], "nonpayable">; setAvatar: TypedContractMethod<[_avatar: AddressLike], [void], "nonpayable">; setDefaultRole: TypedContractMethod<[ module: AddressLike, roleKey: BytesLike ], [ void ], "nonpayable">; setTarget: TypedContractMethod<[_target: AddressLike], [void], "nonpayable">; setTransactionUnwrapper: TypedContractMethod<[ to: AddressLike, selector: BytesLike, adapter: AddressLike ], [ void ], "nonpayable">; setUp: TypedContractMethod<[initParams: BytesLike], [void], "nonpayable">; transferOwnership: TypedContractMethod<[ newOwner: AddressLike ], [ void ], "nonpayable">; unwrappers: TypedContractMethod<[arg0: BytesLike], [string], "view">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "allowFunction"): TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike, options: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "allowTarget"): TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, options: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "allowances"): TypedContractMethod<[ arg0: BytesLike ], [ [ bigint, bigint, bigint, bigint, bigint ] & { refill: bigint; maxRefill: bigint; period: bigint; balance: bigint; timestamp: bigint; } ], "view">; getFunction(nameOrSignature: "assignRoles"): TypedContractMethod<[ module: AddressLike, roleKeys: BytesLike[], memberOf: boolean[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "avatar"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "consumed"): TypedContractMethod<[ arg0: AddressLike, arg1: BytesLike ], [ boolean ], "view">; getFunction(nameOrSignature: "defaultRoles"): TypedContractMethod<[arg0: AddressLike], [string], "view">; getFunction(nameOrSignature: "disableModule"): TypedContractMethod<[ prevModule: AddressLike, module: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "enableModule"): TypedContractMethod<[module: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "execTransactionFromModule"): TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "execTransactionFromModuleReturnData"): TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish ], [ [boolean, string] & { success: boolean; returnData: string; } ], "nonpayable">; getFunction(nameOrSignature: "execTransactionWithRole"): TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish, roleKey: BytesLike, shouldRevert: boolean ], [ boolean ], "nonpayable">; getFunction(nameOrSignature: "execTransactionWithRoleReturnData"): TypedContractMethod<[ to: AddressLike, value: BigNumberish, data: BytesLike, operation: BigNumberish, roleKey: BytesLike, shouldRevert: boolean ], [ [boolean, string] & { success: boolean; returnData: string; } ], "nonpayable">; getFunction(nameOrSignature: "getModulesPaginated"): TypedContractMethod<[ start: AddressLike, pageSize: BigNumberish ], [ [string[], string] & { array: string[]; next: string; } ], "view">; getFunction(nameOrSignature: "invalidate"): TypedContractMethod<[hash: BytesLike], [void], "nonpayable">; getFunction(nameOrSignature: "isModuleEnabled"): TypedContractMethod<[_module: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "moduleTxHash"): TypedContractMethod<[data: BytesLike, salt: BytesLike], [string], "view">; getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "revokeFunction"): TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "revokeTarget"): TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "scopeFunction"): TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike, selector: BytesLike, conditions: ConditionFlatStruct[], options: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "scopeTarget"): TypedContractMethod<[ roleKey: BytesLike, targetAddress: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setAllowance"): TypedContractMethod<[ key: BytesLike, balance: BigNumberish, maxRefill: BigNumberish, refill: BigNumberish, period: BigNumberish, timestamp: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setAvatar"): TypedContractMethod<[_avatar: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "setDefaultRole"): TypedContractMethod<[ module: AddressLike, roleKey: BytesLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setTarget"): TypedContractMethod<[_target: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "setTransactionUnwrapper"): TypedContractMethod<[ to: AddressLike, selector: BytesLike, adapter: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setUp"): TypedContractMethod<[initParams: BytesLike], [void], "nonpayable">; getFunction(nameOrSignature: "target"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "unwrappers"): TypedContractMethod<[arg0: BytesLike], [string], "view">; getEvent(key: "AllowFunction"): TypedContractEvent; getEvent(key: "AllowTarget"): TypedContractEvent; getEvent(key: "AssignRoles"): TypedContractEvent; getEvent(key: "AvatarSet"): TypedContractEvent; getEvent(key: "ConsumeAllowance"): TypedContractEvent; getEvent(key: "DisabledModule"): TypedContractEvent; getEvent(key: "EnabledModule"): TypedContractEvent; getEvent(key: "ExecutionFromModuleFailure"): TypedContractEvent; getEvent(key: "ExecutionFromModuleSuccess"): TypedContractEvent; getEvent(key: "HashExecuted"): TypedContractEvent; getEvent(key: "HashInvalidated"): TypedContractEvent; getEvent(key: "Initialized"): TypedContractEvent; getEvent(key: "OwnershipTransferred"): TypedContractEvent; getEvent(key: "RevokeFunction"): TypedContractEvent; getEvent(key: "RevokeTarget"): TypedContractEvent; getEvent(key: "RolesModSetup"): TypedContractEvent; getEvent(key: "ScopeFunction"): TypedContractEvent; getEvent(key: "ScopeTarget"): TypedContractEvent; getEvent(key: "SetAllowance"): TypedContractEvent; getEvent(key: "SetDefaultRole"): TypedContractEvent; getEvent(key: "SetUnwrapAdapter"): TypedContractEvent; getEvent(key: "TargetSet"): TypedContractEvent; filters: { "AllowFunction(bytes32,address,bytes4,uint8)": TypedContractEvent; AllowFunction: TypedContractEvent; "AllowTarget(bytes32,address,uint8)": TypedContractEvent; AllowTarget: TypedContractEvent; "AssignRoles(address,bytes32[],bool[])": TypedContractEvent; AssignRoles: TypedContractEvent; "AvatarSet(address,address)": TypedContractEvent; AvatarSet: TypedContractEvent; "ConsumeAllowance(bytes32,uint128,uint128)": TypedContractEvent; ConsumeAllowance: TypedContractEvent; "DisabledModule(address)": TypedContractEvent; DisabledModule: TypedContractEvent; "EnabledModule(address)": TypedContractEvent; EnabledModule: TypedContractEvent; "ExecutionFromModuleFailure(address)": TypedContractEvent; ExecutionFromModuleFailure: TypedContractEvent; "ExecutionFromModuleSuccess(address)": TypedContractEvent; ExecutionFromModuleSuccess: TypedContractEvent; "HashExecuted(bytes32)": TypedContractEvent; HashExecuted: TypedContractEvent; "HashInvalidated(bytes32)": TypedContractEvent; HashInvalidated: TypedContractEvent; "Initialized(uint64)": TypedContractEvent; Initialized: TypedContractEvent; "OwnershipTransferred(address,address)": TypedContractEvent; OwnershipTransferred: TypedContractEvent; "RevokeFunction(bytes32,address,bytes4)": TypedContractEvent; RevokeFunction: TypedContractEvent; "RevokeTarget(bytes32,address)": TypedContractEvent; RevokeTarget: TypedContractEvent; "RolesModSetup(address,address,address,address)": TypedContractEvent; RolesModSetup: TypedContractEvent; "ScopeFunction(bytes32,address,bytes4,tuple[],uint8)": TypedContractEvent; ScopeFunction: TypedContractEvent; "ScopeTarget(bytes32,address)": TypedContractEvent; ScopeTarget: TypedContractEvent; "SetAllowance(bytes32,uint128,uint128,uint128,uint64,uint64)": TypedContractEvent; SetAllowance: TypedContractEvent; "SetDefaultRole(address,bytes32)": TypedContractEvent; SetDefaultRole: TypedContractEvent; "SetUnwrapAdapter(address,bytes4,address)": TypedContractEvent; SetUnwrapAdapter: TypedContractEvent; "TargetSet(address,address)": TypedContractEvent; TargetSet: TypedContractEvent; }; }