@lifi/perps-sdk 18.1.0 → 20.0.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 (162) hide show
  1. package/README.md +15 -5
  2. package/dist/cjs/client/PerpsClient.d.ts +14 -8
  3. package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
  4. package/dist/cjs/client/PerpsClient.js +145 -53
  5. package/dist/cjs/client/PerpsClient.js.map +1 -1
  6. package/dist/cjs/client/createPerpsClient.d.ts +1 -6
  7. package/dist/cjs/client/createPerpsClient.d.ts.map +1 -1
  8. package/dist/cjs/client/createPerpsClient.js +1 -14
  9. package/dist/cjs/client/createPerpsClient.js.map +1 -1
  10. package/dist/cjs/index.d.ts +6 -4
  11. package/dist/cjs/index.d.ts.map +1 -1
  12. package/dist/cjs/index.js +11 -3
  13. package/dist/cjs/index.js.map +1 -1
  14. package/dist/cjs/services/getOhlcv.d.ts.map +1 -1
  15. package/dist/cjs/services/getOhlcv.js.map +1 -1
  16. package/dist/cjs/types/api.d.ts +7 -6
  17. package/dist/cjs/types/api.d.ts.map +1 -1
  18. package/dist/cjs/types/config.d.ts +0 -9
  19. package/dist/cjs/types/config.d.ts.map +1 -1
  20. package/dist/cjs/types/provider.d.ts +5 -6
  21. package/dist/cjs/types/provider.d.ts.map +1 -1
  22. package/dist/cjs/types/withdrawal.d.ts +4 -2
  23. package/dist/cjs/types/withdrawal.d.ts.map +1 -1
  24. package/dist/cjs/utils/calculations.d.ts.map +1 -1
  25. package/dist/cjs/utils/calculations.js +107 -38
  26. package/dist/cjs/utils/calculations.js.map +1 -1
  27. package/dist/cjs/utils/decimal.d.ts +4 -0
  28. package/dist/cjs/utils/decimal.d.ts.map +1 -0
  29. package/dist/cjs/utils/decimal.js +14 -0
  30. package/dist/cjs/utils/decimal.js.map +1 -0
  31. package/dist/cjs/utils/math.d.ts +4 -0
  32. package/dist/cjs/utils/math.d.ts.map +1 -0
  33. package/dist/cjs/utils/math.js +8 -0
  34. package/dist/cjs/utils/math.js.map +1 -0
  35. package/dist/cjs/utils/parse.d.ts +1 -0
  36. package/dist/cjs/utils/parse.d.ts.map +1 -1
  37. package/dist/cjs/utils/parse.js +15 -0
  38. package/dist/cjs/utils/parse.js.map +1 -1
  39. package/dist/cjs/utils/positionMath.d.ts +5 -0
  40. package/dist/cjs/utils/positionMath.d.ts.map +1 -1
  41. package/dist/cjs/utils/positionMath.js +53 -6
  42. package/dist/cjs/utils/positionMath.js.map +1 -1
  43. package/dist/cjs/utils/setupActions.d.ts +4 -2
  44. package/dist/cjs/utils/setupActions.d.ts.map +1 -1
  45. package/dist/cjs/utils/setupActions.js +9 -1
  46. package/dist/cjs/utils/setupActions.js.map +1 -1
  47. package/dist/cjs/utils/switchChain.js +1 -1
  48. package/dist/cjs/utils/switchChain.js.map +1 -1
  49. package/dist/cjs/version.d.ts +1 -1
  50. package/dist/cjs/version.js +1 -1
  51. package/dist/cjs/websocket/PerpsWsClient.d.ts +0 -1
  52. package/dist/cjs/websocket/PerpsWsClient.d.ts.map +1 -1
  53. package/dist/cjs/websocket/PerpsWsClient.js +0 -7
  54. package/dist/cjs/websocket/PerpsWsClient.js.map +1 -1
  55. package/dist/esm/client/PerpsClient.d.ts +70 -61
  56. package/dist/esm/client/PerpsClient.d.ts.map +1 -1
  57. package/dist/esm/client/PerpsClient.js +215 -107
  58. package/dist/esm/client/PerpsClient.js.map +1 -1
  59. package/dist/esm/client/createPerpsClient.d.ts +1 -12
  60. package/dist/esm/client/createPerpsClient.d.ts.map +1 -1
  61. package/dist/esm/client/createPerpsClient.js +1 -19
  62. package/dist/esm/client/createPerpsClient.js.map +1 -1
  63. package/dist/esm/client/requireProvider.d.ts +1 -1
  64. package/dist/esm/client/requireProvider.js +1 -1
  65. package/dist/esm/index.d.ts +6 -4
  66. package/dist/esm/index.d.ts.map +1 -1
  67. package/dist/esm/index.js +5 -3
  68. package/dist/esm/index.js.map +1 -1
  69. package/dist/esm/services/getOhlcv.d.ts +1 -0
  70. package/dist/esm/services/getOhlcv.d.ts.map +1 -1
  71. package/dist/esm/services/getOhlcv.js.map +1 -1
  72. package/dist/esm/types/api.d.ts +39 -36
  73. package/dist/esm/types/api.d.ts.map +1 -1
  74. package/dist/esm/types/config.d.ts +0 -27
  75. package/dist/esm/types/config.d.ts.map +1 -1
  76. package/dist/esm/types/provider.d.ts +28 -33
  77. package/dist/esm/types/provider.d.ts.map +1 -1
  78. package/dist/esm/types/withdrawal.d.ts +24 -15
  79. package/dist/esm/types/withdrawal.d.ts.map +1 -1
  80. package/dist/esm/utils/calculations.d.ts +3 -2
  81. package/dist/esm/utils/calculations.d.ts.map +1 -1
  82. package/dist/esm/utils/calculations.js +109 -39
  83. package/dist/esm/utils/calculations.js.map +1 -1
  84. package/dist/esm/utils/decimal.d.ts +9 -0
  85. package/dist/esm/utils/decimal.d.ts.map +1 -0
  86. package/dist/esm/utils/decimal.js +12 -0
  87. package/dist/esm/utils/decimal.js.map +1 -0
  88. package/dist/esm/utils/math.d.ts +6 -0
  89. package/dist/esm/utils/math.d.ts.map +1 -0
  90. package/dist/esm/utils/math.js +5 -0
  91. package/dist/esm/utils/math.js.map +1 -0
  92. package/dist/esm/utils/parse.d.ts +7 -0
  93. package/dist/esm/utils/parse.d.ts.map +1 -1
  94. package/dist/esm/utils/parse.js +20 -0
  95. package/dist/esm/utils/parse.js.map +1 -1
  96. package/dist/esm/utils/positionMath.d.ts +13 -0
  97. package/dist/esm/utils/positionMath.d.ts.map +1 -1
  98. package/dist/esm/utils/positionMath.js +60 -6
  99. package/dist/esm/utils/positionMath.js.map +1 -1
  100. package/dist/esm/utils/setupActions.d.ts +17 -8
  101. package/dist/esm/utils/setupActions.d.ts.map +1 -1
  102. package/dist/esm/utils/setupActions.js +20 -7
  103. package/dist/esm/utils/setupActions.js.map +1 -1
  104. package/dist/esm/utils/switchChain.js +1 -1
  105. package/dist/esm/utils/switchChain.js.map +1 -1
  106. package/dist/esm/version.d.ts +1 -1
  107. package/dist/esm/version.js +1 -1
  108. package/dist/esm/websocket/PerpsWsClient.d.ts +0 -7
  109. package/dist/esm/websocket/PerpsWsClient.d.ts.map +1 -1
  110. package/dist/esm/websocket/PerpsWsClient.js +0 -7
  111. package/dist/esm/websocket/PerpsWsClient.js.map +1 -1
  112. package/dist/types/client/PerpsClient.d.ts +70 -61
  113. package/dist/types/client/PerpsClient.d.ts.map +1 -1
  114. package/dist/types/client/createPerpsClient.d.ts +1 -12
  115. package/dist/types/client/createPerpsClient.d.ts.map +1 -1
  116. package/dist/types/client/requireProvider.d.ts +1 -1
  117. package/dist/types/index.d.ts +6 -4
  118. package/dist/types/index.d.ts.map +1 -1
  119. package/dist/types/services/getOhlcv.d.ts +1 -0
  120. package/dist/types/services/getOhlcv.d.ts.map +1 -1
  121. package/dist/types/types/api.d.ts +39 -36
  122. package/dist/types/types/api.d.ts.map +1 -1
  123. package/dist/types/types/config.d.ts +0 -27
  124. package/dist/types/types/config.d.ts.map +1 -1
  125. package/dist/types/types/provider.d.ts +28 -33
  126. package/dist/types/types/provider.d.ts.map +1 -1
  127. package/dist/types/types/withdrawal.d.ts +24 -15
  128. package/dist/types/types/withdrawal.d.ts.map +1 -1
  129. package/dist/types/utils/calculations.d.ts +3 -2
  130. package/dist/types/utils/calculations.d.ts.map +1 -1
  131. package/dist/types/utils/decimal.d.ts +9 -0
  132. package/dist/types/utils/decimal.d.ts.map +1 -0
  133. package/dist/types/utils/math.d.ts +6 -0
  134. package/dist/types/utils/math.d.ts.map +1 -0
  135. package/dist/types/utils/parse.d.ts +7 -0
  136. package/dist/types/utils/parse.d.ts.map +1 -1
  137. package/dist/types/utils/positionMath.d.ts +13 -0
  138. package/dist/types/utils/positionMath.d.ts.map +1 -1
  139. package/dist/types/utils/setupActions.d.ts +17 -8
  140. package/dist/types/utils/setupActions.d.ts.map +1 -1
  141. package/dist/types/version.d.ts +1 -1
  142. package/dist/types/websocket/PerpsWsClient.d.ts +0 -7
  143. package/dist/types/websocket/PerpsWsClient.d.ts.map +1 -1
  144. package/package.json +2 -2
  145. package/src/client/PerpsClient.ts +296 -137
  146. package/src/client/createPerpsClient.ts +4 -32
  147. package/src/client/requireProvider.ts +1 -1
  148. package/src/index.ts +8 -5
  149. package/src/services/getOhlcv.ts +1 -0
  150. package/src/types/api.ts +40 -40
  151. package/src/types/config.ts +0 -30
  152. package/src/types/provider.ts +29 -36
  153. package/src/types/withdrawal.ts +24 -15
  154. package/src/utils/calculations.ts +114 -43
  155. package/src/utils/decimal.ts +13 -0
  156. package/src/utils/math.ts +7 -0
  157. package/src/utils/parse.ts +25 -0
  158. package/src/utils/positionMath.ts +66 -6
  159. package/src/utils/setupActions.ts +27 -13
  160. package/src/utils/switchChain.ts +1 -1
  161. package/src/version.ts +1 -1
  162. package/src/websocket/PerpsWsClient.ts +0 -19
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;AAE/D;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,CAC5B,OAAO,EAAE,MAAM,KACZ,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAA;AAE3C;;;;;GAKG;AACH,MAAM,WAAW,cAAc;IAC7B,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,EAAE,CAAA;CACnB;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,CAAA;AAE9C;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC9B,CAAC,QAAQ,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS,CAAA;CAC/C;AAED;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,WAAW,KACjB,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAEvC;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,uDAAuD;IACvD,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAA;IACd,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,6DAA6D;IAC7D,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,yDAAyD;IACzD,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,+CAA+C;IAC/C,SAAS,CAAC,EAAE,eAAe,CAAA;IAC3B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;CACrB"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/types/config.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,MAAM,CAAA;AACjD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,6BAA6B,CAAA;AAE9D;;;;;GAKG;AACH,MAAM,MAAM,iBAAiB,GAAG,YAAY,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,CAAC,CAAA;AAE/D;;;;;;;;;GASG;AACH,MAAM,MAAM,eAAe,GAAG,CAC5B,OAAO,EAAE,MAAM,KACZ,OAAO,CAAC,iBAAiB,GAAG,SAAS,CAAC,CAAA;AAE3C;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG,CAC/B,GAAG,EAAE,MAAM,EACX,OAAO,EAAE,WAAW,KACjB,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC,CAAA;AAEvC;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,uDAAuD;IACvD,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAA;CAC1B;AAED;;;;;GAKG;AACH,MAAM,WAAW,eAAe;IAC9B;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAA;IACd,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAA;IACd,yDAAyD;IACzD,kBAAkB,CAAC,EAAE,kBAAkB,CAAA;IACvC,2DAA2D;IAC3D,KAAK,CAAC,EAAE,WAAW,CAAA;IACnB,wDAAwD;IACxD,KAAK,CAAC,EAAE,OAAO,KAAK,CAAA;CACrB"}
@@ -1,4 +1,4 @@
1
- import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, ProviderAction, Quote, QuoteSide, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
1
+ import type { AccountConfig, AccountConfigSetting, AccountResponse, AccountSummary, ActionResult, ActionStep, ActionType, ActivitiesResponse, ActivityType, AvailableToTrade, FillsResponse, Market, MarketRef, MarketSettings, Order, OrderStatus, OrdersResponse, PerpsMarket, PerpsSigner, PortfolioHistoryRange, PortfolioHistoryResponse, Position, PositionsResponse, Quote, QuoteSide, SetupAction, SignedActionStep, SigningMethod, TradeType } from '@lifi/perps-types';
2
2
  import type { Address } from 'viem';
3
3
  import type { PerpsBaseConfig, PerpsClientSigner, SDKRequestOptions } from './config.js';
4
4
  import type { DepositFlow } from './deposit.js';
@@ -49,12 +49,12 @@ export interface SignActionsContext {
49
49
  /** End-user wallet used for USER-signed or EVM transaction legs. */
50
50
  userWallet?: PerpsClientSigner;
51
51
  /**
52
- * The signing batch's declared signers, from the action's `ProviderAction`
52
+ * The signing batch's declared signer, from the action's `ProviderAction`
53
53
  * descriptor. The plugin branches on this to pick WHO signs (e.g.
54
- * Hyperliquid: `USER` → end-user wallet, `AGENT` → session keypair). Core
55
- * forwards the descriptor's `signers` as data; it does not branch on them.
54
+ * Hyperliquid: `USER` → end-user wallet, `SDK` → session keypair). Core
55
+ * forwards the descriptor's `signer` as data; it does not branch on it.
56
56
  */
57
- signers?: PerpsSigner[];
57
+ signer?: PerpsSigner;
58
58
  /**
59
59
  * Switch `userWallet` to `chainId` and resolve the client to broadcast with.
60
60
  * Bound by core to the consumer's `switchChain` hook and the resolved
@@ -314,22 +314,12 @@ export interface PerpsProviderPlugin {
314
314
  */
315
315
  readonly type: string;
316
316
  /**
317
- * Setup actions the provider completes on its own, without surfacing a card
318
- * to the caller. `PerpsClient.checkSetup` drains each such pending step in
319
- * place — building, signing, and executing it with the provider's own
320
- * credentials — and omits it from the returned `setup` list. A descriptor
321
- * whose `signers` include {@link PerpsSigner.USER} is never treated as
322
- * internal, even when named here. Omit when the provider has no
323
- * self-completed setup steps.
324
- */
325
- readonly internalSetupActions?: readonly ActionType[];
326
- /**
327
- * Setup actions that stage work only when the account needs remediation
328
- * (e.g. Hyperliquid's REVOKE_AGENT frees an agent slot only when every
329
- * named slot is taken). When such a step stages no actions,
317
+ * Non-choice setup actions that stage work only when the account needs
318
+ * remediation (e.g. Hyperliquid's REVOKE_AGENT frees an agent slot only
319
+ * when every named slot is taken). When such a step stages no actions,
330
320
  * `PerpsClient.checkSetup` omits it from `ProviderSetup.checklist` instead
331
- * of rendering it as satisfied. Omit when every setup step is
332
- * unconditional.
321
+ * of rendering it as satisfied. Choices are always rendered because they
322
+ * are never staged. Omit when every setup step is unconditional.
333
323
  */
334
324
  readonly conditionalSetupActions?: readonly ActionType[];
335
325
  /**
@@ -381,13 +371,14 @@ export interface PerpsProviderPlugin {
381
371
  getWithdrawableBalances?(params: ProviderGetWithdrawableBalancesParams, options?: SDKRequestOptions): Promise<ProviderWithdrawableBalance[]>;
382
372
  getPositions(params: ProviderGetPositionsParams, options?: SDKRequestOptions): Promise<PositionsResponse>;
383
373
  /**
384
- * The user's current venue-side settings for one market — the margin mode
385
- * and leverage the next order on it will use. Optional because venues
386
- * expose this unevenly: Hyperliquid reads it directly (`activeAssetData`),
387
- * Lighter only reports it on an account's position row. `undefined` means
388
- * the venue has nothing to read for this market.
374
+ * The user's current venue-side settings for one perps market — the margin
375
+ * mode and leverage the next order on it will use. Resolves the venue value
376
+ * or throws.
377
+ *
378
+ * @throws {PerpsError} `ValidationError` for a spot market; any other
379
+ * `PerpsError` when the venue read fails or carries no usable value.
389
380
  */
390
- getMarketSettings?(params: ProviderGetMarketSettingsParams, options?: SDKRequestOptions): Promise<MarketSettings | undefined>;
381
+ getMarketSettings(params: ProviderGetMarketSettingsParams, options?: SDKRequestOptions): Promise<MarketSettings>;
391
382
  /**
392
383
  * The amounts the account can still buy and sell on one market, in that
393
384
  * market's margin asset. Optional because venues expose this unevenly:
@@ -472,28 +463,32 @@ export interface PerpsProviderPlugin {
472
463
  positionRemovableMargin(position: Position): string | undefined;
473
464
  /**
474
465
  * Project a typed {@link AccountConfig} against the provider's `setup`
475
- * + `options` descriptors into `AccountConfigSetting[]`. Used by
466
+ * descriptors into `AccountConfigSetting[]`. Used by
476
467
  * `PerpsClient.getAccount` to attach a `settings` array to the response —
477
- * one entry per descriptor, in `setup`-then-`options` order.
468
+ * one entry per descriptor, in `setup` order. Every choice descriptor
469
+ * (`options` is not `null`) carries a boolean `satisfied`, because
470
+ * `PerpsClient.checkSetup` reads a choice's satisfied state and `selected`
471
+ * option from this projection alone.
478
472
  *
479
473
  * Implementations receive the union-typed `AccountConfig` and narrow on
480
474
  * `config.provider` themselves; the dispatcher in `PerpsClient` does not
481
475
  * narrow before calling.
482
476
  */
483
- projectConfig(config: AccountConfig, setup: ProviderAction[], options: ProviderAction[]): AccountConfigSetting[];
477
+ projectConfig(config: AccountConfig, setup: SetupAction[]): AccountConfigSetting[];
484
478
  /**
485
479
  * Per-setup-action params the SDK should inject into `createAction` calls
486
480
  * when staging the provider setup. Used for plugin-side state the backend
487
481
  * needs to make a correct idempotency decision (e.g. Lighter's known local
488
482
  * API public key). Returns an empty object when the plugin has no params
489
- * to contribute for the action. Optional — providers without local state
483
+ * to contribute for the action. A choice option runs with its bound params
484
+ * alone and never reads these. Optional — providers without local state
490
485
  * can omit it entirely.
491
486
  */
492
487
  resolveSetupParams?(action: ActionType, address: Address): Promise<Record<string, unknown>>;
493
488
  /**
494
489
  * Contribute the signer-bearing wire fields for an action — the plugin owns
495
490
  * signer identity (WHO signs), so core asks the plugin rather than resolving
496
- * a `signerAddress` itself. The descriptor's `signers` are forwarded so the
491
+ * a `signerAddress` itself. The descriptor's `signer` is forwarded so the
497
492
  * plugin can branch on signer role: a provider that signs on the user's
498
493
  * behalf with a session keypair (Hyperliquid's agent) resolves — provisioning
499
494
  * one if needed — and returns the agent address as `signerAddress`; for
@@ -506,7 +501,7 @@ export interface PerpsProviderPlugin {
506
501
  * credential (Lighter's API key) omit it — core then sends no `signerAddress`
507
502
  * and no injected params.
508
503
  */
509
- resolveActionRequest?(action: ActionType, address: Address, signers: PerpsSigner[]): Promise<ActionSignerContribution>;
504
+ resolveActionRequest?(action: ActionType, address: Address, signer: PerpsSigner): Promise<ActionSignerContribution>;
510
505
  /**
511
506
  * Sign a batch of unsigned {@link ActionStep}s belonging to one
512
507
  * `SigningMethod` arm. Returns the matching {@link SignedActionStep}s in
@@ -519,7 +514,7 @@ export interface PerpsProviderPlugin {
519
514
  * provider has no `signActions`.
520
515
  *
521
516
  * `method` mirrors the descriptor's `signingMethod`. The plugin owns every
522
- * arm, branching on the descriptor's `signers` internally: the EIP712 arm
517
+ * arm, branching on the descriptor's `signer` internally: the EIP712 arm
523
518
  * signs with the user's wallet (read from `ctx.userWallet`) or the provider's
524
519
  * session keypair (Hyperliquid's agent), and `WASM_BLOB` / `EVM_TX` sign with
525
520
  * the provider's local credential (Lighter).
@@ -1 +1 @@
1
- {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../../../src/types/provider.ts"],"names":[],"mappings":"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"}
@@ -1,14 +1,6 @@
1
- import type { ActionType, Asset } from '@lifi/perps-types';
1
+ import type { ActionType, Asset, WithdrawalRoute } from '@lifi/perps-types';
2
2
  import type { Address } from 'viem';
3
- /**
4
- * Which of a venue's two balance routes a withdrawal is drawn from. Lighter's
5
- * own vocabulary, carried in the signed tx as `AssetRouteType` (`perps` = 0,
6
- * `spot` = 1); an account's mode changes what the two balances mean, never
7
- * which route the tx names.
8
- *
9
- * @public
10
- */
11
- export type WithdrawalRoute = 'perps' | 'spot';
3
+ export type { WithdrawalRoute };
12
4
  /**
13
5
  * One withdrawable `(asset, route)` selection as the provider reports it, keyed
14
6
  * by provider-native asset id and awaiting the core asset-metadata join.
@@ -23,10 +15,16 @@ export interface ProviderWithdrawableBalance {
23
15
  available: string;
24
16
  /**
25
17
  * Flat venue fee on a withdrawal from this row, in the asset's own units.
26
- * Absent when the venue publishes no fee for the asset. The client rejects a
27
- * value that is not a non-negative decimal.
18
+ * Absent when the venue publishes no fee for the asset. The client rejects
19
+ * a value that is not a non-negative decimal.
28
20
  */
29
21
  withdrawalFee?: string;
22
+ /**
23
+ * `true` when the venue takes `withdrawalFee` out of the requested amount,
24
+ * `false` when it charges the fee in addition. Set together with
25
+ * `withdrawalFee`; the client drops it from a row without a fee.
26
+ */
27
+ isFeeDeducted?: boolean;
30
28
  }
31
29
  /**
32
30
  * One withdrawable `(asset, route)` selection a caller can act on: the amount
@@ -41,11 +39,22 @@ export interface WithdrawableBalance {
41
39
  /** Withdrawable amount in the asset's own units. */
42
40
  available: string;
43
41
  /**
44
- * Flat venue fee on a withdrawal from this row, in the asset's own units. An
45
- * amount at or below it delivers nothing. Absent when the venue publishes no
46
- * fee for the asset.
42
+ * Flat venue fee on a withdrawal from this row, in the asset's own units.
43
+ * Absent when the venue publishes no fee for the asset. With
44
+ * `isFeeDeducted` `true`, the venue takes the fee out of the requested
45
+ * amount, and an amount at or below the fee delivers nothing. With `false`,
46
+ * the venue charges the fee in addition to the requested amount, so the
47
+ * largest amount the row can fund is `available` minus the fee. That result
48
+ * is zero or negative when the fee is at or above `available`, and the row
49
+ * then funds no withdrawal.
47
50
  */
48
51
  withdrawalFee?: string;
52
+ /**
53
+ * Present only together with `withdrawalFee`. Absent on a row from a
54
+ * provider plugin that does not report it; absence means unknown, not
55
+ * `true`.
56
+ */
57
+ isFeeDeducted?: boolean;
49
58
  }
50
59
  /**
51
60
  * The venue accepts a withdrawal to `destination` now.
@@ -1 +1 @@
1
- {"version":3,"file":"withdrawal.d.ts","sourceRoot":"","sources":["../../../src/types/withdrawal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAA;AAC1D,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC;;;;;;;GAOG;AACH,MAAM,MAAM,eAAe,GAAG,OAAO,GAAG,MAAM,CAAA;AAE9C;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,eAAe,CAAA;IACtB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,eAAe,CAAA;IACtB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;CACvB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,eAAe,CAAA;IACrB,qEAAqE;IACrE,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,yBAAyB,CAAA"}
1
+ {"version":3,"file":"withdrawal.d.ts","sourceRoot":"","sources":["../../../src/types/withdrawal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AAC3E,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAA;AAEnC,YAAY,EAAE,eAAe,EAAE,CAAA;AAE/B;;;;;GAKG;AACH,MAAM,WAAW,2BAA2B;IAC1C,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,eAAe,CAAA;IACtB,8EAA8E;IAC9E,SAAS,EAAE,MAAM,CAAA;IACjB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,KAAK,EAAE,KAAK,CAAA;IACZ,KAAK,EAAE,eAAe,CAAA;IACtB,oDAAoD;IACpD,SAAS,EAAE,MAAM,CAAA;IACjB;;;;;;;;;OASG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;;OAIG;IACH,aAAa,CAAC,EAAE,OAAO,CAAA;CACxB;AAED;;;;GAIG;AACH,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,OAAO,CAAA;IACb,WAAW,EAAE,OAAO,CAAA;CACrB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,eAAe,CAAA;IACrB,qEAAqE;IACrE,KAAK,EAAE,UAAU,EAAE,CAAA;CACpB;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,iBAAiB,GAAG,yBAAyB,CAAA"}
@@ -164,7 +164,7 @@ interface BookWalk {
164
164
  filledNotional: number;
165
165
  /** Volume-weighted average fill price, or 0 when the book is empty. */
166
166
  vwap: number;
167
- /** True when the levels could not absorb the requested notional. */
167
+ /** True when the levels could not absorb the requested notional, and for a non-finite notional. */
168
168
  insufficientLiquidity: boolean;
169
169
  }
170
170
  /**
@@ -173,7 +173,8 @@ interface BookWalk {
173
173
  * in array order — the caller passes asks for a buy and bids for a sell, each
174
174
  * already ordered best-price-first. When the book cannot absorb the full
175
175
  * notional, the walk stops at the last level and flags `insufficientLiquidity`,
176
- * returning the best obtainable fill.
176
+ * returning the best obtainable fill. A non-finite `sizeUsd` gives NaN fill
177
+ * fields with `insufficientLiquidity` set.
177
178
  *
178
179
  * @throws {PerpsError} `ValidationError` when a level's `price` or `size`
179
180
  * does not parse to a finite number.
@@ -1 +1 @@
1
- {"version":3,"file":"calculations.d.ts","sourceRoot":"","sources":["../../../src/utils/calculations.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"calculations.d.ts","sourceRoot":"","sources":["../../../src/utils/calculations.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import Big from 'big.js';
2
+ /**
3
+ * Scoped big.js constructor with 40 decimal places for division, so the
4
+ * shared global `Big.DP` and `Big.RM` stay untouched.
5
+ */
6
+ export declare const DivBig: Big.BigConstructor;
7
+ /** True when every value is a finite number, so `new DivBig(value)` cannot throw. */
8
+ export declare function areFinite(...values: number[]): boolean;
9
+ //# sourceMappingURL=decimal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"decimal.d.ts","sourceRoot":"","sources":["../../../src/utils/decimal.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,QAAQ,CAAA;AAExB;;;GAGG;AACH,eAAO,MAAM,MAAM,oBAAQ,CAAA;AAG3B,qFAAqF;AACrF,wBAAgB,SAAS,CAAC,GAAG,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAEtD"}
@@ -0,0 +1,6 @@
1
+ import type Big from 'big.js';
2
+ /** The larger of two Big values, as `Math.max` for numbers. */
3
+ export declare const maxOf: (a: Big, b: Big) => Big;
4
+ /** The smaller of two Big values, as `Math.min` for numbers. */
5
+ export declare const minOf: (a: Big, b: Big) => Big;
6
+ //# sourceMappingURL=math.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"math.d.ts","sourceRoot":"","sources":["../../../src/utils/math.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,GAAG,MAAM,QAAQ,CAAA;AAE7B,+DAA+D;AAC/D,eAAO,MAAM,KAAK,GAAI,GAAG,GAAG,EAAE,GAAG,GAAG,KAAG,GAAwB,CAAA;AAE/D,gEAAgE;AAChE,eAAO,MAAM,KAAK,GAAI,GAAG,GAAG,EAAE,GAAG,GAAG,KAAG,GAAwB,CAAA"}
@@ -18,4 +18,11 @@
18
18
  * @public
19
19
  */
20
20
  export declare function stringToFloat(value: string): number;
21
+ /**
22
+ * Parse an optional decimal field, with the same formatting tolerance as {@link stringToFloat}.
23
+ * Gives back `undefined` for a missing, malformed or non-finite value, and `0` for an empty string.
24
+ *
25
+ * @public
26
+ */
27
+ export declare function parseDecimal(value: string | null | undefined): number | undefined;
21
28
  //# sourceMappingURL=parse.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/utils/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASnD"}
1
+ {"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../src/utils/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CASnD;AAKD;;;;;GAKG;AACH,wBAAgB,YAAY,CAC1B,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAC/B,MAAM,GAAG,SAAS,CAYpB"}
@@ -37,6 +37,19 @@ export declare function estimateIsolatedLiquidationPrice(params: {
37
37
  isLong: boolean;
38
38
  maintenanceMarginRate: number;
39
39
  }): number | undefined;
40
+ /**
41
+ * Whether an isolated position with this liquidation price is already past
42
+ * liquidation at `currentPrice`: a long liquidates when the price falls to its
43
+ * liquidation level, a short when it rises to it. A non-positive price on
44
+ * either side counts as unknown, so the result is `false`.
45
+ *
46
+ * @public
47
+ */
48
+ export declare function wouldImmediatelyLiquidate(params: {
49
+ liquidationPrice: number;
50
+ currentPrice: number;
51
+ isLong: boolean;
52
+ }): boolean;
40
53
  /**
41
54
  * Predicted average entry price after adding to an existing position.
42
55
  *
@@ -1 +1 @@
1
- {"version":3,"file":"positionMath.d.ts","sourceRoot":"","sources":["../../../src/utils/positionMath.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAErD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE;IACvD,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,qBAAqB,EAAE,MAAM,CAAA;CAC9B,GAAG,MAAM,GAAG,SAAS,CAYrB;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAUrB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAOrB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAGT;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAGT"}
1
+ {"version":3,"file":"positionMath.d.ts","sourceRoot":"","sources":["../../../src/utils/positionMath.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAIH;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,CAErD;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,gCAAgC,CAAC,MAAM,EAAE;IACvD,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;IACf,qBAAqB,EAAE,MAAM,CAAA;CAC9B,GAAG,MAAM,GAAG,SAAS,CAqBrB;AAED;;;;;;;GAOG;AACH,wBAAgB,yBAAyB,CAAC,MAAM,EAAE;IAChD,gBAAgB,EAAE,MAAM,CAAA;IACxB,YAAY,EAAE,MAAM,CAAA;IACpB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,OAAO,CAQV;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,wBAAwB,CAAC,MAAM,EAAE;IAC/C,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAiBrB;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,eAAe,EAAE,MAAM,CAAA;IACvB,aAAa,EAAE,MAAM,CAAA;IACrB,WAAW,EAAE,MAAM,CAAA;IACnB,SAAS,EAAE,MAAM,CAAA;CAClB,GAAG,MAAM,GAAG,SAAS,CAarB;AAED;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAAC,MAAM,EAAE;IAC3C,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,IAAI,EAAE,MAAM,CAAA;IACZ,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAUT;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE;IACzC,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,MAAM,EAAE,OAAO,CAAA;CAChB,GAAG,MAAM,CAUT"}
@@ -1,12 +1,12 @@
1
- import type { ProviderAction } from '@lifi/perps-types';
1
+ import type { ActionType, SetupAction, SetupOption } from '@lifi/perps-types';
2
2
  /**
3
- * Select the `Provider.setup` descriptors a user is responsible for satisfying:
4
- * those whose `signers` include {@link PerpsSigner.USER}. Descriptors the SDK
5
- * signs on its own (no `USER` signer) are held back — `checkSetup` completes
6
- * them inline, so surfacing them would render inert cards the user can't act on.
3
+ * Select the `Provider.setup` descriptors a user sees: every choice step, and
4
+ * every non-choice step signed by {@link PerpsSigner.USER}. A non-choice step
5
+ * the SDK signs on its own is held back — `checkSetup` completes it inline, so
6
+ * surfacing it would render an inert card the user can't act on.
7
7
  *
8
- * Membership is a property of the descriptor's `signers` alone, independent of
9
- * any account. When an account is available, prefer `ProviderSetup.checklist`
8
+ * Membership is a property of the descriptor alone, independent of any
9
+ * account. When an account is available, prefer `ProviderSetup.checklist`
10
10
  * from `checkSetup` for the onboarding list — it applies this filter, omits
11
11
  * not-required conditional steps, and carries each entry's satisfied state.
12
12
  * This function remains the static, account-free projection.
@@ -14,5 +14,14 @@ import type { ProviderAction } from '@lifi/perps-types';
14
14
  * @param setup The provider's `setup` descriptors, in their declared order.
15
15
  * @public
16
16
  */
17
- export declare function selectUserSetupActions(setup: ProviderAction[]): ProviderAction[];
17
+ export declare function selectUserSetupActions(setup: SetupAction[]): SetupAction[];
18
+ /** Whether a setup step is shown to the user rather than drained silently. */
19
+ export declare function isUserFacingSetupStep(descriptor: SetupAction): boolean;
20
+ /**
21
+ * Narrow a setup option to the action it executes, so its bound `params` read
22
+ * with that action's param shape.
23
+ *
24
+ * @public
25
+ */
26
+ export declare function isSetupOptionFor<T extends ActionType>(option: SetupOption, type: T): option is SetupOption<T>;
18
27
  //# sourceMappingURL=setupActions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"setupActions.d.ts","sourceRoot":"","sources":["../../../src/utils/setupActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAGvD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CACpC,KAAK,EAAE,cAAc,EAAE,GACtB,cAAc,EAAE,CAIlB"}
1
+ {"version":3,"file":"setupActions.d.ts","sourceRoot":"","sources":["../../../src/utils/setupActions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,WAAW,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAA;AAG7E;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,WAAW,EAAE,CAE1E;AAED,8EAA8E;AAC9E,wBAAgB,qBAAqB,CAAC,UAAU,EAAE,WAAW,GAAG,OAAO,CAEtE;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,CAAC,SAAS,UAAU,EACnD,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,CAAC,GACN,MAAM,IAAI,WAAW,CAAC,CAAC,CAAC,CAE1B"}
@@ -9,5 +9,5 @@ export declare const name = "@lifi/perps-sdk";
9
9
  *
10
10
  * @public
11
11
  */
12
- export declare const version = "18.1.0";
12
+ export declare const version = "20.0.0";
13
13
  //# sourceMappingURL=version.d.ts.map
@@ -11,13 +11,6 @@ export interface WsProviderFactoryParams {
11
11
  provider: string;
12
12
  /** WS URL discovered from `/providers`. */
13
13
  wsUrl: string;
14
- /**
15
- * Markets visible to this provider via `/providers`, optionally filtered
16
- * by the consumer's `createPerpsClient({ providers: { [key]: { markets } } })`
17
- * config. Each provider interprets these its own way — Hyperliquid uses
18
- * them to decide which sub-DEXes to subscribe to; Lighter ignores them.
19
- */
20
- markets: string[];
21
14
  /**
22
15
  * The SDK client. WS providers use it to call core services (e.g.
23
16
  * `getAssets` to source the wire-id ↔ display-symbol map) without
@@ -1 +1 @@
1
- {"version":3,"file":"PerpsWsClient.d.ts","sourceRoot":"","sources":["../../../src/websocket/PerpsWsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzE,OAAO,KAAK,EACV,oBAAoB,EAEpB,UAAU,EACV,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb;;;;;OAKG;IACH,OAAO,EAAE,MAAM,EAAE,CAAA;IACjB;;;;OAIG;IACH,MAAM,EAAE,cAAc,CAAA;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE,uBAAuB,GAAG,UAAU,CAAA;IAC7C,gEAAgE;IAChE,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAA;CAC1C;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;CAChD;AAED;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,EAAE,cAAc,EAAE,OAAO,GAAE,oBAAyB;IAKtE;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIzC;;;;;;OAMG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAMlD;;;;;;;;;;;;OAYG;IACG,SAAS,CAAC,CAAC,SAAS,YAAY,EACpC,GAAG,EAAE,CAAC,EACN,QAAQ,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,EAClD,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,IAAI,CAAC;IAOtB;;;;;;;;;;OAUG;IACG,cAAc,CAClB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC;IAatB;;;;;;;OAOG;IACH,KAAK;IASL;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIjC,OAAO,CAAC,UAAU;YASJ,mBAAmB;YAqBnB,YAAY;CAsC3B"}
1
+ {"version":3,"file":"PerpsWsClient.d.ts","sourceRoot":"","sources":["../../../src/websocket/PerpsWsClient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,YAAY,EAAE,MAAM,mBAAmB,CAAA;AAGrE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAA;AAC7D,OAAO,KAAK,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEzE,OAAO,KAAK,EACV,oBAAoB,EAEpB,UAAU,EACV,gBAAgB,EACjB,MAAM,YAAY,CAAA;AAEnB;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,CAAA;IAChB,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAA;IACb;;;;OAIG;IACH,MAAM,EAAE,cAAc,CAAA;CACvB;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,CAAC,MAAM,EAAE,uBAAuB,GAAG,UAAU,CAAA;IAC7C,gEAAgE;IAChE,QAAQ,CAAC,cAAc,EAAE,OAAO,CAAA;IAChC,0EAA0E;IAC1E,QAAQ,CAAC,uBAAuB,EAAE,OAAO,CAAA;CAC1C;AAED;;;;GAIG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAA;CAChD;AAED;;;;;GAKG;AACH,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAgB;IACvC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAsB;IAC9C,OAAO,CAAC,SAAS,CAAgC;IACjD,OAAO,CAAC,YAAY,CAAyC;IAC7D,OAAO,CAAC,MAAM,CAAQ;gBAEV,MAAM,EAAE,cAAc,EAAE,OAAO,GAAE,oBAAyB;IAKtE;;;;;;;OAOG;IACH,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAIzC;;;;;;OAMG;IACH,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO;IAMlD;;;;;;;;;;;;OAYG;IACG,SAAS,CAAC,CAAC,SAAS,YAAY,EACpC,GAAG,EAAE,CAAC,EACN,QAAQ,EAAE,CAAC,KAAK,EAAE,oBAAoB,CAAC,CAAC,CAAC,KAAK,IAAI,EAClD,QAAQ,CAAC,EAAE,gBAAgB,GAC1B,OAAO,CAAC,MAAM,IAAI,CAAC;IAOtB;;;;;;;;;;OAUG;IACG,cAAc,CAClB,MAAM,EAAE,cAAc,EACtB,OAAO,EAAE,aAAa,GACrB,OAAO,CAAC,MAAM,IAAI,CAAC;IAatB;;;;;;;OAOG;IACH,KAAK;IASL;;;;;OAKG;IACH,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAIjC,OAAO,CAAC,UAAU;YASJ,mBAAmB;YAqBnB,YAAY;CA0B3B"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lifi/perps-sdk",
3
- "version": "18.1.0",
3
+ "version": "20.0.0",
4
4
  "description": "LI.FI Perps SDK for perpetuals trading",
5
5
  "homepage": "https://github.com/lifinance/perps-sdk",
6
6
  "bugs": {
@@ -46,7 +46,7 @@
46
46
  "big.js": "^7.0.1",
47
47
  "partysocket": "^1.1.19",
48
48
  "viem": "^2.55.18",
49
- "@lifi/perps-types": "^16.2.0"
49
+ "@lifi/perps-types": "^18.0.0"
50
50
  },
51
51
  "publishConfig": {
52
52
  "access": "public"