@meteora-ag/dlmm 1.9.12 → 1.9.14

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -44,7 +44,7 @@ const dlmmPool = await DLMM.createMultiple(connection, [USDC_USDT_POOL, ...]);
44
44
  const activeBin = await dlmmPool.getActiveBin();
45
45
  const activeBinPriceLamport = activeBin.price;
46
46
  const activeBinPricePerToken = dlmmPool.fromPricePerLamport(
47
- Number(activeBin.price)
47
+ Number(activeBin.price),
48
48
  );
49
49
  ```
50
50
 
@@ -64,7 +64,7 @@ const totalYAmount = autoFillYByStrategy(
64
64
  activeBin.yAmount,
65
65
  minBinId,
66
66
  maxBinId,
67
- StrategyType.Spot // can be StrategyType.Spot, StrategyType.BidAsk, StrategyType.Curve
67
+ StrategyType.Spot, // can be StrategyType.Spot, StrategyType.BidAsk, StrategyType.Curve
68
68
  );
69
69
  const newBalancePosition = new Keypair();
70
70
 
@@ -86,7 +86,7 @@ try {
86
86
  const createBalancePositionTxHash = await sendAndConfirmTransaction(
87
87
  connection,
88
88
  createPositionTx,
89
- [user, newBalancePosition]
89
+ [user, newBalancePosition],
90
90
  );
91
91
  } catch (error) {}
92
92
  ```
@@ -120,7 +120,7 @@ try {
120
120
  const createBalancePositionTxHash = await sendAndConfirmTransaction(
121
121
  connection,
122
122
  createPositionTx,
123
- [user, newImbalancePosition]
123
+ [user, newImbalancePosition],
124
124
  );
125
125
  } catch (error) {}
126
126
  ```
@@ -154,7 +154,7 @@ try {
154
154
  const createOneSidePositionTxHash = await sendAndConfirmTransaction(
155
155
  connection,
156
156
  createPositionTx,
157
- [user, newOneSidePosition]
157
+ [user, newOneSidePosition],
158
158
  );
159
159
  } catch (error) {}
160
160
  ```
@@ -163,7 +163,7 @@ try {
163
163
 
164
164
  ```ts
165
165
  const { userPositions } = await dlmmPool.getPositionsByUserAndLbPair(
166
- user.publicKey
166
+ user.publicKey,
167
167
  );
168
168
  const binData = userPositions[0].positionData.positionBinData;
169
169
  ```
@@ -184,7 +184,7 @@ const totalYAmount = autoFillYByStrategy(
184
184
  activeBin.yAmount,
185
185
  minBinId,
186
186
  maxBinId,
187
- StrategyType.Spot // can be StrategyType.Spot, StrategyType.BidAsk, StrategyType.Curve
187
+ StrategyType.Spot, // can be StrategyType.Spot, StrategyType.BidAsk, StrategyType.Curve
188
188
  );
189
189
 
190
190
  // Add Liquidity to existing position
@@ -204,7 +204,7 @@ try {
204
204
  const addLiquidityTxHash = await sendAndConfirmTransaction(
205
205
  connection,
206
206
  addLiquidityTx,
207
- [user]
207
+ [user],
208
208
  );
209
209
  } catch (error) {}
210
210
  ```
@@ -213,11 +213,11 @@ try {
213
213
 
214
214
  ```ts
215
215
  const userPosition = userPositions.find(({ publicKey }) =>
216
- publicKey.equals(newBalancePosition.publicKey)
216
+ publicKey.equals(newBalancePosition.publicKey),
217
217
  );
218
218
  // Remove Liquidity
219
219
  const binIdsToRemove = userPosition.positionData.positionBinData.map(
220
- (bin) => bin.binId
220
+ (bin) => bin.binId,
221
221
  );
222
222
  const removeLiquidityTx = await dlmmPool.removeLiquidity({
223
223
  position: userPosition.publicKey,
@@ -225,7 +225,7 @@ const removeLiquidityTx = await dlmmPool.removeLiquidity({
225
225
  fromBinId: binIdsToRemove[0],
226
226
  toBinId: binIdsToRemove[binIdsToRemove.length - 1],
227
227
  liquiditiesBpsToRemove: new Array(binIdsToRemove.length).fill(
228
- new BN(100 * 100)
228
+ new BN(100 * 100),
229
229
  ), // 100% (range from 0 to 100)
230
230
  shouldClaimAndClose: true, // should claim swap fee and close position together
231
231
  });
@@ -238,7 +238,7 @@ try {
238
238
  connection,
239
239
  tx,
240
240
  [user],
241
- { skipPreflight: false, preflightCommitment: "singleGossip" }
241
+ { skipPreflight: false, preflightCommitment: "singleGossip" },
242
242
  );
243
243
  }
244
244
  } catch (error) {}
@@ -258,7 +258,7 @@ async function claimFee(dlmmPool: DLMM) {
258
258
  const claimFeeTxHash = await sendAndConfirmTransaction(
259
259
  connection,
260
260
  claimFeeTx,
261
- [user]
261
+ [user],
262
262
  );
263
263
  }
264
264
  } catch (error) {}
@@ -278,7 +278,7 @@ try {
278
278
  connection,
279
279
  closePositionTx,
280
280
  [user],
281
- { skipPreflight: false, preflightCommitment: "singleGossip" }
281
+ { skipPreflight: false, preflightCommitment: "singleGossip" },
282
282
  );
283
283
  } catch (error) {}
284
284
  ```
@@ -295,7 +295,7 @@ const swapQuote = await dlmmPool.swapQuote(
295
295
  swapAmount,
296
296
  swapYtoX,
297
297
  new BN(1),
298
- binArrays
298
+ binArrays,
299
299
  );
300
300
 
301
301
  // Swap
@@ -318,15 +318,17 @@ try {
318
318
 
319
319
  ## Static functions
320
320
 
321
- | Function | Description | Return |
322
- | ----------------------------- | ---------------------------------------------------------------------------------- | ------------------------------------ |
323
- | `create` | Given the DLMM address, create an instance to access the state and functions | `Promise<DLMM>` |
324
- | `createMultiple` | Given a list of DLMM addresses, create instances to access the state and functions | `Promise<Array<DLMM>>` |
325
- | `getAllPresetParameters` | Get all the preset params (use to create DLMM pool) | `Promise<PresetParams>` |
326
- | `createPermissionLbPair` | Create DLMM Pool | `Promise<Transcation>` |
327
- | `getClaimableLMReward` | Get Claimable LM reward for a position | `Promise<LMRewards>` |
328
- | `getClaimableSwapFee` | Get Claimable Swap Fee for a position | `Promise<SwapFee>` |
329
- | `getAllLbPairPositionsByUser` | Get user's all positions for all DLMM pools | `Promise<Map<string, PositionInfo>>` |
321
+ | Function | Description | Return |
322
+ | ----------------------------------- | ---------------------------------------------------------------------------------- | ------------------------------------ |
323
+ | `create` | Given the DLMM address, create an instance to access the state and functions | `Promise<DLMM>` |
324
+ | `createMultiple` | Given a list of DLMM addresses, create instances to access the state and functions | `Promise<Array<DLMM>>` |
325
+ | `getAllPresetParameters` | Get all the preset params (use to create DLMM pool) | `Promise<PresetParams>` |
326
+ | `createPermissionLbPair` | Create DLMM Pool | `Promise<Transcation>` |
327
+ | `getClaimableLMReward` | Get Claimable LM reward for a position | `Promise<LMRewards>` |
328
+ | `getClaimableSwapFee` | Get Claimable Swap Fee for a position | `Promise<SwapFee>` |
329
+ | `getAllLbPairPositionsByUser` | Get user's all positions for all DLMM pools | `Promise<Map<string, PositionInfo>>` |
330
+ | `getPositionsByUserAndTokenAddress` | Get user's positions across all DLMM pools that contain a given token mint | `Promise<Map<string, PositionInfo>>` |
331
+ | `getLimitOrdersByUserAndTokenAddress` | Get user's limit orders across all DLMM pools that contain a given token mint, grouped by LB pair | `Promise<Map<string, LimitOrderInfo>>` |
330
332
 
331
333
  ## DLMM instance functions
332
334
 
package/dist/index.d.ts CHANGED
@@ -12303,6 +12303,13 @@ interface PositionInfo {
12303
12303
  tokenY: TokenReserve;
12304
12304
  lbPairPositionsData: Array<LbPosition>;
12305
12305
  }
12306
+ interface LimitOrderInfo {
12307
+ publicKey: PublicKey;
12308
+ lbPair: LbPair;
12309
+ tokenX: TokenReserve;
12310
+ tokenY: TokenReserve;
12311
+ limitOrders: Array<ParsedLimitOrderWithPubkey>;
12312
+ }
12306
12313
  interface FeeInfo {
12307
12314
  baseFeeRatePercentage: Decimal;
12308
12315
  maxFeeRatePercentage: Decimal;
@@ -12714,6 +12721,7 @@ declare function getBinFromBinArray(binId: number, binArray: BinArray): Bin;
12714
12721
  declare function findNextBinArrayIndexWithLiquidity(swapForY: boolean, activeId: BN, lbPairState: LbPair, binArrayBitmapExtension: BinArrayBitmapExtension | null): BN | null;
12715
12722
  declare function findNextBinArrayWithLiquidity(swapForY: boolean, activeBinId: BN, lbPairState: LbPair, binArrayBitmapExtension: BinArrayBitmapExtension | null, binArrays: BinArrayAccount[]): BinArrayAccount | null;
12716
12723
  /**
12724
+ * @deprecated Use `getBinArraysRequiredByPositionRange2` instead, unless you're manually constructing a transaction for v1 liquidity related endpoint such as addLiquidity, removeLiquidity, claimFee, etc.
12717
12725
  * Retrieves the bin arrays required to initialize multiple positions in continuous range.
12718
12726
  *
12719
12727
  * @param {PublicKey} pair - The public key of the pair.
@@ -12725,6 +12733,18 @@ declare function getBinArraysRequiredByPositionRange(pair: PublicKey, fromBinId:
12725
12733
  key: PublicKey;
12726
12734
  index: BN;
12727
12735
  }[];
12736
+ /**
12737
+ * Retrieves the bin arrays required to initialize multiple positions in continuous range.
12738
+ *
12739
+ * @param {PublicKey} pair - The public key of the pair.
12740
+ * @param {BN} fromBinId - The starting bin ID.
12741
+ * @param {BN} toBinId - The ending bin ID.
12742
+ * @return {[{key: PublicKey, index: BN }]} An array of bin arrays required for the given position range.
12743
+ */
12744
+ declare function getBinArraysRequiredByPositionRange2(pair: PublicKey, fromBinId: BN, toBinId: BN, programId: PublicKey): {
12745
+ key: PublicKey;
12746
+ index: BN;
12747
+ }[];
12728
12748
  declare function enumerateBins(binsById: Map<number, Bin>, lowerBinId: number, upperBinId: number, binStep: number, baseTokenDecimal: number, quoteTokenDecimal: number, version: number, lbPair: LbPair): Generator<BinLiquidity, void, unknown>;
12729
12749
  declare function getBinIdIndexInBinArray(binId: BN, lowerBinId: BN, upperBinId: BN): BN;
12730
12750
  declare function binDeltaToMinMaxBinId(binDelta: number, activeBinId: number): {
@@ -13564,6 +13584,36 @@ declare class DLMM {
13564
13584
  * Pair account, and the value is an object of PositionInfo
13565
13585
  */
13566
13586
  static getAllLbPairPositionsByUser(connection: Connection, userPubKey: PublicKey, opt?: Opt, getPositionsOpt?: GetPositionsOpt): Promise<Map<string, PositionInfo>>;
13587
+ /**
13588
+ * The function `getPositionsByUserAndTokenAddress` retrieves all of a user's positions across every
13589
+ * DLMM pool that includes the given token mint as either the X or Y token.
13590
+ * @param {Connection} connection - The `connection` parameter is an instance of the `Connection`
13591
+ * class, which represents the connection to the Solana blockchain.
13592
+ * @param {PublicKey} userPubKey - The user's wallet public key.
13593
+ * @param {PublicKey} tokenMint - The token mint used to filter pools. Only positions in pools whose
13594
+ * `tokenXMint` or `tokenYMint` matches this mint are returned.
13595
+ * @param {Opt} [opt] - An optional object that contains additional options for the function.
13596
+ * @param {GetPositionsOpt} [getPositionsOpt] - Optional settings for chunked position fetching
13597
+ * @returns The function `getPositionsByUserAndTokenAddress` returns a `Promise` that resolves to a
13598
+ * `Map` object. The `Map` object contains key-value pairs, where the key is a string representing the
13599
+ * LB Pair account, and the value is an object of PositionInfo. Only pools containing `tokenMint` are
13600
+ * included.
13601
+ */
13602
+ static getPositionsByUserAndTokenAddress(connection: Connection, userPubKey: PublicKey, tokenMint: PublicKey, opt?: Opt, getPositionsOpt?: GetPositionsOpt): Promise<Map<string, PositionInfo>>;
13603
+ /**
13604
+ * The function `getLimitOrdersByUserAndTokenAddress` retrieves all of a user's limit orders across
13605
+ * every DLMM pool that includes the given token mint as either the X or Y token.
13606
+ * @param {Connection} connection - The `connection` parameter is an instance of the `Connection`
13607
+ * class, which represents the connection to the Solana blockchain.
13608
+ * @param {PublicKey} userPubKey - The user's wallet public key.
13609
+ * @param {PublicKey} tokenMint - The token mint used to filter pools. Only limit orders in pools
13610
+ * whose `tokenXMint` or `tokenYMint` matches this mint are returned.
13611
+ * @param {Opt} [opt] - An optional object that contains additional options for the function.
13612
+ * @returns The function `getLimitOrdersByUserAndTokenAddress` returns a `Promise` that resolves to a
13613
+ * `Map` object keyed by LB Pair account (base58), where each value is a `LimitOrderInfo` containing
13614
+ * the LB pair state, token reserves, and the parsed limit orders for that pool.
13615
+ */
13616
+ static getLimitOrdersByUserAndTokenAddress(connection: Connection, userPubKey: PublicKey, tokenMint: PublicKey, opt?: Opt): Promise<Map<string, LimitOrderInfo>>;
13567
13617
  static getPricePerLamport(tokenXDecimal: number, tokenYDecimal: number, price: number): string;
13568
13618
  static getBinIdFromPrice(price: string | number | Decimal, binStep: number, min: boolean): number;
13569
13619
  /**
@@ -26426,4 +26476,4 @@ declare const limitOrderFilter: () => GetProgramAccountsFilter;
26426
26476
  declare const limitOrderOwnerFilter: (owner: PublicKey) => GetProgramAccountsFilter;
26427
26477
  declare const limitOrderLbPairFilter: (lbPair: PublicKey) => GetProgramAccountsFilter;
26428
26478
 
26429
- export { ADMIN, ALT_ADDRESS, AccountName, ActionType, ActivationType, AmountIntoBin, BASIS_POINT_MAX, BIN_ARRAY_BITMAP_FEE, BIN_ARRAY_BITMAP_FEE_BN, BIN_ARRAY_BITMAP_SIZE, BIN_ARRAY_DEFAULT_VERSION, BIN_ARRAY_FEE, BIN_ARRAY_FEE_BN, BidAskParameters, Bin, BinAndAmount, BinArray, BinArrayAccount, BinArrayBitmapExtension, BinArrayBitmapExtensionAccount, BinLiquidity, BinLiquidityDistribution, BinLiquidityReduction, BitmapType, ChunkCallback, ChunkCallbackInfo, ClmmProgram, Clock, ClockLayout, CollectFeeMode, CompressedBinDepositAmount, CompressedBinDepositAmounts, ConcreteFunctionType, CreateRebalancePositionParams, DEFAULT_BIN_PER_POSITION, DLMMError, DlmmSdkError, DynamicOracle, EXTENSION_BINARRAY_BITMAP_SIZE, EmissionRate, ExtendedPositionBinData, FEE_PRECISION, FeeInfo, FeeMode, FunctionType, GetOrCreateATAResponse, GetPositionsOpt, IAccountsCache, IDL, IDynamicOracle, ILM_BASE, IPosition, InitCustomizablePermissionlessPairIx, InitPermissionPairIx, InitializeMultiplePositionAndAddLiquidityByStrategyResponse, InitializeMultiplePositionAndAddLiquidityByStrategyResponse2, LBCLMM_PROGRAM_IDS, LIMIT_ORDER_BIN_DATA_SIZE, LIMIT_ORDER_FEE_SHARE, LIMIT_ORDER_MIN_SIZE, LMRewards, LbClmm, LbPair, LbPairAccount, LbPosition, LimitOrder, LimitOrderBinData, LimitOrderStatus, LiquidityOneSideParameter, LiquidityParameter, LiquidityParameterByStrategy, LiquidityParameterByStrategyOneSide, LiquidityParameterByWeight, LiquidityStrategyParameterBuilder, LiquidityStrategyParameters, MAX_ACTIVE_BIN_SLIPPAGE, MAX_BINS_PER_POSITION, MAX_BIN_ARRAY_SIZE, MAX_BIN_ID_PER_BIN_STEP, MAX_BIN_LENGTH_ALLOWED_IN_ONE_TX, MAX_BIN_PER_LIMIT_ORDER, MAX_CLAIM_ALL_ALLOWED, MAX_EXTRA_BIN_ARRAYS, MAX_FEE_RATE, MAX_RESIZE_LENGTH, MEMO_PROGRAM_ID, Network, Observation, Opt, Oracle, POOL_FEE, POOL_FEE_BN, POSITION_BIN_DATA_SIZE, POSITION_FEE, POSITION_FEE_BN, POSITION_MAX_LENGTH, POSITION_MIN_SIZE, PRECISION, PairLockInfo, PairStatus, PairType, ParsedLimitOrderWithPubkey, PlaceLimitOrderParams, PositionBinData, PositionData, PositionInfo, PositionLockInfo, PositionPermission, PositionV2, PositionV2Wrapper, PositionVersion, PresetParameter, PresetParameter2, ProgramStrategyParameter, ProgramStrategyType, REBALANCE_POSITION_PADDING, RebalanceAddLiquidityParam, RebalancePosition, RebalancePositionBinArrayRentalCostQuote, RebalancePositionResponse, RebalanceRemoveLiquidityParam, RebalanceWithDeposit, RebalanceWithWithdraw, RemainingAccountInfo, RemainingAccountsInfoSlice, ResizeSide, ResizeSideEnum, RewardInfo, RewardInfos, Rounding, SCALE, SCALE_OFFSET, SIMULATION_USER, SeedLiquidityCostBreakdown, SeedLiquidityResponse, SeedLiquiditySingleBinResponse, ShrinkMode, SimulateRebalanceResp, Strategy, StrategyParameters, StrategyType, SwapExactOutParams, SwapFee, SwapParams, SwapQuote, SwapQuoteExactOut, SwapWithPriceImpactParams, TInitializeMultiplePositionAndAddLiquidityParamsByStrategy, TInitializePositionAndAddLiquidityParams, TInitializePositionAndAddLiquidityParamsByStrategy, TOKEN_ACCOUNT_FEE, TOKEN_ACCOUNT_FEE_BN, TQuoteCreatePositionParams, TokenReserve, TwapResult, U64_MAX, UserFeeInfo, UserRewardInfo, autoFillXByStrategy, autoFillXByWeight, autoFillYByStrategy, autoFillYByWeight, binArrayLbPairFilter, binDeltaToMinMaxBinId, binIdToBinArrayIndex, buildBitFlagAndNegateStrategyParameters, buildLiquidityStrategyParameters, calculateBidAskDistribution, calculateNormalDistribution, calculatePositionSize, calculateSpotDistribution, calculateTransferFeeExcludedAmount, calculateTransferFeeIncludedAmount, capSlippagePercentage, chunkBinRange, chunkBinRangeIntoExtendedPositions, chunkDepositWithRebalanceEndpoint, chunkPositionBinRange, chunkedFetchMultipleBinArrayBitmapExtensionAccount, chunkedFetchMultiplePoolAccount, chunkedGetMultipleAccountInfos, chunkedGetProgramAccounts, chunks, compressBinAmount, computeBaseFactorFromFeeBps, computeFee, computeFeeFromAmount, computeProtocolFee, createProgram, decodeAccount, decodeExtendedPosition, decodeRewardPerTokenStored, DLMM as default, deriveBinArray, deriveBinArrayBitmapExtension, deriveCustomizablePermissionlessLbPair, deriveEventAuthority, deriveLbPair, deriveLbPair2, deriveLbPairWithPresetParamWithIndexKey, deriveOperator, deriveOracle, derivePermissionLbPair, derivePlaceHolderAccountMeta, derivePosition, derivePresetParameter, derivePresetParameter2, derivePresetParameterWithIndex, deriveReserve, deriveRewardVault, deriveTokenBadge, distributeAmountToCompressedBinsByRatio, encodePositionPermissions, enumerateBins, findNextBinArrayIndexWithLiquidity, findNextBinArrayWithLiquidity, findOptimumDecompressMultiplier, fromWeightDistributionToAmount, fromWeightDistributionToAmountOneSide, generateAmountForBinRange, generateBinAmount, getAccountDiscriminator, getAmountIn, getAmountInBinsAskSide, getAmountInBinsBidSide, getAmountOut, getAndCapMaxActiveBinSlippage, getAutoFillAmountByRebalancedPosition, getBaseFee, getBinArrayAccountMetasCoverage, getBinArrayIndexesCoverage, getBinArrayInfoForNonContiguousBinIds, getBinArrayKeysCoverage, getBinArrayLowerUpperBinId, getBinArraysRequiredByPositionRange, getBinCount, getBinFromBinArray, getBinIdIndexInBinArray, getBinMaxAmountOut, getC, getEstimatedComputeUnitIxWithBuffer, getEstimatedComputeUnitUsageWithBuffer, getExcludedFeeAmount, getExtendedPositionBinCount, getExtraAccountMetasForTransferHook, getFeeMode, getIncludedFeeAmount, getLimitOrderLiquidity, getLiquidityStrategyParameterBuilder, getMultipleMintsExtraAccountMetasForTransferHook, getOrCreateATAInstruction, getPositionCount, getPositionCountByBinCount, getPositionExpandRentExemption, getPositionLowerUpperBinIdWithLiquidity, getPositionRentExemption, getPriceOfBinByBinId, getQPriceBaseFactor, getQPriceFromId, getRebalanceBinArrayIndexesAndBitmapCoverage, getSlippageMaxAmount, getSlippageMinAmount, getTokenBalance, getTokenDecimals, getTokenProgramId, getTokensMintFromPoolAddress, getTotalFee, getVariableFee, isBinIdWithinBinArray, isOverflowDefaultBinArrayBitmap, isPositionNoFee, isPositionNoReward, isSupportLimitOrder, limitOrderFilter, limitOrderLbPairFilter, limitOrderOwnerFilter, mulDiv, mulShr, parseLogs, positionLbPairFilter, positionOwnerFilter, positionV2Filter, presetParameter2BaseFactorFilter, presetParameter2BaseFeePowerFactor, presetParameter2BinStepFilter, range, resetUninvolvedLiquidityParams, sParameters, shlDiv, splitFee, suggestBalancedXParametersFromY, suggestBalancedYParametersFromX, swapExactInQuoteAtBin, swapExactOutQuoteAtBin, toAmountAskSide, toAmountBidSide, toAmountBothSide, toAmountIntoBins, toAmountsBothSideByStrategy, toStrategyParameters, toWeightDistribution, unwrapSOLInstruction, vParameters, wrapOracle, wrapPosition, wrapSOLInstruction };
26479
+ export { ADMIN, ALT_ADDRESS, AccountName, ActionType, ActivationType, AmountIntoBin, BASIS_POINT_MAX, BIN_ARRAY_BITMAP_FEE, BIN_ARRAY_BITMAP_FEE_BN, BIN_ARRAY_BITMAP_SIZE, BIN_ARRAY_DEFAULT_VERSION, BIN_ARRAY_FEE, BIN_ARRAY_FEE_BN, BidAskParameters, Bin, BinAndAmount, BinArray, BinArrayAccount, BinArrayBitmapExtension, BinArrayBitmapExtensionAccount, BinLiquidity, BinLiquidityDistribution, BinLiquidityReduction, BitmapType, ChunkCallback, ChunkCallbackInfo, ClmmProgram, Clock, ClockLayout, CollectFeeMode, CompressedBinDepositAmount, CompressedBinDepositAmounts, ConcreteFunctionType, CreateRebalancePositionParams, DEFAULT_BIN_PER_POSITION, DLMMError, DlmmSdkError, DynamicOracle, EXTENSION_BINARRAY_BITMAP_SIZE, EmissionRate, ExtendedPositionBinData, FEE_PRECISION, FeeInfo, FeeMode, FunctionType, GetOrCreateATAResponse, GetPositionsOpt, IAccountsCache, IDL, IDynamicOracle, ILM_BASE, IPosition, InitCustomizablePermissionlessPairIx, InitPermissionPairIx, InitializeMultiplePositionAndAddLiquidityByStrategyResponse, InitializeMultiplePositionAndAddLiquidityByStrategyResponse2, LBCLMM_PROGRAM_IDS, LIMIT_ORDER_BIN_DATA_SIZE, LIMIT_ORDER_FEE_SHARE, LIMIT_ORDER_MIN_SIZE, LMRewards, LbClmm, LbPair, LbPairAccount, LbPosition, LimitOrder, LimitOrderBinData, LimitOrderInfo, LimitOrderStatus, LiquidityOneSideParameter, LiquidityParameter, LiquidityParameterByStrategy, LiquidityParameterByStrategyOneSide, LiquidityParameterByWeight, LiquidityStrategyParameterBuilder, LiquidityStrategyParameters, MAX_ACTIVE_BIN_SLIPPAGE, MAX_BINS_PER_POSITION, MAX_BIN_ARRAY_SIZE, MAX_BIN_ID_PER_BIN_STEP, MAX_BIN_LENGTH_ALLOWED_IN_ONE_TX, MAX_BIN_PER_LIMIT_ORDER, MAX_CLAIM_ALL_ALLOWED, MAX_EXTRA_BIN_ARRAYS, MAX_FEE_RATE, MAX_RESIZE_LENGTH, MEMO_PROGRAM_ID, Network, Observation, Opt, Oracle, POOL_FEE, POOL_FEE_BN, POSITION_BIN_DATA_SIZE, POSITION_FEE, POSITION_FEE_BN, POSITION_MAX_LENGTH, POSITION_MIN_SIZE, PRECISION, PairLockInfo, PairStatus, PairType, ParsedLimitOrderWithPubkey, PlaceLimitOrderParams, PositionBinData, PositionData, PositionInfo, PositionLockInfo, PositionPermission, PositionV2, PositionV2Wrapper, PositionVersion, PresetParameter, PresetParameter2, ProgramStrategyParameter, ProgramStrategyType, REBALANCE_POSITION_PADDING, RebalanceAddLiquidityParam, RebalancePosition, RebalancePositionBinArrayRentalCostQuote, RebalancePositionResponse, RebalanceRemoveLiquidityParam, RebalanceWithDeposit, RebalanceWithWithdraw, RemainingAccountInfo, RemainingAccountsInfoSlice, ResizeSide, ResizeSideEnum, RewardInfo, RewardInfos, Rounding, SCALE, SCALE_OFFSET, SIMULATION_USER, SeedLiquidityCostBreakdown, SeedLiquidityResponse, SeedLiquiditySingleBinResponse, ShrinkMode, SimulateRebalanceResp, Strategy, StrategyParameters, StrategyType, SwapExactOutParams, SwapFee, SwapParams, SwapQuote, SwapQuoteExactOut, SwapWithPriceImpactParams, TInitializeMultiplePositionAndAddLiquidityParamsByStrategy, TInitializePositionAndAddLiquidityParams, TInitializePositionAndAddLiquidityParamsByStrategy, TOKEN_ACCOUNT_FEE, TOKEN_ACCOUNT_FEE_BN, TQuoteCreatePositionParams, TokenReserve, TwapResult, U64_MAX, UserFeeInfo, UserRewardInfo, autoFillXByStrategy, autoFillXByWeight, autoFillYByStrategy, autoFillYByWeight, binArrayLbPairFilter, binDeltaToMinMaxBinId, binIdToBinArrayIndex, buildBitFlagAndNegateStrategyParameters, buildLiquidityStrategyParameters, calculateBidAskDistribution, calculateNormalDistribution, calculatePositionSize, calculateSpotDistribution, calculateTransferFeeExcludedAmount, calculateTransferFeeIncludedAmount, capSlippagePercentage, chunkBinRange, chunkBinRangeIntoExtendedPositions, chunkDepositWithRebalanceEndpoint, chunkPositionBinRange, chunkedFetchMultipleBinArrayBitmapExtensionAccount, chunkedFetchMultiplePoolAccount, chunkedGetMultipleAccountInfos, chunkedGetProgramAccounts, chunks, compressBinAmount, computeBaseFactorFromFeeBps, computeFee, computeFeeFromAmount, computeProtocolFee, createProgram, decodeAccount, decodeExtendedPosition, decodeRewardPerTokenStored, DLMM as default, deriveBinArray, deriveBinArrayBitmapExtension, deriveCustomizablePermissionlessLbPair, deriveEventAuthority, deriveLbPair, deriveLbPair2, deriveLbPairWithPresetParamWithIndexKey, deriveOperator, deriveOracle, derivePermissionLbPair, derivePlaceHolderAccountMeta, derivePosition, derivePresetParameter, derivePresetParameter2, derivePresetParameterWithIndex, deriveReserve, deriveRewardVault, deriveTokenBadge, distributeAmountToCompressedBinsByRatio, encodePositionPermissions, enumerateBins, findNextBinArrayIndexWithLiquidity, findNextBinArrayWithLiquidity, findOptimumDecompressMultiplier, fromWeightDistributionToAmount, fromWeightDistributionToAmountOneSide, generateAmountForBinRange, generateBinAmount, getAccountDiscriminator, getAmountIn, getAmountInBinsAskSide, getAmountInBinsBidSide, getAmountOut, getAndCapMaxActiveBinSlippage, getAutoFillAmountByRebalancedPosition, getBaseFee, getBinArrayAccountMetasCoverage, getBinArrayIndexesCoverage, getBinArrayInfoForNonContiguousBinIds, getBinArrayKeysCoverage, getBinArrayLowerUpperBinId, getBinArraysRequiredByPositionRange, getBinArraysRequiredByPositionRange2, getBinCount, getBinFromBinArray, getBinIdIndexInBinArray, getBinMaxAmountOut, getC, getEstimatedComputeUnitIxWithBuffer, getEstimatedComputeUnitUsageWithBuffer, getExcludedFeeAmount, getExtendedPositionBinCount, getExtraAccountMetasForTransferHook, getFeeMode, getIncludedFeeAmount, getLimitOrderLiquidity, getLiquidityStrategyParameterBuilder, getMultipleMintsExtraAccountMetasForTransferHook, getOrCreateATAInstruction, getPositionCount, getPositionCountByBinCount, getPositionExpandRentExemption, getPositionLowerUpperBinIdWithLiquidity, getPositionRentExemption, getPriceOfBinByBinId, getQPriceBaseFactor, getQPriceFromId, getRebalanceBinArrayIndexesAndBitmapCoverage, getSlippageMaxAmount, getSlippageMinAmount, getTokenBalance, getTokenDecimals, getTokenProgramId, getTokensMintFromPoolAddress, getTotalFee, getVariableFee, isBinIdWithinBinArray, isOverflowDefaultBinArrayBitmap, isPositionNoFee, isPositionNoReward, isSupportLimitOrder, limitOrderFilter, limitOrderLbPairFilter, limitOrderOwnerFilter, mulDiv, mulShr, parseLogs, positionLbPairFilter, positionOwnerFilter, positionV2Filter, presetParameter2BaseFactorFilter, presetParameter2BaseFeePowerFactor, presetParameter2BinStepFilter, range, resetUninvolvedLiquidityParams, sParameters, shlDiv, splitFee, suggestBalancedXParametersFromY, suggestBalancedYParametersFromX, swapExactInQuoteAtBin, swapExactOutQuoteAtBin, toAmountAskSide, toAmountBidSide, toAmountBothSide, toAmountIntoBins, toAmountsBothSideByStrategy, toStrategyParameters, toWeightDistribution, unwrapSOLInstruction, vParameters, wrapOracle, wrapPosition, wrapSOLInstruction };