UNPKG

solmash-whitelist-sdk-v2

Version:

A sdk for interacting Solmash Whitelist program

151 lines 5.44 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.SolmashWhitelistInstructions = void 0; const spl_token_1 = require("@solana/spl-token"); const web3_js_1 = require("@solana/web3.js"); class SolmashWhitelistInstructions { constructor(program) { this.program = program; } async getInitAuctionInstruction(auction, auctionVault, auctionVaultTokenAccount, creator, initParams) { const { auctionToken, bidToken, claimTime, enabled, name, preSaleEndTime, preSaleStartTime, ticketPriceInBid, ticketPriceInSol, ticketsInPool, tokenQuantityPerTicket, } = initParams; return this.program.methods .initAuction({ auctionToken, bidToken, claimTime, enabled, name, preSaleEndTime, preSaleStartTime, ticketPriceInBid, ticketPriceInSol, ticketsInPool, tokenQuantityPerTicket, }) .accounts({ associatedTokenProgram: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID, auction, auctionToken, auctionVault, auctionVaultTokenAccount, creator, systemProgram: web3_js_1.SystemProgram.programId, tokenProgram: spl_token_1.TOKEN_PROGRAM_ID, }) .instruction(); } async getAddTokenInstruction(auction, auctionToken, auctionVault, auctionVaultTokenAccount, creator, creatorAuctionTokenAccount) { return this.program.methods .addToken() .accounts({ associatedTokenProgram: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID, auction, auctionToken, auctionVault, auctionVaultTokenAccount, creator, creatorAuctionTokenAccount, systemProgram: web3_js_1.SystemProgram.programId, tokenProgram: spl_token_1.TOKEN_PROGRAM_ID, }) .instruction(); } async getWithdrawFundsInstruction(auction, auctionBidTokenAccount, auctionToken, auctionVault, auctionVaultTokenAccount, bidToken, creator, creatorAuctionTokenAccount, creatorBidTokenAccount, withdrawSol) { return this.program.methods .withdrawFunds(withdrawSol) .accounts({ associatedTokenProgram: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID, auction, auctionBidTokenAccount, auctionToken, auctionVault, auctionVaultTokenAccount, bidToken, creator, creatorAuctionTokenAccount, creatorBidTokenAccount, systemProgram: web3_js_1.SystemProgram.programId, tokenProgram: spl_token_1.TOKEN_PROGRAM_ID, }) .instruction(); } async getWhitelistInstruction(auction, buyerPda, creator, whitelistUser) { return this.program.methods .whitelist() .accounts({ auction, buyerPda, creator, systemProgram: web3_js_1.SystemProgram.programId, whitelistUser, }) .instruction(); } // async getPreSaleBuyUsingSplInstruction( // auction: PublicKey, // auctionVault: PublicKey, // auctionVaultBidTokenAccount: PublicKey, // bidToken: PublicKey, // buyer: PublicKey, // buyerBidTokenAccount: PublicKey, // buyerPda: PublicKey, // ): Promise<TransactionInstruction> { // return this.program.methods // .preSaleBuyUsingSpl() // .accounts({ // associatedTokenProgram: ASSOCIATED_TOKEN_PROGRAM_ID, // auction, // auctionVault, // auctionVaultBidTokenAccount, // bidToken, // buyer, // buyerBidTokenAccount, // buyerPda, // clock: SYSVAR_CLOCK_PUBKEY, // systemProgram: SystemProgram.programId, // tokenProgram: TOKEN_PROGRAM_ID, // }) // .instruction(); // } async getPreSaleBuyUsingSolInstruction(auction, auctionVault, buyer, buyerPda) { return this.program.methods .preSaleBuyUsingSol() .accounts({ auction, auctionVault, buyer, buyerPda, systemProgram: web3_js_1.SystemProgram.programId, }) .instruction(); } async getClaimTokensInstruction(auction, auctionToken, auctionVault, auctionVaultTokenAccount, buyer, buyerAuctionTokenAccount, buyerPda) { return this.program.methods .claimTokens() .accounts({ associatedTokenProgram: spl_token_1.ASSOCIATED_TOKEN_PROGRAM_ID, auction, auctionToken, auctionVault, auctionVaultTokenAccount, buyer, buyerAuctionTokenAccount, buyerPda, systemProgram: web3_js_1.SystemProgram.programId, tokenProgram: spl_token_1.TOKEN_PROGRAM_ID, }) .instruction(); } async getChangeTimeInstruction(auction, creator, newStartTime, newEndTime) { return this.program.methods .changeTime(newStartTime, newEndTime) .accounts({ auction, creator, }) .instruction(); } } exports.SolmashWhitelistInstructions = SolmashWhitelistInstructions; //# sourceMappingURL=instructions.js.map