import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../common"; export interface NFTWalletInterface extends utils.Interface { functions: { "DEFAULT_ADMIN_ROLE()": FunctionFragment; "NFT_OWNER()": FunctionFragment; "attachUser(address)": FunctionFragment; "getRoleAdmin(bytes32)": FunctionFragment; "grantRole(bytes32,address)": FunctionFragment; "hasRole(bytes32,address)": FunctionFragment; "onERC721Received(address,address,uint256,bytes)": FunctionFragment; "renounceRole(bytes32,address)": FunctionFragment; "revokeRole(bytes32,address)": FunctionFragment; "supportsInterface(bytes4)": FunctionFragment; "transferOut(address,address,uint256)": FunctionFragment; "withdrawToken(address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "DEFAULT_ADMIN_ROLE" | "NFT_OWNER" | "attachUser" | "getRoleAdmin" | "grantRole" | "hasRole" | "onERC721Received" | "renounceRole" | "revokeRole" | "supportsInterface" | "transferOut" | "withdrawToken"): FunctionFragment; encodeFunctionData(functionFragment: "DEFAULT_ADMIN_ROLE", values?: undefined): string; encodeFunctionData(functionFragment: "NFT_OWNER", values?: undefined): string; encodeFunctionData(functionFragment: "attachUser", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "getRoleAdmin", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "grantRole", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "hasRole", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "onERC721Received", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "renounceRole", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "revokeRole", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "transferOut", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "withdrawToken", values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: "DEFAULT_ADMIN_ROLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "NFT_OWNER", data: BytesLike): Result; decodeFunctionResult(functionFragment: "attachUser", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoleAdmin", data: BytesLike): Result; decodeFunctionResult(functionFragment: "grantRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "hasRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "onERC721Received", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeRole", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOut", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawToken", data: BytesLike): Result; events: { "RoleAdminChanged(bytes32,bytes32,bytes32)": EventFragment; "RoleGranted(bytes32,address,address)": EventFragment; "RoleRevoked(bytes32,address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "RoleAdminChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "RoleGranted"): EventFragment; getEvent(nameOrSignatureOrTopic: "RoleRevoked"): EventFragment; } export interface RoleAdminChangedEventObject { role: string; previousAdminRole: string; newAdminRole: string; } export declare type RoleAdminChangedEvent = TypedEvent<[ string, string, string ], RoleAdminChangedEventObject>; export declare type RoleAdminChangedEventFilter = TypedEventFilter; export interface RoleGrantedEventObject { role: string; account: string; sender: string; } export declare type RoleGrantedEvent = TypedEvent<[ string, string, string ], RoleGrantedEventObject>; export declare type RoleGrantedEventFilter = TypedEventFilter; export interface RoleRevokedEventObject { role: string; account: string; sender: string; } export declare type RoleRevokedEvent = TypedEvent<[ string, string, string ], RoleRevokedEventObject>; export declare type RoleRevokedEventFilter = TypedEventFilter; export interface NFTWallet extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: NFTWalletInterface; queryFilter(event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise>; listeners(eventFilter?: TypedEventFilter): Array>; listeners(eventName?: string): Array; removeAllListeners(eventFilter: TypedEventFilter): this; removeAllListeners(eventName?: string): this; off: OnEvent; on: OnEvent; once: OnEvent; removeListener: OnEvent; functions: { DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise<[string]>; NFT_OWNER(overrides?: CallOverrides): Promise<[string]>; attachUser(user: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getRoleAdmin(role: PromiseOrValue, overrides?: CallOverrides): Promise<[string]>; grantRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; hasRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; onERC721Received(arg0: PromiseOrValue, arg1: PromiseOrValue, arg2: PromiseOrValue, arg3: PromiseOrValue, overrides?: CallOverrides): Promise<[string]>; renounceRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supportsInterface(interfaceId: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; transferOut(erc721: PromiseOrValue, receiver: PromiseOrValue, tokenId: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise; NFT_OWNER(overrides?: CallOverrides): Promise; attachUser(user: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getRoleAdmin(role: PromiseOrValue, overrides?: CallOverrides): Promise; grantRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; hasRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; onERC721Received(arg0: PromiseOrValue, arg1: PromiseOrValue, arg2: PromiseOrValue, arg3: PromiseOrValue, overrides?: CallOverrides): Promise; renounceRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supportsInterface(interfaceId: PromiseOrValue, overrides?: CallOverrides): Promise; transferOut(erc721: PromiseOrValue, receiver: PromiseOrValue, tokenId: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise; NFT_OWNER(overrides?: CallOverrides): Promise; attachUser(user: PromiseOrValue, overrides?: CallOverrides): Promise; getRoleAdmin(role: PromiseOrValue, overrides?: CallOverrides): Promise; grantRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; hasRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; onERC721Received(arg0: PromiseOrValue, arg1: PromiseOrValue, arg2: PromiseOrValue, arg3: PromiseOrValue, overrides?: CallOverrides): Promise; renounceRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; revokeRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; supportsInterface(interfaceId: PromiseOrValue, overrides?: CallOverrides): Promise; transferOut(erc721: PromiseOrValue, receiver: PromiseOrValue, tokenId: PromiseOrValue, overrides?: CallOverrides): Promise; withdrawToken(token: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { "RoleAdminChanged(bytes32,bytes32,bytes32)"(role?: PromiseOrValue | null, previousAdminRole?: PromiseOrValue | null, newAdminRole?: PromiseOrValue | null): RoleAdminChangedEventFilter; RoleAdminChanged(role?: PromiseOrValue | null, previousAdminRole?: PromiseOrValue | null, newAdminRole?: PromiseOrValue | null): RoleAdminChangedEventFilter; "RoleGranted(bytes32,address,address)"(role?: PromiseOrValue | null, account?: PromiseOrValue | null, sender?: PromiseOrValue | null): RoleGrantedEventFilter; RoleGranted(role?: PromiseOrValue | null, account?: PromiseOrValue | null, sender?: PromiseOrValue | null): RoleGrantedEventFilter; "RoleRevoked(bytes32,address,address)"(role?: PromiseOrValue | null, account?: PromiseOrValue | null, sender?: PromiseOrValue | null): RoleRevokedEventFilter; RoleRevoked(role?: PromiseOrValue | null, account?: PromiseOrValue | null, sender?: PromiseOrValue | null): RoleRevokedEventFilter; }; estimateGas: { DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise; NFT_OWNER(overrides?: CallOverrides): Promise; attachUser(user: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getRoleAdmin(role: PromiseOrValue, overrides?: CallOverrides): Promise; grantRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; hasRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; onERC721Received(arg0: PromiseOrValue, arg1: PromiseOrValue, arg2: PromiseOrValue, arg3: PromiseOrValue, overrides?: CallOverrides): Promise; renounceRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supportsInterface(interfaceId: PromiseOrValue, overrides?: CallOverrides): Promise; transferOut(erc721: PromiseOrValue, receiver: PromiseOrValue, tokenId: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { DEFAULT_ADMIN_ROLE(overrides?: CallOverrides): Promise; NFT_OWNER(overrides?: CallOverrides): Promise; attachUser(user: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getRoleAdmin(role: PromiseOrValue, overrides?: CallOverrides): Promise; grantRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; hasRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: CallOverrides): Promise; onERC721Received(arg0: PromiseOrValue, arg1: PromiseOrValue, arg2: PromiseOrValue, arg3: PromiseOrValue, overrides?: CallOverrides): Promise; renounceRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; revokeRole(role: PromiseOrValue, account: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; supportsInterface(interfaceId: PromiseOrValue, overrides?: CallOverrides): Promise; transferOut(erc721: PromiseOrValue, receiver: PromiseOrValue, tokenId: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; withdrawToken(token: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }