import * as anchor from "@project-serum/anchor"; import { getOptionState, getStrikr, getShellProvider } from "../utils"; /** * Fetch OptionState account * @param connection Solana Web3 connection object * @param nftMint Asset NFT which underlies the option * @returns Promise resolving to the OptionState account contents */ export const getOption = async ( connection: anchor.web3.Connection, assetNftMint: anchor.web3.PublicKey ) => { const optionStateAddress = await getOptionState(assetNftMint); const provider = getShellProvider(connection); const strikr = getStrikr(provider); return await strikr.account.optionState.fetch(optionStateAddress); }; /** * Fetch all OptionState accounts * @param connection Solana Web3 connection object * @returns Promise resolving to the OptionState account contents */ export const getAllOptions = async (connection: anchor.web3.Connection) => { const provider = getShellProvider(connection); const strikr = getStrikr(provider); return await strikr.account.optionState.all(); };