Documentation
    Preparing search index...

    Module @orca-so/whirlpools-sdk

    Legacy Whirlpools SDK

    Whirpools is an open-source concentrated liquidity AMM contract on the Solana blockchain.

    The legacy Whirlpools Typescript SDK (@orca-so/whirlpools-sdk) allows for easy interaction with a deployed Whirlpools program and is a solid choice if you are working the Solana Web3.js.

    The contract has been audited by Kudelski and Neodyme.

    In your project, run:

    yarn add "@orca-so/whirlpools-sdk"
    yarn add "@orca-so/common-sdk"
    yarn add "@coral-xyz/[email protected]"
    yarn add "@solana/web3.js"
    yarn add "@solana/spl-token"
    yarn add "decimal.js"

    Visit our documentation site on GitHub to to learn more about how to use this SDK.

    To run tests for the SDK, setup your anchor environment and run:

    anchor test
    

    License

    Apache 2.0

    Constants

    ADAPTIVE_FEE_CONTROL_FACTOR_DENOMINATOR
    FEE_RATE_HARD_LIMIT
    FEE_RATE_MUL_VALUE
    FULL_RANGE_ONLY_TICK_SPACING_THRESHOLD
    MAX_REFERENCE_AGE
    MAX_SQRT_PRICE
    MAX_SQRT_PRICE_BN
    MAX_SUPPLEMENTAL_TICK_ARRAYS
    MAX_SWAP_TICK_ARRAYS
    MAX_TICK_INDEX
    MEMO_PROGRAM_ADDRESS
    METADATA_PROGRAM_ADDRESS
    MIN_SQRT_PRICE
    MIN_SQRT_PRICE_BN
    MIN_TICK_INDEX
    NUM_REWARDS
    ORCA_SUPPORTED_TICK_SPACINGS
    ORCA_WHIRLPOOL_PROGRAM_ID
    ORCA_WHIRLPOOLS_CONFIG
    ORCA_WHIRLPOOLS_CONFIG_ECLIPSE
    ORCA_WHIRLPOOLS_CONFIG_EXTENSION
    POSITION_BUNDLE_SIZE
    PROTOCOL_FEE_RATE_MUL_VALUE
    REDUCTION_FACTOR_DENOMINATOR
    SPLASH_POOL_TICK_SPACING
    TICK_ARRAY_SIZE
    VOLATILITY_ACCUMULATOR_SCALE_FACTOR
    WHIRLPOOL_NFT_UPDATE_AUTH

    Core

    WhirlpoolContext
    WhirlpoolIx
    AccountResolverOptions
    WhirlpoolContextOpts

    Instruction Types

    CloseBundledPositionParams
    ClosePositionParams
    ClosePositionWithTokenExtensionsParams
    CollectAllParams
    CollectAllPositionAddressParams
    CollectAllPositionParams
    CollectFeesParams
    CollectFeesV2Params
    CollectProtocolFeesParams
    CollectProtocolFeesV2Params
    CollectRewardParams
    CollectRewardV2Params
    DecreaseLiquidityInput
    DecreaseLiquidityParams
    DecreaseLiquidityV2Params
    DeletePositionBundleParams
    DeleteTokenBadgeParams
    DevFeeSwapInput
    IncreaseLiquidityInput
    IncreaseLiquidityParams
    IncreaseLiquidityV2Params
    InitConfigParams
    InitFeeTierParams
    InitializeAdaptiveFeeTierParams
    InitializePositionBundleParams
    InitializeRewardParams
    InitializeRewardV2Params
    InitializeTokenBadgeParams
    InitPoolParams
    InitPoolV2Params
    InitPoolWithAdaptiveFeeParams
    InitTickArrayParams
    LockPositionParams
    OpenBundledPositionParams
    OpenPositionParams
    OpenPositionWithTokenExtensionsParams
    SetCollectProtocolFeesAuthorityParams
    SetConfigExtensionAuthorityParams
    SetDefaultBaseFeeRateParams
    SetDefaultFeeRateParams
    SetDefaultProtocolFeeRateParams
    SetDelegatedFeeAuthorityParams
    SetFeeAuthorityParams
    SetFeeRateByDelegatedFeeAuthorityParams
    SetFeeRateParams
    SetInitializePoolAuthorityParams
    SetPresetAdaptiveFeeConstantsParams
    SetProtocolFeeRateParams
    SetRewardAuthorityBySuperAuthorityParams
    SetRewardAuthorityParams
    SetRewardEmissionsParams
    SetRewardEmissionsSuperAuthorityParams
    SetRewardEmissionsV2Params
    SetTokenBadgeAuthorityParams
    SwapInput
    SwapParams
    SwapV2Params
    TwoHopSwapV2Params
    UpdateFeesAndRewardsParams

    Instruction Types @

    InitConfigExtensionParams

    Network

    AccountName
    ParsableAdaptiveFeeTier
    ParsableFeeTier
    ParsableLockConfig
    ParsableOracle
    ParsablePosition
    ParsablePositionBundle
    ParsableTickArray
    ParsableTokenBadge
    ParsableWhirlpool
    ParsableWhirlpoolsConfig
    ParsableWhirlpoolsConfigExtension
    WhirlpoolAccountFetcher
    WhirlpoolAccountFetcherInterface
    WhirlpoolAccountFetchOptions
    WhirlpoolSupportedTypes
    DEFAULT_WHIRLPOOL_RETENTION_POLICY
    IGNORE_CACHE
    PREFER_CACHE
    buildDefaultAccountFetcher
    getAllPositionAccountsByOwner
    getAllWhirlpoolAccountsForConfig

    Other

    TokenExtensionUtil
    AdaptiveFeeInfo
    BundledPositionMap
    PositionMap
    TokenExtensionContext
    TokenExtensionContextForPool
    TokenExtensionContextForReward
    TransferFeeExcludedAmount
    TransferFeeIncludedAmount
    NO_ORACLE_DATA
    NO_TOKEN_EXTENSION_CONTEXT
    WHIRLPOOL_IDL
    decreaseLiquidityQuoteByLiquidityWithParamsUsingPriceSlippage
    getAccountSize
    increaseLiquidityQuoteByLiquidityWithParams
    toTx

    Quotes

    UseFallbackTickArray
    CollectFeesQuote
    CollectFeesQuoteParam
    CollectRewardsQuote
    CollectRewardsQuoteParam
    DecreaseLiquidityQuote
    DecreaseLiquidityQuoteParam
    DevFeeSwapQuote
    IncreaseLiquidityQuote
    IncreaseLiquidityQuoteByLiquidityParam
    IncreaseLiquidityQuoteParam
    NormalSwapQuote
    NormalTwoHopSwapQuote
    SwapEstimates
    SwapQuote
    SwapQuoteParam
    TwoHopSwapQuote
    collectFeesQuote
    collectRewardsQuote
    decreaseLiquidityQuoteByLiquidity
    decreaseLiquidityQuoteByLiquidityWithParams
    increaseLiquidityQuoteByInputToken
    increaseLiquidityQuoteByInputTokenUsingPriceSlippage
    increaseLiquidityQuoteByInputTokenWithParams
    increaseLiquidityQuoteByInputTokenWithParamsUsingPriceSlippage
    swapQuoteByInputToken
    swapQuoteByInputTokenWithDevFees
    swapQuoteByOutputToken
    swapQuoteWithParams

    Quotes Not yet ready for use

    twoHopSwapQuoteFromSwapQuotes

    Solana Accounts

    AdaptiveFeeConstantsData
    AdaptiveFeeTierData
    AdaptiveFeeVariablesData
    FeeTierData
    LockConfigData
    LockTypeData
    LockTypeLabelData
    OpenPositionBumpsData
    OpenPositionWithMetadataBumpsData
    OracleData
    PositionBundleData
    PositionData
    PositionRewardInfoData
    TickArrayData
    TickData
    TokenBadgeData
    WhirlpoolBumpsData
    WhirlpoolData
    WhirlpoolRewardInfoData
    WhirlpoolsConfigData
    WhirlpoolsConfigExtensionData
    WHIRLPOOL_ACCOUNT_SIZE
    WHIRLPOOL_CODER

    Whirlpool Utils

    SwapDirection
    TokenType
    LockConfigUtil
    PDAUtil
    PoolUtil
    PositionBundleUtil
    PriceMath
    SwapUtils
    TickArrayUtil
    TickUtil
    TickArrayRequest
    TokenAmounts
    toTokenAmount

    WhirlpoolClient

    PositionImpl
    Position
    Whirlpool
    WhirlpoolClient
    TickArray
    TokenAccountInfo
    TokenInfo
    WhirlpoolRewardInfo
    buildWhirlpoolClient