import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "../../../common"; export declare namespace IListingTermsRegistry { type ListingTermsStruct = { strategyId: BytesLike; strategyData: BytesLike; }; type ListingTermsStructOutput = [string, string] & { strategyId: string; strategyData: string; }; } export declare namespace Rentings { type ParamsStruct = { listingId: BigNumberish; warper: string; renter: string; rentalPeriod: BigNumberish; paymentToken: string; listingTermsId: BigNumberish; selectedConfiguratorListingTerms: IListingTermsRegistry.ListingTermsStruct; }; type ParamsStructOutput = [ BigNumber, string, string, number, string, BigNumber, IListingTermsRegistry.ListingTermsStructOutput ] & { listingId: BigNumber; warper: string; renter: string; rentalPeriod: number; paymentToken: string; listingTermsId: BigNumber; selectedConfiguratorListingTerms: IListingTermsRegistry.ListingTermsStructOutput; }; type RentalFeesStruct = { total: BigNumberish; protocolFee: BigNumberish; listerBaseFee: BigNumberish; listerPremium: BigNumberish; universeBaseFee: BigNumberish; universePremium: BigNumberish; listingTerms: IListingTermsRegistry.ListingTermsStruct; universeTaxTerms: ITaxTermsRegistry.TaxTermsStruct; protocolTaxTerms: ITaxTermsRegistry.TaxTermsStruct; }; type RentalFeesStructOutput = [ BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, BigNumber, IListingTermsRegistry.ListingTermsStructOutput, ITaxTermsRegistry.TaxTermsStructOutput, ITaxTermsRegistry.TaxTermsStructOutput ] & { total: BigNumber; protocolFee: BigNumber; listerBaseFee: BigNumber; listerPremium: BigNumber; universeBaseFee: BigNumber; universePremium: BigNumber; listingTerms: IListingTermsRegistry.ListingTermsStructOutput; universeTaxTerms: ITaxTermsRegistry.TaxTermsStructOutput; protocolTaxTerms: ITaxTermsRegistry.TaxTermsStructOutput; }; } export declare namespace ITaxTermsRegistry { type TaxTermsStruct = { strategyId: BytesLike; strategyData: BytesLike; }; type TaxTermsStructOutput = [string, string] & { strategyId: string; strategyData: string; }; } export declare namespace ITokenQuote { type PaymentTokenDataStruct = { paymentToken: string; paymentTokenQuote: BigNumberish; }; type PaymentTokenDataStructOutput = [string, BigNumber] & { paymentToken: string; paymentTokenQuote: BigNumber; }; } export interface ITokenQuoteInterface extends utils.Interface { functions: { "DOMAIN_SEPARATOR()": FunctionFragment; "contractKey()": FunctionFragment; "getChainId()": FunctionFragment; "getTokenQuoteNonces(address)": FunctionFragment; "supportsInterface(bytes4)": FunctionFragment; "useTokenQuote((uint256,address,address,uint32,address,uint256,(bytes4,bytes)),(uint256,uint256,uint256,uint256,uint256,uint256,(bytes4,bytes),(bytes4,bytes),(bytes4,bytes)),bytes,bytes)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "DOMAIN_SEPARATOR" | "contractKey" | "getChainId" | "getTokenQuoteNonces" | "supportsInterface" | "useTokenQuote"): FunctionFragment; encodeFunctionData(functionFragment: "DOMAIN_SEPARATOR", values?: undefined): string; encodeFunctionData(functionFragment: "contractKey", values?: undefined): string; encodeFunctionData(functionFragment: "getChainId", values?: undefined): string; encodeFunctionData(functionFragment: "getTokenQuoteNonces", values: [string]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [BytesLike]): string; encodeFunctionData(functionFragment: "useTokenQuote", values: [ Rentings.ParamsStruct, Rentings.RentalFeesStruct, BytesLike, BytesLike ]): string; decodeFunctionResult(functionFragment: "DOMAIN_SEPARATOR", data: BytesLike): Result; decodeFunctionResult(functionFragment: "contractKey", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getChainId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTokenQuoteNonces", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "useTokenQuote", data: BytesLike): Result; events: {}; } export interface ITokenQuote extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ITokenQuoteInterface; 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: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise<[string]>; contractKey(overrides?: CallOverrides): Promise<[string]>; getChainId(overrides?: CallOverrides): Promise<[BigNumber]>; getTokenQuoteNonces(renter: string, overrides?: CallOverrides): Promise<[BigNumber]>; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise<[boolean]>; useTokenQuote(rentingParams: Rentings.ParamsStruct, baseTokenFees: Rentings.RentalFeesStruct, tokenQuote: BytesLike, tokenQuoteSignature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; }; DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; contractKey(overrides?: CallOverrides): Promise; getChainId(overrides?: CallOverrides): Promise; getTokenQuoteNonces(renter: string, overrides?: CallOverrides): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; useTokenQuote(rentingParams: Rentings.ParamsStruct, baseTokenFees: Rentings.RentalFeesStruct, tokenQuote: BytesLike, tokenQuoteSignature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; callStatic: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; contractKey(overrides?: CallOverrides): Promise; getChainId(overrides?: CallOverrides): Promise; getTokenQuoteNonces(renter: string, overrides?: CallOverrides): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; useTokenQuote(rentingParams: Rentings.ParamsStruct, baseTokenFees: Rentings.RentalFeesStruct, tokenQuote: BytesLike, tokenQuoteSignature: BytesLike, overrides?: CallOverrides): Promise<[ Rentings.RentalFeesStructOutput, ITokenQuote.PaymentTokenDataStructOutput ] & { paymentTokenFees: Rentings.RentalFeesStructOutput; paymentTokenData: ITokenQuote.PaymentTokenDataStructOutput; }>; }; filters: {}; estimateGas: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; contractKey(overrides?: CallOverrides): Promise; getChainId(overrides?: CallOverrides): Promise; getTokenQuoteNonces(renter: string, overrides?: CallOverrides): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; useTokenQuote(rentingParams: Rentings.ParamsStruct, baseTokenFees: Rentings.RentalFeesStruct, tokenQuote: BytesLike, tokenQuoteSignature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; }; populateTransaction: { DOMAIN_SEPARATOR(overrides?: CallOverrides): Promise; contractKey(overrides?: CallOverrides): Promise; getChainId(overrides?: CallOverrides): Promise; getTokenQuoteNonces(renter: string, overrides?: CallOverrides): Promise; supportsInterface(interfaceId: BytesLike, overrides?: CallOverrides): Promise; useTokenQuote(rentingParams: Rentings.ParamsStruct, baseTokenFees: Rentings.RentalFeesStruct, tokenQuote: BytesLike, tokenQuoteSignature: BytesLike, overrides?: Overrides & { from?: string | Promise; }): Promise; }; } //# sourceMappingURL=ITokenQuote.d.ts.map