Class PoolConfig

Constructors

  • Parameters

    • programId: PublicKey
    • perpComposibilityProgramId: PublicKey
    • fbNftRewardProgramId: PublicKey
    • cluster: Cluster
    • poolName: string
    • poolAddress: PublicKey
    • stakedLpTokenMint: PublicKey
    • compoundingTokenMint: PublicKey
    • stakedLpVault: PublicKey
    • compoundingLpVault: PublicKey
    • lpDecimals: number
    • compoundingLpTokenSymbol: string
    • stakedLpTokenSymbol: string
    • perpetuals: PublicKey
    • transferAuthority: PublicKey
    • multisig: PublicKey
    • addressLookupTableAddresses: PublicKey[]
    • backupOracle: PublicKey
    • nftCollectionAddress: PublicKey
    • rewardDistributionProgram: {
          programId: PublicKey;
          rewardMint: PublicKey;
          rewardTokenAccount: PublicKey;
          rewardVault: PublicKey;
          transferAuthority: PublicKey;
      }
      • programId: PublicKey
      • rewardMint: PublicKey
      • rewardTokenAccount: PublicKey
      • rewardVault: PublicKey
      • transferAuthority: PublicKey
    • tokens: Token[]
    • custodies: CustodyConfig[]
    • markets: MarketConfig[]

    Returns PoolConfig

Properties

addressLookupTableAddresses: PublicKey[]
backupOracle: PublicKey
cluster: Cluster
compoundingLpTokenSymbol: string
compoundingLpVault: PublicKey
compoundingTokenMint: PublicKey
custodies: CustodyConfig[]
fbNftRewardProgramId: PublicKey
lpDecimals: number
markets: MarketConfig[]
multisig: PublicKey
nftCollectionAddress: PublicKey
perpComposibilityProgramId: PublicKey
perpetuals: PublicKey
poolAddress: PublicKey
poolName: string
programId: PublicKey
rewardDistributionProgram: {
    programId: PublicKey;
    rewardMint: PublicKey;
    rewardTokenAccount: PublicKey;
    rewardVault: PublicKey;
    transferAuthority: PublicKey;
}

Type declaration

  • programId: PublicKey
  • rewardMint: PublicKey
  • rewardTokenAccount: PublicKey
  • rewardVault: PublicKey
  • transferAuthority: PublicKey
stakedLpTokenMint: PublicKey
stakedLpTokenSymbol: string
stakedLpVault: PublicKey
tokens: Token[]
transferAuthority: PublicKey

Methods

  • Parameters

    • pubkey: PublicKey

    Returns boolean

  • Parameters

    • custodyId: number

    Returns PublicKey

  • Parameters

    • custodyAccountPk: Address

    Returns number

  • Parameters

    • targetCustody: PublicKey
    • collateralCustody: PublicKey
    • side: Side

    Returns PublicKey

  • Parameters

    • owner: PublicKey
    • marketAccount: PublicKey

    Returns PublicKey

  • Parameters

    • owner: PublicKey
    • targetCustody: PublicKey
    • collateralCustody: PublicKey
    • side: Side

    Returns PublicKey

  • Parameters

    • owner: PublicKey
    • marketAccount: PublicKey

    Returns PublicKey

  • Parameters

    • poolConfig: {
          addressLookupTableAddresses: string[];
          backupOracle: string;
          cluster: string;
          compoundingLpTokenSymbol: string;
          compoundingLpVault: string;
          compoundingTokenMint: string;
          custodies: {
              custodyAccount: string;
              custodyId: number;
              decimals: number;
              extOracleAddress: string;
              intOracleAddress: string;
              isStable: boolean;
              isVirtual: boolean;
              mintKey: string;
              pythPriceId: string;
              pythTicker: string;
              symbol: string;
              tokenAccount: string;
              tokenPrecision: number;
              usdPrecision: number;
          }[];
          fbNftRewardProgramId: string;
          lpDecimals: number;
          markets: {
              collateralCustody: string;
              collateralCustodyId: number;
              collateralMint: string;
              marketAccount: string;
              marketId: number;
              maxLev: number;
              pool: string;
              side: string;
              targetCustody: string;
              targetCustodyId: number;
              targetMint: string;
          }[];
          metadataAccount: string;
          multisig: string;
          nftCollectionAddress: string;
          perpComposibilityProgramId: string;
          perpetuals: string;
          poolAddress: string;
          poolName: string;
          programId: string;
          rewardDistributionProgram: {
              programId: string;
              rewardMint: string;
              rewardTokenAccount: string;
              rewardVault: string;
              transferAuthority: string;
          };
          stakedLpTokenMint: string;
          stakedLpTokenSymbol: string;
          stakedLpVault: string;
          tokens: {
              decimals: number;
              isStable: boolean;
              isVirtual: boolean;
              mintKey: string;
              pythPriceId: string;
              pythTicker: string;
              symbol: string;
              tokenPrecision: number;
              usdPrecision: number;
          }[];
          transferAuthority: string;
      }
      • addressLookupTableAddresses: string[]
      • backupOracle: string
      • cluster: string
      • compoundingLpTokenSymbol: string
      • compoundingLpVault: string
      • compoundingTokenMint: string
      • custodies: {
            custodyAccount: string;
            custodyId: number;
            decimals: number;
            extOracleAddress: string;
            intOracleAddress: string;
            isStable: boolean;
            isVirtual: boolean;
            mintKey: string;
            pythPriceId: string;
            pythTicker: string;
            symbol: string;
            tokenAccount: string;
            tokenPrecision: number;
            usdPrecision: number;
        }[]
      • fbNftRewardProgramId: string
      • lpDecimals: number
      • markets: {
            collateralCustody: string;
            collateralCustodyId: number;
            collateralMint: string;
            marketAccount: string;
            marketId: number;
            maxLev: number;
            pool: string;
            side: string;
            targetCustody: string;
            targetCustodyId: number;
            targetMint: string;
        }[]
      • metadataAccount: string
      • multisig: string
      • nftCollectionAddress: string
      • perpComposibilityProgramId: string
      • perpetuals: string
      • poolAddress: string
      • poolName: string
      • programId: string
      • rewardDistributionProgram: {
            programId: string;
            rewardMint: string;
            rewardTokenAccount: string;
            rewardVault: string;
            transferAuthority: string;
        }
        • programId: string
        • rewardMint: string
        • rewardTokenAccount: string
        • rewardVault: string
        • transferAuthority: string
      • stakedLpTokenMint: string
      • stakedLpTokenSymbol: string
      • stakedLpVault: string
      • tokens: {
            decimals: number;
            isStable: boolean;
            isVirtual: boolean;
            mintKey: string;
            pythPriceId: string;
            pythTicker: string;
            symbol: string;
            tokenPrecision: number;
            usdPrecision: number;
        }[]
      • transferAuthority: string

    Returns PoolConfig