import { BigNumber } from 'ethers';
import { IAppToolkit } from '../../../app-toolkit/app-toolkit.interface';
import { AuraContractFactory } from '../contracts';
export declare type BalancerPool = {
    id: string;
    address: string;
    name: string;
    poolType: string;
    swapFee: number;
    symbol: string;
    tokensList: string;
    totalLiquidity: number;
    totalSwapVolume: number;
    totalSwapFee: number;
    totalShares: number;
    tokens: {
        address: string;
        symbol: string;
        decimals: number;
        balance: number;
        weight: number;
    }[];
};
declare type GetBPTOutParams = {
    balancerPool: BalancerPool;
    maxAmountsIn: BigNumber[];
    sender?: string;
    recipient?: string;
};
export declare class AuraBalancerPoolResolver {
    private readonly appToolkit;
    private readonly contractFactory;
    constructor(appToolkit: IAppToolkit, contractFactory: AuraContractFactory);
    private getBalancerPoolData;
    getBalancerPool(poolId: string): Promise<BalancerPool>;
    getBPTOut({ balancerPool, maxAmountsIn, sender, recipient, }: GetBPTOutParams): Promise<[BigNumber, BigNumber[]] & {
        bptOut: BigNumber;
        amountsIn: BigNumber[];
    }>;
}
export {};
