import { BN, BorshAccountsCoder } from '@project-serum/anchor'; import { Connection, PublicKey } from '@solana/web3.js'; import JSBI from 'jsbi'; import { PoolPairData } from './type'; import { BalancerAmm } from './type'; export declare const balansolCoder: BorshAccountsCoder; export declare const calcOutGivenInSwap: (amountIn: number, balanceOut: BN, balanceIn: BN, weightOut: number, weightIn: number, swapFee: BN) => number; export declare const calcNormalizedWeight: (weights: BN[], weightToken: BN) => number; export declare const calcSpotPriceExactInSwap: (amount: number, poolPairData: PoolPairData) => number; export declare const calcPriceImpactSwap: (bidAmount: number, poolPairData: PoolPairData) => number; export declare const getBalansolParams: (poolPublicKey: PublicKey, taxMan: PublicKey, mints: PublicKey[]) => Promise<{ treasurer: PublicKey; taxmanTokenAccounts: PublicKey[]; }>; export declare const getBalansolMarkets: (connection: Connection) => Promise<{ owner: string; pubkey: any; data: any; params: { treasurer: PublicKey; taxmanTokenAccounts: PublicKey[]; }; }[]>; export declare function getBalansolPoolData(poolAdress: PublicKey, connection: Connection): Promise>>; export declare function getQuote(sourceMint: PublicKey, destinationMint: PublicKey, amount: number, poolData: any): { notEnoughLiquidity: boolean; inAmount: number; outAmount: JSBI; feeAmount: JSBI; feeMint: string; feePct: number; priceImpactPct: number; };