pump-swap-core-v1
Version:
This is core SDK for pumpdotfun offical AMM pool - PumpSwap
97 lines • 3.86 kB
TypeScript
import { BN } from "@coral-xyz/anchor";
import { PublicKey, TransactionInstruction } from "@solana/web3.js";
import { CreatePoolType, DepositType, TradeType, WithdrawType } from "./types";
declare class PumpSwapSDK {
private program;
/**
*
* @param cluster "mainnet" | "devnet"
* @param commitment "processed" | "confirmed" | "finalized"
* @param customRPC string
*/
constructor(cluster: "mainnet" | "devnet", commitment: "processed" | "confirmed" | "finalized", customRPC?: string);
/**
*
* @param lpFeeBasisPoints BN
* @param protocolFeeBasisPoints BN
* @param protocolFeeRecipients Array<PublicKey>
* @returns Promise<TransactionInstruction>
*/
getCreateConfigInstruction: (lpFeeBasisPoints: BN, protocolFeeBasisPoints: BN, protocolFeeRecipients: Array<PublicKey>) => Promise<TransactionInstruction>;
/**
*
* @param baseAmountOut BN
* @param maxQuoteAmountIn BN
* @param tradeParam TradeType
* @returns Promise<TransactionInstruction>
*/
getBuyInstruction: (baseAmountOut: BN, maxQuoteAmountIn: BN, tradeParam: TradeType) => Promise<TransactionInstruction>;
/**
*
* @param baseAmountIn BN
* @param minQuoteAmountOut BN
* @param tradeParam TradeType
* @returns Promise<TransactionInstruction>
*/
getSellInstruction: (baseAmountIn: BN, minQuoteAmountOut: BN, tradeParam: TradeType) => Promise<TransactionInstruction>;
/**
*
* @param index number
* @param baseAmountIn BN
* @param quoteAmountIn BN
* @param createPoolParam CreatePoolType
* @param user PublicKey
* @returns Promise<TransactionInstruction>
*/
getCreatePoolInstruction: (index: number, baseAmountIn: BN, quoteAmountIn: BN, createPoolParam: CreatePoolType, user: PublicKey) => Promise<TransactionInstruction>;
/**
*
* @param lpTokenAmountOut BN
* @param maxBaseAmountIn BN
* @param maxQuoteAmountIn BN
* @param depositType DepositType
* @returns Promise<TransactionInstruction>
*/
getDepositInstruction: (lpTokenAmountOut: BN, maxBaseAmountIn: BN, maxQuoteAmountIn: BN, depositType: DepositType) => Promise<TransactionInstruction>;
/**
*
* @param disableCreatePool boolean
* @param disableDeposit boolean
* @param disableWithdraw boolean
* @param disableBuy boolean
* @param disableSell boolean
* @returns Promise<TransactionInstruction>
*/
getDisableInstruction: (disableCreatePool: boolean, disableDeposit: boolean, disableWithdraw: boolean, disableBuy: boolean, disableSell: boolean) => Promise<TransactionInstruction>;
/**
*
* @param account PublicKey
* @returns Promise<TransactionInstruction>
*/
getExtendAccountInstruction: (account: PublicKey) => Promise<TransactionInstruction>;
/**
*
* @param newAdmin PublicKey
* @returns Promise<TransactionInstruction>
*/
getUpdateAdminInstruction: (newAdmin: PublicKey) => Promise<TransactionInstruction>;
/**
*
* @param lpFeeBasisPoints BN
* @param protocolFeeBasisPoints BN
* @param protocolFeeRecipients Array<PublicKey>
* @returns Promise<TransactionInstruction>
*/
getUpdateFeeConfigInstruction: (lpFeeBasisPoints: BN, protocolFeeBasisPoints: BN, protocolFeeRecipients: Array<PublicKey>) => Promise<TransactionInstruction>;
/**
*
* @param lpTokenAmountIn BN
* @param minBaseAmountOut BN
* @param minQuoteAmountOut BN
* @param withdrawParam WithdrawType
* @returns Promise<TransactionInstruction>
*/
getWithdrawInstruction: (lpTokenAmountIn: BN, minBaseAmountOut: BN, minQuoteAmountOut: BN, withdrawParam: WithdrawType) => Promise<TransactionInstruction>;
}
export default PumpSwapSDK;
//# sourceMappingURL=index.d.ts.map