solana-token-extension-boost
Version:
SDK for Solana Token Extensions with wallet adapter support
33 lines (32 loc) • 1.57 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.MintCloseAuthorityExtension = void 0;
const spl_token_1 = require("@solana/spl-token");
/**
* Class for setting up mint close authority
*/
class MintCloseAuthorityExtension {
/**
* Create instruction to initialize mint close authority
* @param mint - Mint address
* @param closeAuthority - Address with authority to close the mint
* @param programId - Token Extension Program ID
* @returns Instruction to set close authority
*/
static createInitializeMintCloseAuthorityInstruction(mint, closeAuthority, programId = spl_token_1.TOKEN_2022_PROGRAM_ID) {
return (0, spl_token_1.createInitializeMintCloseAuthorityInstruction)(mint, closeAuthority, programId);
}
/**
* Create instruction to close mint account
* @param mint - Mint address to close
* @param destination - Address to receive lamports
* @param authority - Address with authority to close mint (mint close authority)
* @param multiSigners - List of signers if authority is multisig (default empty array)
* @param programId - Token Extension Program ID
* @returns Instruction to close mint account
*/
static createCloseAccountInstruction(mint, destination, authority, multiSigners = [], programId = spl_token_1.TOKEN_2022_PROGRAM_ID) {
return (0, spl_token_1.createCloseAccountInstruction)(mint, destination, authority, multiSigners, programId);
}
}
exports.MintCloseAuthorityExtension = MintCloseAuthorityExtension;