UNPKG

test-raydium-sdk-v2

Version:

An SDK for building applications on top of Raydium.

175 lines (172 loc) 5.1 kB
import { PublicKey } from '@solana/web3.js'; import { l as ApiV3PoolInfoStandardItem, r as AmmV4Keys, s as AmmV5Keys, a7 as BigNumberish, bG as ComputeBudgetConfig } from '../../type-91d108de.js'; import { TxVersion } from '../../common/txTool/txType.js'; import BN__default from 'bn.js'; import Decimal from 'decimal.js-light'; import '@solana/spl-token'; import '../../common/owner.js'; import '../../common/txTool/lookupTable.js'; import 'decimal.js'; import '../../module/token.js'; import '../../common/pubKey.js'; import '../../marshmallow/index.js'; import '../../marshmallow/buffer-layout.js'; import '../../common/logger.js'; import '../../module/currency.js'; declare type LiquiditySide = "a" | "b"; declare type AmountSide = "base" | "quote"; interface AddLiquidityParams<T = TxVersion.LEGACY> { poolInfo: ApiV3PoolInfoStandardItem; payer?: PublicKey; amountInA: string | Decimal | BN__default; amountInB: string | Decimal | BN__default; fixedSide: LiquiditySide; config?: { bypassAssociatedCheck?: boolean; checkCreateATAOwner?: boolean; }; txVersion?: T; } interface RemoveParams<T = TxVersion.LEGACY> { poolInfo: ApiV3PoolInfoStandardItem; payer?: PublicKey; amountIn: BN__default; config?: { bypassAssociatedCheck?: boolean; checkCreateATAOwner?: boolean; }; txVersion?: T; } interface LiquidityUserKeys { baseTokenAccount: PublicKey; quoteTokenAccount: PublicKey; lpTokenAccount: PublicKey; owner: PublicKey; } interface LiquidityAddInstructionParams { poolInfo: ApiV3PoolInfoStandardItem; poolKeys: AmmV4Keys | AmmV5Keys; userKeys: LiquidityUserKeys; baseAmountIn: BigNumberish; quoteAmountIn: BigNumberish; fixedSide: AmountSide; } interface RemoveLiquidityInstruction { poolInfo: ApiV3PoolInfoStandardItem; poolKeys: AmmV4Keys | AmmV5Keys; userKeys: LiquidityUserKeys; amountIn: BigNumberish; } interface LiquidityPoolKeys { id: PublicKey; baseMint: PublicKey; quoteMint: PublicKey; lpMint: PublicKey; baseDecimals: number; quoteDecimals: number; lpDecimals: number; version: 4 | 5; programId: PublicKey; authority: PublicKey; nonce: number; baseVault: PublicKey; quoteVault: PublicKey; lpVault: PublicKey; openOrders: PublicKey; targetOrders: PublicKey; withdrawQueue: PublicKey; marketVersion: 3; marketProgramId: PublicKey; marketId: PublicKey; marketAuthority: PublicKey; lookupTableAccount: PublicKey; configId: PublicKey; } interface CreatePoolParam<T> { programId: PublicKey; marketInfo: { marketId: PublicKey; programId: PublicKey; }; baseMintInfo: { mint: PublicKey; decimals: number; }; quoteMintInfo: { mint: PublicKey; decimals: number; }; baseAmount: BN__default; quoteAmount: BN__default; startTime: BN__default; ownerInfo: { feePayer?: PublicKey; useSOLBalance?: boolean; }; associatedOnly: boolean; checkCreateATAOwner?: boolean; tokenProgram?: PublicKey; feeDestinationId: PublicKey; computeBudgetConfig?: ComputeBudgetConfig; txVersion?: T; } interface CreatePoolAddress { programId: PublicKey; ammId: PublicKey; ammAuthority: PublicKey; ammOpenOrders: PublicKey; lpMint: PublicKey; coinMint: PublicKey; pcMint: PublicKey; coinVault: PublicKey; pcVault: PublicKey; withdrawQueue: PublicKey; ammTargetOrders: PublicKey; poolTempLp: PublicKey; marketProgramId: PublicKey; marketId: PublicKey; ammConfigId: PublicKey; feeDestinationId: PublicKey; } interface SwapFixedInInstructionParamsV4 { poolKeys: AmmV4Keys | AmmV5Keys; userKeys: { tokenAccountIn: PublicKey; tokenAccountOut: PublicKey; owner: PublicKey; }; amountIn: BigNumberish; minAmountOut: BigNumberish; } interface SwapFixedOutInstructionParamsV4 { poolKeys: AmmV4Keys | AmmV5Keys; userKeys: { tokenAccountIn: PublicKey; tokenAccountOut: PublicKey; owner: PublicKey; }; maxAmountIn: BigNumberish; amountOut: BigNumberish; } declare type SwapSide = "in" | "out"; interface SwapInstructionParams { version: number; poolKeys: AmmV4Keys | AmmV5Keys; userKeys: { tokenAccountIn: PublicKey; tokenAccountOut: PublicKey; owner: PublicKey; }; amountIn: BigNumberish; amountOut: BigNumberish; fixedSide: SwapSide; } interface InitPoolInstructionParamsV4 { poolKeys: AmmV4Keys | AmmV5Keys; userKeys: { lpTokenAccount: PublicKey; payer: PublicKey; }; startTime: BigNumberish; } export { AddLiquidityParams, AmountSide, CreatePoolAddress, CreatePoolParam, InitPoolInstructionParamsV4, LiquidityAddInstructionParams, LiquidityPoolKeys, LiquiditySide, LiquidityUserKeys, RemoveLiquidityInstruction, RemoveParams, SwapFixedInInstructionParamsV4, SwapFixedOutInstructionParamsV4, SwapInstructionParams, SwapSide };