/** * Create a liquidity pool. Costs ~1,000 BOOT. * Deposit coins must be sorted alphabetically by denom. */ export declare function createPool(denomA: string, amountA: string, denomB: string, amountB: string): Promise<{ depositor: string; depositCoins: { denom: string; amount: string; }[]; txHash: string; height: number; gasUsed: bigint; gasWanted: bigint; code: number; }>; /** Deposit tokens into an existing liquidity pool */ export declare function deposit(poolId: number, denomA: string, amountA: string, denomB: string, amountB: string): Promise<{ depositor: string; poolId: number; depositCoins: { denom: string; amount: string; }[]; txHash: string; height: number; gasUsed: bigint; gasWanted: bigint; code: number; }>; /** Withdraw LP tokens from a pool */ export declare function withdraw(poolId: number, poolCoinAmount: string, poolCoinDenom: string): Promise<{ withdrawer: string; poolId: number; poolCoinAmount: string; poolCoinDenom: string; txHash: string; height: number; gasUsed: bigint; gasWanted: bigint; code: number; }>; /** * Swap tokens via a liquidity pool. * Gravity DEX batched execution: swap executes at end of block. * offerCoinFee is computed as ceil(offerAmount * swapFeeRate / 2). */ export declare function swap(poolId: number, offerDenom: string, offerAmount: string, demandDenom: string, orderPrice: string, swapType?: number): Promise<{ swapper: string; poolId: number; offerDenom: string; offerAmount: string; demandDenom: string; orderPrice: string; offerCoinFee: string; note: string; txHash: string; height: number; gasUsed: bigint; gasWanted: bigint; code: number; }>; /** Get pool details: reserves, price, LP supply */ export declare function getPoolDetail(poolId: number): Promise<{ pool: unknown; batch: unknown; }>; interface PoolInfo { id: string; type_id: number; reserve_coin_denoms: string[]; reserve_account_address: string; pool_coin_denom: string; } /** Find a liquidity pool for the given denom pair */ export declare function findPool(denomA: string, denomB: string): Promise<{ pool: PoolInfo; reserves: Record; } | null>; /** * High-level swap: auto-discover pool and calculate price. * Applies slippage tolerance to the current pool price. */ export declare function swapTokens(offerDenom: string, offerAmount: string, demandDenom: string, slippagePercent?: number): Promise<{ poolId: number; marketPrice: string; priceWithSlippage: string; estimatedOutput: string; slippagePercent: number; swapper: string; offerDenom: string; offerAmount: string; demandDenom: string; orderPrice: string; offerCoinFee: string; note: string; txHash: string; height: number; gasUsed: bigint; gasWanted: bigint; code: number; }>; export {};