UNPKG

@mean-finance/dca-v2-periphery

Version:

💱 Periphery smart contracts of DCA V2 by mean.finance

437 lines • 31.3 kB
import type { BaseContract, BigNumber, BigNumberish, BytesLike, CallOverrides, ContractTransaction, PayableOverrides, PopulatedTransaction, Signer, utils } from "ethers"; import type { FunctionFragment, Result } from "@ethersproject/abi"; import type { Listener, Provider } from "@ethersproject/providers"; import type { TypedEventFilter, TypedEvent, TypedListener, OnEvent, PromiseOrValue } from "../../../common"; export declare type PairStruct = { tokenA: PromiseOrValue<string>; tokenB: PromiseOrValue<string>; }; export declare type PairStructOutput = [string, string] & { tokenA: string; tokenB: string; }; export declare namespace IDCAPermissionManager { type PermissionSetStruct = { operator: PromiseOrValue<string>; permissions: PromiseOrValue<BigNumberish>[]; }; type PermissionSetStructOutput = [string, number[]] & { operator: string; permissions: number[]; }; type PositionPermissionsStruct = { tokenId: PromiseOrValue<BigNumberish>; permissionSets: IDCAPermissionManager.PermissionSetStruct[]; }; type PositionPermissionsStructOutput = [ BigNumber, IDCAPermissionManager.PermissionSetStructOutput[] ] & { tokenId: BigNumber; permissionSets: IDCAPermissionManager.PermissionSetStructOutput[]; }; } export declare namespace IDCAHubSwapHandler { type TokenInSwapStruct = { token: PromiseOrValue<string>; reward: PromiseOrValue<BigNumberish>; toProvide: PromiseOrValue<BigNumberish>; platformFee: PromiseOrValue<BigNumberish>; }; type TokenInSwapStructOutput = [ string, BigNumber, BigNumber, BigNumber ] & { token: string; reward: BigNumber; toProvide: BigNumber; platformFee: BigNumber; }; type PairInSwapStruct = { tokenA: PromiseOrValue<string>; tokenB: PromiseOrValue<string>; totalAmountToSwapTokenA: PromiseOrValue<BigNumberish>; totalAmountToSwapTokenB: PromiseOrValue<BigNumberish>; ratioAToB: PromiseOrValue<BigNumberish>; ratioBToA: PromiseOrValue<BigNumberish>; intervalsInSwap: PromiseOrValue<BytesLike>; }; type PairInSwapStructOutput = [ string, string, BigNumber, BigNumber, BigNumber, BigNumber, string ] & { tokenA: string; tokenB: string; totalAmountToSwapTokenA: BigNumber; totalAmountToSwapTokenB: BigNumber; ratioAToB: BigNumber; ratioBToA: BigNumber; intervalsInSwap: string; }; type SwapInfoStruct = { tokens: IDCAHubSwapHandler.TokenInSwapStruct[]; pairs: IDCAHubSwapHandler.PairInSwapStruct[]; }; type SwapInfoStructOutput = [ IDCAHubSwapHandler.TokenInSwapStructOutput[], IDCAHubSwapHandler.PairInSwapStructOutput[] ] & { tokens: IDCAHubSwapHandler.TokenInSwapStructOutput[]; pairs: IDCAHubSwapHandler.PairInSwapStructOutput[]; }; } export declare namespace ILegacyDCAHub { type TokenInSwapStruct = { token: PromiseOrValue<string>; reward: PromiseOrValue<BigNumberish>; toProvide: PromiseOrValue<BigNumberish>; platformFee: PromiseOrValue<BigNumberish>; }; type TokenInSwapStructOutput = [ string, BigNumber, BigNumber, BigNumber ] & { token: string; reward: BigNumber; toProvide: BigNumber; platformFee: BigNumber; }; type PairInSwapStruct = { tokenA: PromiseOrValue<string>; tokenB: PromiseOrValue<string>; ratioAToB: PromiseOrValue<BigNumberish>; ratioBToA: PromiseOrValue<BigNumberish>; intervalsInSwap: PromiseOrValue<BytesLike>; }; type PairInSwapStructOutput = [ string, string, BigNumber, BigNumber, string ] & { tokenA: string; tokenB: string; ratioAToB: BigNumber; ratioBToA: BigNumber; intervalsInSwap: string; }; type SwapInfoStruct = { tokens: ILegacyDCAHub.TokenInSwapStruct[]; pairs: ILegacyDCAHub.PairInSwapStruct[]; }; type SwapInfoStructOutput = [ ILegacyDCAHub.TokenInSwapStructOutput[], ILegacyDCAHub.PairInSwapStructOutput[] ] & { tokens: ILegacyDCAHub.TokenInSwapStructOutput[]; pairs: ILegacyDCAHub.PairInSwapStructOutput[]; }; } export declare namespace IDCAHubPositionHandler { type PositionSetStruct = { token: PromiseOrValue<string>; positionIds: PromiseOrValue<BigNumberish>[]; }; type PositionSetStructOutput = [string, BigNumber[]] & { token: string; positionIds: BigNumber[]; }; } export interface IDCAHubCompanionInterface extends utils.Interface { functions: { "deposit(address,address,address,uint256,uint32,uint32,address,(address,uint8[])[],bytes)": FunctionFragment; "depositWithBalanceOnContract(address,address,address,uint32,uint32,address,(address,uint8[])[],bytes)": FunctionFragment; "getNextSwapInfo(address,(address,address)[],bool,bytes)": FunctionFragment; "increasePosition(address,uint256,uint256,uint32)": FunctionFragment; "increasePositionWithBalanceOnContract(address,uint256,uint32)": FunctionFragment; "legacyGetNextSwapInfo(address,(address,address)[])": FunctionFragment; "multiPermissionPermit(address,(uint256,(address,uint8[])[])[],uint256,uint8,bytes32,bytes32)": FunctionFragment; "permissionPermit(address,(address,uint8[])[],uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment; "reducePosition(address,uint256,uint256,uint32,address)": FunctionFragment; "secondsUntilNextSwap(address,(address,address)[],bool)": FunctionFragment; "terminate(address,uint256,address,address)": FunctionFragment; "withdrawSwapped(address,uint256,address)": FunctionFragment; "withdrawSwappedMany(address,(address,uint256[])[],address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "deposit" | "depositWithBalanceOnContract" | "getNextSwapInfo" | "increasePosition" | "increasePositionWithBalanceOnContract" | "legacyGetNextSwapInfo" | "multiPermissionPermit" | "permissionPermit" | "reducePosition" | "secondsUntilNextSwap" | "terminate" | "withdrawSwapped" | "withdrawSwappedMany"): FunctionFragment; encodeFunctionData(functionFragment: "deposit", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string>, IDCAPermissionManager.PermissionSetStruct[], PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "depositWithBalanceOnContract", values: [ PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string>, IDCAPermissionManager.PermissionSetStruct[], PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "getNextSwapInfo", values: [ PromiseOrValue<string>, PairStruct[], PromiseOrValue<boolean>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "increasePosition", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish> ]): string; encodeFunctionData(functionFragment: "increasePositionWithBalanceOnContract", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish> ]): string; encodeFunctionData(functionFragment: "legacyGetNextSwapInfo", values: [PromiseOrValue<string>, PairStruct[]]): string; encodeFunctionData(functionFragment: "multiPermissionPermit", values: [ PromiseOrValue<string>, IDCAPermissionManager.PositionPermissionsStruct[], PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "permissionPermit", values: [ PromiseOrValue<string>, IDCAPermissionManager.PermissionSetStruct[], PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "reducePosition", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "secondsUntilNextSwap", values: [PromiseOrValue<string>, PairStruct[], PromiseOrValue<boolean>]): string; encodeFunctionData(functionFragment: "terminate", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<string>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "withdrawSwapped", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "withdrawSwappedMany", values: [ PromiseOrValue<string>, IDCAHubPositionHandler.PositionSetStruct[], PromiseOrValue<string> ]): string; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositWithBalanceOnContract", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getNextSwapInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "increasePosition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "increasePositionWithBalanceOnContract", data: BytesLike): Result; decodeFunctionResult(functionFragment: "legacyGetNextSwapInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multiPermissionPermit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissionPermit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "reducePosition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "secondsUntilNextSwap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "terminate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawSwapped", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawSwappedMany", data: BytesLike): Result; events: {}; } export interface IDCAHubCompanion extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: IDCAHubCompanionInterface; queryFilter<TEvent extends TypedEvent>(event: TypedEventFilter<TEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TEvent>>; listeners<TEvent extends TypedEvent>(eventFilter?: TypedEventFilter<TEvent>): Array<TypedListener<TEvent>>; listeners(eventName?: string): Array<Listener>; removeAllListeners<TEvent extends TypedEvent>(eventFilter: TypedEventFilter<TEvent>): this; removeAllListeners(eventName?: string): this; off: OnEvent<this>; on: OnEvent<this>; once: OnEvent<this>; removeListener: OnEvent<this>; functions: { deposit(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; depositWithBalanceOnContract(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, oracleData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[IDCAHubSwapHandler.SwapInfoStructOutput]>; increasePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; increasePositionWithBalanceOnContract(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; legacyGetNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], overrides?: CallOverrides): Promise<[ILegacyDCAHub.SwapInfoStructOutput]>; multiPermissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PositionPermissionsStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; permissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], tokenId: PromiseOrValue<BigNumberish>, deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; reducePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; secondsUntilNextSwap(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber[]]>; terminate(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipientUnswapped: PromiseOrValue<string>, recipientSwapped: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; withdrawSwapped(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; withdrawSwappedMany(hub: PromiseOrValue<string>, positions: IDCAHubPositionHandler.PositionSetStruct[], recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; }; deposit(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; depositWithBalanceOnContract(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; getNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, oracleData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<IDCAHubSwapHandler.SwapInfoStructOutput>; increasePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; increasePositionWithBalanceOnContract(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; legacyGetNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], overrides?: CallOverrides): Promise<ILegacyDCAHub.SwapInfoStructOutput>; multiPermissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PositionPermissionsStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; permissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], tokenId: PromiseOrValue<BigNumberish>, deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; reducePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; secondsUntilNextSwap(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber[]>; terminate(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipientUnswapped: PromiseOrValue<string>, recipientSwapped: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; withdrawSwapped(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; withdrawSwappedMany(hub: PromiseOrValue<string>, positions: IDCAHubPositionHandler.PositionSetStruct[], recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; callStatic: { deposit(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; depositWithBalanceOnContract(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; getNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, oracleData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<IDCAHubSwapHandler.SwapInfoStructOutput>; increasePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; increasePositionWithBalanceOnContract(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<void>; legacyGetNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], overrides?: CallOverrides): Promise<ILegacyDCAHub.SwapInfoStructOutput>; multiPermissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PositionPermissionsStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>; permissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], tokenId: PromiseOrValue<BigNumberish>, deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>; reducePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; secondsUntilNextSwap(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber[]>; terminate(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipientUnswapped: PromiseOrValue<string>, recipientSwapped: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[ BigNumber, BigNumber ] & { unswapped: BigNumber; swapped: BigNumber; }>; withdrawSwapped(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; withdrawSwappedMany(hub: PromiseOrValue<string>, positions: IDCAHubPositionHandler.PositionSetStruct[], recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber[]>; }; filters: {}; estimateGas: { deposit(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; depositWithBalanceOnContract(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; getNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, oracleData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; increasePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; increasePositionWithBalanceOnContract(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; legacyGetNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], overrides?: CallOverrides): Promise<BigNumber>; multiPermissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PositionPermissionsStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; permissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], tokenId: PromiseOrValue<BigNumberish>, deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; reducePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; secondsUntilNextSwap(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>; terminate(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipientUnswapped: PromiseOrValue<string>, recipientSwapped: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; withdrawSwapped(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; withdrawSwappedMany(hub: PromiseOrValue<string>, positions: IDCAHubPositionHandler.PositionSetStruct[], recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; }; populateTransaction: { deposit(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amount: PromiseOrValue<BigNumberish>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; depositWithBalanceOnContract(hub: PromiseOrValue<string>, from: PromiseOrValue<string>, to: PromiseOrValue<string>, amountOfSwaps: PromiseOrValue<BigNumberish>, swapInterval: PromiseOrValue<BigNumberish>, owner: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], miscellaneous: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; getNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, oracleData: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<PopulatedTransaction>; increasePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; increasePositionWithBalanceOnContract(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; legacyGetNextSwapInfo(hub: PromiseOrValue<string>, pairs: PairStruct[], overrides?: CallOverrides): Promise<PopulatedTransaction>; multiPermissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PositionPermissionsStruct[], deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; permissionPermit(permissionManager: PromiseOrValue<string>, permissions: IDCAPermissionManager.PermissionSetStruct[], tokenId: PromiseOrValue<BigNumberish>, deadline: PromiseOrValue<BigNumberish>, v: PromiseOrValue<BigNumberish>, r: PromiseOrValue<BytesLike>, s: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; reducePosition(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, amount: PromiseOrValue<BigNumberish>, newSwaps: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; secondsUntilNextSwap(hub: PromiseOrValue<string>, pairs: PairStruct[], calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<PopulatedTransaction>; terminate(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipientUnswapped: PromiseOrValue<string>, recipientSwapped: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; withdrawSwapped(hub: PromiseOrValue<string>, positionId: PromiseOrValue<BigNumberish>, recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; withdrawSwappedMany(hub: PromiseOrValue<string>, positions: IDCAHubPositionHandler.PositionSetStruct[], recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<PopulatedTransaction>; }; } //# sourceMappingURL=IDCAHubCompanion.d.ts.map