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 IPriceOracleInterface extends utils.Interface { functions: { "addPriceFeed(address,address)": FunctionFragment; "convert(uint256,address,address)": FunctionFragment; "getLastPrice(address,address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "addPriceFeed" | "convert" | "getLastPrice"): FunctionFragment; encodeFunctionData(functionFragment: "addPriceFeed", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "convert", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "getLastPrice", values: [PromiseOrValue, PromiseOrValue]): string; decodeFunctionResult(functionFragment: "addPriceFeed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "convert", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLastPrice", data: BytesLike): Result; events: { "NewPriceFeed(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "NewPriceFeed"): EventFragment; } export interface NewPriceFeedEventObject { token: string; priceFeed: string; } export declare type NewPriceFeedEvent = TypedEvent<[ string, string ], NewPriceFeedEventObject>; export declare type NewPriceFeedEventFilter = TypedEventFilter; export interface IPriceOracle extends BaseContract { contractName: "IPriceOracle"; connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: IPriceOracleInterface; 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: { addPriceFeed(token: PromiseOrValue, priceFeedToken: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; convert(amount: PromiseOrValue, tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; getLastPrice(tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; }; addPriceFeed(token: PromiseOrValue, priceFeedToken: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; convert(amount: PromiseOrValue, tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; getLastPrice(tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; callStatic: { addPriceFeed(token: PromiseOrValue, priceFeedToken: PromiseOrValue, overrides?: CallOverrides): Promise; convert(amount: PromiseOrValue, tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; getLastPrice(tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { "NewPriceFeed(address,address)"(token?: PromiseOrValue | null, priceFeed?: PromiseOrValue | null): NewPriceFeedEventFilter; NewPriceFeed(token?: PromiseOrValue | null, priceFeed?: PromiseOrValue | null): NewPriceFeedEventFilter; }; estimateGas: { addPriceFeed(token: PromiseOrValue, priceFeedToken: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; convert(amount: PromiseOrValue, tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; getLastPrice(tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; }; populateTransaction: { addPriceFeed(token: PromiseOrValue, priceFeedToken: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; convert(amount: PromiseOrValue, tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; getLastPrice(tokenFrom: PromiseOrValue, tokenTo: PromiseOrValue, overrides?: CallOverrides): Promise; }; }