UNPKG

@pump-fun/pump-swap-sdk

Version:

Official SDK for interacting with Pump Swap AMM protocol on Solana

54 lines (51 loc) 4.81 kB
import { G as GlobalConfig, P as Pool, i as GlobalVolumeAccumulator, U as UserVolumeAccumulator, k as CreatePoolSolanaState, m as LiquiditySolanaState, a as DepositQuoteAndLpTokenFromBaseResult, c as DepositBaseAndLpTokenFromQuoteResult, f as WithdrawAutocompleteResult, n as CollectCoinCreatorFeeSolanaState, l as SwapSolanaState } from '../sdk-CtszEpqH.js'; import { Connection, PublicKey, AccountInfo, TransactionInstruction } from '@solana/web3.js'; import BN from 'bn.js'; import '@solana/spl-token'; declare class PumpAmmSdk { private readonly pumpAmmInternalSdk; constructor(connection: Connection, programId?: string); programId(): PublicKey; globalConfigKey(): PublicKey; poolKey(index: number, creator: PublicKey, baseMint: PublicKey, quoteMint: PublicKey): [PublicKey, number]; lpMintKey(pool: PublicKey): [PublicKey, number]; fetchGlobalConfigAccount(): Promise<GlobalConfig>; fetchPool(pool: PublicKey): Promise<Pool>; decodeGlobalConfig(globalConfigAccountInfo: AccountInfo<Buffer>): GlobalConfig; decodePool(poolAccountInfo: AccountInfo<Buffer>): Pool; fetchGlobalVolumeAccumulator(): Promise<GlobalVolumeAccumulator>; decodeGlobalVolumeAccumulator(globalVolumeAccumulatorAccountInfo: AccountInfo<Buffer>): GlobalVolumeAccumulator; fetchUserVolumeAccumulator(user: PublicKey): Promise<UserVolumeAccumulator | null>; decodeUserVolumeAccumulator(userVolumeAccumulatorAccountInfo: AccountInfo<Buffer>): UserVolumeAccumulator; createPoolInstructions(createPoolSolanaState: CreatePoolSolanaState, baseIn: BN, quoteIn: BN): Promise<TransactionInstruction[]>; createAutocompleteInitialPoolPrice(initialBase: BN, initialQuote: BN): Promise<BN>; depositInstructions(liquiditySolanaState: LiquiditySolanaState, lpToken: BN, slippage: number): Promise<TransactionInstruction[]>; depositAutocompleteQuoteAndLpTokenFromBase(liquiditySolanaState: LiquiditySolanaState, base: BN, slippage: number): DepositQuoteAndLpTokenFromBaseResult; depositAutocompleteBaseAndLpTokenFromQuote(liquiditySolanaState: LiquiditySolanaState, quote: BN, slippage: number): DepositBaseAndLpTokenFromQuoteResult; withdrawInstructions(liquiditySolanaState: LiquiditySolanaState, lpToken: BN, slippage: number): Promise<TransactionInstruction[]>; withdrawAutoCompleteBaseAndQuoteFromLpToken(liquiditySolanaState: LiquiditySolanaState, lpAmount: BN, slippage: number): WithdrawAutocompleteResult; extendAccount(account: PublicKey, user: PublicKey): Promise<TransactionInstruction>; collectCoinCreatorFee(collectCoinCreatorFeeSolanaState: CollectCoinCreatorFeeSolanaState): Promise<TransactionInstruction[]>; getCoinCreatorVaultBalance(coinCreator: PublicKey): Promise<BN>; coinCreatorVaultAuthorityPda(coinCreator: PublicKey): PublicKey; coinCreatorVaultAta(coinCreatorVaultAuthority: PublicKey, quoteMint: PublicKey, quoteTokenProgram: PublicKey): PublicKey; setCoinCreator(pool: PublicKey): Promise<TransactionInstruction>; createPoolSolanaState(index: number, creator: PublicKey, baseMint: PublicKey, quoteMint: PublicKey, userBaseTokenAccount?: PublicKey | undefined, userQuoteTokenAccount?: PublicKey | undefined): Promise<CreatePoolSolanaState>; swapSolanaState(poolKey: PublicKey, user: PublicKey, userBaseTokenAccount?: PublicKey | undefined, userQuoteTokenAccount?: PublicKey | undefined): Promise<SwapSolanaState>; liquiditySolanaState(poolKey: PublicKey, user: PublicKey, userBaseTokenAccount?: PublicKey | undefined, userQuoteTokenAccount?: PublicKey | undefined, userPoolTokenAccount?: PublicKey | undefined): Promise<LiquiditySolanaState>; collectCoinCreatorFeeSolanaState(coinCreator: PublicKey, coinCreatorTokenAccount?: PublicKey | undefined): Promise<CollectCoinCreatorFeeSolanaState>; claimTokenIncentives(user: PublicKey, payer: PublicKey): Promise<TransactionInstruction[]>; getTotalUnclaimedTokens(user: PublicKey): Promise<BN>; getCurrentDayTokens(user: PublicKey): Promise<BN>; syncUserVolumeAccumulator(user: PublicKey): Promise<TransactionInstruction>; initUserVolumeAccumulator({ payer, user, }: { payer: PublicKey; user: PublicKey; }): Promise<TransactionInstruction>; closeUserVolumeAccumulator(user: PublicKey): Promise<TransactionInstruction>; buyBaseInput(swapSolanaState: SwapSolanaState, base: BN, slippage: number): Promise<TransactionInstruction[]>; buyQuoteInput(swapSolanaState: SwapSolanaState, quote: BN, slippage: number): Promise<TransactionInstruction[]>; sellBaseInput(swapSolanaState: SwapSolanaState, base: BN, slippage: number): Promise<TransactionInstruction[]>; sellQuoteInput(swapSolanaState: SwapSolanaState, quote: BN, slippage: number): Promise<TransactionInstruction[]>; } export { PumpAmmSdk };