UNPKG

@nemoprotocol/points-sdk

Version:
113 lines 3.08 kB
import { SuiClient } from '@mysten/sui/client'; import { CoinConfig, CoinData, MarketState } from './api/types'; import { LpPosition } from './types/position'; /** * AddLiquidityAction execution parameters */ export interface AddLiquidityActionParams { decimal: number; addType: string; slippage: string; lpValue: string; coinType: string; conversionRate: string; addValue: string; tokenType: number; action: string; coinConfig: CoinConfig; marketStateData: any; coinData: CoinData[]; pyPositionData: any; lpPositions: LpPosition[]; vaultId?: string; insufficientBalance?: boolean; } /** * RemoveLiquidityAction execution parameters */ export interface RemoveLiquidityActionParams { lpAmount: string; slippage: string; vaultId?: string; minSyOut?: string; ytBalance: string; ptCoins?: CoinData[]; coinConfig: CoinConfig; action: "swap" | "redeem"; lpPositions: LpPosition[]; pyPositions: any[]; minValue?: string | number; isSwapPt?: boolean; receivingType?: "underlying" | "sy"; marketState: MarketState; } /** * AddLiquidityAction configuration */ export interface AddLiquidityActionConfig { suiClient: SuiClient; privateKeyHex: string; } /** * AddLiquidityAction execution result */ export interface AddLiquidityActionResult { success: boolean; transactionHash?: string; error?: string; data?: any; } /** * AddLiquidity Action class * Encapsulates liquidity addition functionality, providing a clean interface */ export declare class AddLiquidityAction { private suiClient; private keypair; private defaultAddress; /** * Constructor * @param config configuration parameters */ constructor(config: AddLiquidityActionConfig); /** * Add liquidity * @param params execution parameters * @returns execution result */ addLiquidity(params: AddLiquidityActionParams): Promise<AddLiquidityActionResult>; /** * Remove liquidity * @param params execution parameters * @returns execution result */ removeLiquidity(params: RemoveLiquidityActionParams): Promise<AddLiquidityActionResult>; /** * Execute add liquidity operation (for backward compatibility) * @param params execution parameters * @returns execution result */ execute(params: AddLiquidityActionParams): Promise<AddLiquidityActionResult>; /** * Parameter validation * @param params execution parameters */ private validateParams; /** * Get current address * @returns currently used address */ getAddress(): string; /** * Get Sui Client * @returns SuiClient instance */ getSuiClient(): SuiClient; } /** * Factory function to create AddLiquidityAction instance * @param config configuration parameters * @returns AddLiquidityAction instance */ export declare function createAddLiquidityAction(config: AddLiquidityActionConfig): AddLiquidityAction; //# sourceMappingURL=Action.d.ts.map