import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, 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 } from "./common"; export declare namespace IDAOVault { type TomeLockInfoStruct = { withdrawalAmount: BigNumberish; lockedAmount: BigNumberish; unlockTime: BigNumberish; }; type TomeLockInfoStructOutput = [BigNumber, BigNumber, BigNumber] & { withdrawalAmount: BigNumber; lockedAmount: BigNumber; unlockTime: BigNumber; }; type ConstitutionDataInfoStruct = { isSigned: boolean; signedAt: BigNumberish; }; type ConstitutionDataInfoStructOutput = [boolean, BigNumber] & { isSigned: boolean; signedAt: BigNumber; }; } export interface IDAOVaultInterface extends utils.Interface { functions: { "authorizeBySBT(address)": FunctionFragment; "depositERC20(address,uint256)": FunctionFragment; "depositNFT(address,uint256)": FunctionFragment; "depositNative()": FunctionFragment; "getConstitutionSignHash(address)": FunctionFragment; "getTimeLockInfo(address,address)": FunctionFragment; "getTokenSupply(address)": FunctionFragment; "getUserConstitutionData(address)": FunctionFragment; "getUserNFTs(address,address)": FunctionFragment; "getUserTokens(address)": FunctionFragment; "getUserVotingPower(address,address)": FunctionFragment; "isAuthorizedBySBT(address,address)": FunctionFragment; "isSupportedNFT(address)": FunctionFragment; "isSupportedSBT(address)": FunctionFragment; "lock(address,address,uint256,uint256)": FunctionFragment; "lockAndGetUserVotingPower(address,address,uint256)": FunctionFragment; "revokeSBTAuthorization(address)": FunctionFragment; "signConstitution(address,bytes)": FunctionFragment; "withdrawERC20(address,uint256)": FunctionFragment; "withdrawNFT(address,uint256)": FunctionFragment; "withdrawNative(uint256)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "authorizeBySBT" | "depositERC20" | "depositNFT" | "depositNative" | "getConstitutionSignHash" | "getTimeLockInfo" | "getTokenSupply" | "getUserConstitutionData" | "getUserNFTs" | "getUserTokens" | "getUserVotingPower" | "isAuthorizedBySBT" | "isSupportedNFT" | "isSupportedSBT" | "lock" | "lockAndGetUserVotingPower" | "revokeSBTAuthorization" | "signConstitution" | "withdrawERC20" | "withdrawNFT" | "withdrawNative"): FunctionFragment; encodeFunctionData(functionFragment: "authorizeBySBT", values: [string]): string; encodeFunctionData(functionFragment: "depositERC20", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "depositNFT", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "depositNative", values?: undefined): string; encodeFunctionData(functionFragment: "getConstitutionSignHash", values: [string]): string; encodeFunctionData(functionFragment: "getTimeLockInfo", values: [string, string]): string; encodeFunctionData(functionFragment: "getTokenSupply", values: [string]): string; encodeFunctionData(functionFragment: "getUserConstitutionData", values: [string]): string; encodeFunctionData(functionFragment: "getUserNFTs", values: [string, string]): string; encodeFunctionData(functionFragment: "getUserTokens", values: [string]): string; encodeFunctionData(functionFragment: "getUserVotingPower", values: [string, string]): string; encodeFunctionData(functionFragment: "isAuthorizedBySBT", values: [string, string]): string; encodeFunctionData(functionFragment: "isSupportedNFT", values: [string]): string; encodeFunctionData(functionFragment: "isSupportedSBT", values: [string]): string; encodeFunctionData(functionFragment: "lock", values: [string, string, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "lockAndGetUserVotingPower", values: [string, string, BigNumberish]): string; encodeFunctionData(functionFragment: "revokeSBTAuthorization", values: [string]): string; encodeFunctionData(functionFragment: "signConstitution", values: [string, BytesLike]): string; encodeFunctionData(functionFragment: "withdrawERC20", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "withdrawNFT", values: [string, BigNumberish]): string; encodeFunctionData(functionFragment: "withdrawNative", values: [BigNumberish]): string; decodeFunctionResult(functionFragment: "authorizeBySBT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositERC20", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositNFT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositNative", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getConstitutionSignHash", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTimeLockInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTokenSupply", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserConstitutionData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserNFTs", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserTokens", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUserVotingPower", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isAuthorizedBySBT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isSupportedNFT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isSupportedSBT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lock", data: BytesLike): Result; decodeFunctionResult(functionFragment: "lockAndGetUserVotingPower", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeSBTAuthorization", data: BytesLike): Result; decodeFunctionResult(functionFragment: "signConstitution", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawERC20", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawNFT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawNative", data: BytesLike): Result; events: { "AuthenticatedBySBT(address,address)": EventFragment; "AuthorizedBySBT(address,address)": EventFragment; "ConstitutionSigned(address)": EventFragment; "NFTDeposited(address,address,uint256)": EventFragment; "NFTLocked(address,address,uint256,uint256)": EventFragment; "NFTWithdrew(address,address,uint256)": EventFragment; "SBTAuthorizationRevoked(address,address)": EventFragment; "TokensDeposited(address,address,uint256)": EventFragment; "TokensLocked(address,address,uint256,uint256)": EventFragment; "TokensWithdrew(address,address,uint256)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "AuthenticatedBySBT"): EventFragment; getEvent(nameOrSignatureOrTopic: "AuthorizedBySBT"): EventFragment; getEvent(nameOrSignatureOrTopic: "ConstitutionSigned"): EventFragment; getEvent(nameOrSignatureOrTopic: "NFTDeposited"): EventFragment; getEvent(nameOrSignatureOrTopic: "NFTLocked"): EventFragment; getEvent(nameOrSignatureOrTopic: "NFTWithdrew"): EventFragment; getEvent(nameOrSignatureOrTopic: "SBTAuthorizationRevoked"): EventFragment; getEvent(nameOrSignatureOrTopic: "TokensDeposited"): EventFragment; getEvent(nameOrSignatureOrTopic: "TokensLocked"): EventFragment; getEvent(nameOrSignatureOrTopic: "TokensWithdrew"): EventFragment; } export interface AuthenticatedBySBTEventObject { tokenAddress: string; sender: string; } export type AuthenticatedBySBTEvent = TypedEvent<[ string, string ], AuthenticatedBySBTEventObject>; export type AuthenticatedBySBTEventFilter = TypedEventFilter; export interface AuthorizedBySBTEventObject { tokenAddress: string; sender: string; } export type AuthorizedBySBTEvent = TypedEvent<[ string, string ], AuthorizedBySBTEventObject>; export type AuthorizedBySBTEventFilter = TypedEventFilter; export interface ConstitutionSignedEventObject { user: string; } export type ConstitutionSignedEvent = TypedEvent<[ string ], ConstitutionSignedEventObject>; export type ConstitutionSignedEventFilter = TypedEventFilter; export interface NFTDepositedEventObject { tokenAddress: string; sender: string; tokenId: BigNumber; } export type NFTDepositedEvent = TypedEvent<[ string, string, BigNumber ], NFTDepositedEventObject>; export type NFTDepositedEventFilter = TypedEventFilter; export interface NFTLockedEventObject { tokenAddress: string; sender: string; tokenId: BigNumber; unlockTime: BigNumber; } export type NFTLockedEvent = TypedEvent<[ string, string, BigNumber, BigNumber ], NFTLockedEventObject>; export type NFTLockedEventFilter = TypedEventFilter; export interface NFTWithdrewEventObject { tokenAddress: string; sender: string; tokenId: BigNumber; } export type NFTWithdrewEvent = TypedEvent<[ string, string, BigNumber ], NFTWithdrewEventObject>; export type NFTWithdrewEventFilter = TypedEventFilter; export interface SBTAuthorizationRevokedEventObject { tokenAddress: string; sender: string; } export type SBTAuthorizationRevokedEvent = TypedEvent<[ string, string ], SBTAuthorizationRevokedEventObject>; export type SBTAuthorizationRevokedEventFilter = TypedEventFilter; export interface TokensDepositedEventObject { tokenAddress: string; sender: string; amount: BigNumber; } export type TokensDepositedEvent = TypedEvent<[ string, string, BigNumber ], TokensDepositedEventObject>; export type TokensDepositedEventFilter = TypedEventFilter; export interface TokensLockedEventObject { tokenAddress: string; sender: string; amount: BigNumber; unlockTime: BigNumber; } export type TokensLockedEvent = TypedEvent<[ string, string, BigNumber, BigNumber ], TokensLockedEventObject>; export type TokensLockedEventFilter = TypedEventFilter; export interface TokensWithdrewEventObject { tokenAddress: string; sender: string; amount: BigNumber; } export type TokensWithdrewEvent = TypedEvent<[ string, string, BigNumber ], TokensWithdrewEventObject>; export type TokensWithdrewEventFilter = TypedEventFilter; export interface IDAOVault extends BaseContract { contractName: "IDAOVault"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IDAOVaultInterface; 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: { authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise<[string]>; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[ IDAOVault.TomeLockInfoStructOutput ] & { info_: IDAOVault.TomeLockInfoStructOutput; }>; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise<[BigNumber]>; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise<[IDAOVault.ConstitutionDataInfoStructOutput]>; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[BigNumber[]]>; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise<[string[]]>; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[BigNumber]>; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise<[boolean]>; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise<[boolean]>; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise<[boolean]>; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; callStatic: { authorizeBySBT(tokenAddress_: string, overrides?: CallOverrides): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: CallOverrides): Promise; depositNative(overrides?: CallOverrides): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: CallOverrides): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: CallOverrides): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: CallOverrides): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: CallOverrides): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: CallOverrides): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: CallOverrides): Promise; withdrawNative(amount_: BigNumberish, overrides?: CallOverrides): Promise; }; filters: { "AuthenticatedBySBT(address,address)"(tokenAddress?: string | null, sender?: string | null): AuthenticatedBySBTEventFilter; AuthenticatedBySBT(tokenAddress?: string | null, sender?: string | null): AuthenticatedBySBTEventFilter; "AuthorizedBySBT(address,address)"(tokenAddress?: string | null, sender?: string | null): AuthorizedBySBTEventFilter; AuthorizedBySBT(tokenAddress?: string | null, sender?: string | null): AuthorizedBySBTEventFilter; "ConstitutionSigned(address)"(user?: string | null): ConstitutionSignedEventFilter; ConstitutionSigned(user?: string | null): ConstitutionSignedEventFilter; "NFTDeposited(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTDepositedEventFilter; NFTDeposited(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTDepositedEventFilter; "NFTLocked(address,address,uint256,uint256)"(tokenAddress?: string | null, sender?: string | null, tokenId?: null, unlockTime?: null): NFTLockedEventFilter; NFTLocked(tokenAddress?: string | null, sender?: string | null, tokenId?: null, unlockTime?: null): NFTLockedEventFilter; "NFTWithdrew(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTWithdrewEventFilter; NFTWithdrew(tokenAddress?: string | null, sender?: string | null, tokenId?: null): NFTWithdrewEventFilter; "SBTAuthorizationRevoked(address,address)"(tokenAddress?: string | null, sender?: string | null): SBTAuthorizationRevokedEventFilter; SBTAuthorizationRevoked(tokenAddress?: string | null, sender?: string | null): SBTAuthorizationRevokedEventFilter; "TokensDeposited(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensDepositedEventFilter; TokensDeposited(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensDepositedEventFilter; "TokensLocked(address,address,uint256,uint256)"(tokenAddress?: string | null, sender?: string | null, amount?: null, unlockTime?: null): TokensLockedEventFilter; TokensLocked(tokenAddress?: string | null, sender?: string | null, amount?: null, unlockTime?: null): TokensLockedEventFilter; "TokensWithdrew(address,address,uint256)"(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensWithdrewEventFilter; TokensWithdrew(tokenAddress?: string | null, sender?: string | null, amount?: null): TokensWithdrewEventFilter; }; estimateGas: { authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; populateTransaction: { authorizeBySBT(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; depositERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; depositNative(overrides?: PayableOverrides & { from?: string; }): Promise; getConstitutionSignHash(signer_: string, overrides?: CallOverrides): Promise; getTimeLockInfo(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getTokenSupply(tokenAddress_: string, overrides?: CallOverrides): Promise; getUserConstitutionData(userAddress_: string, overrides?: CallOverrides): Promise; getUserNFTs(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; getUserTokens(userAddress_: string, overrides?: CallOverrides): Promise; getUserVotingPower(userAddress_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isAuthorizedBySBT(sender_: string, tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedNFT(tokenAddress_: string, overrides?: CallOverrides): Promise; isSupportedSBT(tokenAddress_: string, overrides?: CallOverrides): Promise; lock(sender_: string, tokenAddress_: string, amount_: BigNumberish, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; lockAndGetUserVotingPower(userAddress_: string, tokenAddress_: string, timeToLock_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; revokeSBTAuthorization(tokenAddress_: string, overrides?: Overrides & { from?: string; }): Promise; signConstitution(signer_: string, signature_: BytesLike, overrides?: Overrides & { from?: string; }): Promise; withdrawERC20(tokenAddress_: string, amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNFT(tokenAddress_: string, tokenId_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; withdrawNative(amount_: BigNumberish, overrides?: Overrides & { from?: string; }): Promise; }; }