UNPKG

@mean-finance/dca-v2-periphery

Version:

💱 Periphery smart contracts of DCA V2 by mean.finance

714 lines • 58.5 kB
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 declare type PairStruct = { tokenA: PromiseOrValue<string>; tokenB: PromiseOrValue<string>; }; export declare type PairStructOutput = [string, string] & { tokenA: string; tokenB: string; }; export declare namespace IPermit2 { type TokenPermissionsStruct = { token: PromiseOrValue<string>; amount: PromiseOrValue<BigNumberish>; }; type TokenPermissionsStructOutput = [string, BigNumber] & { token: string; amount: BigNumber; }; } 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 ISwapAdapter { type RevokeActionStruct = { spender: PromiseOrValue<string>; tokens: PromiseOrValue<string>[]; }; type RevokeActionStructOutput = [string, string[]] & { spender: string; tokens: string[]; }; } export declare namespace ISimulationAdapter { type SimulationResultStruct = { success: PromiseOrValue<boolean>; result: PromiseOrValue<BytesLike>; gasSpent: PromiseOrValue<BigNumberish>; }; type SimulationResultStructOutput = [boolean, string, BigNumber] & { success: boolean; result: string; gasSpent: BigNumber; }; } export declare namespace IDCAHubPositionHandler { type PositionSetStruct = { token: PromiseOrValue<string>; positionIds: PromiseOrValue<BigNumberish>[]; }; type PositionSetStructOutput = [string, BigNumber[]] & { token: string; positionIds: BigNumber[]; }; } export interface DCAHubCompanionInterface extends utils.Interface { functions: { "PERMIT2()": FunctionFragment; "PROTOCOL_TOKEN()": FunctionFragment; "SWAPPER_REGISTRY()": FunctionFragment; "acceptPendingGovernor()": FunctionFragment; "allowanceTarget()": FunctionFragment; "batchPermitTakeFromCaller((address,uint256)[],uint256,uint256,bytes,address)": FunctionFragment; "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; "governor()": FunctionFragment; "increasePosition(address,uint256,uint256,uint32)": FunctionFragment; "increasePositionWithBalanceOnContract(address,uint256,uint32)": FunctionFragment; "isGovernor(address)": FunctionFragment; "isPendingGovernor(address)": FunctionFragment; "legacyGetNextSwapInfo(address,(address,address)[])": FunctionFragment; "multiPermissionPermit(address,(uint256,(address,uint8[])[])[],uint256,uint8,bytes32,bytes32)": FunctionFragment; "multicall(bytes[])": FunctionFragment; "pendingGovernor()": FunctionFragment; "permissionPermit(address,(address,uint8[])[],uint256,uint256,uint8,bytes32,bytes32)": FunctionFragment; "permitTakeFromCaller(address,uint256,uint256,uint256,bytes,address)": FunctionFragment; "reducePosition(address,uint256,uint256,uint32,address)": FunctionFragment; "revokeAllowances((address,address[])[])": FunctionFragment; "runSwap(address,uint256,bytes,address,uint256)": FunctionFragment; "secondsUntilNextSwap(address,(address,address)[],bool)": FunctionFragment; "sendBalanceOnContractToRecipient(address,address)": FunctionFragment; "sendToRecipient(address,uint256,address)": FunctionFragment; "setPendingGovernor(address)": FunctionFragment; "setSwapper(address,address)": FunctionFragment; "simulate(bytes[])": FunctionFragment; "simulateAndRevert(bytes)": FunctionFragment; "supportsInterface(bytes4)": FunctionFragment; "swapper()": FunctionFragment; "takeFromCaller(address,uint256,address)": FunctionFragment; "terminate(address,uint256,address,address)": FunctionFragment; "withdrawSwapped(address,uint256,address)": FunctionFragment; "withdrawSwappedMany(address,(address,uint256[])[],address)": FunctionFragment; }; getFunction(nameOrSignatureOrTopic: "PERMIT2" | "PROTOCOL_TOKEN" | "SWAPPER_REGISTRY" | "acceptPendingGovernor" | "allowanceTarget" | "batchPermitTakeFromCaller" | "deposit" | "depositWithBalanceOnContract" | "getNextSwapInfo" | "governor" | "increasePosition" | "increasePositionWithBalanceOnContract" | "isGovernor" | "isPendingGovernor" | "legacyGetNextSwapInfo" | "multiPermissionPermit" | "multicall" | "pendingGovernor" | "permissionPermit" | "permitTakeFromCaller" | "reducePosition" | "revokeAllowances" | "runSwap" | "secondsUntilNextSwap" | "sendBalanceOnContractToRecipient" | "sendToRecipient" | "setPendingGovernor" | "setSwapper" | "simulate" | "simulateAndRevert" | "supportsInterface" | "swapper" | "takeFromCaller" | "terminate" | "withdrawSwapped" | "withdrawSwappedMany"): FunctionFragment; encodeFunctionData(functionFragment: "PERMIT2", values?: undefined): string; encodeFunctionData(functionFragment: "PROTOCOL_TOKEN", values?: undefined): string; encodeFunctionData(functionFragment: "SWAPPER_REGISTRY", values?: undefined): string; encodeFunctionData(functionFragment: "acceptPendingGovernor", values?: undefined): string; encodeFunctionData(functionFragment: "allowanceTarget", values?: undefined): string; encodeFunctionData(functionFragment: "batchPermitTakeFromCaller", values: [ IPermit2.TokenPermissionsStruct[], PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<string> ]): string; 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: "governor", values?: undefined): 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: "isGovernor", values: [PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "isPendingGovernor", values: [PromiseOrValue<string>]): 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: "multicall", values: [PromiseOrValue<BytesLike>[]]): string; encodeFunctionData(functionFragment: "pendingGovernor", values?: undefined): string; encodeFunctionData(functionFragment: "permissionPermit", values: [ PromiseOrValue<string>, IDCAPermissionManager.PermissionSetStruct[], PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<BytesLike> ]): string; encodeFunctionData(functionFragment: "permitTakeFromCaller", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "reducePosition", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<BigNumberish>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "revokeAllowances", values: [ISwapAdapter.RevokeActionStruct[]]): string; encodeFunctionData(functionFragment: "runSwap", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<BytesLike>, PromiseOrValue<string>, PromiseOrValue<BigNumberish> ]): string; encodeFunctionData(functionFragment: "secondsUntilNextSwap", values: [PromiseOrValue<string>, PairStruct[], PromiseOrValue<boolean>]): string; encodeFunctionData(functionFragment: "sendBalanceOnContractToRecipient", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "sendToRecipient", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<string> ]): string; encodeFunctionData(functionFragment: "setPendingGovernor", values: [PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "setSwapper", values: [PromiseOrValue<string>, PromiseOrValue<string>]): string; encodeFunctionData(functionFragment: "simulate", values: [PromiseOrValue<BytesLike>[]]): string; encodeFunctionData(functionFragment: "simulateAndRevert", values: [PromiseOrValue<BytesLike>]): string; encodeFunctionData(functionFragment: "supportsInterface", values: [PromiseOrValue<BytesLike>]): string; encodeFunctionData(functionFragment: "swapper", values?: undefined): string; encodeFunctionData(functionFragment: "takeFromCaller", values: [ PromiseOrValue<string>, PromiseOrValue<BigNumberish>, PromiseOrValue<string> ]): 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: "PERMIT2", data: BytesLike): Result; decodeFunctionResult(functionFragment: "PROTOCOL_TOKEN", data: BytesLike): Result; decodeFunctionResult(functionFragment: "SWAPPER_REGISTRY", data: BytesLike): Result; decodeFunctionResult(functionFragment: "acceptPendingGovernor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "allowanceTarget", data: BytesLike): Result; decodeFunctionResult(functionFragment: "batchPermitTakeFromCaller", data: BytesLike): Result; decodeFunctionResult(functionFragment: "deposit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "depositWithBalanceOnContract", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getNextSwapInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "governor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "increasePosition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "increasePositionWithBalanceOnContract", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isGovernor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "isPendingGovernor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "legacyGetNextSwapInfo", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multiPermissionPermit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "multicall", data: BytesLike): Result; decodeFunctionResult(functionFragment: "pendingGovernor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permissionPermit", data: BytesLike): Result; decodeFunctionResult(functionFragment: "permitTakeFromCaller", data: BytesLike): Result; decodeFunctionResult(functionFragment: "reducePosition", data: BytesLike): Result; decodeFunctionResult(functionFragment: "revokeAllowances", data: BytesLike): Result; decodeFunctionResult(functionFragment: "runSwap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "secondsUntilNextSwap", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendBalanceOnContractToRecipient", data: BytesLike): Result; decodeFunctionResult(functionFragment: "sendToRecipient", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setPendingGovernor", data: BytesLike): Result; decodeFunctionResult(functionFragment: "setSwapper", data: BytesLike): Result; decodeFunctionResult(functionFragment: "simulate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "simulateAndRevert", data: BytesLike): Result; decodeFunctionResult(functionFragment: "supportsInterface", data: BytesLike): Result; decodeFunctionResult(functionFragment: "swapper", data: BytesLike): Result; decodeFunctionResult(functionFragment: "takeFromCaller", data: BytesLike): Result; decodeFunctionResult(functionFragment: "terminate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawSwapped", data: BytesLike): Result; decodeFunctionResult(functionFragment: "withdrawSwappedMany", data: BytesLike): Result; events: { "PendingGovernorAccepted()": EventFragment; "PendingGovernorSet(address)": EventFragment; }; getEvent(nameOrSignatureOrTopic: "PendingGovernorAccepted"): EventFragment; getEvent(nameOrSignatureOrTopic: "PendingGovernorSet"): EventFragment; } export interface PendingGovernorAcceptedEventObject { } export declare type PendingGovernorAcceptedEvent = TypedEvent<[ ], PendingGovernorAcceptedEventObject>; export declare type PendingGovernorAcceptedEventFilter = TypedEventFilter<PendingGovernorAcceptedEvent>; export interface PendingGovernorSetEventObject { newPendingGovernor: string; } export declare type PendingGovernorSetEvent = TypedEvent<[ string ], PendingGovernorSetEventObject>; export declare type PendingGovernorSetEventFilter = TypedEventFilter<PendingGovernorSetEvent>; export interface DCAHubCompanion extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise<this>; interface: DCAHubCompanionInterface; 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: { PERMIT2(overrides?: CallOverrides): Promise<[string]>; PROTOCOL_TOKEN(overrides?: CallOverrides): Promise<[string]>; SWAPPER_REGISTRY(overrides?: CallOverrides): Promise<[string]>; acceptPendingGovernor(overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; allowanceTarget(overrides?: CallOverrides): Promise<[string]>; batchPermitTakeFromCaller(_tokens: IPermit2.TokenPermissionsStruct[], _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _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]>; governor(overrides?: CallOverrides): Promise<[string]>; 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>; isGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>; isPendingGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<[boolean]>; 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>; multicall(_data: PromiseOrValue<BytesLike>[], overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; pendingGovernor(overrides?: CallOverrides): Promise<[string]>; 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>; permitTakeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _recipient: PromiseOrValue<string>, 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>; revokeAllowances(_revokeActions: ISwapAdapter.RevokeActionStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; runSwap(_allowanceToken: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, _swapData: PromiseOrValue<BytesLike>, _tokenOut: PromiseOrValue<string>, _minTokenOut: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; secondsUntilNextSwap(_hub: PromiseOrValue<string>, _pairs: PairStruct[], _calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<[BigNumber[]]>; sendBalanceOnContractToRecipient(_token: PromiseOrValue<string>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; sendToRecipient(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; setPendingGovernor(_pendingGovernor: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; setSwapper(_newSwapper: PromiseOrValue<string>, _newAllowanceTarget: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; simulate(_calls: PromiseOrValue<BytesLike>[], overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; simulateAndRevert(_call: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; supportsInterface(_interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<[boolean]>; swapper(overrides?: CallOverrides): Promise<[string]>; takeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; 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>; }; PERMIT2(overrides?: CallOverrides): Promise<string>; PROTOCOL_TOKEN(overrides?: CallOverrides): Promise<string>; SWAPPER_REGISTRY(overrides?: CallOverrides): Promise<string>; acceptPendingGovernor(overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; allowanceTarget(overrides?: CallOverrides): Promise<string>; batchPermitTakeFromCaller(_tokens: IPermit2.TokenPermissionsStruct[], _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _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>; governor(overrides?: CallOverrides): Promise<string>; 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>; isGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; isPendingGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; 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>; multicall(_data: PromiseOrValue<BytesLike>[], overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; pendingGovernor(overrides?: CallOverrides): Promise<string>; 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>; permitTakeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _recipient: PromiseOrValue<string>, 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>; revokeAllowances(_revokeActions: ISwapAdapter.RevokeActionStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; runSwap(_allowanceToken: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, _swapData: PromiseOrValue<BytesLike>, _tokenOut: PromiseOrValue<string>, _minTokenOut: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; secondsUntilNextSwap(_hub: PromiseOrValue<string>, _pairs: PairStruct[], _calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber[]>; sendBalanceOnContractToRecipient(_token: PromiseOrValue<string>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; sendToRecipient(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; setPendingGovernor(_pendingGovernor: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; setSwapper(_newSwapper: PromiseOrValue<string>, _newAllowanceTarget: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; simulate(_calls: PromiseOrValue<BytesLike>[], overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; simulateAndRevert(_call: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; supportsInterface(_interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>; swapper(overrides?: CallOverrides): Promise<string>; takeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<ContractTransaction>; 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: { PERMIT2(overrides?: CallOverrides): Promise<string>; PROTOCOL_TOKEN(overrides?: CallOverrides): Promise<string>; SWAPPER_REGISTRY(overrides?: CallOverrides): Promise<string>; acceptPendingGovernor(overrides?: CallOverrides): Promise<void>; allowanceTarget(overrides?: CallOverrides): Promise<string>; batchPermitTakeFromCaller(_tokens: IPermit2.TokenPermissionsStruct[], _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; 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>; governor(overrides?: CallOverrides): Promise<string>; 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>; isGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; isPendingGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<boolean>; 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>; multicall(_data: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<string[]>; pendingGovernor(overrides?: CallOverrides): Promise<string>; 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>; permitTakeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; reducePosition(_hub: PromiseOrValue<string>, _positionId: PromiseOrValue<BigNumberish>, _amount: PromiseOrValue<BigNumberish>, _newSwaps: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; revokeAllowances(_revokeActions: ISwapAdapter.RevokeActionStruct[], overrides?: CallOverrides): Promise<void>; runSwap(_allowanceToken: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, _swapData: PromiseOrValue<BytesLike>, _tokenOut: PromiseOrValue<string>, _minTokenOut: PromiseOrValue<BigNumberish>, overrides?: CallOverrides): Promise<BigNumber>; secondsUntilNextSwap(_hub: PromiseOrValue<string>, _pairs: PairStruct[], _calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber[]>; sendBalanceOnContractToRecipient(_token: PromiseOrValue<string>, _recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; sendToRecipient(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; setPendingGovernor(_pendingGovernor: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; setSwapper(_newSwapper: PromiseOrValue<string>, _newAllowanceTarget: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; simulate(_calls: PromiseOrValue<BytesLike>[], overrides?: CallOverrides): Promise<ISimulationAdapter.SimulationResultStructOutput[]>; simulateAndRevert(_call: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<void>; supportsInterface(_interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<boolean>; swapper(overrides?: CallOverrides): Promise<string>; takeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: CallOverrides): Promise<void>; 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: { "PendingGovernorAccepted()"(): PendingGovernorAcceptedEventFilter; PendingGovernorAccepted(): PendingGovernorAcceptedEventFilter; "PendingGovernorSet(address)"(newPendingGovernor?: null): PendingGovernorSetEventFilter; PendingGovernorSet(newPendingGovernor?: null): PendingGovernorSetEventFilter; }; estimateGas: { PERMIT2(overrides?: CallOverrides): Promise<BigNumber>; PROTOCOL_TOKEN(overrides?: CallOverrides): Promise<BigNumber>; SWAPPER_REGISTRY(overrides?: CallOverrides): Promise<BigNumber>; acceptPendingGovernor(overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; allowanceTarget(overrides?: CallOverrides): Promise<BigNumber>; batchPermitTakeFromCaller(_tokens: IPermit2.TokenPermissionsStruct[], _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; 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>; governor(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>; isGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): Promise<BigNumber>; isPendingGovernor(_account: PromiseOrValue<string>, overrides?: CallOverrides): 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>; multicall(_data: PromiseOrValue<BytesLike>[], overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; pendingGovernor(overrides?: CallOverrides): 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>; permitTakeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _nonce: PromiseOrValue<BigNumberish>, _deadline: PromiseOrValue<BigNumberish>, _signature: PromiseOrValue<BytesLike>, _recipient: PromiseOrValue<string>, 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>; revokeAllowances(_revokeActions: ISwapAdapter.RevokeActionStruct[], overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; runSwap(_allowanceToken: PromiseOrValue<string>, _value: PromiseOrValue<BigNumberish>, _swapData: PromiseOrValue<BytesLike>, _tokenOut: PromiseOrValue<string>, _minTokenOut: PromiseOrValue<BigNumberish>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; secondsUntilNextSwap(_hub: PromiseOrValue<string>, _pairs: PairStruct[], _calculatePrivilegedAvailability: PromiseOrValue<boolean>, overrides?: CallOverrides): Promise<BigNumber>; sendBalanceOnContractToRecipient(_token: PromiseOrValue<string>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; sendToRecipient(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; setPendingGovernor(_pendingGovernor: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; setSwapper(_newSwapper: PromiseOrValue<string>, _newAllowanceTarget: PromiseOrValue<string>, overrides?: Overrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; simulate(_calls: PromiseOrValue<BytesLike>[], overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; simulateAndRevert(_call: PromiseOrValue<BytesLike>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): Promise<BigNumber>; supportsInterface(_interfaceId: PromiseOrValue<BytesLike>, overrides?: CallOverrides): Promise<BigNumber>; swapper(overrides?: CallOverrides): Promise<BigNumber>; takeFromCaller(_token: PromiseOrValue<string>, _amount: PromiseOrValue<BigNumberish>, _recipient: PromiseOrValue<string>, overrides?: PayableOverrides & { from?: PromiseOrValue<string>; }): 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>, override