import BigNumber from '../../config/bigNumber'; import { AbstractCurve } from './AbstractCurve'; import { CalculationOptions, GetMarketCapOptions, GetPriceOptions } from './types'; export declare abstract class ConstantProductCurve extends AbstractCurve { marketCapToMinimalTokens: Map; protected initialVirtualCollateralReserves: bigint; protected initialVirtualTokenReserves: bigint; protected collateralDecimals: number; protected constantProduct: bigint; getTokensAmountFromCollateral(options: CalculationOptions): bigint; getCollateralAmountFromTokens(options: CalculationOptions): bigint; getCollateralPrice(options: GetPriceOptions): BigNumber; getMarketCap(options: GetMarketCapOptions): bigint; getDynamicThresholdFromMarketCap(marketCapThreshold: bigint): bigint; private buyInToken; private buyInCollateral; private sellInToken; private sellInCollateral; private getCurrentReserves; }