Options
All
  • Public
  • Public/Protected
  • All
Menu

Program-related actions on a wrapped token.

Hierarchy

  • WrappedTokenActions

Index

Constructors

  • new WrappedTokenActions(provider: Provider, program: AnchorProgram<AddDecimalsIDL, { wrappedToken: AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>> }, AnchorDefined<AddDecimalsIDL, Record<string, never>>, MakeInstructions<[{ accounts: [{ isMut: true; isSigner: false; name: "wrapper" }, { isMut: false; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: false; name: "underlyingMint" }, { isMut: false; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "rent" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "nonce"; type: "u8" }]; name: "initializeWrapper" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "depositAmount"; type: "u64" }]; name: "deposit" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxBurnAmount"; type: "u64" }]; name: "withdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "withdrawAll" }], AnchorDefined<AddDecimalsIDL, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>, _wrapped: LazyWrappedToken<null | PublicKey>): WrappedTokenActions
  • Parameters

    • provider: Provider
    • program: AnchorProgram<AddDecimalsIDL, { wrappedToken: AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>> }, AnchorDefined<AddDecimalsIDL, Record<string, never>>, MakeInstructions<[{ accounts: [{ isMut: true; isSigner: false; name: "wrapper" }, { isMut: false; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: false; name: "underlyingMint" }, { isMut: false; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "rent" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "nonce"; type: "u8" }]; name: "initializeWrapper" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "depositAmount"; type: "u64" }]; name: "deposit" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxBurnAmount"; type: "u64" }]; name: "withdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "withdrawAll" }], AnchorDefined<AddDecimalsIDL, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>
    • _wrapped: LazyWrappedToken<null | PublicKey>

    Returns WrappedTokenActions

Properties

program: AnchorProgram<AddDecimalsIDL, { wrappedToken: AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>> }, AnchorDefined<AddDecimalsIDL, Record<string, never>>, MakeInstructions<[{ accounts: [{ isMut: true; isSigner: false; name: "wrapper" }, { isMut: false; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: false; name: "underlyingMint" }, { isMut: false; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "rent" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "nonce"; type: "u8" }]; name: "initializeWrapper" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "depositAmount"; type: "u64" }]; name: "deposit" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxBurnAmount"; type: "u64" }]; name: "withdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "withdrawAll" }], AnchorDefined<AddDecimalsIDL, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>
provider: Provider

Accessors

Methods

  • createIfNotExists(mintKP?: Keypair): Promise<null | TransactionEnvelope>
  • genUserStake(): Promise<{ accounts: { owner: PublicKey; tokenProgram: PublicKey; userUnderlyingTokens: PublicKey; userWrappedTokens: PublicKey; wrapper: PublicKey; wrapperMint: PublicKey; wrapperUnderlyingTokens: PublicKey }; createAccountInstructions: { underlying: null | TransactionInstruction; wrapped: null | TransactionInstruction }; instructions: readonly TransactionInstruction[] }>
  • Returns Promise<{ accounts: { owner: PublicKey; tokenProgram: PublicKey; userUnderlyingTokens: PublicKey; userWrappedTokens: PublicKey; wrapper: PublicKey; wrapperMint: PublicKey; wrapperUnderlyingTokens: PublicKey }; createAccountInstructions: { underlying: null | TransactionInstruction; wrapped: null | TransactionInstruction }; instructions: readonly TransactionInstruction[] }>

  • getAssociatedTokenAddress(): Promise<PublicKey>
  • loadData(): Promise<AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>
  • Returns Promise<AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>

  • unwrap(amount: TokenAmount): Promise<TransactionEnvelope>
  • unwrapAll(): Promise<TransactionEnvelope>
  • unwrapAllIX(): Promise<TransactionInstruction>
  • wrap(amount: TokenAmount): Promise<TransactionEnvelope>
  • loadWithActions(provider: Provider, program: AnchorProgram<AddDecimalsIDL, { wrappedToken: AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>> }, AnchorDefined<AddDecimalsIDL, Record<string, never>>, MakeInstructions<[{ accounts: [{ isMut: true; isSigner: false; name: "wrapper" }, { isMut: false; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: false; name: "underlyingMint" }, { isMut: false; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "rent" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "nonce"; type: "u8" }]; name: "initializeWrapper" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "depositAmount"; type: "u64" }]; name: "deposit" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxBurnAmount"; type: "u64" }]; name: "withdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "withdrawAll" }], AnchorDefined<AddDecimalsIDL, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>, underlying: Token, decimals: number): Promise<WrappedTokenActions>
  • Loads the actions with the wrapper.

    Parameters

    • provider: Provider
    • program: AnchorProgram<AddDecimalsIDL, { wrappedToken: AnchorTypeDef<{ name: "WrappedToken"; type: { fields: [{ name: "decimals"; type: "u8" }, { name: "multiplier"; type: "u64" }, { name: "wrapperUnderlyingMint"; type: "publicKey" }, { name: "wrapperUnderlyingTokens"; type: "publicKey" }, { name: "wrapperMint"; type: "publicKey" }, { name: "nonce"; type: "u8" }]; kind: "struct" } } & { name: "WrappedToken" }, AnchorDefined<AddDecimalsIDL, Record<string, never>>> }, AnchorDefined<AddDecimalsIDL, Record<string, never>>, MakeInstructions<[{ accounts: [{ isMut: true; isSigner: false; name: "wrapper" }, { isMut: false; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: false; name: "underlyingMint" }, { isMut: false; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: true; name: "payer" }, { isMut: false; isSigner: false; name: "rent" }, { isMut: false; isSigner: false; name: "systemProgram" }]; args: [{ name: "nonce"; type: "u8" }]; name: "initializeWrapper" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "depositAmount"; type: "u64" }]; name: "deposit" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: [{ name: "maxBurnAmount"; type: "u64" }]; name: "withdraw" }, { accounts: [{ isMut: false; isSigner: false; name: "wrapper" }, { isMut: true; isSigner: false; name: "wrapperMint" }, { isMut: true; isSigner: false; name: "wrapperUnderlyingTokens" }, { isMut: false; isSigner: true; name: "owner" }, { isMut: true; isSigner: false; name: "userUnderlyingTokens" }, { isMut: true; isSigner: false; name: "userWrappedTokens" }, { isMut: false; isSigner: false; name: "tokenProgram" }]; args: []; name: "withdrawAll" }], AnchorDefined<AddDecimalsIDL, Record<string, never>>>, MakeInstructions<unknown, AnchorDefined<AddDecimalsIDL, Record<string, never>>>>
    • underlying: Token
    • decimals: number

    Returns Promise<WrappedTokenActions>

Generated using TypeDoc