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 declare namespace ITransformerOracle { type PairStruct = { tokenA: PromiseOrValue; tokenB: PromiseOrValue; }; type PairStructOutput = [string, string] & { tokenA: string; tokenB: string; }; type PairSpecificMappingConfigToSetStruct = { tokenA: PromiseOrValue; tokenB: PromiseOrValue; mapTokenAToUnderlying: PromiseOrValue; mapTokenBToUnderlying: PromiseOrValue; }; type PairSpecificMappingConfigToSetStructOutput = [ string, string, boolean, boolean ] & { tokenA: string; tokenB: string; mapTokenAToUnderlying: boolean; mapTokenBToUnderlying: boolean; }; type PairSpecificMappingConfigStruct = { mapTokenAToUnderlying: PromiseOrValue; mapTokenBToUnderlying: PromiseOrValue; isSet: PromiseOrValue; }; type PairSpecificMappingConfigStructOutput = [ boolean, boolean, boolean ] & { mapTokenAToUnderlying: boolean; mapTokenBToUnderlying: boolean; isSet: boolean; }; } export interface ITransformerOracleInterface extends utils.Interface { functions: { "REGISTRY()": FunctionFragment; "UNDERLYING_ORACLE()": FunctionFragment; "addOrModifySupportForPair(address,address,bytes)": FunctionFragment; "addSupportForPairIfNeeded(address,address,bytes)": FunctionFragment; "avoidMappingToUnderlying(address[])": FunctionFragment; "canSupportPair(address,address)": FunctionFragment; "clearPairSpecificMappingConfig((address,address)[])": FunctionFragment; "getMappingForPair(address,address)": FunctionFragment; "getRecursiveMappingForPair(address,address)": FunctionFragment; "isPairAlreadySupported(address,address)": FunctionFragment; "pairSpecificMappingConfig(address,address)": FunctionFragment; "quote(address,uint256,address,bytes)": FunctionFragment; "setPairSpecificMappingConfig((address,address,bool,bool)[])": FunctionFragment; "shouldMapToUnderlying(address[])": FunctionFragment; "willAvoidMappingToUnderlying(address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "REGISTRY" | "UNDERLYING_ORACLE" | "addOrModifySupportForPair" | "addSupportForPairIfNeeded" | "avoidMappingToUnderlying" | "canSupportPair" | "clearPairSpecificMappingConfig" | "getMappingForPair" | "getRecursiveMappingForPair" | "isPairAlreadySupported" | "pairSpecificMappingConfig" | "quote" | "setPairSpecificMappingConfig" | "shouldMapToUnderlying" | "willAvoidMappingToUnderlying"): FunctionFragment; encodeFunctionData(functionFragment: "REGISTRY", values?: undefined): string; encodeFunctionData(functionFragment: "UNDERLYING_ORACLE", values?: undefined): string; encodeFunctionData(functionFragment: "addOrModifySupportForPair", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "addSupportForPairIfNeeded", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "avoidMappingToUnderlying", values: [PromiseOrValue[]]): string; encodeFunctionData(functionFragment: "canSupportPair", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "clearPairSpecificMappingConfig", values: [ITransformerOracle.PairStruct[]]): string; encodeFunctionData(functionFragment: "getMappingForPair", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "getRecursiveMappingForPair", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "isPairAlreadySupported", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "pairSpecificMappingConfig", values: [PromiseOrValue, PromiseOrValue]): string; encodeFunctionData(functionFragment: "quote", values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: "setPairSpecificMappingConfig", values: [ITransformerOracle.PairSpecificMappingConfigToSetStruct[]]): string; encodeFunctionData(functionFragment: "shouldMapToUnderlying", values: [PromiseOrValue[]]): string; encodeFunctionData(functionFragment: "willAvoidMappingToUnderlying", values: [PromiseOrValue]): string; decodeFunctionResult(functionFragment: "REGISTRY", data: BytesLike): Result; decodeFunctionResult(functionFragment: "UNDERLYING_ORACLE", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addOrModifySupportForPair", data: BytesLike): Result; decodeFunctionResult(functionFragment: "addSupportForPairIfNeeded", data: BytesLike): Result; decodeFunctionResult(functionFragment: "avoidMappingToUnderlying", data: BytesLike): Result; decodeFunctionResult(functionFragment: "canSupportPair", data: BytesLike): Result; decodeFunctionResult(functionFragment: "clearPairSpecificMappingConfig", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMappingForPair", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRecursiveMappingForPair", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isPairAlreadySupported", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pairSpecificMappingConfig", data: BytesLike): Result; decodeFunctionResult(functionFragment: "quote", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPairSpecificMappingConfig", data: BytesLike): Result; decodeFunctionResult(functionFragment: "shouldMapToUnderlying", data: BytesLike): Result; decodeFunctionResult(functionFragment: "willAvoidMappingToUnderlying", data: BytesLike): Result; events: { "DependentsWillAvoidMappingToUnderlying(address[])": EventFragment; "DependentsWillMapToUnderlying(address[])": EventFragment; "PairSpecificConfigCleared(tuple[])": EventFragment; "PairSpecificConfigSet(tuple[])": EventFragment; }; getEvent(nameOrSignatureOrTopic: "DependentsWillAvoidMappingToUnderlying"): EventFragment; getEvent(nameOrSignatureOrTopic: "DependentsWillMapToUnderlying"): EventFragment; getEvent(nameOrSignatureOrTopic: "PairSpecificConfigCleared"): EventFragment; getEvent(nameOrSignatureOrTopic: "PairSpecificConfigSet"): EventFragment; } export interface DependentsWillAvoidMappingToUnderlyingEventObject { dependents: string[]; } export declare type DependentsWillAvoidMappingToUnderlyingEvent = TypedEvent<[ string[] ], DependentsWillAvoidMappingToUnderlyingEventObject>; export declare type DependentsWillAvoidMappingToUnderlyingEventFilter = TypedEventFilter; export interface DependentsWillMapToUnderlyingEventObject { dependents: string[]; } export declare type DependentsWillMapToUnderlyingEvent = TypedEvent<[ string[] ], DependentsWillMapToUnderlyingEventObject>; export declare type DependentsWillMapToUnderlyingEventFilter = TypedEventFilter; export interface PairSpecificConfigClearedEventObject { pairs: ITransformerOracle.PairStructOutput[]; } export declare type PairSpecificConfigClearedEvent = TypedEvent<[ ITransformerOracle.PairStructOutput[] ], PairSpecificConfigClearedEventObject>; export declare type PairSpecificConfigClearedEventFilter = TypedEventFilter; export interface PairSpecificConfigSetEventObject { config: ITransformerOracle.PairSpecificMappingConfigToSetStructOutput[]; } export declare type PairSpecificConfigSetEvent = TypedEvent<[ ITransformerOracle.PairSpecificMappingConfigToSetStructOutput[] ], PairSpecificConfigSetEventObject>; export declare type PairSpecificConfigSetEventFilter = TypedEventFilter; export interface ITransformerOracle extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ITransformerOracleInterface; 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: { REGISTRY(overrides?: CallOverrides): Promise<[string]>; UNDERLYING_ORACLE(overrides?: CallOverrides): Promise<[string]>; addOrModifySupportForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; addSupportForPairIfNeeded(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; avoidMappingToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; canSupportPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; clearPairSpecificMappingConfig(pairs: ITransformerOracle.PairStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string ] & { mappedTokenA: string; mappedTokenB: string; }>; getRecursiveMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string ] & { mappedTokenA: string; mappedTokenB: string; }>; isPairAlreadySupported(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; pairSpecificMappingConfig(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[ITransformerOracle.PairSpecificMappingConfigStructOutput]>; quote(tokenIn: PromiseOrValue, amountIn: PromiseOrValue, tokenOut: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise<[BigNumber] & { amountOut: BigNumber; }>; setPairSpecificMappingConfig(config: ITransformerOracle.PairSpecificMappingConfigToSetStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; shouldMapToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; willAvoidMappingToUnderlying(dependent: PromiseOrValue, overrides?: CallOverrides): Promise<[boolean]>; }; REGISTRY(overrides?: CallOverrides): Promise; UNDERLYING_ORACLE(overrides?: CallOverrides): Promise; addOrModifySupportForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; addSupportForPairIfNeeded(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; avoidMappingToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; canSupportPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; clearPairSpecificMappingConfig(pairs: ITransformerOracle.PairStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[string, string] & { mappedTokenA: string; mappedTokenB: string; }>; getRecursiveMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[string, string] & { mappedTokenA: string; mappedTokenB: string; }>; isPairAlreadySupported(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; pairSpecificMappingConfig(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; quote(tokenIn: PromiseOrValue, amountIn: PromiseOrValue, tokenOut: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise; setPairSpecificMappingConfig(config: ITransformerOracle.PairSpecificMappingConfigToSetStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; shouldMapToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; willAvoidMappingToUnderlying(dependent: PromiseOrValue, overrides?: CallOverrides): Promise; callStatic: { REGISTRY(overrides?: CallOverrides): Promise; UNDERLYING_ORACLE(overrides?: CallOverrides): Promise; addOrModifySupportForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise; addSupportForPairIfNeeded(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise; avoidMappingToUnderlying(dependents: PromiseOrValue[], overrides?: CallOverrides): Promise; canSupportPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; clearPairSpecificMappingConfig(pairs: ITransformerOracle.PairStruct[], overrides?: CallOverrides): Promise; getMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string ] & { mappedTokenA: string; mappedTokenB: string; }>; getRecursiveMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise<[ string, string ] & { mappedTokenA: string; mappedTokenB: string; }>; isPairAlreadySupported(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; pairSpecificMappingConfig(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; quote(tokenIn: PromiseOrValue, amountIn: PromiseOrValue, tokenOut: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise; setPairSpecificMappingConfig(config: ITransformerOracle.PairSpecificMappingConfigToSetStruct[], overrides?: CallOverrides): Promise; shouldMapToUnderlying(dependents: PromiseOrValue[], overrides?: CallOverrides): Promise; willAvoidMappingToUnderlying(dependent: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { "DependentsWillAvoidMappingToUnderlying(address[])"(dependents?: null): DependentsWillAvoidMappingToUnderlyingEventFilter; DependentsWillAvoidMappingToUnderlying(dependents?: null): DependentsWillAvoidMappingToUnderlyingEventFilter; "DependentsWillMapToUnderlying(address[])"(dependents?: null): DependentsWillMapToUnderlyingEventFilter; DependentsWillMapToUnderlying(dependents?: null): DependentsWillMapToUnderlyingEventFilter; "PairSpecificConfigCleared(tuple[])"(pairs?: null): PairSpecificConfigClearedEventFilter; PairSpecificConfigCleared(pairs?: null): PairSpecificConfigClearedEventFilter; "PairSpecificConfigSet(tuple[])"(config?: null): PairSpecificConfigSetEventFilter; PairSpecificConfigSet(config?: null): PairSpecificConfigSetEventFilter; }; estimateGas: { REGISTRY(overrides?: CallOverrides): Promise; UNDERLYING_ORACLE(overrides?: CallOverrides): Promise; addOrModifySupportForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; addSupportForPairIfNeeded(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; avoidMappingToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; canSupportPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; clearPairSpecificMappingConfig(pairs: ITransformerOracle.PairStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; getRecursiveMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; isPairAlreadySupported(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; pairSpecificMappingConfig(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; quote(tokenIn: PromiseOrValue, amountIn: PromiseOrValue, tokenOut: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise; setPairSpecificMappingConfig(config: ITransformerOracle.PairSpecificMappingConfigToSetStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; shouldMapToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; willAvoidMappingToUnderlying(dependent: PromiseOrValue, overrides?: CallOverrides): Promise; }; populateTransaction: { REGISTRY(overrides?: CallOverrides): Promise; UNDERLYING_ORACLE(overrides?: CallOverrides): Promise; addOrModifySupportForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; addSupportForPairIfNeeded(tokenA: PromiseOrValue, tokenB: PromiseOrValue, data: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; avoidMappingToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; canSupportPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; clearPairSpecificMappingConfig(pairs: ITransformerOracle.PairStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; getMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; getRecursiveMappingForPair(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; isPairAlreadySupported(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; pairSpecificMappingConfig(tokenA: PromiseOrValue, tokenB: PromiseOrValue, overrides?: CallOverrides): Promise; quote(tokenIn: PromiseOrValue, amountIn: PromiseOrValue, tokenOut: PromiseOrValue, data: PromiseOrValue, overrides?: CallOverrides): Promise; setPairSpecificMappingConfig(config: ITransformerOracle.PairSpecificMappingConfigToSetStruct[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; shouldMapToUnderlying(dependents: PromiseOrValue[], overrides?: Overrides & { from?: PromiseOrValue; }): Promise; willAvoidMappingToUnderlying(dependent: PromiseOrValue, overrides?: CallOverrides): Promise; }; } //# sourceMappingURL=ITransformerOracle.d.ts.map