@panoptic-eng/sdk 1.0.19 → 1.0.21

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.
@@ -10125,20 +10125,37 @@ function resolveAssetDirection(leg, assetIndex) {
10125
10125
  return assetIndex !== void 0 ? assetIndex === 0n : leg.asset === 0n;
10126
10126
  }
10127
10127
  /**
10128
+ * Compute the tokenType-denominated notional of a width=0 (loan/credit) leg.
10129
+ *
10130
+ * When leg.asset !== leg.tokenType, positionSize is in leg.asset units and
10131
+ * the borrowed notional is encoded via leg.strike: notional_tokenType_raw =
10132
+ * positionSize_raw × 1.0001^strike (a raw-to-raw ratio, unquoted by pool direction).
10133
+ * When leg.asset === leg.tokenType, m is already the notional (old convention).
10134
+ *
10135
+ * `m > 0` for loans (isLong=false), `m < 0` for credits (isLong=true), so the
10136
+ * returned notional is signed the same way.
10137
+ */
10138
+ function computeWidth0Notional(leg, m) {
10139
+ const scaleByStrike = leg.asset !== leg.tokenType;
10140
+ if (!scaleByStrike) return m;
10141
+ const signedStrike = leg.asset === 0n ? leg.strike : -leg.strike;
10142
+ const sqrtKraw = tickToSqrtPriceX96(signedStrike);
10143
+ const KrawX192 = sqrtKraw * sqrtKraw;
10144
+ return divTrunc(m * KrawX192, Q192);
10145
+ }
10146
+ /**
10128
10147
  * Calculate value for a width=0 (loan/credit) leg.
10129
10148
  * Width=0 means the range is a single tick (the strike), so there's no meaningful
10130
10149
  * "in range" — we use the below/above formulas which avoid division by (r-1)=0.
10150
+ *
10151
+ * This is the DEBT-ONLY value (the borrowed/lent obligation), used by delta/greeks
10152
+ * aggregation where the held-collateral side lives in a separate wallet/CT term. For
10153
+ * a standalone payoff chart that must reflect the net user-experienced payoff (which
10154
+ * depends on Zap vs Cover-at-mint), use `getLegNetValueWidth0`.
10131
10155
  */
10132
10156
  function getLegValueWidth0(leg, m, qCurrentTick, qStrikeTick, qMintTick, isAssetToken0, _definedRisk) {
10133
10157
  const borrowsAsset = isCall(leg.tokenType, isAssetToken0);
10134
- const scaleByStrike = leg.asset !== leg.tokenType;
10135
- let notional = m;
10136
- if (scaleByStrike) {
10137
- const signedStrike = leg.asset === 0n ? leg.strike : -leg.strike;
10138
- const sqrtKraw = tickToSqrtPriceX96(signedStrike);
10139
- const KrawX192 = sqrtKraw * sqrtKraw;
10140
- notional = divTrunc(m * KrawX192, Q192);
10141
- }
10158
+ const notional = computeWidth0Notional(leg, m);
10142
10159
  if (borrowsAsset) {
10143
10160
  const sqrtP = tickToSqrtPriceX96(qCurrentTick);
10144
10161
  const sqrtPm = tickToSqrtPriceX96(qMintTick);
@@ -10148,6 +10165,81 @@ function getLegValueWidth0(leg, m, qCurrentTick, qStrikeTick, qMintTick, isAsset
10148
10165
  } else return 0n;
10149
10166
  }
10150
10167
  /**
10168
+ * Calculate the NET (user-experienced) payoff value for a width=0 (loan/credit) leg.
10169
+ *
10170
+ * Unlike `getLegValueWidth0` (debt-only), this includes the collateral/holding side and
10171
+ * therefore depends on how the position was opened:
10172
+ *
10173
+ * - **Cover at mint** (`swapAtMint = false`): the collateral is sourced in the SAME token as
10174
+ * the debt/credit, so the holding side exactly offsets it → net PnL is FLAT (0 everywhere,
10175
+ * mint-relative), regardless of which token the leg is denominated in.
10176
+ * - **Zap** (`swapAtMint = true`): the collateral is sourced in the OTHER token, leaving a
10177
+ * ±1-delta line in the asset (ETH), anchored to 0 at the mint price:
10178
+ * - USDC loan → zap to ETH: +1 (long ETH)
10179
+ * - ETH loan → zap to USDC: −1 (short ETH)
10180
+ * - USDC credit ← zap from ETH: −1 (short ETH)
10181
+ * - ETH credit ← zap from USDC: +1 (long ETH)
10182
+ *
10183
+ * @returns Net leg value in numeraire token smallest units (mint-relative PnL).
10184
+ */
10185
+ function getLegNetValueWidth0(leg, m, qCurrentTick, qMintTick, isAssetToken0, swapAtMint, itmOffsetNotional = 0n) {
10186
+ if (!swapAtMint) return 0n;
10187
+ const borrowsAsset = isCall(leg.tokenType, isAssetToken0);
10188
+ const notional = computeWidth0Notional(leg, m) + itmOffsetNotional;
10189
+ const sqrtP = tickToSqrtPriceX96(qCurrentTick);
10190
+ const sqrtPm = tickToSqrtPriceX96(qMintTick);
10191
+ const PX192 = sqrtP * sqrtP;
10192
+ const PmX192 = sqrtPm * sqrtPm;
10193
+ if (borrowsAsset) return divTrunc(-notional * (PX192 - PmX192), Q192);
10194
+ return divTrunc(notional * PX192, PmX192) - notional;
10195
+ }
10196
+ /**
10197
+ * Compute the mint-time ITM (in-the-money) adjustment for an option leg.
10198
+ *
10199
+ * This is the `itm` baseline used by {@link getLegValue}: the amount by which the
10200
+ * position was already ITM at mint, expressed in the leg's natural units:
10201
+ * - Puts: numeraire units (added directly to the put's `debt*K + v` value).
10202
+ * - Calls: asset-ratio units (the call value multiplies it by price: `itm*P`/`itm*Pm`).
10203
+ *
10204
+ * Extracted so callers (e.g. {@link calculatePositionValue}) can build a per-side ITM
10205
+ * notional pool to net width=0 credit/loan legs against — an ITM-neutralizing credit
10206
+ * was sized to offset exactly this amount, so it should not add a spurious swap line.
10207
+ */
10208
+ function computeOptionItm(m, qStrikeTick, qMintTick, halfWidthTick, isPut) {
10209
+ if (isPut) {
10210
+ if (qMintTick < qStrikeTick - halfWidthTick) {
10211
+ const sqrtK$1 = tickToSqrtPriceX96(qStrikeTick);
10212
+ const sqrtPm$2 = tickToSqrtPriceX96(qMintTick);
10213
+ const KX192 = sqrtK$1 * sqrtK$1;
10214
+ const PmX192 = sqrtPm$2 * sqrtPm$2;
10215
+ return divTrunc(m * (KX192 - PmX192), Q192);
10216
+ } else if (qMintTick > qStrikeTick + halfWidthTick) return 0n;
10217
+ const sqrtKR = tickToSqrtPriceX96(qStrikeTick + halfWidthTick);
10218
+ const sqrtPm$1 = tickToSqrtPriceX96(qMintTick);
10219
+ const sqrtR$1 = tickToSqrtPriceX96(halfWidthTick);
10220
+ const rX192$1 = sqrtR$1 * sqrtR$1;
10221
+ const diff$1 = sqrtKR - sqrtPm$1;
10222
+ const diffSqX192$1 = diff$1 * diff$1;
10223
+ return divTrunc(m * diffSqX192$1, rX192$1 - Q192);
10224
+ }
10225
+ if (qMintTick < qStrikeTick - halfWidthTick) return 0n;
10226
+ else if (qMintTick > qStrikeTick + halfWidthTick) {
10227
+ const sqrtK$1 = tickToSqrtPriceX96(qStrikeTick);
10228
+ const sqrtPm$1 = tickToSqrtPriceX96(qMintTick);
10229
+ const KX192 = sqrtK$1 * sqrtK$1;
10230
+ const PmX192 = sqrtPm$1 * sqrtPm$1;
10231
+ return divTrunc(m * (PmX192 - KX192), PmX192);
10232
+ }
10233
+ const sqrtR = tickToSqrtPriceX96(halfWidthTick);
10234
+ const sqrtK = tickToSqrtPriceX96(qStrikeTick);
10235
+ const sqrtPm = tickToSqrtPriceX96(qMintTick);
10236
+ const rX192 = sqrtR * sqrtR;
10237
+ const sqrtKPmX96 = divTrunc(sqrtK * Q96, sqrtPm);
10238
+ const diff = sqrtR - sqrtKPmX96;
10239
+ const diffSqX192 = diff * diff;
10240
+ return divTrunc(m * diffSqX192, rX192 - Q192);
10241
+ }
10242
+ /**
10151
10243
  * Check if leg is a call option (vs put).
10152
10244
  *
10153
10245
  * A call is when the leg moves the asset token:
@@ -10188,13 +10280,14 @@ function isDefinedRisk(legs) {
10188
10280
  * @param assetIndex - Optional override for leg.asset (0n = token0 is asset, 1n = token1)
10189
10281
  * @returns Leg value in numeraire token smallest units
10190
10282
  */
10191
- function getLegValue(leg, currentTick, mintTick, positionSize, poolTickSpacing, definedRisk, assetIndex) {
10283
+ function getLegValue(leg, currentTick, mintTick, positionSize, poolTickSpacing, definedRisk, assetIndex, swapAtMint) {
10192
10284
  const isAssetToken0 = resolveAssetDirection(leg, assetIndex);
10193
10285
  const qCurrentTick = quoteTick(currentTick, isAssetToken0);
10194
10286
  const qMintTick = quoteTick(mintTick, isAssetToken0);
10195
10287
  const qStrikeTick = quoteTick(leg.strike, isAssetToken0);
10196
10288
  const halfWidthTick = leg.width * poolTickSpacing / 2n;
10197
10289
  const m = leg.isLong ? -(positionSize * leg.optionRatio) : positionSize * leg.optionRatio;
10290
+ if (leg.width === 0n && swapAtMint !== void 0) return getLegNetValueWidth0(leg, m, qCurrentTick, qMintTick, isAssetToken0, swapAtMint);
10198
10291
  if (halfWidthTick === 0n) return getLegValueWidth0(leg, m, qCurrentTick, qStrikeTick, qMintTick, isAssetToken0, definedRisk);
10199
10292
  let v;
10200
10293
  if (qCurrentTick < qStrikeTick - halfWidthTick) {
@@ -10219,40 +10312,7 @@ function getLegValue(leg, currentTick, mintTick, positionSize, poolTickSpacing,
10219
10312
  }
10220
10313
  const debt = -m;
10221
10314
  const isPut = !isCall(leg.tokenType, isAssetToken0);
10222
- let itm;
10223
- if (isPut) if (qMintTick < qStrikeTick - halfWidthTick) {
10224
- const sqrtK = tickToSqrtPriceX96(qStrikeTick);
10225
- const sqrtPm = tickToSqrtPriceX96(qMintTick);
10226
- const KX192 = sqrtK * sqrtK;
10227
- const PmX192 = sqrtPm * sqrtPm;
10228
- itm = divTrunc(m * (KX192 - PmX192), Q192);
10229
- } else if (qMintTick > qStrikeTick + halfWidthTick) itm = 0n;
10230
- else {
10231
- const sqrtKR = tickToSqrtPriceX96(qStrikeTick + halfWidthTick);
10232
- const sqrtPm = tickToSqrtPriceX96(qMintTick);
10233
- const sqrtR = tickToSqrtPriceX96(halfWidthTick);
10234
- const rX192 = sqrtR * sqrtR;
10235
- const diff = sqrtKR - sqrtPm;
10236
- const diffSqX192 = diff * diff;
10237
- itm = divTrunc(m * diffSqX192, rX192 - Q192);
10238
- }
10239
- else if (qMintTick < qStrikeTick - halfWidthTick) itm = 0n;
10240
- else if (qMintTick > qStrikeTick + halfWidthTick) {
10241
- const sqrtK = tickToSqrtPriceX96(qStrikeTick);
10242
- const sqrtPm = tickToSqrtPriceX96(qMintTick);
10243
- const KX192 = sqrtK * sqrtK;
10244
- const PmX192 = sqrtPm * sqrtPm;
10245
- itm = divTrunc(m * (PmX192 - KX192), PmX192);
10246
- } else {
10247
- const sqrtR = tickToSqrtPriceX96(halfWidthTick);
10248
- const sqrtK = tickToSqrtPriceX96(qStrikeTick);
10249
- const sqrtPm = tickToSqrtPriceX96(qMintTick);
10250
- const rX192 = sqrtR * sqrtR;
10251
- const sqrtKPmX96 = divTrunc(sqrtK * Q96, sqrtPm);
10252
- const diff = sqrtR - sqrtKPmX96;
10253
- const diffSqX192 = diff * diff;
10254
- itm = divTrunc(m * diffSqX192, rX192 - Q192);
10255
- }
10315
+ const itm = computeOptionItm(m, qStrikeTick, qMintTick, halfWidthTick, isPut);
10256
10316
  if (isPut) {
10257
10317
  const sqrtK = tickToSqrtPriceX96(qStrikeTick);
10258
10318
  const KX192 = sqrtK * sqrtK;
@@ -10403,9 +10463,36 @@ function getLegGamma(leg, currentTick, positionSize, poolTickSpacing, assetIndex
10403
10463
  * Calculate total value across all legs.
10404
10464
  */
10405
10465
  function calculatePositionValue(input) {
10406
- const { legs, currentTick, mintTick, positionSize, poolTickSpacing, assetIndex } = input;
10466
+ const { legs, currentTick, mintTick, positionSize, poolTickSpacing, assetIndex, swapAtMint } = input;
10407
10467
  const definedRisk = isDefinedRisk(legs);
10408
- return legs.reduce((sum, leg) => sum + getLegValue(leg, currentTick, mintTick, positionSize, poolTickSpacing, definedRisk, assetIndex), 0n);
10468
+ if (swapAtMint === void 0) return legs.reduce((sum$1, leg) => sum$1 + getLegValue(leg, currentTick, mintTick, positionSize, poolTickSpacing, definedRisk, assetIndex, swapAtMint), 0n);
10469
+ let numeraireItmPool = 0n;
10470
+ let assetItmPool = 0n;
10471
+ for (const leg of legs) {
10472
+ const halfWidthTick = leg.width * poolTickSpacing / 2n;
10473
+ if (leg.width === 0n || halfWidthTick === 0n) continue;
10474
+ const isAssetToken0 = resolveAssetDirection(leg, assetIndex);
10475
+ const qStrikeTick = quoteTick(leg.strike, isAssetToken0);
10476
+ const qMintTick = quoteTick(mintTick, isAssetToken0);
10477
+ const m = leg.isLong ? -(positionSize * leg.optionRatio) : positionSize * leg.optionRatio;
10478
+ const isPut = !isCall(leg.tokenType, isAssetToken0);
10479
+ const itm = computeOptionItm(m, qStrikeTick, qMintTick, halfWidthTick, isPut);
10480
+ if (isPut) numeraireItmPool += itm;
10481
+ else assetItmPool += itm;
10482
+ }
10483
+ let sum = 0n;
10484
+ for (const leg of legs) if (leg.width === 0n) {
10485
+ const isAssetToken0 = resolveAssetDirection(leg, assetIndex);
10486
+ const borrowsAsset = isCall(leg.tokenType, isAssetToken0);
10487
+ const offset = borrowsAsset ? assetItmPool : numeraireItmPool;
10488
+ if (borrowsAsset) assetItmPool = 0n;
10489
+ else numeraireItmPool = 0n;
10490
+ const qCurrentTick = quoteTick(currentTick, isAssetToken0);
10491
+ const qMintTick = quoteTick(mintTick, isAssetToken0);
10492
+ const m = leg.isLong ? -(positionSize * leg.optionRatio) : positionSize * leg.optionRatio;
10493
+ sum += getLegNetValueWidth0(leg, m, qCurrentTick, qMintTick, isAssetToken0, swapAtMint, offset);
10494
+ } else sum += getLegValue(leg, currentTick, mintTick, positionSize, poolTickSpacing, definedRisk, assetIndex, swapAtMint);
10495
+ return sum;
10409
10496
  }
10410
10497
  /**
10411
10498
  * Calculate total delta across all legs.
@@ -10984,5 +11071,5 @@ async function getPositionGreeks(params) {
10984
11071
  }
10985
11072
 
10986
11073
  //#endregion
10987
- export { AccountInsolventError, AlreadyInitializedError, BPS_DENOMINATOR, BatchValidationError, BelowMinimumRedemptionError, CastingError, ChunkHasZeroLiquidityError, ChunkLimitError, CrossPoolError, DEFAULT_MAX_SPREAD, DEFAULT_VEGOID, DepositTooLargeError, DuplicateTokenIdError, EffectiveLiquidityAboveThresholdError, ExceedsMaximumRedemptionError, InputListFailError, InsufficientCreditLiquidityError, InvalidBuilderCodeError, InvalidHistoryRangeError, InvalidTickBoundError, InvalidTickError, InvalidTickLimitsError, InvalidTokenIdParameterError, InvalidUniswapCallbackError, LEG_BITS, LEG_LIMITS, LEG_MASKS, LengthMismatchError, LiquidityTooHighError, LoanSlotExhaustedError, MAX_TICK, MAX_TRACKED_CHUNKS, MIN_TICK, MaxRetriesExceededError, MissingPositionIdsError, MulticallNoDataError, MulticallResultFailedError, MulticallResultMissingError, NetLiquidityZeroError, NetworkMismatchError, NoLegsExercisableError, NoLoanPositionsError, NotALongLegError, NotBuilderError, NotEnoughLiquidityInChunkError, NotEnoughTokensError, NotGuardianError, NotMarginCalledError, NotPanopticPoolError, ORACLE_EPOCH_SECONDS, OracleRateLimitedError, PanopticError as PanopticError$1, PanopticHelperNotDeployedError, PanopticValidationError, PoolNotInitializedError, PositionCountNotZeroError, PositionNotOwnedError, PositionSnapshotNotFoundError, PositionTooLargeError, PriceBoundFailError, PriceImpactTooLargeError, ProviderLagError, REORG_DEPTH, ReentrancyError, RpcError, RpcResponseError, SCHEMA_VERSION, STANDARD_TICK_WIDTHS, STORAGE_PREFIX, STRIKE_CONVERSION_FACTOR, SafeModeError, StaleDataError, StaleOracleError, StorageDataNotFoundError, SwapTokenMismatchError, SyncTimeoutError, TOKEN_ID_BITS, TokenIdHasZeroLegsError, TooManyLegsOpenError, TransferFailedError, UTILIZATION_DENOMINATOR, UnauthorizedUniswapCallbackError, UnderOverFlowError, UnhealthyPoolError, WAD as WAD$1, WrongPoolIdError, WrongUniswapPoolError, ZERO_COLLATERAL, ZERO_VALUATION, ZeroAddressError, ZeroCollateralRequirementError, calculatePortfolioDelta, calculatePortfolioGamma, calculatePortfolioGreeks, calculatePortfolioValue, calculatePositionDelta, calculatePositionDeltaWithSwap, calculatePositionGamma, calculatePositionGreeks, calculatePositionValue, collateralTrackerV2Abi, createTxResult, decodeLeftRightSigned, decodeLeftRightUnsigned, decodePosition, decodePositionBalance$1 as decodePositionBalance, decodeTickSpacing, fetchPoolId as fetchPoolId$1, formatPriceRange as formatPriceRange$1, formatTick as formatTick$1, formatTickRange as formatTickRange$1, getBlockMeta, getLegDelta, getLegGamma, getLegValue, getOracleState as getOracleState$1, getPool as getPool$1, getPoolMetadata as getPoolMetadata$1, getPosition, getPositionGreeks, getPositions, getPricesAtTick as getPricesAtTick$1, getRiskParameters as getRiskParameters$1, getTickSpacing as getTickSpacing$1, getUtilization as getUtilization$1, isCall, isDefinedRisk, isPanopticErrorType, panopticErrorsAbi, panopticFactoryV3Abi, panopticFactoryV4Abi, panopticGuardianAbi, panopticPoolV2Abi, panopticQueryAbi as panopticQueryAbi$1, parsePanopticError, priceToTick as priceToTick$1, riskEngineAbi, roundToTickSpacing as roundToTickSpacing$1, semiFungiblePositionManagerV3Abi, semiFungiblePositionManagerV4Abi, sqrtPriceX96ToPriceDecimalScaled as sqrtPriceX96ToPriceDecimalScaled$1, sqrtPriceX96ToTick as sqrtPriceX96ToTick$1, stateViewAbi, submitWrite, tickLimits as tickLimits$1, tickToPrice as tickToPrice$1, tickToPriceDecimalScaled as tickToPriceDecimalScaled$1, tickToSqrtPriceX96 as tickToSqrtPriceX96$1, uniswapV3PoolAbi, validateBuilderCode as validateBuilderCode$1 };
10988
- //# sourceMappingURL=position-Bo7y8jcj.js.map
11074
+ export { AccountInsolventError, AlreadyInitializedError, BPS_DENOMINATOR, BatchValidationError, BelowMinimumRedemptionError, CastingError, ChunkHasZeroLiquidityError, ChunkLimitError, CrossPoolError, DEFAULT_MAX_SPREAD, DEFAULT_VEGOID, DepositTooLargeError, DuplicateTokenIdError, EffectiveLiquidityAboveThresholdError, ExceedsMaximumRedemptionError, InputListFailError, InsufficientCreditLiquidityError, InvalidBuilderCodeError, InvalidHistoryRangeError, InvalidTickBoundError, InvalidTickError, InvalidTickLimitsError, InvalidTokenIdParameterError, InvalidUniswapCallbackError, LEG_BITS, LEG_LIMITS, LEG_MASKS, LengthMismatchError, LiquidityTooHighError, LoanSlotExhaustedError, MAX_TICK, MAX_TRACKED_CHUNKS, MIN_TICK, MaxRetriesExceededError, MissingPositionIdsError, MulticallNoDataError, MulticallResultFailedError, MulticallResultMissingError, NetLiquidityZeroError, NetworkMismatchError, NoLegsExercisableError, NoLoanPositionsError, NotALongLegError, NotBuilderError, NotEnoughLiquidityInChunkError, NotEnoughTokensError, NotGuardianError, NotMarginCalledError, NotPanopticPoolError, ORACLE_EPOCH_SECONDS, OracleRateLimitedError, PanopticError as PanopticError$1, PanopticHelperNotDeployedError, PanopticValidationError, PoolNotInitializedError, PositionCountNotZeroError, PositionNotOwnedError, PositionSnapshotNotFoundError, PositionTooLargeError, PriceBoundFailError, PriceImpactTooLargeError, ProviderLagError, REORG_DEPTH, ReentrancyError, RpcError, RpcResponseError, SCHEMA_VERSION, STANDARD_TICK_WIDTHS, STORAGE_PREFIX, STRIKE_CONVERSION_FACTOR, SafeModeError, StaleDataError, StaleOracleError, StorageDataNotFoundError, SwapTokenMismatchError, SyncTimeoutError, TOKEN_ID_BITS, TokenIdHasZeroLegsError, TooManyLegsOpenError, TransferFailedError, UTILIZATION_DENOMINATOR, UnauthorizedUniswapCallbackError, UnderOverFlowError, UnhealthyPoolError, WAD as WAD$1, WrongPoolIdError, WrongUniswapPoolError, ZERO_COLLATERAL, ZERO_VALUATION, ZeroAddressError, ZeroCollateralRequirementError, calculatePortfolioDelta, calculatePortfolioGamma, calculatePortfolioGreeks, calculatePortfolioValue, calculatePositionDelta, calculatePositionDeltaWithSwap, calculatePositionGamma, calculatePositionGreeks, calculatePositionValue, collateralTrackerV2Abi, createTxResult, decodeLeftRightSigned, decodeLeftRightUnsigned, decodePosition, decodePositionBalance$1 as decodePositionBalance, decodeTickSpacing, fetchPoolId as fetchPoolId$1, formatPriceRange as formatPriceRange$1, formatTick as formatTick$1, formatTickRange as formatTickRange$1, getBlockMeta, getLegDelta, getLegGamma, getLegNetValueWidth0, getLegValue, getOracleState as getOracleState$1, getPool as getPool$1, getPoolMetadata as getPoolMetadata$1, getPosition, getPositionGreeks, getPositions, getPricesAtTick as getPricesAtTick$1, getRiskParameters as getRiskParameters$1, getTickSpacing as getTickSpacing$1, getUtilization as getUtilization$1, isCall, isDefinedRisk, isPanopticErrorType, panopticErrorsAbi, panopticFactoryV3Abi, panopticFactoryV4Abi, panopticGuardianAbi, panopticPoolV2Abi, panopticQueryAbi as panopticQueryAbi$1, parsePanopticError, priceToTick as priceToTick$1, riskEngineAbi, roundToTickSpacing as roundToTickSpacing$1, semiFungiblePositionManagerV3Abi, semiFungiblePositionManagerV4Abi, sqrtPriceX96ToPriceDecimalScaled as sqrtPriceX96ToPriceDecimalScaled$1, sqrtPriceX96ToTick as sqrtPriceX96ToTick$1, stateViewAbi, submitWrite, tickLimits as tickLimits$1, tickToPrice as tickToPrice$1, tickToPriceDecimalScaled as tickToPriceDecimalScaled$1, tickToSqrtPriceX96 as tickToSqrtPriceX96$1, uniswapV3PoolAbi, validateBuilderCode as validateBuilderCode$1 };
11075
+ //# sourceMappingURL=position-BK4a-Yyu.js.map