import { CurrencyExt, StandardLpToken } from "../../../types"; import { MonetaryAmount } from "@interlay/monetary-js"; import Big from "big.js"; import { MultiPathElementStandard } from "../trade/types"; import { PoolType, PooledCurrencies, LiquidityPoolBase } from "../types"; import { LiquidityPoolCalculator } from "./calculator"; declare class StandardLiquidityPool extends LiquidityPoolCalculator implements LiquidityPoolBase { lpToken: StandardLpToken; pooledCurrencies: PooledCurrencies; rewardAmountsYearly: Array>; tradingFee: Big; isTradingActive: boolean; totalSupply: MonetaryAmount; isEmpty: boolean; type: PoolType; token0: CurrencyExt; token1: CurrencyExt; reserve0: MonetaryAmount; reserve1: MonetaryAmount; constructor(lpToken: StandardLpToken, pooledCurrencies: PooledCurrencies, rewardAmountsYearly: Array>, tradingFee: Big, isTradingActive: boolean, // True if in `Trading` state, false if in `Bootstrap` state totalSupply: MonetaryAmount, isEmpty: boolean); pathOf(inputCurrency: CurrencyExt): MultiPathElementStandard; /** * Get output amount of pool after swap of `inputAmount` is made. * * @param {MonetaryAmount} inputAmount Input amount of currency to swap. * @returns {MonetaryAmount} Output amount after swap of `inputAmount` is made. */ getOutputAmount(inputAmount: MonetaryAmount): MonetaryAmount; } export { StandardLiquidityPool };