import { StructTag, TypeTag } from '@manahippo/move-to-ts'; import { RawCoinInfo } from '@manahippo/coin-list'; import { App } from '../../generated'; import { HexString, Types } from 'aptos'; import { DexType, PoolType, PriceType, QuoteType, UITokenAmount } from './types'; export declare abstract class TradingPool extends Object { ownerAddr: HexString; xCoinInfo: RawCoinInfo; yCoinInfo: RawCoinInfo; gasUnits: number; static readonly reloadMinInterval = 10000; protected _xTag: StructTag | undefined; protected _yTag: StructTag | undefined; private lastReloadTs; constructor(ownerAddr: HexString, xCoinInfo: RawCoinInfo, yCoinInfo: RawCoinInfo, gasUnits: number); init(): void; abstract get dexType(): DexType; abstract get poolType(): PoolType; abstract get xReserve(): number; abstract get yReserve(): number | undefined; get xTag(): StructTag; get yTag(): StructTag; abstract isStateLoaded(): boolean; abstract reloadStateInternal(app: App): Promise; reloadState(app: App, customReloadMinInterval?: number | undefined, isForce?: boolean): Promise; abstract getPrice(): PriceType; abstract isRoutable(fixedOut: boolean, isXtoY: boolean): boolean; abstract getQuote(inputUiAmt: UITokenAmount, isXtoY: boolean): QuoteType; abstract getQuoteWithFixedOutput(outputUiAmt: UITokenAmount, isXtoY: boolean): QuoteType; makePayload(inputUiAmt: UITokenAmount, minOutAmt: UITokenAmount): Types.EntryFunctionPayload; getTagE(): TypeTag; } //# sourceMappingURL=TradingPool.d.ts.map