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 declare namespace IForwarder { type ForwardRequestStruct = { from: AddressLike; nonce: BigNumberish; tokenId: BigNumberish; data: BytesLike; }; type ForwardRequestStructOutput = [ from: string, nonce: bigint, tokenId: bigint, data: string ] & { from: string; nonce: bigint; tokenId: bigint; data: string; }; } export interface ENSCustodyInterface extends Interface { getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE" | "MINTER_ROLE" | "NAME" | "VERSION" | "addMinter" | "addMinters" | "batchSafeTransfer" | "closeMinter" | "commit" | "execute" | "getRoleAdmin" | "grantRole" | "hasRole" | "initialize" | "internalTransfer" | "isMinter" | "isTrustedForwarder" | "makeCommitment" | "multicall" | "nonceOf" | "onERC1155BatchReceived" | "onERC1155Received" | "onERC721Received" | "owner" | "ownerOf" | "register" | "removeMinter" | "removeMinters" | "renew" | "renounceMinter" | "renounceOwnership" | "renounceRole" | "rentPrice" | "revokeRole" | "rotateMinter" | "safeTransfer" | "setBaseRegistrar" | "supportsInterface" | "transferOwnership" | "verify" | "withdraw"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "Initialized" | "OwnershipTransferred" | "Parked" | "RoleAdminChanged" | "RoleGranted" | "RoleRevoked" | "Withdrawal"): EventFragment; encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "MINTER_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "NAME", values?: undefined): string; encodeFunctionData(functionFragment: "VERSION", values?: undefined): string; encodeFunctionData(functionFragment: "addMinter", values: [AddressLike]): string; encodeFunctionData(functionFragment: "addMinters", values: [AddressLike[]]): string; encodeFunctionData(functionFragment: "batchSafeTransfer", values: [AddressLike, BigNumberish[]]): string; encodeFunctionData(functionFragment: "closeMinter", values: [AddressLike]): string; encodeFunctionData(functionFragment: "commit", values: [BytesLike]): string; encodeFunctionData(functionFragment: "execute", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; encodeFunctionData(functionFragment: "getRoleAdmin", values: [BytesLike]): string; encodeFunctionData(functionFragment: "grantRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "hasRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "initialize", values: [AddressLike, AddressLike, AddressLike]): string; encodeFunctionData(functionFragment: "internalTransfer", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "isMinter", values: [AddressLike]): string; encodeFunctionData(functionFragment: "isTrustedForwarder", values: [AddressLike]): string; encodeFunctionData(functionFragment: "makeCommitment", values: [ string, AddressLike, BigNumberish, BytesLike, AddressLike, BytesLike[], boolean, BigNumberish, boolean ]): string; encodeFunctionData(functionFragment: "multicall", values: [BytesLike[]]): string; encodeFunctionData(functionFragment: "nonceOf", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "onERC1155BatchReceived", values: [ AddressLike, AddressLike, BigNumberish[], BigNumberish[], BytesLike ]): string; encodeFunctionData(functionFragment: "onERC1155Received", values: [AddressLike, AddressLike, BigNumberish, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "onERC721Received", values: [AddressLike, AddressLike, BigNumberish, BytesLike]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "ownerOf", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "register", values: [ string, AddressLike, BigNumberish, BytesLike, AddressLike, BytesLike[], boolean, BigNumberish, boolean ]): string; encodeFunctionData(functionFragment: "removeMinter", values: [AddressLike]): string; encodeFunctionData(functionFragment: "removeMinters", values: [AddressLike[]]): string; encodeFunctionData(functionFragment: "renew", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "renounceMinter", values?: undefined): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "renounceRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "rentPrice", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "revokeRole", values: [BytesLike, AddressLike]): string; encodeFunctionData(functionFragment: "rotateMinter", values: [AddressLike]): string; encodeFunctionData(functionFragment: "safeTransfer", values: [AddressLike, BigNumberish]): string; encodeFunctionData(functionFragment: "setBaseRegistrar", values: [AddressLike]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "transferOwnership", values: [AddressLike]): string; encodeFunctionData(functionFragment: "verify", values: [IForwarder.ForwardRequestStruct, BytesLike]): string; encodeFunctionData(functionFragment: "withdraw", values: [AddressLike]): string; decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "MINTER_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "NAME", data: BytesLike): Result; decodeFunctionResult(functionFragment: "VERSION", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addMinter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addMinters", data: BytesLike): Result; decodeFunctionResult(functionFragment: "batchSafeTransfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "closeMinter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "commit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "execute", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "internalTransfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isMinter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isTrustedForwarder", data: BytesLike): Result; decodeFunctionResult(functionFragment: "makeCommitment", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; decodeFunctionResult(functionFragment: "nonceOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "onERC1155BatchReceived", data: BytesLike): Result; decodeFunctionResult(functionFragment: "onERC1155Received", data: BytesLike): Result; decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "ownerOf", data: BytesLike): Result; decodeFunctionResult(functionFragment: "register", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeMinter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "removeMinters", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renew", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceMinter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rentPrice", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "rotateMinter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "safeTransfer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setBaseRegistrar", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "verify", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdraw", data: BytesLike): Result; } 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 ParkedEvent { type InputTuple = [tokenId: BigNumberish, owner: AddressLike]; type OutputTuple = [tokenId: bigint, owner: string]; interface OutputObject { tokenId: bigint; owner: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RoleAdminChangedEvent { type InputTuple = [ role: BytesLike, previousAdminRole: BytesLike, newAdminRole: BytesLike ]; type OutputTuple = [ role: string, previousAdminRole: string, newAdminRole: string ]; interface OutputObject { role: string; previousAdminRole: string; newAdminRole: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RoleGrantedEvent { type InputTuple = [ role: BytesLike, account: AddressLike, sender: AddressLike ]; type OutputTuple = [role: string, account: string, sender: string]; interface OutputObject { role: string; account: string; sender: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace RoleRevokedEvent { type InputTuple = [ role: BytesLike, account: AddressLike, sender: AddressLike ]; type OutputTuple = [role: string, account: string, sender: string]; interface OutputObject { role: string; account: string; sender: string; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export declare namespace WithdrawalEvent { type InputTuple = [recepient: AddressLike, value: BigNumberish]; type OutputTuple = [recepient: string, value: bigint]; interface OutputObject { recepient: string; value: bigint; } type Event = TypedContractEvent; type Filter = TypedDeferredTopicFilter; type Log = TypedEventLog; type LogDescription = TypedLogDescription; } export interface ENSCustody extends BaseContract { connect(runner?: ContractRunner | null): ENSCustody; waitForDeployment(): Promise; interface: ENSCustodyInterface; 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; DEFAULT_ADMIN_ROLE: TypedContractMethod<[], [string], "view">; MINTER_ROLE: TypedContractMethod<[], [string], "view">; NAME: TypedContractMethod<[], [string], "view">; VERSION: TypedContractMethod<[], [string], "view">; addMinter: TypedContractMethod<[account: AddressLike], [void], "nonpayable">; addMinters: TypedContractMethod<[ accounts: AddressLike[] ], [ void ], "nonpayable">; batchSafeTransfer: TypedContractMethod<[ to: AddressLike, tokenIds: BigNumberish[] ], [ void ], "nonpayable">; closeMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; commit: TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; execute: TypedContractMethod<[ req: IForwarder.ForwardRequestStruct, signature: BytesLike ], [ string ], "nonpayable">; getRoleAdmin: TypedContractMethod<[role: BytesLike], [string], "view">; grantRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; hasRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ boolean ], "view">; initialize: TypedContractMethod<[ controller: AddressLike, wrapper: AddressLike, registrar: AddressLike ], [ void ], "nonpayable">; internalTransfer: TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; isMinter: TypedContractMethod<[account: AddressLike], [boolean], "view">; isTrustedForwarder: TypedContractMethod<[ forwarder: AddressLike ], [ boolean ], "view">; makeCommitment: TypedContractMethod<[ name: string, owner: AddressLike, duration: BigNumberish, secret: BytesLike, resolver: AddressLike, data: BytesLike[], reverseRecord: boolean, ownerControlledFuses: BigNumberish, selfCustody: boolean ], [ string ], "view">; multicall: TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; nonceOf: TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; onERC1155BatchReceived: TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike, tokenIds: BigNumberish[], arg3: BigNumberish[], data: BytesLike ], [ string ], "nonpayable">; onERC1155Received: TypedContractMethod<[ arg0: AddressLike, from: AddressLike, tokenId: BigNumberish, arg3: BigNumberish, data: BytesLike ], [ string ], "nonpayable">; onERC721Received: TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike, tokenId: BigNumberish, data: BytesLike ], [ string ], "nonpayable">; owner: TypedContractMethod<[], [string], "view">; ownerOf: TypedContractMethod<[tokenId: BigNumberish], [string], "view">; register: TypedContractMethod<[ name: string, owner: AddressLike, duration: BigNumberish, secret: BytesLike, resolver: AddressLike, data: BytesLike[], reverseRecord: boolean, ownerControlledFuses: BigNumberish, selfCustody: boolean ], [ void ], "nonpayable">; removeMinter: TypedContractMethod<[ account: AddressLike ], [ void ], "nonpayable">; removeMinters: TypedContractMethod<[ accounts: AddressLike[] ], [ void ], "nonpayable">; renew: TypedContractMethod<[ name: string, duration: BigNumberish ], [ void ], "nonpayable">; renounceMinter: TypedContractMethod<[], [void], "nonpayable">; renounceOwnership: TypedContractMethod<[], [void], "nonpayable">; renounceRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; rentPrice: TypedContractMethod<[ name: string, duration: BigNumberish ], [ bigint ], "view">; revokeRole: TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; rotateMinter: TypedContractMethod<[receiver: AddressLike], [void], "payable">; safeTransfer: TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; setBaseRegistrar: TypedContractMethod<[ baseRegistrar: AddressLike ], [ void ], "nonpayable">; supportsInterface: TypedContractMethod<[ interfaceId: BytesLike ], [ boolean ], "view">; transferOwnership: TypedContractMethod<[ newOwner: AddressLike ], [ void ], "nonpayable">; verify: TypedContractMethod<[ req: IForwarder.ForwardRequestStruct, signature: BytesLike ], [ boolean ], "view">; withdraw: TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; getFunction(key: string | FunctionFragment): T; getFunction(nameOrSignature: "DEFAULT_ADMIN_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "MINTER_ROLE"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "NAME"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "VERSION"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "addMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "addMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; getFunction(nameOrSignature: "batchSafeTransfer"): TypedContractMethod<[ to: AddressLike, tokenIds: BigNumberish[] ], [ void ], "nonpayable">; getFunction(nameOrSignature: "closeMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; getFunction(nameOrSignature: "commit"): TypedContractMethod<[commitment: BytesLike], [void], "nonpayable">; getFunction(nameOrSignature: "execute"): TypedContractMethod<[ req: IForwarder.ForwardRequestStruct, signature: BytesLike ], [ string ], "nonpayable">; getFunction(nameOrSignature: "getRoleAdmin"): TypedContractMethod<[role: BytesLike], [string], "view">; getFunction(nameOrSignature: "grantRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "hasRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ boolean ], "view">; getFunction(nameOrSignature: "initialize"): TypedContractMethod<[ controller: AddressLike, wrapper: AddressLike, registrar: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "internalTransfer"): TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "isMinter"): TypedContractMethod<[account: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "isTrustedForwarder"): TypedContractMethod<[forwarder: AddressLike], [boolean], "view">; getFunction(nameOrSignature: "makeCommitment"): TypedContractMethod<[ name: string, owner: AddressLike, duration: BigNumberish, secret: BytesLike, resolver: AddressLike, data: BytesLike[], reverseRecord: boolean, ownerControlledFuses: BigNumberish, selfCustody: boolean ], [ string ], "view">; getFunction(nameOrSignature: "multicall"): TypedContractMethod<[data: BytesLike[]], [string[]], "nonpayable">; getFunction(nameOrSignature: "nonceOf"): TypedContractMethod<[tokenId: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "onERC1155BatchReceived"): TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike, tokenIds: BigNumberish[], arg3: BigNumberish[], data: BytesLike ], [ string ], "nonpayable">; getFunction(nameOrSignature: "onERC1155Received"): TypedContractMethod<[ arg0: AddressLike, from: AddressLike, tokenId: BigNumberish, arg3: BigNumberish, data: BytesLike ], [ string ], "nonpayable">; getFunction(nameOrSignature: "onERC721Received"): TypedContractMethod<[ arg0: AddressLike, arg1: AddressLike, tokenId: BigNumberish, data: BytesLike ], [ string ], "nonpayable">; getFunction(nameOrSignature: "owner"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "ownerOf"): TypedContractMethod<[tokenId: BigNumberish], [string], "view">; getFunction(nameOrSignature: "register"): TypedContractMethod<[ name: string, owner: AddressLike, duration: BigNumberish, secret: BytesLike, resolver: AddressLike, data: BytesLike[], reverseRecord: boolean, ownerControlledFuses: BigNumberish, selfCustody: boolean ], [ void ], "nonpayable">; getFunction(nameOrSignature: "removeMinter"): TypedContractMethod<[account: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "removeMinters"): TypedContractMethod<[accounts: AddressLike[]], [void], "nonpayable">; getFunction(nameOrSignature: "renew"): TypedContractMethod<[ name: string, duration: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "renounceMinter"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "renounceOwnership"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "renounceRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "rentPrice"): TypedContractMethod<[ name: string, duration: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "revokeRole"): TypedContractMethod<[ role: BytesLike, account: AddressLike ], [ void ], "nonpayable">; getFunction(nameOrSignature: "rotateMinter"): TypedContractMethod<[receiver: AddressLike], [void], "payable">; getFunction(nameOrSignature: "safeTransfer"): TypedContractMethod<[ to: AddressLike, tokenId: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "setBaseRegistrar"): TypedContractMethod<[baseRegistrar: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "supportsInterface"): TypedContractMethod<[interfaceId: BytesLike], [boolean], "view">; getFunction(nameOrSignature: "transferOwnership"): TypedContractMethod<[newOwner: AddressLike], [void], "nonpayable">; getFunction(nameOrSignature: "verify"): TypedContractMethod<[ req: IForwarder.ForwardRequestStruct, signature: BytesLike ], [ boolean ], "view">; getFunction(nameOrSignature: "withdraw"): TypedContractMethod<[recepient: AddressLike], [void], "nonpayable">; getEvent(key: "Initialized"): TypedContractEvent; getEvent(key: "OwnershipTransferred"): TypedContractEvent; getEvent(key: "Parked"): TypedContractEvent; getEvent(key: "RoleAdminChanged"): TypedContractEvent; getEvent(key: "RoleGranted"): TypedContractEvent; getEvent(key: "RoleRevoked"): TypedContractEvent; getEvent(key: "Withdrawal"): TypedContractEvent; filters: { "Initialized(uint8)": TypedContractEvent; Initialized: TypedContractEvent; "OwnershipTransferred(address,address)": TypedContractEvent; OwnershipTransferred: TypedContractEvent; "Parked(uint256,address)": TypedContractEvent; Parked: TypedContractEvent; "RoleAdminChanged(bytes32,bytes32,bytes32)": TypedContractEvent; RoleAdminChanged: TypedContractEvent; "RoleGranted(bytes32,address,address)": TypedContractEvent; RoleGranted: TypedContractEvent; "RoleRevoked(bytes32,address,address)": TypedContractEvent; RoleRevoked: TypedContractEvent; "Withdrawal(address,uint256)": TypedContractEvent; Withdrawal: TypedContractEvent; }; } //# sourceMappingURL=ENSCustody.d.ts.map