Skip to main content
The ixStrip method on the Vault class creates a transaction instruction that strips SY tokens into equal amounts of PT and YT.
This method takes SY tokens directly. If you want to strip from a base asset (e.g., USDC), use ixStripFromBase instead.

Usage

import { Vault, LOCAL_ENV } from "@exponent-labs/exponent-sdk";
import { Connection, PublicKey, Transaction, sendAndConfirmTransaction } from "@solana/web3.js";

const connection = new Connection("https://api.mainnet-beta.solana.com");
const vault = await Vault.load(LOCAL_ENV, connection, vaultAddress);

const ix = vault.ixStrip({
  syIn: 1_000_000n,
  depositor: wallet.publicKey,
});

const tx = new Transaction().add(ix);
const signature = await sendAndConfirmTransaction(connection, tx, [wallet]);

Required Parameters

ParameterTypeDescription
syInbigintAmount of SY tokens to strip
depositorPublicKeyThe depositor’s wallet public key

Optional Parameters

ParameterTypeDescription
sySrcPublicKeySource SY token account. Defaults to depositor’s ATA
ptDstPublicKeyDestination PT token account. Defaults to depositor’s ATA
ytDstPublicKeyDestination YT token account. Defaults to depositor’s ATA

Returns

Returns a TransactionInstruction that strips SY into PT and YT. The number of PT and YT minted equals syIn × exchangeRate.