import type { BaseContract, BigNumber, 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 AaveV3OracleInterface extends utils.Interface { functions: { "ADDRESSES_PROVIDER()": FunctionFragment; "BASE_CURRENCY()": FunctionFragment; "BASE_CURRENCY_UNIT()": FunctionFragment; "getAssetPrice(address)": FunctionFragment; "getAssetsPrices(address[])": FunctionFragment; "getFallbackOracle()": FunctionFragment; "getSourceOfAsset(address)": FunctionFragment; "setAssetSources(address[],address[])": FunctionFragment; "setFallbackOracle(address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "ADDRESSES_PROVIDER" | "BASE_CURRENCY" | "BASE_CURRENCY_UNIT" | "getAssetPrice" | "getAssetsPrices" | "getFallbackOracle" | "getSourceOfAsset" | "setAssetSources" | "setFallbackOracle"): FunctionFragment; encodeFunctionData(functionFragment: "ADDRESSES_PROVIDER", values?: undefined): string; encodeFunctionData(functionFragment: "BASE_CURRENCY", values?: undefined): string; encodeFunctionData(functionFragment: "BASE_CURRENCY_UNIT", values?: undefined): string; encodeFunctionData(functionFragment: "getAssetPrice", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "getAssetsPrices", values: [PromiseOrValue[]]): string; encodeFunctionData(functionFragment: "getFallbackOracle", values?: undefined): string; encodeFunctionData(functionFragment: "getSourceOfAsset", values: [PromiseOrValue]): string; encodeFunctionData(functionFragment: "setAssetSources", values: [PromiseOrValue[], PromiseOrValue[]]): string; encodeFunctionData(functionFragment: "setFallbackOracle", values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: "ADDRESSES_PROVIDER", data: BytesLike): Result; decodeFunctionResult(functionFragment: "BASE_CURRENCY", data: BytesLike): Result; decodeFunctionResult(functionFragment: "BASE_CURRENCY_UNIT", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getAssetPrice", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getAssetsPrices", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getFallbackOracle", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getSourceOfAsset", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setAssetSources", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setFallbackOracle", data: BytesLike): Result; events: { "AssetSourceUpdated(address,address)": EventFragment; "BaseCurrencySet(address,uint256)": EventFragment; "FallbackOracleUpdated(address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "AssetSourceUpdated"): EventFragment; getEvent(nameOrSignatureOrTopic: "BaseCurrencySet"): EventFragment; getEvent(nameOrSignatureOrTopic: "FallbackOracleUpdated"): EventFragment; } export interface AssetSourceUpdatedEventObject { asset: string; source: string; } export type AssetSourceUpdatedEvent = TypedEvent<[ string, string ], AssetSourceUpdatedEventObject>; export type AssetSourceUpdatedEventFilter = TypedEventFilter; export interface BaseCurrencySetEventObject { baseCurrency: string; baseCurrencyUnit: BigNumber; } export type BaseCurrencySetEvent = TypedEvent<[ string, BigNumber ], BaseCurrencySetEventObject>; export type BaseCurrencySetEventFilter = TypedEventFilter; export interface FallbackOracleUpdatedEventObject { fallbackOracle: string; } export type FallbackOracleUpdatedEvent = TypedEvent<[ string ], FallbackOracleUpdatedEventObject>; export type FallbackOracleUpdatedEventFilter = TypedEventFilter; export interface AaveV3Oracle extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: AaveV3OracleInterface; 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: { ADDRESSES_PROVIDER(overrides?: CallOverrides): Promise<[string]>; BASE_CURRENCY(overrides?: CallOverrides): Promise<[string]>; BASE_CURRENCY_UNIT(overrides?: CallOverrides): Promise<[BigNumber]>; getAssetPrice(asset: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber]>; getAssetsPrices(assets: PromiseOrValue[], overrides?: CallOverrides): Promise<[BigNumber[]]>; getFallbackOracle(overrides?: CallOverrides): Promise<[string]>; getSourceOfAsset(asset: PromiseOrValue, overrides?: CallOverrides): Promise<[string]>; setAssetSources(assets: PromiseOrValue[], sources: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; setFallbackOracle(fallbackOracle: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; ADDRESSES_PROVIDER(overrides?: CallOverrides): Promise; BASE_CURRENCY(overrides?: CallOverrides): Promise; BASE_CURRENCY_UNIT(overrides?: CallOverrides): Promise; getAssetPrice(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getAssetsPrices(assets: PromiseOrValue[], overrides?: CallOverrides): Promise; getFallbackOracle(overrides?: CallOverrides): Promise; getSourceOfAsset(asset: PromiseOrValue, overrides?: CallOverrides): Promise; setAssetSources(assets: PromiseOrValue[], sources: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; setFallbackOracle(fallbackOracle: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; callStatic: { ADDRESSES_PROVIDER(overrides?: CallOverrides): Promise; BASE_CURRENCY(overrides?: CallOverrides): Promise; BASE_CURRENCY_UNIT(overrides?: CallOverrides): Promise; getAssetPrice(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getAssetsPrices(assets: PromiseOrValue[], overrides?: CallOverrides): Promise; getFallbackOracle(overrides?: CallOverrides): Promise; getSourceOfAsset(asset: PromiseOrValue, overrides?: CallOverrides): Promise; setAssetSources(assets: PromiseOrValue[], sources: PromiseOrValue[], overrides?: CallOverrides): Promise; setFallbackOracle(fallbackOracle: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { "AssetSourceUpdated(address,address)"(asset?: PromiseOrValue | null, source?: PromiseOrValue | null): AssetSourceUpdatedEventFilter; AssetSourceUpdated(asset?: PromiseOrValue | null, source?: PromiseOrValue | null): AssetSourceUpdatedEventFilter; "BaseCurrencySet(address,uint256)"(baseCurrency?: PromiseOrValue | null, baseCurrencyUnit?: null): BaseCurrencySetEventFilter; BaseCurrencySet(baseCurrency?: PromiseOrValue | null, baseCurrencyUnit?: null): BaseCurrencySetEventFilter; "FallbackOracleUpdated(address)"(fallbackOracle?: PromiseOrValue | null): FallbackOracleUpdatedEventFilter; FallbackOracleUpdated(fallbackOracle?: PromiseOrValue | null): FallbackOracleUpdatedEventFilter; }; estimateGas: { ADDRESSES_PROVIDER(overrides?: CallOverrides): Promise; BASE_CURRENCY(overrides?: CallOverrides): Promise; BASE_CURRENCY_UNIT(overrides?: CallOverrides): Promise; getAssetPrice(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getAssetsPrices(assets: PromiseOrValue[], overrides?: CallOverrides): Promise; getFallbackOracle(overrides?: CallOverrides): Promise; getSourceOfAsset(asset: PromiseOrValue, overrides?: CallOverrides): Promise; setAssetSources(assets: PromiseOrValue[], sources: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; setFallbackOracle(fallbackOracle: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { ADDRESSES_PROVIDER(overrides?: CallOverrides): Promise; BASE_CURRENCY(overrides?: CallOverrides): Promise; BASE_CURRENCY_UNIT(overrides?: CallOverrides): Promise; getAssetPrice(asset: PromiseOrValue, overrides?: CallOverrides): Promise; getAssetsPrices(assets: PromiseOrValue[], overrides?: CallOverrides): Promise; getFallbackOracle(overrides?: CallOverrides): Promise; getSourceOfAsset(asset: PromiseOrValue, overrides?: CallOverrides): Promise; setAssetSources(assets: PromiseOrValue[], sources: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; setFallbackOracle(fallbackOracle: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; }; }