curvance 4.1.2 → 5.1.0

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.
Files changed (115) hide show
  1. package/README.md +65 -10
  2. package/dist/abis/OptimizerReader.json +43 -45
  3. package/dist/abis/ProtocolReader.json +279 -55
  4. package/dist/chains/arbitrum.js +3 -3
  5. package/dist/chains/arbitrum.js.map +1 -1
  6. package/dist/classes/Api.d.ts +2 -2
  7. package/dist/classes/Api.d.ts.map +1 -1
  8. package/dist/classes/Api.js +87 -14
  9. package/dist/classes/Api.js.map +1 -1
  10. package/dist/classes/BorrowableCToken.d.ts +9 -1
  11. package/dist/classes/BorrowableCToken.d.ts.map +1 -1
  12. package/dist/classes/BorrowableCToken.js +67 -12
  13. package/dist/classes/BorrowableCToken.js.map +1 -1
  14. package/dist/classes/CToken.d.ts +210 -21
  15. package/dist/classes/CToken.d.ts.map +1 -1
  16. package/dist/classes/CToken.js +692 -284
  17. package/dist/classes/CToken.js.map +1 -1
  18. package/dist/classes/Calldata.d.ts +2 -2
  19. package/dist/classes/Calldata.d.ts.map +1 -1
  20. package/dist/classes/Calldata.js +6 -2
  21. package/dist/classes/Calldata.js.map +1 -1
  22. package/dist/classes/DexAggregators/IDexAgg.d.ts +1 -1
  23. package/dist/classes/DexAggregators/Kuru.js +1 -1
  24. package/dist/classes/DexAggregators/Kuru.js.map +1 -1
  25. package/dist/classes/DexAggregators/KyberSwap.d.ts.map +1 -1
  26. package/dist/classes/DexAggregators/KyberSwap.js +112 -61
  27. package/dist/classes/DexAggregators/KyberSwap.js.map +1 -1
  28. package/dist/classes/DexAggregators/MultiDexAgg.d.ts +2 -2
  29. package/dist/classes/DexAggregators/MultiDexAgg.d.ts.map +1 -1
  30. package/dist/classes/DexAggregators/MultiDexAgg.js +30 -18
  31. package/dist/classes/DexAggregators/MultiDexAgg.js.map +1 -1
  32. package/dist/classes/DexAggregators/UnsupportedDexAgg.d.ts +19 -0
  33. package/dist/classes/DexAggregators/UnsupportedDexAgg.d.ts.map +1 -0
  34. package/dist/classes/DexAggregators/UnsupportedDexAgg.js +29 -0
  35. package/dist/classes/DexAggregators/UnsupportedDexAgg.js.map +1 -0
  36. package/dist/classes/DexAggregators/helpers.d.ts +30 -0
  37. package/dist/classes/DexAggregators/helpers.d.ts.map +1 -0
  38. package/dist/classes/DexAggregators/helpers.js +57 -0
  39. package/dist/classes/DexAggregators/helpers.js.map +1 -0
  40. package/dist/classes/DexAggregators/index.d.ts +2 -0
  41. package/dist/classes/DexAggregators/index.d.ts.map +1 -1
  42. package/dist/classes/DexAggregators/index.js +1 -0
  43. package/dist/classes/DexAggregators/index.js.map +1 -1
  44. package/dist/classes/ERC20.d.ts +3 -3
  45. package/dist/classes/ERC20.d.ts.map +1 -1
  46. package/dist/classes/ERC20.js +26 -10
  47. package/dist/classes/ERC20.js.map +1 -1
  48. package/dist/classes/FormatConverter.d.ts.map +1 -1
  49. package/dist/classes/FormatConverter.js +4 -1
  50. package/dist/classes/FormatConverter.js.map +1 -1
  51. package/dist/classes/Market.d.ts +46 -8
  52. package/dist/classes/Market.d.ts.map +1 -1
  53. package/dist/classes/Market.js +342 -111
  54. package/dist/classes/Market.js.map +1 -1
  55. package/dist/classes/NativeToken.d.ts +2 -2
  56. package/dist/classes/NativeToken.d.ts.map +1 -1
  57. package/dist/classes/NativeToken.js +21 -7
  58. package/dist/classes/NativeToken.js.map +1 -1
  59. package/dist/classes/OptimizerReader.d.ts +15 -7
  60. package/dist/classes/OptimizerReader.d.ts.map +1 -1
  61. package/dist/classes/OptimizerReader.js +108 -30
  62. package/dist/classes/OptimizerReader.js.map +1 -1
  63. package/dist/classes/OracleManager.d.ts.map +1 -1
  64. package/dist/classes/OracleManager.js +11 -4
  65. package/dist/classes/OracleManager.js.map +1 -1
  66. package/dist/classes/PositionManager.d.ts.map +1 -1
  67. package/dist/classes/PositionManager.js +1 -3
  68. package/dist/classes/PositionManager.js.map +1 -1
  69. package/dist/classes/ProtocolReader.d.ts +30 -9
  70. package/dist/classes/ProtocolReader.d.ts.map +1 -1
  71. package/dist/classes/ProtocolReader.js +158 -138
  72. package/dist/classes/ProtocolReader.js.map +1 -1
  73. package/dist/classes/Zapper.d.ts +5 -5
  74. package/dist/classes/Zapper.d.ts.map +1 -1
  75. package/dist/classes/Zapper.js +21 -18
  76. package/dist/classes/Zapper.js.map +1 -1
  77. package/dist/contracts/monad-mainnet.json +1 -1
  78. package/dist/feePolicy.d.ts +2 -0
  79. package/dist/feePolicy.d.ts.map +1 -1
  80. package/dist/feePolicy.js +19 -0
  81. package/dist/feePolicy.js.map +1 -1
  82. package/dist/format/borrow.d.ts.map +1 -1
  83. package/dist/format/borrow.js +7 -1
  84. package/dist/format/borrow.js.map +1 -1
  85. package/dist/format/health.d.ts +3 -2
  86. package/dist/format/health.d.ts.map +1 -1
  87. package/dist/format/health.js +10 -9
  88. package/dist/format/health.js.map +1 -1
  89. package/dist/format/leverage.js +5 -4
  90. package/dist/format/leverage.js.map +1 -1
  91. package/dist/helpers.d.ts +14 -11
  92. package/dist/helpers.d.ts.map +1 -1
  93. package/dist/helpers.js +171 -52
  94. package/dist/helpers.js.map +1 -1
  95. package/dist/integrations/merkl.d.ts +2 -1
  96. package/dist/integrations/merkl.d.ts.map +1 -1
  97. package/dist/integrations/merkl.js +199 -4
  98. package/dist/integrations/merkl.js.map +1 -1
  99. package/dist/integrations/snapshot.d.ts +28 -24
  100. package/dist/integrations/snapshot.d.ts.map +1 -1
  101. package/dist/integrations/snapshot.js +106 -42
  102. package/dist/integrations/snapshot.js.map +1 -1
  103. package/dist/retry-provider.d.ts +6 -0
  104. package/dist/retry-provider.d.ts.map +1 -1
  105. package/dist/retry-provider.js +103 -11
  106. package/dist/retry-provider.js.map +1 -1
  107. package/dist/setup.d.ts +8 -6
  108. package/dist/setup.d.ts.map +1 -1
  109. package/dist/setup.js +125 -45
  110. package/dist/setup.js.map +1 -1
  111. package/dist/validation.d.ts +1 -1
  112. package/dist/validation.d.ts.map +1 -1
  113. package/dist/validation.js +13 -7
  114. package/dist/validation.js.map +1 -1
  115. package/package.json +6 -3
@@ -11,8 +11,123 @@ import { PositionManager, PositionManagerTypes } from "./PositionManager";
11
11
  import { BorrowableCToken } from "./BorrowableCToken";
12
12
  import { NativeToken } from "./NativeToken";
13
13
  import { ERC4626 } from "./ERC4626";
14
+ /**
15
+ * Leverage operation buffers — centralized for tuning.
16
+ * Calibrated for fresh-state operation via getLeverageSnapshot under
17
+ * Curvance's permanent single-oracle architecture.
18
+ *
19
+ * Single-oracle architecture (permanent design)
20
+ * ---------------------------------------------
21
+ * Curvance uses single-adaptor oracle configs only (Redstone Core/Classic
22
+ * via BaseOracleAdaptor, which ignores the getLower flag — see line 78 of
23
+ * BaseOracleAdaptor.sol). Dual-feed mode was deprecated in favor of the
24
+ * price-guard system and orderflow MEV tech, and is not coming back.
25
+ * This means MarketManager._statusOf returns symmetric prices for
26
+ * collateral (queries with getLower=true) and debt (getLower=false), so
27
+ * there is no oracle bound asymmetry contributing to checkSlippage forced
28
+ * loss. Buffers below are sized accordingly — do not re-introduce
29
+ * (L-1)-scaled buffers to "future-proof" against dual-feed.
30
+ *
31
+ * MEV / slippage protection model
32
+ * -------------------------------
33
+ * The on-chain BasePositionManager.checkSlippage modifier is per its own
34
+ * docstring "primarily a sanity check rather than a security guarantee."
35
+ * Real MEV protection comes from SwapperLib._swapSafe, which oracle-prices
36
+ * the swap input and output and reverts if realized slippage exceeds the
37
+ * Swap.slippage parameter we pass.
38
+ *
39
+ * Because _swapSafe measures value loss against the FULL input (pre-fee),
40
+ * the deterministic KyberSwap fee would consume feeBps of the user's MEV
41
+ * tolerance if not compensated. `KyberSwap.quoteAction` (the DEX adapter)
42
+ * expands action.slippage by feeBps internally so the fee is absorbed and
43
+ * the user's chosen tolerance is preserved for actual MEV/routing variance.
44
+ * Callers pass raw user slippage — the adapter owns the expansion.
45
+ *
46
+ * Asymmetry between leverage up and deleverage
47
+ * --------------------------------------------
48
+ * Leverage UP: under single-oracle, the contract sees zero forced loss
49
+ * for a perfect swap. The only real sources of difference between
50
+ * snapshot-time prices and execution-time prices are: (a) wei-level share
51
+ * rounding, (b) Redstone update drift between the snapshot RPC and the
52
+ * tx broadcast block. Both are small constants in absolute terms, NOT
53
+ * leverage-scaled. A small flat buffer suffices.
54
+ *
55
+ * DELEVERAGE (full): forced loss comes from intentional swap overshoot
56
+ * (DELEVERAGE_OVERHEAD_BPS) which prevents dust debt by oversizing the
57
+ * collateral→debt swap. This is a real bps-level loss in absolute terms
58
+ * which becomes (L-1) × bps in equity-fraction terms — so the deleverage
59
+ * contract-slippage expansion DOES scale with leverage. Note: the contract
60
+ * returns excess debt token to the user's wallet (BasePositionManager
61
+ * onRedeem lines 482-493), so the economic loss from the overshoot is
62
+ * zero — only the contract's naive equity-loss check sees it as loss.
63
+ */
64
+ export declare const LEVERAGE: {
65
+ /** Max leverage cap: fraction of theoretical max the user can select.
66
+ * Prevents boundary singularity at exact max leverage — the contract's
67
+ * post-op `canBorrow` check re-evaluates LTV against fresh on-chain
68
+ * state, and several loss channels can tick final LTV above collRatio
69
+ * at the boundary:
70
+ * - Pool fees (variable 1bp–1% across pools; aggregator route choice
71
+ * is not knowable at cap-compute time, can differ per-trade even
72
+ * for the same market)
73
+ * - `CURVANCE_FEE_BPS` (deterministic, amplified by (L-1); at L=10
74
+ * eats ~36bps of equity-fraction)
75
+ * - Oracle drift between preview snapshot and Redstone payload at
76
+ * tx inclusion
77
+ * - Share rounding (wei-level)
78
+ *
79
+ * History: 0.99 → 0.995 when caching improved precision (pre-fee era).
80
+ * 0.995 → 0.98 when `CURVANCE_FEE_BPS = 4` landed and users on high-
81
+ * collRatio markets (shMON r=0.9 → 10x theoretical) hit
82
+ * `InsufficientCollateral` reverts at the boundary.
83
+ *
84
+ * Independent of `LEVERAGE_UP_BUFFER_BPS` and `DELEVERAGE_OVERHEAD_BPS`
85
+ * below — those protect in-op slippage at `_swapSafe`; this protects
86
+ * post-op position health at `canBorrow`. */
87
+ readonly MAX_LEVERAGE_FACTOR: Decimal;
88
+ /** Flat BPS buffer added to leverage-up DEX/swapSafe slippage tolerance.
89
+ * Under single-oracle, the only forced loss at the swap level comes from
90
+ * wei-level share rounding plus possible Redstone price drift between
91
+ * snapshot RPC and tx broadcast block. Both are small constants.
92
+ *
93
+ * Fee handling: KyberSwap.quoteAction expands action.slippage by feeBps
94
+ * internally so _swapSafe doesn't treat the fee as MEV. Each call site
95
+ * still computes contractSlippage (expanded by (L-1) × feeBps) so
96
+ * checkSlippage doesn't fire from equity-fraction amplification. This
97
+ * buffer covers rounding/drift only. */
98
+ readonly LEVERAGE_UP_BUFFER_BPS: 10n;
99
+ /** BPS overhead on full deleverage swap sizing — absolute terms.
100
+ * Oversizes the collateral→debt swap so DEX impact + drift doesn't
101
+ * underdeliver and leave dust debt. The contract returns any excess
102
+ * debt token to the user, so economic loss is zero — but the contract's
103
+ * checkSlippage modifier sees the overshoot as equity loss and amplifies
104
+ * it by (L-1)x. The deleverage contract slippage expansion compensates
105
+ * for that amplification (see leverageDown). Bump when aggregator fees
106
+ * are enabled to keep dust prevention reliable. */
107
+ readonly DELEVERAGE_OVERHEAD_BPS: 20n;
108
+ /** BPS buffer on expected-share calculations for zap/leverage paths.
109
+ * Covers exchange rate drift from interest accrual since cache load. */
110
+ readonly SHARES_BUFFER_BPS: 2n;
111
+ /** Per-leverage-unit BPS buffer for `checkSlippage` on vault + native-vault
112
+ * leverage-up paths. Absorbs the drift between the collateral vault's
113
+ * fundamental mint rate at tx time and the stored oracle price that
114
+ * `marketManager.statusOf` uses inside `checkSlippage`. The vault-token
115
+ * oracle publishes discretely; the vault's exchange rate accrues
116
+ * continuously — so new shares are minted at `r_current` but valued at
117
+ * `r_oracle`, leaving a (L-1)-amplified equity-fraction gap that the
118
+ * simple path doesn't see in practice (vault-token markets default to
119
+ * the vault/native-vault PM and `leverageDown` drift goes the other
120
+ * direction as a gain). Empirically calibrated against the ~3% user
121
+ * slippage failure threshold on shMON/WMON native-vault leverage-up;
122
+ * refine via fork testing if drift distribution turns out wider. The
123
+ * constant is NOT "feed divergence" — shMON oracle IS derived from
124
+ * p_MON × r_shMON off-chain; the gap is between publish-time snapshot
125
+ * and tx-time state, not between two independent feeds. */
126
+ readonly LEVERAGE_UP_VAULT_DRIFT_BPS: 30n;
127
+ };
14
128
  export interface AccountSnapshot {
15
129
  asset: address;
130
+ underlying: address;
16
131
  decimals: bigint;
17
132
  isCollateral: boolean;
18
133
  collateralPosted: bigint;
@@ -23,6 +138,24 @@ export interface MulticallAction {
23
138
  isPriceUpdate: boolean;
24
139
  data: bytes;
25
140
  }
141
+ export interface LeverageUpPreview {
142
+ currentLeverage: Decimal;
143
+ effectiveCurrentLeverage: Decimal;
144
+ targetLeverage: Decimal;
145
+ borrowAmount: Decimal;
146
+ borrowAssets: bigint;
147
+ debtIncrease: Decimal;
148
+ debtIncreaseInAssets: Decimal;
149
+ newDebt: Decimal;
150
+ newDebtInAssets: Decimal;
151
+ collateralIncrease: Decimal;
152
+ collateralIncreaseInAssets: Decimal;
153
+ newCollateral: Decimal;
154
+ newCollateralInAssets: Decimal;
155
+ feeBps: bigint;
156
+ feeAssets: Decimal;
157
+ feeUsd: Decimal;
158
+ }
26
159
  export interface ZapToken {
27
160
  interface: NativeToken | ERC20;
28
161
  type: ZapperTypes;
@@ -58,6 +191,7 @@ export interface ICToken {
58
191
  marketCollateralPosted(): Promise<bigint>;
59
192
  collateralPosted(account: address): Promise<bigint>;
60
193
  redeemCollateral(shares: bigint, receiver: address, owner: address): Promise<TransactionResponse>;
194
+ redeemCollateralFor(shares: bigint, receiver: address, owner: address): Promise<TransactionResponse>;
61
195
  postCollateral(shares: bigint): Promise<TransactionResponse>;
62
196
  removeCollateral(shares: bigint): Promise<TransactionResponse>;
63
197
  symbol(): Promise<string>;
@@ -69,6 +203,7 @@ export interface ICToken {
69
203
  isDelegate(user: address, delegate: address): Promise<boolean>;
70
204
  setDelegateApproval(delegate: address, approved: boolean): Promise<TransactionResponse>;
71
205
  }
206
+ type UserCacheField = "userAssetBalance" | "userShareBalance" | "userUnderlyingBalance" | "userCollateral" | "userDebt" | "liquidationPrice";
72
207
  export declare class CToken extends Calldata<ICToken> {
73
208
  provider: curvance_read_provider;
74
209
  address: address;
@@ -84,15 +219,25 @@ export declare class CToken extends Calldata<ICToken> {
84
219
  nativeApy: Decimal;
85
220
  incentiveSupplyApy: Decimal;
86
221
  incentiveBorrowApy: Decimal;
222
+ private userCacheFreshness?;
87
223
  get signer(): curvance_signer | null;
88
224
  protected get account(): address | null;
89
225
  constructor(provider: curvance_read_provider, address: address, cache: StaticMarketToken & DynamicMarketToken & UserMarketToken, market: Market);
226
+ private getUserCacheFreshness;
227
+ markUserCacheFresh(fields?: UserCacheField[]): void;
228
+ invalidateUserCache(fields?: UserCacheField[]): void;
229
+ protected readFreshUserCache(field: UserCacheField, accessLabel: string): bigint;
90
230
  private get setup();
91
231
  private get currentChain();
92
232
  private get currentChainConfig();
93
233
  protected requireSigner(): curvance_signer;
94
234
  protected getAccountOrThrow(account?: address | null): `0x${string}`;
95
235
  protected getWriteContract(): Contract & ICToken;
236
+ private getZapType;
237
+ private isZapInstruction;
238
+ private getZapInputDecimals;
239
+ private getZapAssetAmount;
240
+ private assertVaultLeverageBorrowAssetSupported;
96
241
  get adapters(): [bigint, bigint];
97
242
  get borrowPaused(): boolean;
98
243
  get collateralizationPaused(): boolean;
@@ -115,6 +260,9 @@ export declare class CToken extends Calldata<ICToken> {
115
260
  get irmTargetUtilization(): Decimal;
116
261
  get interestFee(): Decimal;
117
262
  virtualConvertToAssets(shares: bigint): bigint;
263
+ formatAssets(assets: bigint): TokenInput;
264
+ formatShares(shares: bigint): TokenInput;
265
+ formatSharesAsAssets(shares: bigint): TokenInput;
118
266
  /**
119
267
  * Convert assets to shares using cached totalSupply/totalAssets.
120
268
  * @param bufferBps Optional downward buffer in BPS to account for
@@ -122,6 +270,7 @@ export declare class CToken extends Calldata<ICToken> {
122
270
  * Matches the buffer pattern in async convertToShares().
123
271
  */
124
272
  virtualConvertToShares(assets: bigint, bufferBps?: bigint): bigint;
273
+ private getMarketLeverageState;
125
274
  getLeverage(): Decimal | null;
126
275
  /** @returns Remaining Collateral cap */
127
276
  getRemainingCollateral(formatted: true): USD;
@@ -165,6 +314,7 @@ export declare class CToken extends Calldata<ICToken> {
165
314
  /** @returns User shares in USD (native balance amount) or token */
166
315
  getUserShareBalance(inUSD: true): USD;
167
316
  getUserShareBalance(inUSD: false): TokenInput;
317
+ getUserShareBalanceAssets(): TokenInput;
168
318
  /** @returns User assets in USD (this is the raw balance that the token exchanges too) or token */
169
319
  getUserAssetBalance(inUSD: true): USD;
170
320
  getUserAssetBalance(inUSD: false): TokenInput;
@@ -186,6 +336,8 @@ export declare class CToken extends Calldata<ICToken> {
186
336
  /** @returns User Collateral in USD or share token amount */
187
337
  getUserCollateral(inUSD: true): USD;
188
338
  getUserCollateral(inUSD: false): TokenInput;
339
+ getUserCollateralShares(): bigint;
340
+ getUserCollateralAssets(): TokenInput;
189
341
  fetchUserCollateral(): Promise<bigint>;
190
342
  fetchUserCollateral(formatted: true): Promise<TokenInput>;
191
343
  fetchUserCollateral(formatted: false): Promise<bigint>;
@@ -201,6 +353,7 @@ export declare class CToken extends Calldata<ICToken> {
201
353
  getUnderlyingVault(): ERC4626;
202
354
  getVaultAsset(asErc20: true): Promise<ERC20>;
203
355
  getVaultAsset(asErc20: false): Promise<address>;
356
+ getExpectedVaultShares(assets: bigint): Promise<bigint>;
204
357
  getAsset(asErc20: true): ERC20;
205
358
  getAsset(asErc20: false): address;
206
359
  getPrice(): USD;
@@ -219,10 +372,17 @@ export declare class CToken extends Calldata<ICToken> {
219
372
  getSupplyRate(): Percentage;
220
373
  getSupplyRate(asPercentage: false): bigint;
221
374
  getSupplyRate(asPercentage: true): Percentage;
222
- getTvl(inUSD: true): USD;
223
- getTvl(inUSD: false): bigint;
224
- fetchTvl(inUSD: true): Promise<USD>;
225
- fetchTvl(inUSD: false): Promise<bigint>;
375
+ /** @returns Deposits (underlying assets held by the cToken), in USD or raw
376
+ * asset bigint. Renamed from `getTvl` the underlying field must be
377
+ * `totalAssets`, not `totalSupply`, or the displayed deposits are
378
+ * understated by the exchange-rate drift factor whenever interest has
379
+ * accrued. That drift also broke the `liquidity ≤ deposits` invariant
380
+ * on live markets (e.g. loAZND/AUSD showed $29.97K liquidity vs $29.21K
381
+ * deposits pre-fix — impossible for a solvent ERC4626). */
382
+ getDeposits(inUSD: true): USD;
383
+ getDeposits(inUSD: false): bigint;
384
+ fetchDeposits(inUSD: true): Promise<USD>;
385
+ fetchDeposits(inUSD: false): Promise<bigint>;
226
386
  getTotalCollateral(inUSD: true): USD;
227
387
  getTotalCollateral(inUSD: false): bigint;
228
388
  fetchTotalCollateral(inUSD: true): Promise<USD>;
@@ -260,7 +420,16 @@ export declare class CToken extends Calldata<ICToken> {
260
420
  postCollateral(amount: TokenInput): Promise<TransactionResponse>;
261
421
  getZapBalance(zap: ZapperInstructions): Promise<bigint>;
262
422
  ensureUnderlyingAmount(amount: TokenInput, zap: ZapperInstructions): Promise<TokenInput>;
263
- removeCollateral(amount: TokenInput, removeAll?: boolean): Promise<TransactionResponse>;
423
+ private getExecutionDebtBufferTime;
424
+ private resolveCollateralRemovalShares;
425
+ private executeCollateralRemoval;
426
+ maxRemovableCollateral(): Promise<TokenInput>;
427
+ maxRemovableCollateral(in_shares: true): Promise<bigint>;
428
+ maxRemovableCollateral(in_shares: false): Promise<TokenInput>;
429
+ maxRemovableCollateral(in_shares: true, bufferTime: bigint): Promise<bigint>;
430
+ maxRemovableCollateral(in_shares: false, bufferTime: bigint): Promise<TokenInput>;
431
+ removeCollateralExact(amount: TokenInput): Promise<TransactionResponse>;
432
+ removeMaxCollateral(): Promise<TransactionResponse>;
264
433
  convertTokenInputToShares(amount: TokenInput): bigint;
265
434
  convertTokenToToken(fromToken: CToken, toToken: CToken, amount: TokenInput, formatted: true): TokenInput;
266
435
  convertTokenToToken(fromToken: CToken, toToken: CToken, amount: TokenInput, formatted: true, shares: boolean): TokenInput;
@@ -287,6 +456,7 @@ export declare class CToken extends Calldata<ICToken> {
287
456
  excess: bigint;
288
457
  deficit: bigint;
289
458
  isPossible: boolean;
459
+ oracleError: boolean;
290
460
  priceStale: boolean;
291
461
  }>;
292
462
  /**
@@ -310,18 +480,26 @@ export declare class CToken extends Calldata<ICToken> {
310
480
  * equity-fraction denominator amplifies it by (L-1)x automatically.
311
481
  * The user's swap-level slippage (passed separately to _swapSafe) is
312
482
  * unaffected — that's the layer that bounds MEV extraction.
483
+ *
484
+ * Applied uniformly to simple AND vault/native-vault leverage-up paths.
485
+ * Simple path uses the buffer for share-rounding + Redstone drift as
486
+ * described above. Vault paths inherit the flat 10 bps through the
487
+ * shared `slippage` variable before the per-branch
488
+ * `amplifyContractSlippage(..., LEVERAGE_UP_VAULT_DRIFT_BPS)` expansion;
489
+ * the flat addition is not amplified (base term stays flat) and covers
490
+ * the same residual class (share-rounding, oracle drift) on vault paths
491
+ * too. Removing the buffer for vault would save a trivial amount of
492
+ * user slippage budget at the cost of a false-negative risk on the
493
+ * residuals — we keep it for symmetry.
313
494
  */
314
495
  private _leverageUpSlippage;
315
- previewLeverageUp(newLeverage: Decimal, borrow: BorrowableCToken, depositAmount?: bigint): {
316
- borrowAmount: Decimal;
317
- newDebt: Decimal;
318
- newDebtInAssets: Decimal;
319
- newCollateral: Decimal;
320
- newCollateralInAssets: Decimal;
321
- feeBps: bigint;
322
- feeAssets: Decimal;
323
- feeUsd: Decimal;
324
- };
496
+ private assertSimpleLeverageSwapAssetsDiffer;
497
+ private assertLeverageBorrowCapacity;
498
+ private assertSelectedBorrowDebtCanDeleverage;
499
+ private computePostDepositNaturalLeverage;
500
+ private resolveLeverageUpPreview;
501
+ previewDepositAndLeverage(newLeverage: Decimal, borrow: BorrowableCToken, depositAmount: bigint, positionManagerType?: PositionManagerTypes): LeverageUpPreview;
502
+ previewLeverageUp(newLeverage: Decimal, borrow: BorrowableCToken, depositAmount?: bigint, positionManagerType?: PositionManagerTypes): LeverageUpPreview;
325
503
  previewLeverageDown(newLeverage: Decimal, currentLeverage: Decimal, borrow?: BorrowableCToken): {
326
504
  collateralAssetReduction: bigint;
327
505
  collateralAssetReductionUsd: Decimal;
@@ -335,7 +513,7 @@ export declare class CToken extends Calldata<ICToken> {
335
513
  feeUsd: Decimal;
336
514
  };
337
515
  leverageUp(borrow: BorrowableCToken, newLeverage: Decimal, type: PositionManagerTypes, slippage_?: Percentage, simulate?: boolean): Promise<any>;
338
- leverageDown(borrowToken: BorrowableCToken, currentLeverage: Decimal, newLeverage: Decimal, type: PositionManagerTypes, slippage_?: Percentage, simulate?: boolean): Promise<any>;
516
+ leverageDown(borrowToken: BorrowableCToken, currentLeverage: Decimal, newLeverage: Decimal, type: 'simple', slippage_?: Percentage, simulate?: boolean): Promise<any>;
339
517
  depositAndLeverage(depositAmount: TokenInput, borrow: BorrowableCToken, multiplier: Decimal, type: PositionManagerTypes, slippage_?: Percentage, simulate?: boolean): Promise<any>;
340
518
  simulateDeposit(amount: TokenInput, zap?: ZapperInstructions, receiver?: address | null): Promise<{
341
519
  success: boolean;
@@ -345,7 +523,7 @@ export declare class CToken extends Calldata<ICToken> {
345
523
  success: boolean;
346
524
  error?: string;
347
525
  }>;
348
- zap(assets: bigint, zap: ZapperInstructions, collateralize: boolean | undefined, default_calldata: bytes): Promise<{
526
+ zap(assets: bigint, zap: ZapperInstructions, collateralize: boolean | undefined, default_calldata: bytes, receiver?: address): Promise<{
349
527
  calldata: `0x${string}`;
350
528
  calldata_overrides: {};
351
529
  zapper: null;
@@ -362,6 +540,7 @@ export declare class CToken extends Calldata<ICToken> {
362
540
  multicall(calls: MulticallAction[]): Promise<TransactionResponse>;
363
541
  getSnapshot(account: address): Promise<{
364
542
  asset: `0x${string}`;
543
+ underlying: `0x${string}`;
365
544
  decimals: bigint;
366
545
  isCollateral: boolean;
367
546
  collateralPosted: bigint;
@@ -371,22 +550,32 @@ export declare class CToken extends Calldata<ICToken> {
371
550
  fetchConvertTokensToUsd(tokenAmount: bigint, asset?: boolean): Promise<Decimal>;
372
551
  convertUsdToTokens(usdAmount: USD, asset?: boolean, lower?: boolean): Decimal;
373
552
  convertAssetsToUsd(tokenAmount: bigint): USD;
553
+ convertSharesToUsdSync(tokenAmount: bigint): USD;
554
+ fetchConvertSharesToUsd(tokenAmount: bigint): Promise<USD>;
374
555
  convertSharesToUsd(tokenAmount: bigint): Promise<USD>;
375
- buildMultiCallAction(calldata: bytes): MulticallAction;
556
+ buildMultiCallAction(calldata: bytes, target?: address): MulticallAction;
557
+ private hasNonZeroNativeValueOverride;
558
+ private assertOracleMulticallSupportsValue;
376
559
  private _checkPositionManagerApproval;
377
560
  private _checkZapperApproval;
378
- private _checkErc20Approval;
379
- private _checkAssetApproval;
561
+ private _checkDelegateApproval;
562
+ private getDepositAssetApprovalTarget;
563
+ private getPositionManagerDepositApprovalTarget;
564
+ private resolveZapApprovalTarget;
565
+ private hasTokenApproval;
566
+ private _checkTokenApproval;
380
567
  private _checkDepositApprovals;
381
568
  oracleRoute(calldata: bytes, override?: {
382
569
  [key: string]: any;
383
- }): Promise<TransactionResponse>;
570
+ }, reloadAccount?: address | null): Promise<TransactionResponse>;
384
571
  simulateOracleRoute(calldata: bytes, override?: {
385
572
  [key: string]: any;
386
573
  }): Promise<{
387
574
  success: boolean;
388
575
  error?: string;
389
576
  }>;
577
+ private getRedstonePriceUpdateTokens;
390
578
  getPriceUpdates(): Promise<MulticallAction[]>;
391
579
  }
580
+ export {};
392
581
  //# sourceMappingURL=CToken.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"CToken.d.ts","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AACvD,OAAO,EAAsB,UAAU,EAA+K,MAAM,YAAY,CAAC;AACzO,OAAO,EAAgB,kBAAkB,EAAE,iBAAiB,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AACxG,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,OAAO,MAAM,YAAY,CAAC;AAEjC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,sBAAsB,EAAE,eAAe,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,UAAU,CAAC;AAEzH,OAAO,EAAE,MAAM,EAAE,WAAW,EAAoB,MAAM,UAAU,CAAC;AACjE,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0GpC,MAAM,WAAW,eAAe;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,OAAO,CAAC;IACtB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,eAAe;IAC5B,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,IAAI,EAAE,KAAK,CAAC;CACf;AAED,MAAM,WAAW,QAAQ;IACrB,SAAS,EAAE,WAAW,GAAG,KAAK,CAAC;IAC/B,IAAI,EAAE,WAAW,CAAC;IAClB,KAAK,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,UAAU,KAAK,OAAO,CAAC;QAC7F,UAAU,EAAE,MAAM,CAAC;QACnB,UAAU,EAAE,MAAM,CAAC;QACnB,MAAM,EAAE,OAAO,CAAC;QAChB,MAAM,EAAE,OAAO,CAAC;QAChB,KAAK,CAAC,EAAE,GAAG,CAAC;KACf,CAAC,CAAC;CACN;AAED,MAAM,MAAM,kBAAkB,GAAI,MAAM,GAAG,cAAc,GAAG,OAAO,GAAG,eAAe,GAAG;IACpF,IAAI,EAAE,WAAW,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,QAAQ,EAAE,UAAU,CAAC;CACxB,CAAA;AAED,MAAM,WAAW,OAAO;IACpB,QAAQ,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC5B,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IACjC,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7C,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAC1B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/B,aAAa,IAAI,OAAO,CAAC,OAAO,CAAC,CAAC;IAClC,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,eAAe,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACjD,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,eAAe,CAAC,CAAC;IACxD,SAAS,CAAC,KAAK,EAAE,eAAe,EAAE,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClE,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACzE,mBAAmB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACrF,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxF,sBAAsB,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1C,gBAAgB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACpD,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAClG,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC7D,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC/D,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1B,IAAI,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACxB,UAAU,CAAC,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC/C,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IAC1E,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACxE,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IAC7D,UAAU,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;IAC/D,mBAAmB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;CAE3F;AAED,qBAAa,MAAO,SAAQ,QAAQ,CAAC,OAAO,CAAC;IACzC,QAAQ,EAAE,sBAAsB,CAAC;IACjC,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC7B,GAAG,EAAE,GAAG,CAAC;IACT,KAAK,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,eAAe,CAAC;IAChE,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,WAAW,EAAE,CAAM;IAC7B,aAAa,EAAE,MAAM,EAAE,CAAM;IAC7B,OAAO,EAAE,OAAO,CAAS;IACzB,aAAa,EAAE,OAAO,CAAS;IAC/B,eAAe,EAAE,OAAO,CAAS;IACjC,SAAS,UAAc;IACvB,kBAAkB,UAAc;IAChC,kBAAkB,UAAc;IAChC,IAAI,MAAM,IAAI,eAAe,GAAG,IAAI,CAA+B;IACnE,SAAS,KAAK,OAAO,IAAI,OAAO,GAAG,IAAI,CAAgC;gBAGnE,QAAQ,EAAE,sBAAsB,EAChC,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,iBAAiB,GAAG,kBAAkB,GAAG,eAAe,EAC/D,MAAM,EAAE,MAAM;IA8BlB,OAAO,KAAK,KAAK,GAAgC;IACjD,OAAO,KAAK,YAAY,GAA+B;IACvD,OAAO,KAAK,kBAAkB,GAAgD;IAC9E,SAAS,CAAC,aAAa;IACvB,SAAS,CAAC,iBAAiB,CAAC,OAAO,GAAE,OAAO,GAAG,IAAW;IAG1D,SAAS,CAAC,gBAAgB;IAI1B,IAAI,QAAQ,qBAAkC;IAC9C,IAAI,YAAY,YAAqC;IACrD,IAAI,uBAAuB,YAAgD;IAC3E,IAAI,UAAU,YAAmC;IACjD,IAAI,aAAa,WAA0B;IAC3C,IAAI,QAAQ,WAAkC;IAC9C,IAAI,MAAM,WAAgC;IAC1C,IAAI,IAAI,WAA8B;IACtC,IAAI,KAAK,iDAA8B;IACvC,IAAI,YAAY,YAAsC;IACtD,IAAI,YAAY,WAAsC;IACtD,IAAI,MAAM,YAAuC;IACjD,IAAI,WAAW,YAOd;IACD,IAAI,WAAW,YAA4C;IAC3D,IAAI,WAAW,WAAqC;IACpD,IAAI,WAAW,WAAqC;IACpD,IAAI,gBAAgB,IAAI,GAAG,GAAG,IAAI,CAGjC;IACD,IAAI,aAAa,YAAyD;IAC1E,IAAI,UAAU,YAAsD;IACpE,IAAI,oBAAoB,YAAgE;IACxF,IAAI,WAAW,YAAuD;IAEtE,sBAAsB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;IAI9C;;;;;OAKG;IACH,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,MAAW,GAAG,MAAM;IAKtE,WAAW;IASX,wCAAwC;IACxC,sBAAsB,CAAC,SAAS,EAAE,IAAI,GAAG,GAAG;IAC5C,sBAAsB,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM;IAMhD,kCAAkC;IAClC,gBAAgB,CAAC,SAAS,EAAE,IAAI,GAAG,GAAG;IACtC,gBAAgB,CAAC,SAAS,EAAE,KAAK,GAAG,MAAM;IAM1C,iDAAiD;IACjD,YAAY,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACrC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKlC,4DAA4D;IAC5D,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACvC,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKpC,4DAA4D;IAC5D,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACvC,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKpC,2DAA2D;IAC3D,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACtC,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKnC,4DAA4D;IAC5D,cAAc,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACvC,cAAc,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKpC,0DAA0D;IAC1D,YAAY,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACrC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKlC,0DAA0D;IAC1D,YAAY,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IACrC,YAAY,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKlC,kDAAkD;IAClD,kBAAkB,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IAC3C,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKxC,mDAAmD;IACnD,mBAAmB,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IAC5C,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKzC,iDAAiD;IACjD,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IAC1C,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKvC,wDAAwD;IACxD,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,UAAU;IAC1C,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKvC,mEAAmE;IACnE,mBAAmB,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IACrC,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAK7C,kGAAkG;IAClG,mBAAmB,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IACrC,mBAAmB,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAK7C,sDAAsD;IACtD,wBAAwB,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IAC1C,wBAAwB,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAKlD,sDAAsD;IACtD,gBAAgB,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IAClC,gBAAgB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAKvC,gDAAgD;IAChD,UAAU,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IAC5B,UAAU,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAKhC,iDAAiD;IACjD,aAAa,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IAC/B,aAAa,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAKpC,4CAA4C;IAC5C,OAAO,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IACzB,OAAO,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO;IAK9B,4DAA4D;IAC5D,iBAAiB,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IACnC,iBAAiB,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAK3C,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC;IACtC,mBAAmB,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;IACzD,mBAAmB,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAQtD,wDAAwD;IACxD,WAAW,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IAC7B,WAAW,CAAC,KAAK,EAAE,KAAK,GAAG,UAAU;IAKrC,UAAU,CAAC,MAAM,EAAE,GAAG,EAAE,QAAQ,EAAE,UAAU;IAO5C;;;OAGG;IACH,GAAG,IAAI,UAAU;IAIjB,kBAAkB;IAcZ,aAAa,CAAC,OAAO,EAAE,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5C,aAAa,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC;IAKrD,QAAQ,CAAC,OAAO,EAAE,IAAI,GAAG,KAAK;IAC9B,QAAQ,CAAC,OAAO,EAAE,KAAK,GAAG,OAAO;IAajC,QAAQ,IAAI,GAAG;IACf,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,GAAG;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,GAAG,GAAG;IAC7C,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,GAAG,GAAG;IAC9D,QAAQ,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,KAAK,GAAG,OAAO;IAUnE,MAAM,IAAI,UAAU;IACpB,MAAM,CAAC,YAAY,EAAE,KAAK,GAAG,MAAM;IACnC,MAAM,CAAC,YAAY,EAAE,IAAI,GAAG,UAAU;IAMtC,kBAAkB;IAIlB,kBAAkB;IAIlB,aAAa,IAAI,UAAU;IAC3B,aAAa,CAAC,YAAY,EAAE,IAAI,GAAG,UAAU;IAC7C,aAAa,CAAC,YAAY,EAAE,KAAK,GAAG,MAAM;IAK1C,aAAa,IAAI,UAAU;IAC3B,aAAa,CAAC,YAAY,EAAE,KAAK,GAAG,MAAM;IAC1C,aAAa,CAAC,YAAY,EAAE,IAAI,GAAG,UAAU;IAM7C,MAAM,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IACxB,MAAM,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAMtB,QAAQ,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;IACnC,QAAQ,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAO7C,kBAAkB,CAAC,KAAK,EAAE,IAAI,GAAG,GAAG;IACpC,kBAAkB,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;IAMlC,oBAAoB,CAAC,KAAK,EAAE,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC;IAC/C,oBAAoB,CAAC,KAAK,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC;IAMzD,kBAAkB,CAAC,IAAI,EAAE,oBAAoB;IAY7C,SAAS,CAAC,IAAI,EAAE,WAAW;IAWrB,kBAAkB,CAAC,YAAY,EAAE,kBAAkB,EAAE,MAAM,EAAE,MAAM;IAiBnE,eAAe,CAAC,YAAY,EAAE,kBAAkB,EAAE,MAAM,EAAE,UAAU,GAAG,IAAI;IAgB3E,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,oBAAoB,EAAE,IAAI,EAAE,WAAW;IAe9E,aAAa,CAAC,MAAM,EAAE,WAAW,GAAG,oBAAoB,EAAE,IAAI,EAAE,WAAW;IAUjF,gBAAgB,CAAC,MAAM,EAAE,WAAW,GAAG,oBAAoB,EAAE,IAAI,EAAE,WAAW,GAAG,OAAO,GAAG,IAAI;IA6BzF,YAAY,CAAC,cAAc,EAAE,OAAO,EAAE,UAAU,UAAO;IAO7D;;;;OAIG;IACG,iBAAiB,CAAC,MAAM,GAAE,UAAU,GAAG,IAAW,EAAE,MAAM,GAAE,OAAO,GAAG,IAAW;IAMjF,OAAO,CAAC,MAAM,GAAE,UAAU,GAAG,IAAI,aAAO,EAAE,OAAO,EAAE,OAAO;IAM1D,aAAa;IAMb,iBAAiB;IAMjB,UAAU;IAMV,sBAAsB;IAItB,WAAW;IAMX,SAAS;IAMT,UAAU,CAAC,KAAK,UAAQ,EAAE,QAAQ,UAAQ,EAAE,KAAK,UAAO;IAcxD,gBAAgB;IAIhB,gBAAgB;IAIhB,eAAe;IAMf,sBAAsB;IAItB,SAAS,CAAC,OAAO,EAAE,OAAO;IAI1B,UAAU,CAAC,QAAQ,EAAE,OAAO;IAI5B,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU;IAK9C,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,GAAE,OAAO,GAAG,IAAW,EAAE,KAAK,GAAE,OAAO,GAAG,IAAW;IAU/F,cAAc,CAAC,MAAM,EAAE,UAAU;IAiBjC,aAAa,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,MAAM,CAAC;IA8CvD,sBAAsB,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,EAAE,kBAAkB,GAAI,OAAO,CAAC,UAAU,CAAC;IAiCzF,gBAAgB,CAAC,MAAM,EAAE,UAAU,EAAE,SAAS,GAAE,OAAe;IAyBrE,yBAAyB,CAAC,MAAM,EAAE,UAAU;IAM5C,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,GAAG,UAAU;IACxG,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAG,UAAU;IACzH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,GAAG,MAAM;IACtH,mBAAmB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,GAAG,MAAM;IAkB/F,eAAe,CAAC,MAAM,EAAE,MAAM;IAI9B,eAAe,CAAC,MAAM,EAAE,MAAM,EAAE,SAAS,GAAE,MAAW;IAKtD,aAAa,IAAI,OAAO,CAAC,UAAU,CAAC;IACpC,aAAa,CAAC,SAAS,EAAE,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAC/C,aAAa,CAAC,SAAS,EAAE,KAAK,GAAG,OAAO,CAAC,UAAU,CAAC;IACpD,aAAa,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IACnE,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IACxE,aAAa,CAAC,SAAS,EAAE,IAAI,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAC,IAAI,GAAG,OAAO,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAA;KAAC,CAAC;IACnI,aAAa,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAC,IAAI,GAAG,OAAO,CAAC;QAAC,cAAc,EAAE,UAAU,CAAC;QAAC,oBAAoB,EAAE,UAAU,CAAA;KAAC,CAAC;IA6BlJ,uEAAuE;IACjE,gBAAgB,CAAC,MAAM,GAAE,MAAM,GAAG,IAAW;IAkF7C,wBAAwB,CAAC,MAAM,EAAE,UAAU;;;;;;IASjD;;;;;;;;;OASG;YACW,oBAAoB;IAkBlC;;;;;;;;;;OAUG;IACH,OAAO,CAAC,mBAAmB;IAK3B,iBAAiB,CAAC,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,gBAAgB,EAAE,aAAa,CAAC,EAAE,MAAM;;;;;;;;;;IAiDxF,mBAAmB,CAAC,WAAW,EAAE,OAAO,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,gBAAgB;;;;;;;;;;;;IAuDvF,UAAU,CACZ,MAAM,EAAE,gBAAgB,EACxB,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,oBAAoB,EAC1B,SAAS,GAAE,UAA0B,EACrC,QAAQ,GAAE,OAAe,GAC1B,OAAO,CAAC,GAAG,CAAC;IA+FT,YAAY,CACd,WAAW,EAAE,gBAAgB,EAC7B,eAAe,EAAE,OAAO,EACxB,WAAW,EAAE,OAAO,EACpB,IAAI,EAAE,oBAAoB,EAC1B,SAAS,GAAE,UAA0B,EACrC,QAAQ,GAAE,OAAe,GAC1B,OAAO,CAAC,GAAG,CAAC;IAiJT,kBAAkB,CACpB,aAAa,EAAE,UAAU,EACzB,MAAM,EAAE,gBAAgB,EACxB,UAAU,EAAE,OAAO,EACnB,IAAI,EAAE,oBAAoB,EAC1B,SAAS,GAAE,UAA0B,EACrC,QAAQ,GAAE,OAAe,GAC1B,OAAO,CAAC,GAAG,CAAC;IAqGT,eAAe,CACjB,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,kBAA2B,EAChC,QAAQ,GAAE,OAAO,GAAG,IAAW,GAChC,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA2B1C,2BAA2B,CAC7B,MAAM,EAAE,UAAU,EAClB,GAAG,GAAE,kBAA2B,EAChC,QAAQ,GAAE,OAAO,GAAG,IAAW,GAChC,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IA2B1C,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,kBAAkB,EAAE,aAAa,qBAAQ,EAAE,gBAAgB,EAAG,KAAK;;;;;;;;;IAmD5F,OAAO,CAAC,MAAM,EAAE,UAAU,EAAE,GAAG,GAAE,kBAA2B,EAAE,QAAQ,GAAE,OAAO,GAAG,IAAW;IAsC7F,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,GAAE,kBAA2B,EAAG,QAAQ,GAAE,OAAO,GAAG,IAAW;IAsCvG,MAAM,CAAC,MAAM,EAAE,UAAU;IAmBzB,YAAY,CAAC,MAAM,EAAE,MAAM;IAS3B,gBAAgB,CAAC,OAAO,GAAE,OAAO,GAAG,IAAW;IAI/C,SAAS,CAAC,KAAK,EAAE,eAAe,EAAE;IAIlC,WAAW,CAAC,OAAO,EAAE,OAAO;;;;;;;IAWlC,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAO,GAAI,GAAG;IAWrD,uBAAuB,CAAC,WAAW,EAAE,MAAM,EAAE,KAAK,UAAO;IAQ/D,kBAAkB,CAAC,SAAS,EAAE,GAAG,EAAE,KAAK,UAAO,EAAE,KAAK,UAAQ;IAK9D,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,GAAG;IAStC,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAQ3D,oBAAoB,CAAC,QAAQ,EAAE,KAAK,GAK3B,eAAe;YAGV,6BAA6B;YAO7B,oBAAoB;YAapB,mBAAmB;YAUnB,mBAAmB;YAanB,sBAAsB;IAY9B,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GAAG,OAAO,CAAC,mBAAmB,CAAC;IAejG,mBAAmB,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,GAAE;QAAE,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAA;KAAO,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAW1H,eAAe,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;CAStD"}
1
+ {"version":3,"file":"CToken.d.ts","sourceRoot":"","sources":["../../src/classes/CToken.ts"],"names":[],"mappings":"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"}