import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, Overrides, PayableOverrides, 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 ZapInterface extends utils.Interface { functions: { 'WNATIVE()': FunctionFragment; 'apeRouter()': FunctionFragment; 'factory()': FunctionFragment; 'getMinAmounts(uint256,address[],address[])': FunctionFragment; 'router()': FunctionFragment; 'zap(address,uint256,address[],address[],address[],uint256[],uint256[],address,uint256)': FunctionFragment; 'zapLPMigrator(address,address,uint256,uint256,uint256,uint256,uint256,uint256)': FunctionFragment; 'zapLPPool(address,uint256,address[],address[],address[],uint256[],uint256[],uint256,address)': FunctionFragment; 'zapLPPoolNative(address[],address[],address[],uint256[],uint256[],uint256,address)': FunctionFragment; 'zapMiniApeV2(address,uint256,address[],address[],address[],uint256[],uint256[],uint256,address,uint256)': FunctionFragment; 'zapMiniApeV2Native(address[],address[],address[],uint256[],uint256[],uint256,address,uint256)': FunctionFragment; 'zapNative(address[],address[],address[],uint256[],uint256[],address,uint256)': FunctionFragment; 'zapSingleAssetPool(address,uint256,address[],uint256,uint256,address)': FunctionFragment; 'zapSingleAssetPoolNative(address[],uint256,uint256,address)': FunctionFragment; 'zapTBill(address,uint256,address[],address[],address[],uint256[],uint256[],uint256,address,uint256)': FunctionFragment; 'zapTBillNative(address[],address[],address[],uint256[],uint256[],uint256,address,uint256)': FunctionFragment; }; getFunction(nameOrSignatureOrTopic: 'WNATIVE' | 'apeRouter' | 'factory' | 'getMinAmounts' | 'router' | 'zap' | 'zapLPMigrator' | 'zapLPPool' | 'zapLPPoolNative' | 'zapMiniApeV2' | 'zapMiniApeV2Native' | 'zapNative' | 'zapSingleAssetPool' | 'zapSingleAssetPoolNative' | 'zapTBill' | 'zapTBillNative'): FunctionFragment; encodeFunctionData(functionFragment: 'WNATIVE', values?: undefined): string; encodeFunctionData(functionFragment: 'apeRouter', values?: undefined): string; encodeFunctionData(functionFragment: 'factory', values?: undefined): string; encodeFunctionData(functionFragment: 'getMinAmounts', values: [PromiseOrValue, PromiseOrValue[], PromiseOrValue[]]): string; encodeFunctionData(functionFragment: 'router', values?: undefined): string; encodeFunctionData(functionFragment: 'zap', values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapLPMigrator', values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapLPPool', values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapLPPoolNative', values: [ PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapMiniApeV2', values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapMiniApeV2Native', values: [ PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapNative', values: [ PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapSingleAssetPool', values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapSingleAssetPoolNative', values: [ PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapTBill', values: [ PromiseOrValue, PromiseOrValue, PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; encodeFunctionData(functionFragment: 'zapTBillNative', values: [ PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue[], PromiseOrValue, PromiseOrValue, PromiseOrValue ]): string; decodeFunctionResult(functionFragment: 'WNATIVE', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'apeRouter', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'factory', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'getMinAmounts', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'router', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zap', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapLPMigrator', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapLPPool', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapLPPoolNative', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapMiniApeV2', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapMiniApeV2Native', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapNative', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapSingleAssetPool', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapSingleAssetPoolNative', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapTBill', data: BytesLike): Result; decodeFunctionResult(functionFragment: 'zapTBillNative', data: BytesLike): Result; events: { 'LPMigrated(address,address,address,uint256)': EventFragment; 'Zap(address,uint256,address[])': EventFragment; 'ZapLPPool(address,uint256,address)': EventFragment; 'ZapLPPoolNative(uint256,address)': EventFragment; 'ZapMiniApeV2(address,uint256,uint256)': EventFragment; 'ZapMiniApeV2Native(uint256,uint256)': EventFragment; 'ZapNative(uint256,address[])': EventFragment; 'ZapSingleAssetPool(address,uint256,address)': EventFragment; 'ZapSingleAssetPoolNative(uint256,address)': EventFragment; 'ZapTBill(address,uint256,address)': EventFragment; 'ZapTBillNative(uint256,address)': EventFragment; }; getEvent(nameOrSignatureOrTopic: 'LPMigrated'): EventFragment; getEvent(nameOrSignatureOrTopic: 'Zap'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapLPPool'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapLPPoolNative'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapMiniApeV2'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapMiniApeV2Native'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapNative'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapSingleAssetPool'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapSingleAssetPoolNative'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapTBill'): EventFragment; getEvent(nameOrSignatureOrTopic: 'ZapTBillNative'): EventFragment; } export interface LPMigratedEventObject { lp: string; fromRouter: string; toRouter: string; amount: BigNumber; } export type LPMigratedEvent = TypedEvent<[string, string, string, BigNumber], LPMigratedEventObject>; export type LPMigratedEventFilter = TypedEventFilter; export interface ZapEventObject { inputToken: string; inputAmount: BigNumber; lpTokens: string[]; } export type ZapEvent = TypedEvent<[string, BigNumber, string[]], ZapEventObject>; export type ZapEventFilter = TypedEventFilter; export interface ZapLPPoolEventObject { inputToken: string; inputAmount: BigNumber; pool: string; } export type ZapLPPoolEvent = TypedEvent<[string, BigNumber, string], ZapLPPoolEventObject>; export type ZapLPPoolEventFilter = TypedEventFilter; export interface ZapLPPoolNativeEventObject { inputAmount: BigNumber; pool: string; } export type ZapLPPoolNativeEvent = TypedEvent<[BigNumber, string], ZapLPPoolNativeEventObject>; export type ZapLPPoolNativeEventFilter = TypedEventFilter; export interface ZapMiniApeV2EventObject { inputToken: string; inputAmount: BigNumber; pid: BigNumber; } export type ZapMiniApeV2Event = TypedEvent<[string, BigNumber, BigNumber], ZapMiniApeV2EventObject>; export type ZapMiniApeV2EventFilter = TypedEventFilter; export interface ZapMiniApeV2NativeEventObject { inputAmount: BigNumber; pid: BigNumber; } export type ZapMiniApeV2NativeEvent = TypedEvent<[BigNumber, BigNumber], ZapMiniApeV2NativeEventObject>; export type ZapMiniApeV2NativeEventFilter = TypedEventFilter; export interface ZapNativeEventObject { inputAmount: BigNumber; lpTokens: string[]; } export type ZapNativeEvent = TypedEvent<[BigNumber, string[]], ZapNativeEventObject>; export type ZapNativeEventFilter = TypedEventFilter; export interface ZapSingleAssetPoolEventObject { inputToken: string; inputAmount: BigNumber; pool: string; } export type ZapSingleAssetPoolEvent = TypedEvent<[string, BigNumber, string], ZapSingleAssetPoolEventObject>; export type ZapSingleAssetPoolEventFilter = TypedEventFilter; export interface ZapSingleAssetPoolNativeEventObject { inputAmount: BigNumber; pool: string; } export type ZapSingleAssetPoolNativeEvent = TypedEvent<[BigNumber, string], ZapSingleAssetPoolNativeEventObject>; export type ZapSingleAssetPoolNativeEventFilter = TypedEventFilter; export interface ZapTBillEventObject { inputToken: string; inputAmount: BigNumber; bill: string; } export type ZapTBillEvent = TypedEvent<[string, BigNumber, string], ZapTBillEventObject>; export type ZapTBillEventFilter = TypedEventFilter; export interface ZapTBillNativeEventObject { inputAmount: BigNumber; bill: string; } export type ZapTBillNativeEvent = TypedEvent<[BigNumber, string], ZapTBillNativeEventObject>; export type ZapTBillNativeEventFilter = TypedEventFilter; export interface Zap extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; interface: ZapInterface; 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: { WNATIVE(overrides?: CallOverrides): Promise<[string]>; apeRouter(overrides?: CallOverrides): Promise<[string]>; factory(overrides?: CallOverrides): Promise<[string]>; getMinAmounts(inputAmount: PromiseOrValue, path0: PromiseOrValue[], path1: PromiseOrValue[], overrides?: CallOverrides): Promise<[ [BigNumber, BigNumber], [BigNumber, BigNumber] ] & { minAmountsSwap: [BigNumber, BigNumber]; minAmountsLP: [BigNumber, BigNumber]; }>; router(overrides?: CallOverrides): Promise<[string]>; zap(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPMigrator(router: PromiseOrValue, lp: PromiseOrValue, amount: PromiseOrValue, amountAMinRemove: PromiseOrValue, amountBMinRemove: PromiseOrValue, amountAMinAdd: PromiseOrValue, amountBMinAdd: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPoolNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2Native(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPoolNative(path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapTBill(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapTBillNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; }; WNATIVE(overrides?: CallOverrides): Promise; apeRouter(overrides?: CallOverrides): Promise; factory(overrides?: CallOverrides): Promise; getMinAmounts(inputAmount: PromiseOrValue, path0: PromiseOrValue[], path1: PromiseOrValue[], overrides?: CallOverrides): Promise<[ [BigNumber, BigNumber], [BigNumber, BigNumber] ] & { minAmountsSwap: [BigNumber, BigNumber]; minAmountsLP: [BigNumber, BigNumber]; }>; router(overrides?: CallOverrides): Promise; zap(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPMigrator(router: PromiseOrValue, lp: PromiseOrValue, amount: PromiseOrValue, amountAMinRemove: PromiseOrValue, amountBMinRemove: PromiseOrValue, amountAMinAdd: PromiseOrValue, amountBMinAdd: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPoolNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2Native(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPoolNative(path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapTBill(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapTBillNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; callStatic: { WNATIVE(overrides?: CallOverrides): Promise; apeRouter(overrides?: CallOverrides): Promise; factory(overrides?: CallOverrides): Promise; getMinAmounts(inputAmount: PromiseOrValue, path0: PromiseOrValue[], path1: PromiseOrValue[], overrides?: CallOverrides): Promise<[ [BigNumber, BigNumber], [BigNumber, BigNumber] ] & { minAmountsSwap: [BigNumber, BigNumber]; minAmountsLP: [BigNumber, BigNumber]; }>; router(overrides?: CallOverrides): Promise; zap(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: CallOverrides): Promise; zapLPMigrator(router: PromiseOrValue, lp: PromiseOrValue, amount: PromiseOrValue, amountAMinRemove: PromiseOrValue, amountBMinRemove: PromiseOrValue, amountAMinAdd: PromiseOrValue, amountBMinAdd: PromiseOrValue, deadline: PromiseOrValue, overrides?: CallOverrides): Promise; zapLPPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: CallOverrides): Promise; zapLPPoolNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: CallOverrides): Promise; zapMiniApeV2(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: CallOverrides): Promise; zapMiniApeV2Native(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: CallOverrides): Promise; zapNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: CallOverrides): Promise; zapSingleAssetPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: CallOverrides): Promise; zapSingleAssetPoolNative(path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: CallOverrides): Promise; zapTBill(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: CallOverrides): Promise; zapTBillNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: CallOverrides): Promise; }; filters: { 'LPMigrated(address,address,address,uint256)'(lp?: null, fromRouter?: null, toRouter?: null, amount?: null): LPMigratedEventFilter; LPMigrated(lp?: null, fromRouter?: null, toRouter?: null, amount?: null): LPMigratedEventFilter; 'Zap(address,uint256,address[])'(inputToken?: null, inputAmount?: null, lpTokens?: null): ZapEventFilter; Zap(inputToken?: null, inputAmount?: null, lpTokens?: null): ZapEventFilter; 'ZapLPPool(address,uint256,address)'(inputToken?: null, inputAmount?: null, pool?: null): ZapLPPoolEventFilter; ZapLPPool(inputToken?: null, inputAmount?: null, pool?: null): ZapLPPoolEventFilter; 'ZapLPPoolNative(uint256,address)'(inputAmount?: null, pool?: null): ZapLPPoolNativeEventFilter; ZapLPPoolNative(inputAmount?: null, pool?: null): ZapLPPoolNativeEventFilter; 'ZapMiniApeV2(address,uint256,uint256)'(inputToken?: null, inputAmount?: null, pid?: null): ZapMiniApeV2EventFilter; ZapMiniApeV2(inputToken?: null, inputAmount?: null, pid?: null): ZapMiniApeV2EventFilter; 'ZapMiniApeV2Native(uint256,uint256)'(inputAmount?: null, pid?: null): ZapMiniApeV2NativeEventFilter; ZapMiniApeV2Native(inputAmount?: null, pid?: null): ZapMiniApeV2NativeEventFilter; 'ZapNative(uint256,address[])'(inputAmount?: null, lpTokens?: null): ZapNativeEventFilter; ZapNative(inputAmount?: null, lpTokens?: null): ZapNativeEventFilter; 'ZapSingleAssetPool(address,uint256,address)'(inputToken?: null, inputAmount?: null, pool?: null): ZapSingleAssetPoolEventFilter; ZapSingleAssetPool(inputToken?: null, inputAmount?: null, pool?: null): ZapSingleAssetPoolEventFilter; 'ZapSingleAssetPoolNative(uint256,address)'(inputAmount?: null, pool?: null): ZapSingleAssetPoolNativeEventFilter; ZapSingleAssetPoolNative(inputAmount?: null, pool?: null): ZapSingleAssetPoolNativeEventFilter; 'ZapTBill(address,uint256,address)'(inputToken?: null, inputAmount?: null, bill?: null): ZapTBillEventFilter; ZapTBill(inputToken?: null, inputAmount?: null, bill?: null): ZapTBillEventFilter; 'ZapTBillNative(uint256,address)'(inputAmount?: null, bill?: null): ZapTBillNativeEventFilter; ZapTBillNative(inputAmount?: null, bill?: null): ZapTBillNativeEventFilter; }; estimateGas: { WNATIVE(overrides?: CallOverrides): Promise; apeRouter(overrides?: CallOverrides): Promise; factory(overrides?: CallOverrides): Promise; getMinAmounts(inputAmount: PromiseOrValue, path0: PromiseOrValue[], path1: PromiseOrValue[], overrides?: CallOverrides): Promise; router(overrides?: CallOverrides): Promise; zap(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPMigrator(router: PromiseOrValue, lp: PromiseOrValue, amount: PromiseOrValue, amountAMinRemove: PromiseOrValue, amountBMinRemove: PromiseOrValue, amountAMinAdd: PromiseOrValue, amountBMinAdd: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPoolNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2Native(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPoolNative(path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapTBill(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapTBillNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; }; populateTransaction: { WNATIVE(overrides?: CallOverrides): Promise; apeRouter(overrides?: CallOverrides): Promise; factory(overrides?: CallOverrides): Promise; getMinAmounts(inputAmount: PromiseOrValue, path0: PromiseOrValue[], path1: PromiseOrValue[], overrides?: CallOverrides): Promise; router(overrides?: CallOverrides): Promise; zap(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPMigrator(router: PromiseOrValue, lp: PromiseOrValue, amount: PromiseOrValue, amountAMinRemove: PromiseOrValue, amountBMinRemove: PromiseOrValue, amountAMinAdd: PromiseOrValue, amountBMinAdd: PromiseOrValue, deadline: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapLPPoolNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapMiniApeV2Native(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, miniApe: PromiseOrValue, pid: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], to: PromiseOrValue, deadline: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPool(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapSingleAssetPoolNative(path: PromiseOrValue[], minAmountsSwap: PromiseOrValue, deadline: PromiseOrValue, pool: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; zapTBill(inputToken: PromiseOrValue, inputAmount: PromiseOrValue, lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: Overrides & { from?: PromiseOrValue; }): Promise; zapTBillNative(lpTokens: PromiseOrValue[], path0: PromiseOrValue[], path1: PromiseOrValue[], minAmountsSwap: PromiseOrValue[], minAmountsLP: PromiseOrValue[], deadline: PromiseOrValue, bill: PromiseOrValue, maxPrice: PromiseOrValue, overrides?: PayableOverrides & { from?: PromiseOrValue; }): Promise; }; }