/* Autogenerated file. Do not edit manually. */ /* tslint:disable */ /* eslint-disable */ import { ethers, EventFilter, Signer, BigNumber, BigNumberish, PopulatedTransaction, BaseContract, ContractTransaction, Overrides, PayableOverrides, CallOverrides, } from "ethers"; import {BytesLike} from "@ethersproject/bytes"; import {Listener, Provider} from "@ethersproject/providers"; import {FunctionFragment, EventFragment, Result} from "@ethersproject/abi"; import {TypedEventFilter, TypedEvent, TypedListener} from "./commons"; interface VaultInterface extends ethers.utils.Interface { functions: { "WETH()": FunctionFragment; "batchSwap(uint8,tuple[],address[],tuple,int256[],uint256)": FunctionFragment; "deregisterTokens(bytes32,address[])": FunctionFragment; "exitPool(bytes32,address,address,tuple)": FunctionFragment; "flashLoan(address,address[],uint256[],bytes)": FunctionFragment; "getActionId(bytes4)": FunctionFragment; "getAuthorizer()": FunctionFragment; "getDomainSeparator()": FunctionFragment; "getInternalBalance(address,address[])": FunctionFragment; "getNextNonce(address)": FunctionFragment; "getPausedState()": FunctionFragment; "getPool(bytes32)": FunctionFragment; "getPoolTokenInfo(bytes32,address)": FunctionFragment; "getPoolTokens(bytes32)": FunctionFragment; "getProtocolFeesCollector()": FunctionFragment; "hasApprovedRelayer(address,address)": FunctionFragment; "joinPool(bytes32,address,address,tuple)": FunctionFragment; "managePoolBalance(tuple[])": FunctionFragment; "manageUserBalance(tuple[])": FunctionFragment; "queryBatchSwap(uint8,tuple[],address[],tuple)": FunctionFragment; "registerPool(uint8)": FunctionFragment; "registerTokens(bytes32,address[],address[])": FunctionFragment; "setAuthorizer(address)": FunctionFragment; "setPaused(bool)": FunctionFragment; "setRelayerApproval(address,address,bool)": FunctionFragment; "swap(tuple,tuple,uint256,uint256)": FunctionFragment; }; encodeFunctionData(functionFragment: "WETH", values?: undefined): string; encodeFunctionData( functionFragment: "batchSwap", values: [ BigNumberish, { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], string[], { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, BigNumberish[], BigNumberish ] ): string; encodeFunctionData( functionFragment: "deregisterTokens", values: [BytesLike, string[]] ): string; encodeFunctionData( functionFragment: "exitPool", values: [ BytesLike, string, string, { assets: string[]; minAmountsOut: BigNumberish[]; userData: BytesLike; toInternalBalance: boolean; } ] ): string; encodeFunctionData( functionFragment: "flashLoan", values: [string, string[], BigNumberish[], BytesLike] ): string; encodeFunctionData( functionFragment: "getActionId", values: [BytesLike] ): string; encodeFunctionData( functionFragment: "getAuthorizer", values?: undefined ): string; encodeFunctionData( functionFragment: "getDomainSeparator", values?: undefined ): string; encodeFunctionData( functionFragment: "getInternalBalance", values: [string, string[]] ): string; encodeFunctionData( functionFragment: "getNextNonce", values: [string] ): string; encodeFunctionData( functionFragment: "getPausedState", values?: undefined ): string; encodeFunctionData(functionFragment: "getPool", values: [BytesLike]): string; encodeFunctionData( functionFragment: "getPoolTokenInfo", values: [BytesLike, string] ): string; encodeFunctionData( functionFragment: "getPoolTokens", values: [BytesLike] ): string; encodeFunctionData( functionFragment: "getProtocolFeesCollector", values?: undefined ): string; encodeFunctionData( functionFragment: "hasApprovedRelayer", values: [string, string] ): string; encodeFunctionData( functionFragment: "joinPool", values: [ BytesLike, string, string, { assets: string[]; maxAmountsIn: BigNumberish[]; userData: BytesLike; fromInternalBalance: boolean; } ] ): string; encodeFunctionData( functionFragment: "managePoolBalance", values: [ { kind: BigNumberish; poolId: BytesLike; token: string; amount: BigNumberish; }[] ] ): string; encodeFunctionData( functionFragment: "manageUserBalance", values: [ { kind: BigNumberish; asset: string; amount: BigNumberish; sender: string; recipient: string; }[] ] ): string; encodeFunctionData( functionFragment: "queryBatchSwap", values: [ BigNumberish, { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], string[], { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; } ] ): string; encodeFunctionData( functionFragment: "registerPool", values: [BigNumberish] ): string; encodeFunctionData( functionFragment: "registerTokens", values: [BytesLike, string[], string[]] ): string; encodeFunctionData( functionFragment: "setAuthorizer", values: [string] ): string; encodeFunctionData(functionFragment: "setPaused", values: [boolean]): string; encodeFunctionData( functionFragment: "setRelayerApproval", values: [string, string, boolean] ): string; encodeFunctionData( functionFragment: "swap", values: [ { poolId: BytesLike; kind: BigNumberish; assetIn: string; assetOut: string; amount: BigNumberish; userData: BytesLike; }, { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, BigNumberish, BigNumberish ] ): string; decodeFunctionResult(functionFragment: "WETH", data: BytesLike): Result; decodeFunctionResult(functionFragment: "batchSwap", data: BytesLike): Result; decodeFunctionResult( functionFragment: "deregisterTokens", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "exitPool", data: BytesLike): Result; decodeFunctionResult(functionFragment: "flashLoan", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getActionId", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getAuthorizer", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getDomainSeparator", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getInternalBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getNextNonce", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getPausedState", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "getPool", data: BytesLike): Result; decodeFunctionResult( functionFragment: "getPoolTokenInfo", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getPoolTokens", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "getProtocolFeesCollector", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "hasApprovedRelayer", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "joinPool", data: BytesLike): Result; decodeFunctionResult( functionFragment: "managePoolBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "manageUserBalance", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "queryBatchSwap", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "registerPool", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "registerTokens", data: BytesLike ): Result; decodeFunctionResult( functionFragment: "setAuthorizer", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "setPaused", data: BytesLike): Result; decodeFunctionResult( functionFragment: "setRelayerApproval", data: BytesLike ): Result; decodeFunctionResult(functionFragment: "swap", data: BytesLike): Result; events: { "AuthorizerChanged(address)": EventFragment; "ExternalBalanceTransfer(address,address,address,uint256)": EventFragment; "FlashLoan(address,address,uint256,uint256)": EventFragment; "InternalBalanceChanged(address,address,int256)": EventFragment; "PausedStateChanged(bool)": EventFragment; "PoolBalanceChanged(bytes32,address,address[],int256[],uint256[])": EventFragment; "PoolBalanceManaged(bytes32,address,address,int256,int256)": EventFragment; "PoolRegistered(bytes32,address,uint8)": EventFragment; "RelayerApprovalChanged(address,address,bool)": EventFragment; "Swap(bytes32,address,address,uint256,uint256)": EventFragment; "TokensDeregistered(bytes32,address[])": EventFragment; "TokensRegistered(bytes32,address[],address[])": EventFragment; }; getEvent(nameOrSignatureOrTopic: "AuthorizerChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "ExternalBalanceTransfer"): EventFragment; getEvent(nameOrSignatureOrTopic: "FlashLoan"): EventFragment; getEvent(nameOrSignatureOrTopic: "InternalBalanceChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "PausedStateChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "PoolBalanceChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "PoolBalanceManaged"): EventFragment; getEvent(nameOrSignatureOrTopic: "PoolRegistered"): EventFragment; getEvent(nameOrSignatureOrTopic: "RelayerApprovalChanged"): EventFragment; getEvent(nameOrSignatureOrTopic: "Swap"): EventFragment; getEvent(nameOrSignatureOrTopic: "TokensDeregistered"): EventFragment; getEvent(nameOrSignatureOrTopic: "TokensRegistered"): EventFragment; } export class Vault extends BaseContract { connect(signerOrProvider: Signer | Provider | string): this; attach(addressOrName: string): this; deployed(): Promise; listeners, EventArgsObject>( eventFilter?: TypedEventFilter ): Array>; off, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; on, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; once, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeListener, EventArgsObject>( eventFilter: TypedEventFilter, listener: TypedListener ): this; removeAllListeners, EventArgsObject>( eventFilter: TypedEventFilter ): this; listeners(eventName?: string): Array; off(eventName: string, listener: Listener): this; on(eventName: string, listener: Listener): this; once(eventName: string, listener: Listener): this; removeListener(eventName: string, listener: Listener): this; removeAllListeners(eventName?: string): this; queryFilter, EventArgsObject>( event: TypedEventFilter, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined ): Promise>>; interface: VaultInterface; functions: { WETH(overrides?: CallOverrides): Promise<[string]>; batchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limits: BigNumberish[], deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; deregisterTokens( poolId: BytesLike, tokens: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; exitPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; minAmountsOut: BigNumberish[]; userData: BytesLike; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; flashLoan( recipient: string, tokens: string[], amounts: BigNumberish[], userData: BytesLike, overrides?: Overrides & {from?: string | Promise} ): Promise; getActionId( selector: BytesLike, overrides?: CallOverrides ): Promise<[string]>; getAuthorizer(overrides?: CallOverrides): Promise<[string]>; getDomainSeparator(overrides?: CallOverrides): Promise<[string]>; getInternalBalance( user: string, tokens: string[], overrides?: CallOverrides ): Promise<[BigNumber[]] & {balances: BigNumber[]}>; getNextNonce(user: string, overrides?: CallOverrides): Promise<[BigNumber]>; getPausedState( overrides?: CallOverrides ): Promise< [boolean, BigNumber, BigNumber] & { paused: boolean; pauseWindowEndTime: BigNumber; bufferPeriodEndTime: BigNumber; } >; getPool( poolId: BytesLike, overrides?: CallOverrides ): Promise<[string, number]>; getPoolTokenInfo( poolId: BytesLike, token: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber, string] & { cash: BigNumber; managed: BigNumber; lastChangeBlock: BigNumber; assetManager: string; } >; getPoolTokens( poolId: BytesLike, overrides?: CallOverrides ): Promise< [string[], BigNumber[], BigNumber] & { tokens: string[]; balances: BigNumber[]; lastChangeBlock: BigNumber; } >; getProtocolFeesCollector(overrides?: CallOverrides): Promise<[string]>; hasApprovedRelayer( user: string, relayer: string, overrides?: CallOverrides ): Promise<[boolean]>; joinPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; maxAmountsIn: BigNumberish[]; userData: BytesLike; fromInternalBalance: boolean; }, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; managePoolBalance( ops: { kind: BigNumberish; poolId: BytesLike; token: string; amount: BigNumberish; }[], overrides?: Overrides & {from?: string | Promise} ): Promise; manageUserBalance( ops: { kind: BigNumberish; asset: string; amount: BigNumberish; sender: string; recipient: string; }[], overrides?: PayableOverrides & {from?: string | Promise} ): Promise; queryBatchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; registerPool( specialization: BigNumberish, overrides?: Overrides & {from?: string | Promise} ): Promise; registerTokens( poolId: BytesLike, tokens: string[], assetManagers: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; setAuthorizer( newAuthorizer: string, overrides?: Overrides & {from?: string | Promise} ): Promise; setPaused( paused: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; setRelayerApproval( sender: string, relayer: string, approved: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; swap( singleSwap: { poolId: BytesLike; kind: BigNumberish; assetIn: string; assetOut: string; amount: BigNumberish; userData: BytesLike; }, funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limit: BigNumberish, deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; }; WETH(overrides?: CallOverrides): Promise; batchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limits: BigNumberish[], deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; deregisterTokens( poolId: BytesLike, tokens: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; exitPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; minAmountsOut: BigNumberish[]; userData: BytesLike; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; flashLoan( recipient: string, tokens: string[], amounts: BigNumberish[], userData: BytesLike, overrides?: Overrides & {from?: string | Promise} ): Promise; getActionId(selector: BytesLike, overrides?: CallOverrides): Promise; getAuthorizer(overrides?: CallOverrides): Promise; getDomainSeparator(overrides?: CallOverrides): Promise; getInternalBalance( user: string, tokens: string[], overrides?: CallOverrides ): Promise; getNextNonce(user: string, overrides?: CallOverrides): Promise; getPausedState( overrides?: CallOverrides ): Promise< [boolean, BigNumber, BigNumber] & { paused: boolean; pauseWindowEndTime: BigNumber; bufferPeriodEndTime: BigNumber; } >; getPool( poolId: BytesLike, overrides?: CallOverrides ): Promise<[string, number]>; getPoolTokenInfo( poolId: BytesLike, token: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber, string] & { cash: BigNumber; managed: BigNumber; lastChangeBlock: BigNumber; assetManager: string; } >; getPoolTokens( poolId: BytesLike, overrides?: CallOverrides ): Promise< [string[], BigNumber[], BigNumber] & { tokens: string[]; balances: BigNumber[]; lastChangeBlock: BigNumber; } >; getProtocolFeesCollector(overrides?: CallOverrides): Promise; hasApprovedRelayer( user: string, relayer: string, overrides?: CallOverrides ): Promise; joinPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; maxAmountsIn: BigNumberish[]; userData: BytesLike; fromInternalBalance: boolean; }, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; managePoolBalance( ops: { kind: BigNumberish; poolId: BytesLike; token: string; amount: BigNumberish; }[], overrides?: Overrides & {from?: string | Promise} ): Promise; manageUserBalance( ops: { kind: BigNumberish; asset: string; amount: BigNumberish; sender: string; recipient: string; }[], overrides?: PayableOverrides & {from?: string | Promise} ): Promise; queryBatchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; registerPool( specialization: BigNumberish, overrides?: Overrides & {from?: string | Promise} ): Promise; registerTokens( poolId: BytesLike, tokens: string[], assetManagers: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; setAuthorizer( newAuthorizer: string, overrides?: Overrides & {from?: string | Promise} ): Promise; setPaused( paused: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; setRelayerApproval( sender: string, relayer: string, approved: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; swap( singleSwap: { poolId: BytesLike; kind: BigNumberish; assetIn: string; assetOut: string; amount: BigNumberish; userData: BytesLike; }, funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limit: BigNumberish, deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; callStatic: { WETH(overrides?: CallOverrides): Promise; batchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limits: BigNumberish[], deadline: BigNumberish, overrides?: CallOverrides ): Promise; deregisterTokens( poolId: BytesLike, tokens: string[], overrides?: CallOverrides ): Promise; exitPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; minAmountsOut: BigNumberish[]; userData: BytesLike; toInternalBalance: boolean; }, overrides?: CallOverrides ): Promise; flashLoan( recipient: string, tokens: string[], amounts: BigNumberish[], userData: BytesLike, overrides?: CallOverrides ): Promise; getActionId( selector: BytesLike, overrides?: CallOverrides ): Promise; getAuthorizer(overrides?: CallOverrides): Promise; getDomainSeparator(overrides?: CallOverrides): Promise; getInternalBalance( user: string, tokens: string[], overrides?: CallOverrides ): Promise; getNextNonce(user: string, overrides?: CallOverrides): Promise; getPausedState( overrides?: CallOverrides ): Promise< [boolean, BigNumber, BigNumber] & { paused: boolean; pauseWindowEndTime: BigNumber; bufferPeriodEndTime: BigNumber; } >; getPool( poolId: BytesLike, overrides?: CallOverrides ): Promise<[string, number]>; getPoolTokenInfo( poolId: BytesLike, token: string, overrides?: CallOverrides ): Promise< [BigNumber, BigNumber, BigNumber, string] & { cash: BigNumber; managed: BigNumber; lastChangeBlock: BigNumber; assetManager: string; } >; getPoolTokens( poolId: BytesLike, overrides?: CallOverrides ): Promise< [string[], BigNumber[], BigNumber] & { tokens: string[]; balances: BigNumber[]; lastChangeBlock: BigNumber; } >; getProtocolFeesCollector(overrides?: CallOverrides): Promise; hasApprovedRelayer( user: string, relayer: string, overrides?: CallOverrides ): Promise; joinPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; maxAmountsIn: BigNumberish[]; userData: BytesLike; fromInternalBalance: boolean; }, overrides?: CallOverrides ): Promise; managePoolBalance( ops: { kind: BigNumberish; poolId: BytesLike; token: string; amount: BigNumberish; }[], overrides?: CallOverrides ): Promise; manageUserBalance( ops: { kind: BigNumberish; asset: string; amount: BigNumberish; sender: string; recipient: string; }[], overrides?: CallOverrides ): Promise; queryBatchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, overrides?: CallOverrides ): Promise; registerPool( specialization: BigNumberish, overrides?: CallOverrides ): Promise; registerTokens( poolId: BytesLike, tokens: string[], assetManagers: string[], overrides?: CallOverrides ): Promise; setAuthorizer( newAuthorizer: string, overrides?: CallOverrides ): Promise; setPaused(paused: boolean, overrides?: CallOverrides): Promise; setRelayerApproval( sender: string, relayer: string, approved: boolean, overrides?: CallOverrides ): Promise; swap( singleSwap: { poolId: BytesLike; kind: BigNumberish; assetIn: string; assetOut: string; amount: BigNumberish; userData: BytesLike; }, funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limit: BigNumberish, deadline: BigNumberish, overrides?: CallOverrides ): Promise; }; filters: { AuthorizerChanged( newAuthorizer?: string | null ): TypedEventFilter<[string], {newAuthorizer: string}>; ExternalBalanceTransfer( token?: string | null, sender?: string | null, recipient?: null, amount?: null ): TypedEventFilter< [string, string, string, BigNumber], {token: string; sender: string; recipient: string; amount: BigNumber} >; FlashLoan( recipient?: string | null, token?: string | null, amount?: null, feeAmount?: null ): TypedEventFilter< [string, string, BigNumber, BigNumber], { recipient: string; token: string; amount: BigNumber; feeAmount: BigNumber; } >; InternalBalanceChanged( user?: string | null, token?: string | null, delta?: null ): TypedEventFilter< [string, string, BigNumber], {user: string; token: string; delta: BigNumber} >; PausedStateChanged( paused?: null ): TypedEventFilter<[boolean], {paused: boolean}>; PoolBalanceChanged( poolId?: BytesLike | null, liquidityProvider?: string | null, tokens?: null, deltas?: null, protocolFeeAmounts?: null ): TypedEventFilter< [string, string, string[], BigNumber[], BigNumber[]], { poolId: string; liquidityProvider: string; tokens: string[]; deltas: BigNumber[]; protocolFeeAmounts: BigNumber[]; } >; PoolBalanceManaged( poolId?: BytesLike | null, assetManager?: string | null, token?: string | null, cashDelta?: null, managedDelta?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { poolId: string; assetManager: string; token: string; cashDelta: BigNumber; managedDelta: BigNumber; } >; PoolRegistered( poolId?: BytesLike | null, poolAddress?: string | null, specialization?: null ): TypedEventFilter< [string, string, number], {poolId: string; poolAddress: string; specialization: number} >; RelayerApprovalChanged( relayer?: string | null, sender?: string | null, approved?: null ): TypedEventFilter< [string, string, boolean], {relayer: string; sender: string; approved: boolean} >; Swap( poolId?: BytesLike | null, tokenIn?: string | null, tokenOut?: string | null, amountIn?: null, amountOut?: null ): TypedEventFilter< [string, string, string, BigNumber, BigNumber], { poolId: string; tokenIn: string; tokenOut: string; amountIn: BigNumber; amountOut: BigNumber; } >; TokensDeregistered( poolId?: BytesLike | null, tokens?: null ): TypedEventFilter<[string, string[]], {poolId: string; tokens: string[]}>; TokensRegistered( poolId?: BytesLike | null, tokens?: null, assetManagers?: null ): TypedEventFilter< [string, string[], string[]], {poolId: string; tokens: string[]; assetManagers: string[]} >; }; estimateGas: { WETH(overrides?: CallOverrides): Promise; batchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limits: BigNumberish[], deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; deregisterTokens( poolId: BytesLike, tokens: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; exitPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; minAmountsOut: BigNumberish[]; userData: BytesLike; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; flashLoan( recipient: string, tokens: string[], amounts: BigNumberish[], userData: BytesLike, overrides?: Overrides & {from?: string | Promise} ): Promise; getActionId( selector: BytesLike, overrides?: CallOverrides ): Promise; getAuthorizer(overrides?: CallOverrides): Promise; getDomainSeparator(overrides?: CallOverrides): Promise; getInternalBalance( user: string, tokens: string[], overrides?: CallOverrides ): Promise; getNextNonce(user: string, overrides?: CallOverrides): Promise; getPausedState(overrides?: CallOverrides): Promise; getPool(poolId: BytesLike, overrides?: CallOverrides): Promise; getPoolTokenInfo( poolId: BytesLike, token: string, overrides?: CallOverrides ): Promise; getPoolTokens( poolId: BytesLike, overrides?: CallOverrides ): Promise; getProtocolFeesCollector(overrides?: CallOverrides): Promise; hasApprovedRelayer( user: string, relayer: string, overrides?: CallOverrides ): Promise; joinPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; maxAmountsIn: BigNumberish[]; userData: BytesLike; fromInternalBalance: boolean; }, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; managePoolBalance( ops: { kind: BigNumberish; poolId: BytesLike; token: string; amount: BigNumberish; }[], overrides?: Overrides & {from?: string | Promise} ): Promise; manageUserBalance( ops: { kind: BigNumberish; asset: string; amount: BigNumberish; sender: string; recipient: string; }[], overrides?: PayableOverrides & {from?: string | Promise} ): Promise; queryBatchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; registerPool( specialization: BigNumberish, overrides?: Overrides & {from?: string | Promise} ): Promise; registerTokens( poolId: BytesLike, tokens: string[], assetManagers: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; setAuthorizer( newAuthorizer: string, overrides?: Overrides & {from?: string | Promise} ): Promise; setPaused( paused: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; setRelayerApproval( sender: string, relayer: string, approved: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; swap( singleSwap: { poolId: BytesLike; kind: BigNumberish; assetIn: string; assetOut: string; amount: BigNumberish; userData: BytesLike; }, funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limit: BigNumberish, deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; }; populateTransaction: { WETH(overrides?: CallOverrides): Promise; batchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limits: BigNumberish[], deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; deregisterTokens( poolId: BytesLike, tokens: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; exitPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; minAmountsOut: BigNumberish[]; userData: BytesLike; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; flashLoan( recipient: string, tokens: string[], amounts: BigNumberish[], userData: BytesLike, overrides?: Overrides & {from?: string | Promise} ): Promise; getActionId( selector: BytesLike, overrides?: CallOverrides ): Promise; getAuthorizer(overrides?: CallOverrides): Promise; getDomainSeparator( overrides?: CallOverrides ): Promise; getInternalBalance( user: string, tokens: string[], overrides?: CallOverrides ): Promise; getNextNonce( user: string, overrides?: CallOverrides ): Promise; getPausedState(overrides?: CallOverrides): Promise; getPool( poolId: BytesLike, overrides?: CallOverrides ): Promise; getPoolTokenInfo( poolId: BytesLike, token: string, overrides?: CallOverrides ): Promise; getPoolTokens( poolId: BytesLike, overrides?: CallOverrides ): Promise; getProtocolFeesCollector( overrides?: CallOverrides ): Promise; hasApprovedRelayer( user: string, relayer: string, overrides?: CallOverrides ): Promise; joinPool( poolId: BytesLike, sender: string, recipient: string, request: { assets: string[]; maxAmountsIn: BigNumberish[]; userData: BytesLike; fromInternalBalance: boolean; }, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; managePoolBalance( ops: { kind: BigNumberish; poolId: BytesLike; token: string; amount: BigNumberish; }[], overrides?: Overrides & {from?: string | Promise} ): Promise; manageUserBalance( ops: { kind: BigNumberish; asset: string; amount: BigNumberish; sender: string; recipient: string; }[], overrides?: PayableOverrides & {from?: string | Promise} ): Promise; queryBatchSwap( kind: BigNumberish, swaps: { poolId: BytesLike; assetInIndex: BigNumberish; assetOutIndex: BigNumberish; amount: BigNumberish; userData: BytesLike; }[], assets: string[], funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, overrides?: Overrides & {from?: string | Promise} ): Promise; registerPool( specialization: BigNumberish, overrides?: Overrides & {from?: string | Promise} ): Promise; registerTokens( poolId: BytesLike, tokens: string[], assetManagers: string[], overrides?: Overrides & {from?: string | Promise} ): Promise; setAuthorizer( newAuthorizer: string, overrides?: Overrides & {from?: string | Promise} ): Promise; setPaused( paused: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; setRelayerApproval( sender: string, relayer: string, approved: boolean, overrides?: Overrides & {from?: string | Promise} ): Promise; swap( singleSwap: { poolId: BytesLike; kind: BigNumberish; assetIn: string; assetOut: string; amount: BigNumberish; userData: BytesLike; }, funds: { sender: string; fromInternalBalance: boolean; recipient: string; toInternalBalance: boolean; }, limit: BigNumberish, deadline: BigNumberish, overrides?: PayableOverrides & {from?: string | Promise} ): Promise; }; }