import { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import { FunctionFragment, Result, EventFragment } from "@ethersproject/abi"; import { Listener, Provider } from "@ethersproject/providers"; import { TypedEventFilter, TypedEvent, TypedListener, OnEvent } from "./common"; export declare type SwapStruct = { pool: string; tokenIn: string; tokenOut: string; swapAmount: BigNumberish; limitReturnAmount: BigNumberish; maxPrice: BigNumberish; }; export declare type SwapStructOutput = [ string, string, string, BigNumber, BigNumber, BigNumber ] & { pool: string; tokenIn: string; tokenOut: string; swapAmount: BigNumber; limitReturnAmount: BigNumber; maxPrice: BigNumber; }; export interface ExchangeProxyInterface extends utils.Interface { functions: { "batchSwapExactIn((address,address,address,uint256,uint256,uint256)[],address,address,uint256,uint256)": FunctionFragment; "batchSwapExactOut((address,address,address,uint256,uint256,uint256)[],address,address,uint256)": FunctionFragment; "isOwner()": FunctionFragment; "multihopBatchSwapExactIn(tuple[][],address,address,uint256,uint256)": FunctionFragment; "multihopBatchSwapExactOut(tuple[][],address,address,uint256)": FunctionFragment; "owner()": FunctionFragment; "renounceOwnership()": FunctionFragment; "setRegistry(address)": FunctionFragment; "smartSwapExactIn(address,address,uint256,uint256,uint256)": FunctionFragment; "smartSwapExactOut(address,address,uint256,uint256,uint256)": FunctionFragment; "transferOwnership(address)": FunctionFragment; "viewSplitExactIn(address,address,uint256,uint256)": FunctionFragment; "viewSplitExactOut(address,address,uint256,uint256)": FunctionFragment; }; encodeFunctionData(functionFragment: "batchSwapExactIn", values: [SwapStruct[], string, string, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "batchSwapExactOut", values: [SwapStruct[], string, string, BigNumberish]): string; encodeFunctionData(functionFragment: "isOwner", values?: undefined): string; encodeFunctionData(functionFragment: "multihopBatchSwapExactIn", values: [SwapStruct[], string, string, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "multihopBatchSwapExactOut", values: [SwapStruct[], string, string, BigNumberish]): string; encodeFunctionData(functionFragment: "owner", values?: undefined): string; encodeFunctionData(functionFragment: "renounceOwnership", values?: undefined): string; encodeFunctionData(functionFragment: "setRegistry", values: [string]): string; encodeFunctionData(functionFragment: "smartSwapExactIn", values: [string, string, BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "smartSwapExactOut", values: [string, string, BigNumberish, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "transferOwnership", values: [string]): string; encodeFunctionData(functionFragment: "viewSplitExactIn", values: [string, string, BigNumberish, BigNumberish]): string; encodeFunctionData(functionFragment: "viewSplitExactOut", values: [string, string, BigNumberish, BigNumberish]): string; decodeFunctionResult(functionFragment: "batchSwapExactIn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "batchSwapExactOut", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isOwner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multihopBatchSwapExactIn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multihopBatchSwapExactOut", data: BytesLike): Result; decodeFunctionResult(functionFragment: "owner", data: BytesLike): Result; decodeFunctionResult(functionFragment: "renounceOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setRegistry", data: BytesLike): Result; decodeFunctionResult(functionFragment: "smartSwapExactIn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "smartSwapExactOut", data: BytesLike): Result; decodeFunctionResult(functionFragment: "transferOwnership", data: BytesLike): Result; decodeFunctionResult(functionFragment: "viewSplitExactIn", data: BytesLike): Result; decodeFunctionResult(functionFragment: "viewSplitExactOut", data: BytesLike): Result; events: { "OwnershipTransferred(address,address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "OwnershipTransferred"): EventFragment; } export declare type OwnershipTransferredEvent = TypedEvent<[ string, string ], { previousOwner: string; newOwner: string; }>; export declare type OwnershipTransferredEventFilter = TypedEventFilter; export interface ExchangeProxy extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ExchangeProxyInterface; 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: { batchSwapExactIn(swaps: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; batchSwapExactOut(swaps: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; isOwner(overrides?: CallOverrides): Promise<[boolean]>; multihopBatchSwapExactIn(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; multihopBatchSwapExactOut(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; owner(overrides?: CallOverrides): Promise<[string]>; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; setRegistry(_registry: string, overrides?: Overrides & { from?: string | Promise; }): Promise; smartSwapExactIn(tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; smartSwapExactOut(tokenIn: string, tokenOut: string, totalAmountOut: BigNumberish, maxTotalAmountIn: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; viewSplitExactIn(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise<[ SwapStructOutput[], BigNumber ] & { swaps: SwapStructOutput[]; totalOutput: BigNumber; }>; viewSplitExactOut(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise<[ SwapStructOutput[], BigNumber ] & { swaps: SwapStructOutput[]; totalOutput: BigNumber; }>; }; batchSwapExactIn(swaps: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; batchSwapExactOut(swaps: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; isOwner(overrides?: CallOverrides): Promise; multihopBatchSwapExactIn(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; multihopBatchSwapExactOut(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; owner(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; setRegistry(_registry: string, overrides?: Overrides & { from?: string | Promise; }): Promise; smartSwapExactIn(tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; smartSwapExactOut(tokenIn: string, tokenOut: string, totalAmountOut: BigNumberish, maxTotalAmountIn: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; viewSplitExactIn(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise<[ SwapStructOutput[], BigNumber ] & { swaps: SwapStructOutput[]; totalOutput: BigNumber; }>; viewSplitExactOut(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise<[ SwapStructOutput[], BigNumber ] & { swaps: SwapStructOutput[]; totalOutput: BigNumber; }>; callStatic: { batchSwapExactIn(swaps: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: CallOverrides): Promise; batchSwapExactOut(swaps: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: CallOverrides): Promise; isOwner(overrides?: CallOverrides): Promise; multihopBatchSwapExactIn(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: CallOverrides): Promise; multihopBatchSwapExactOut(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: CallOverrides): Promise; owner(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: CallOverrides): Promise; setRegistry(_registry: string, overrides?: CallOverrides): Promise; smartSwapExactIn(tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise; smartSwapExactOut(tokenIn: string, tokenOut: string, totalAmountOut: BigNumberish, maxTotalAmountIn: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise; transferOwnership(newOwner: string, overrides?: CallOverrides): Promise; viewSplitExactIn(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise<[ SwapStructOutput[], BigNumber ] & { swaps: SwapStructOutput[]; totalOutput: BigNumber; }>; viewSplitExactOut(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise<[ SwapStructOutput[], BigNumber ] & { swaps: SwapStructOutput[]; totalOutput: BigNumber; }>; }; filters: { "OwnershipTransferred(address,address)"(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; OwnershipTransferred(previousOwner?: string | null, newOwner?: string | null): OwnershipTransferredEventFilter; }; estimateGas: { batchSwapExactIn(swaps: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; batchSwapExactOut(swaps: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; isOwner(overrides?: CallOverrides): Promise; multihopBatchSwapExactIn(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; multihopBatchSwapExactOut(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; owner(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; setRegistry(_registry: string, overrides?: Overrides & { from?: string | Promise; }): Promise; smartSwapExactIn(tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; smartSwapExactOut(tokenIn: string, tokenOut: string, totalAmountOut: BigNumberish, maxTotalAmountIn: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; viewSplitExactIn(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise; viewSplitExactOut(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise; }; populateTransaction: { batchSwapExactIn(swaps: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; batchSwapExactOut(swaps: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; isOwner(overrides?: CallOverrides): Promise; multihopBatchSwapExactIn(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; multihopBatchSwapExactOut(swapSequences: SwapStruct[], tokenIn: string, tokenOut: string, maxTotalAmountIn: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; owner(overrides?: CallOverrides): Promise; renounceOwnership(overrides?: Overrides & { from?: string | Promise; }): Promise; setRegistry(_registry: string, overrides?: Overrides & { from?: string | Promise; }): Promise; smartSwapExactIn(tokenIn: string, tokenOut: string, totalAmountIn: BigNumberish, minTotalAmountOut: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; smartSwapExactOut(tokenIn: string, tokenOut: string, totalAmountOut: BigNumberish, maxTotalAmountIn: BigNumberish, nPools: BigNumberish, overrides?: PayableOverrides & { from?: string | Promise; }): Promise; transferOwnership(newOwner: string, overrides?: Overrides & { from?: string | Promise; }): Promise; viewSplitExactIn(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise; viewSplitExactOut(tokenIn: string, tokenOut: string, swapAmount: BigNumberish, nPools: BigNumberish, overrides?: CallOverrides): Promise; }; } //# sourceMappingURL=ExchangeProxy.d.ts.map