@lifi/perps-sdk 0.2.0-alpha.0 → 1.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +21 -47
- package/dist/cjs/client/PerpsClient.d.ts +27 -48
- package/dist/cjs/client/PerpsClient.d.ts.map +1 -1
- package/dist/cjs/client/PerpsClient.js +119 -578
- package/dist/cjs/client/PerpsClient.js.map +1 -1
- package/dist/cjs/client/bindProvider.d.ts +3 -0
- package/dist/cjs/client/bindProvider.d.ts.map +1 -0
- package/dist/cjs/client/bindProvider.js +9 -0
- package/dist/cjs/client/bindProvider.js.map +1 -0
- package/dist/cjs/client/createPerpsClient.d.ts +7 -38
- package/dist/cjs/client/createPerpsClient.d.ts.map +1 -1
- package/dist/cjs/client/createPerpsClient.js +25 -8
- package/dist/cjs/client/createPerpsClient.js.map +1 -1
- package/dist/cjs/client/requireProvider.d.ts +3 -0
- package/dist/cjs/client/requireProvider.d.ts.map +1 -0
- package/dist/cjs/client/requireProvider.js +16 -0
- package/dist/cjs/client/requireProvider.js.map +1 -0
- package/dist/cjs/errors/PerpsError.d.ts.map +1 -1
- package/dist/cjs/errors/PerpsError.js.map +1 -1
- package/dist/cjs/errors/constants.d.ts +2 -2
- package/dist/cjs/errors/constants.d.ts.map +1 -1
- package/dist/cjs/errors/constants.js +2 -2
- package/dist/cjs/errors/constants.js.map +1 -1
- package/dist/cjs/index.d.ts +41 -23
- package/dist/cjs/index.d.ts.map +1 -1
- package/dist/cjs/index.js +73 -41
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/registry/assetRegistry.d.ts +11 -0
- package/dist/cjs/registry/assetRegistry.d.ts.map +1 -0
- package/dist/cjs/registry/assetRegistry.js +39 -0
- package/dist/cjs/registry/assetRegistry.js.map +1 -0
- package/dist/cjs/registry/marketRegistry.d.ts +13 -0
- package/dist/cjs/registry/marketRegistry.d.ts.map +1 -0
- package/dist/cjs/registry/marketRegistry.js +58 -0
- package/dist/cjs/registry/marketRegistry.js.map +1 -0
- package/dist/cjs/registry/referenceDataRegistry.d.ts +20 -0
- package/dist/cjs/registry/referenceDataRegistry.d.ts.map +1 -0
- package/dist/cjs/registry/referenceDataRegistry.js +59 -0
- package/dist/cjs/registry/referenceDataRegistry.js.map +1 -0
- package/dist/cjs/services/createAction.d.ts +4 -2
- package/dist/cjs/services/createAction.d.ts.map +1 -1
- package/dist/cjs/services/createAction.js +1 -1
- package/dist/cjs/services/createAction.js.map +1 -1
- package/dist/cjs/services/executeAction.d.ts +4 -2
- package/dist/cjs/services/executeAction.d.ts.map +1 -1
- package/dist/cjs/services/executeAction.js +2 -1
- package/dist/cjs/services/executeAction.js.map +1 -1
- package/dist/cjs/services/getAccount.d.ts +4 -2
- package/dist/cjs/services/getAccount.d.ts.map +1 -1
- package/dist/cjs/services/getAccount.js +2 -6
- package/dist/cjs/services/getAccount.js.map +1 -1
- package/dist/cjs/services/getActivity.d.ts +4 -2
- package/dist/cjs/services/getActivity.d.ts.map +1 -1
- package/dist/cjs/services/getActivity.js +4 -10
- package/dist/cjs/services/getActivity.js.map +1 -1
- package/dist/cjs/services/getAssets.d.ts +2 -1
- package/dist/cjs/services/getAssets.d.ts.map +1 -1
- package/dist/cjs/services/getAssets.js +1 -1
- package/dist/cjs/services/getAssets.js.map +1 -1
- package/dist/cjs/services/getFills.d.ts +4 -2
- package/dist/cjs/services/getFills.d.ts.map +1 -1
- package/dist/cjs/services/getFills.js +3 -5
- package/dist/cjs/services/getFills.js.map +1 -1
- package/dist/cjs/services/getMarket.d.ts +9 -0
- package/dist/cjs/services/getMarket.d.ts.map +1 -0
- package/dist/cjs/services/getMarket.js +13 -0
- package/dist/cjs/services/getMarket.js.map +1 -0
- package/dist/cjs/services/getMarkets.d.ts +9 -0
- package/dist/cjs/services/getMarkets.d.ts.map +1 -0
- package/dist/cjs/services/{getAsset.js → getMarkets.js} +6 -5
- package/dist/cjs/services/getMarkets.js.map +1 -0
- package/dist/cjs/services/getMeta.d.ts +5 -0
- package/dist/cjs/services/getMeta.d.ts.map +1 -0
- package/dist/cjs/services/getMeta.js +8 -0
- package/dist/cjs/services/getMeta.js.map +1 -0
- package/dist/cjs/services/getOhlcv.d.ts +3 -2
- package/dist/cjs/services/getOhlcv.d.ts.map +1 -1
- package/dist/cjs/services/getOhlcv.js +3 -2
- package/dist/cjs/services/getOhlcv.js.map +1 -1
- package/dist/cjs/services/getOrder.d.ts +4 -2
- package/dist/cjs/services/getOrder.d.ts.map +1 -1
- package/dist/cjs/services/getOrder.js +2 -6
- package/dist/cjs/services/getOrder.js.map +1 -1
- package/dist/cjs/services/getOrderbook.d.ts +3 -2
- package/dist/cjs/services/getOrderbook.d.ts.map +1 -1
- package/dist/cjs/services/getOrderbook.js +3 -2
- package/dist/cjs/services/getOrderbook.js.map +1 -1
- package/dist/cjs/services/getOrders.d.ts +5 -3
- package/dist/cjs/services/getOrders.d.ts.map +1 -1
- package/dist/cjs/services/getOrders.js +6 -8
- package/dist/cjs/services/getOrders.js.map +1 -1
- package/dist/cjs/services/getPositions.d.ts +5 -3
- package/dist/cjs/services/getPositions.d.ts.map +1 -1
- package/dist/cjs/services/getPositions.js +6 -8
- package/dist/cjs/services/getPositions.js.map +1 -1
- package/dist/cjs/services/getPrices.d.ts +3 -2
- package/dist/cjs/services/getPrices.d.ts.map +1 -1
- package/dist/cjs/services/getPrices.js +2 -2
- package/dist/cjs/services/getPrices.js.map +1 -1
- package/dist/cjs/services/getProviders.d.ts +2 -1
- package/dist/cjs/services/getProviders.d.ts.map +1 -1
- package/dist/cjs/services/getProviders.js +1 -1
- package/dist/cjs/services/getProviders.js.map +1 -1
- package/dist/cjs/services/getQuote.d.ts +12 -0
- package/dist/cjs/services/getQuote.d.ts.map +1 -0
- package/dist/cjs/services/getQuote.js +13 -0
- package/dist/cjs/services/getQuote.js.map +1 -0
- package/dist/cjs/services/getTermsAcceptance.d.ts +6 -0
- package/dist/cjs/services/getTermsAcceptance.d.ts.map +1 -0
- package/dist/cjs/services/getTermsAcceptance.js +9 -0
- package/dist/cjs/services/getTermsAcceptance.js.map +1 -0
- package/dist/cjs/services/resolveQuote.d.ts +7 -0
- package/dist/cjs/services/resolveQuote.d.ts.map +1 -0
- package/dist/cjs/services/resolveQuote.js +50 -0
- package/dist/cjs/services/resolveQuote.js.map +1 -0
- package/dist/cjs/services/resolveSubscribeQuote.d.ts +6 -0
- package/dist/cjs/services/resolveSubscribeQuote.d.ts.map +1 -0
- package/dist/cjs/services/resolveSubscribeQuote.js +65 -0
- package/dist/cjs/services/resolveSubscribeQuote.js.map +1 -0
- package/dist/cjs/storage/parseStoredRecord.d.ts +4 -0
- package/dist/cjs/storage/parseStoredRecord.d.ts.map +1 -0
- package/dist/cjs/storage/parseStoredRecord.js +26 -0
- package/dist/cjs/storage/parseStoredRecord.js.map +1 -0
- package/dist/cjs/storage/storage.d.ts.map +1 -0
- package/dist/cjs/storage/storage.js.map +1 -0
- package/dist/cjs/{agent → storage}/types.d.ts +0 -5
- package/dist/cjs/storage/types.d.ts.map +1 -0
- package/dist/cjs/{agent → storage}/types.js.map +1 -1
- package/dist/cjs/transport/fetchWithRetry.d.ts +8 -0
- package/dist/cjs/transport/fetchWithRetry.d.ts.map +1 -0
- package/dist/cjs/transport/fetchWithRetry.js +81 -0
- package/dist/cjs/transport/fetchWithRetry.js.map +1 -0
- package/dist/cjs/{utils → transport}/request.d.ts +3 -2
- package/dist/cjs/transport/request.d.ts.map +1 -0
- package/dist/cjs/{utils → transport}/request.js +14 -14
- package/dist/cjs/transport/request.js.map +1 -0
- package/dist/cjs/transport/retryPolicy.d.ts +37 -0
- package/dist/cjs/transport/retryPolicy.d.ts.map +1 -0
- package/dist/cjs/transport/retryPolicy.js +79 -0
- package/dist/cjs/transport/retryPolicy.js.map +1 -0
- package/dist/cjs/types/api.d.ts +85 -0
- package/dist/cjs/types/api.d.ts.map +1 -0
- package/dist/cjs/{realtime/lighter/types.js → types/api.js} +1 -1
- package/dist/cjs/types/api.js.map +1 -0
- package/dist/cjs/types/config.d.ts +26 -0
- package/dist/cjs/types/config.d.ts.map +1 -0
- package/dist/cjs/{realtime/types.js → types/config.js} +1 -1
- package/dist/cjs/types/config.js.map +1 -0
- package/dist/cjs/types/provider.d.ts +84 -0
- package/dist/cjs/types/provider.d.ts.map +1 -0
- package/dist/cjs/types/provider.js +3 -0
- package/dist/cjs/types/provider.js.map +1 -0
- package/dist/cjs/utils/accountSummary.d.ts +2 -8
- package/dist/cjs/utils/accountSummary.d.ts.map +1 -1
- package/dist/cjs/utils/accountSummary.js +12 -70
- package/dist/cjs/utils/accountSummary.js.map +1 -1
- package/dist/cjs/utils/assertNever.d.ts.map +1 -1
- package/dist/cjs/utils/assertNever.js.map +1 -1
- package/dist/cjs/utils/calculations.d.ts +36 -0
- package/dist/cjs/utils/calculations.d.ts.map +1 -1
- package/dist/cjs/utils/calculations.js +77 -0
- package/dist/cjs/utils/calculations.js.map +1 -1
- package/dist/cjs/utils/depositChain.d.ts +6 -0
- package/dist/cjs/utils/depositChain.d.ts.map +1 -0
- package/dist/cjs/utils/depositChain.js +13 -0
- package/dist/cjs/utils/depositChain.js.map +1 -0
- package/dist/cjs/utils/explorer.d.ts +9 -0
- package/dist/cjs/utils/explorer.d.ts.map +1 -0
- package/dist/cjs/utils/explorer.js +23 -0
- package/dist/cjs/utils/explorer.js.map +1 -0
- package/dist/cjs/utils/fillClassification.d.ts +3 -0
- package/dist/cjs/utils/fillClassification.d.ts.map +1 -0
- package/dist/cjs/utils/fillClassification.js +37 -0
- package/dist/cjs/utils/fillClassification.js.map +1 -0
- package/dist/cjs/utils/format.d.ts +13 -0
- package/dist/cjs/utils/format.d.ts.map +1 -0
- package/dist/cjs/utils/format.js +117 -0
- package/dist/cjs/utils/format.js.map +1 -0
- package/dist/cjs/utils/orderClassification.d.ts +3 -1
- package/dist/cjs/utils/orderClassification.d.ts.map +1 -1
- package/dist/cjs/utils/orderClassification.js +11 -1
- package/dist/cjs/utils/orderClassification.js.map +1 -1
- package/dist/cjs/utils/orderMath.d.ts +1 -1
- package/dist/cjs/utils/orderMath.d.ts.map +1 -1
- package/dist/cjs/utils/orderMath.js +2 -2
- package/dist/cjs/utils/orderMath.js.map +1 -1
- package/dist/cjs/utils/parse.d.ts.map +1 -1
- package/dist/cjs/utils/parse.js.map +1 -1
- package/dist/cjs/utils/positionMath.d.ts +6 -0
- package/dist/cjs/utils/positionMath.d.ts.map +1 -1
- package/dist/cjs/utils/positionMath.js +14 -0
- package/dist/cjs/utils/positionMath.js.map +1 -1
- package/dist/cjs/utils/signTypedData.d.ts +3 -3
- package/dist/cjs/utils/signTypedData.d.ts.map +1 -1
- package/dist/cjs/utils/signTypedData.js +3 -2
- package/dist/cjs/utils/signTypedData.js.map +1 -1
- package/dist/cjs/utils/sleep.d.ts.map +1 -1
- package/dist/cjs/utils/sleep.js.map +1 -1
- package/dist/cjs/utils/units.d.ts.map +1 -1
- package/dist/cjs/utils/units.js.map +1 -1
- package/dist/cjs/utils/validation.d.ts.map +1 -1
- package/dist/cjs/utils/validation.js.map +1 -1
- package/dist/cjs/version.d.ts +1 -1
- package/dist/cjs/version.d.ts.map +1 -1
- package/dist/cjs/version.js +1 -1
- package/dist/cjs/version.js.map +1 -1
- package/dist/cjs/websocket/PerpsWsClient.d.ts +27 -0
- package/dist/cjs/websocket/PerpsWsClient.d.ts.map +1 -0
- package/dist/cjs/websocket/PerpsWsClient.js +84 -0
- package/dist/cjs/websocket/PerpsWsClient.js.map +1 -0
- package/dist/{types/realtime → cjs/websocket}/ReconnectingWebSocket.d.ts +23 -7
- package/dist/cjs/websocket/ReconnectingWebSocket.d.ts.map +1 -0
- package/dist/cjs/websocket/ReconnectingWebSocket.js +213 -0
- package/dist/cjs/websocket/ReconnectingWebSocket.js.map +1 -0
- package/dist/cjs/websocket/WsProviderBase.d.ts +31 -0
- package/dist/cjs/websocket/WsProviderBase.d.ts.map +1 -0
- package/dist/cjs/websocket/WsProviderBase.js +197 -0
- package/dist/cjs/websocket/WsProviderBase.js.map +1 -0
- package/dist/cjs/websocket/cachePromise.d.ts +2 -0
- package/dist/cjs/websocket/cachePromise.d.ts.map +1 -0
- package/dist/cjs/websocket/cachePromise.js +18 -0
- package/dist/cjs/websocket/cachePromise.js.map +1 -0
- package/dist/cjs/websocket/types.d.ts +15 -0
- package/dist/cjs/websocket/types.d.ts.map +1 -0
- package/dist/cjs/{realtime → websocket}/types.js.map +1 -1
- package/dist/cjs/websocket/wsLog.d.ts +10 -0
- package/dist/cjs/websocket/wsLog.d.ts.map +1 -0
- package/dist/cjs/websocket/wsLog.js +31 -0
- package/dist/cjs/websocket/wsLog.js.map +1 -0
- package/dist/esm/client/PerpsClient.d.ts +200 -195
- package/dist/esm/client/PerpsClient.d.ts.map +1 -1
- package/dist/esm/client/PerpsClient.js +305 -794
- package/dist/esm/client/PerpsClient.js.map +1 -1
- package/dist/esm/client/bindProvider.d.ts +13 -0
- package/dist/esm/client/bindProvider.d.ts.map +1 -0
- package/dist/esm/client/bindProvider.js +16 -0
- package/dist/esm/client/bindProvider.js.map +1 -0
- package/dist/esm/client/createPerpsClient.d.ts +34 -53
- package/dist/esm/client/createPerpsClient.d.ts.map +1 -1
- package/dist/esm/client/createPerpsClient.js +51 -8
- package/dist/esm/client/createPerpsClient.js.map +1 -1
- package/dist/esm/client/requireProvider.d.ts +12 -0
- package/dist/esm/client/requireProvider.d.ts.map +1 -0
- package/dist/esm/client/requireProvider.js +22 -0
- package/dist/esm/client/requireProvider.js.map +1 -0
- package/dist/esm/errors/PerpsError.d.ts +8 -0
- package/dist/esm/errors/PerpsError.d.ts.map +1 -1
- package/dist/esm/errors/PerpsError.js +8 -0
- package/dist/esm/errors/PerpsError.js.map +1 -1
- package/dist/esm/errors/constants.d.ts +8 -2
- package/dist/esm/errors/constants.d.ts.map +1 -1
- package/dist/esm/errors/constants.js +8 -2
- package/dist/esm/errors/constants.js.map +1 -1
- package/dist/esm/index.d.ts +49 -23
- package/dist/esm/index.d.ts.map +1 -1
- package/dist/esm/index.js +38 -23
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/registry/assetRegistry.d.ts +25 -0
- package/dist/esm/registry/assetRegistry.d.ts.map +1 -0
- package/dist/esm/registry/assetRegistry.js +48 -0
- package/dist/esm/registry/assetRegistry.js.map +1 -0
- package/dist/esm/registry/marketRegistry.d.ts +42 -0
- package/dist/esm/registry/marketRegistry.d.ts.map +1 -0
- package/dist/esm/registry/marketRegistry.js +81 -0
- package/dist/esm/registry/marketRegistry.js.map +1 -0
- package/dist/esm/registry/referenceDataRegistry.d.ts +44 -0
- package/dist/esm/registry/referenceDataRegistry.d.ts.map +1 -0
- package/dist/esm/registry/referenceDataRegistry.js +79 -0
- package/dist/esm/registry/referenceDataRegistry.js.map +1 -0
- package/dist/esm/services/createAction.d.ts +17 -2
- package/dist/esm/services/createAction.d.ts.map +1 -1
- package/dist/esm/services/createAction.js +9 -1
- package/dist/esm/services/createAction.js.map +1 -1
- package/dist/esm/services/executeAction.d.ts +17 -2
- package/dist/esm/services/executeAction.d.ts.map +1 -1
- package/dist/esm/services/executeAction.js +13 -1
- package/dist/esm/services/executeAction.js.map +1 -1
- package/dist/esm/services/getAccount.d.ts +19 -16
- package/dist/esm/services/getAccount.d.ts.map +1 -1
- package/dist/esm/services/getAccount.js +12 -18
- package/dist/esm/services/getAccount.js.map +1 -1
- package/dist/esm/services/getActivity.d.ts +15 -25
- package/dist/esm/services/getActivity.d.ts.map +1 -1
- package/dist/esm/services/getActivity.js +10 -28
- package/dist/esm/services/getActivity.js.map +1 -1
- package/dist/esm/services/getAssets.d.ts +14 -5
- package/dist/esm/services/getAssets.d.ts.map +1 -1
- package/dist/esm/services/getAssets.js +8 -4
- package/dist/esm/services/getAssets.js.map +1 -1
- package/dist/esm/services/getFills.d.ts +18 -29
- package/dist/esm/services/getFills.d.ts.map +1 -1
- package/dist/esm/services/getFills.js +10 -26
- package/dist/esm/services/getFills.js.map +1 -1
- package/dist/esm/services/getMarket.d.ts +34 -0
- package/dist/esm/services/getMarket.d.ts.map +1 -0
- package/dist/esm/services/getMarket.js +25 -0
- package/dist/esm/services/getMarket.js.map +1 -0
- package/dist/esm/services/getMarkets.d.ts +28 -0
- package/dist/esm/services/getMarkets.d.ts.map +1 -0
- package/dist/esm/services/getMarkets.js +22 -0
- package/dist/esm/services/getMarkets.js.map +1 -0
- package/dist/esm/services/getMeta.d.ts +19 -0
- package/dist/esm/services/getMeta.d.ts.map +1 -0
- package/dist/esm/services/getMeta.js +19 -0
- package/dist/esm/services/getMeta.js.map +1 -0
- package/dist/esm/services/getOhlcv.d.ts +15 -19
- package/dist/esm/services/getOhlcv.d.ts.map +1 -1
- package/dist/esm/services/getOhlcv.js +7 -13
- package/dist/esm/services/getOhlcv.js.map +1 -1
- package/dist/esm/services/getOrder.d.ts +16 -16
- package/dist/esm/services/getOrder.d.ts.map +1 -1
- package/dist/esm/services/getOrder.js +9 -17
- package/dist/esm/services/getOrder.js.map +1 -1
- package/dist/esm/services/getOrderbook.d.ts +13 -23
- package/dist/esm/services/getOrderbook.d.ts.map +1 -1
- package/dist/esm/services/getOrderbook.js +7 -21
- package/dist/esm/services/getOrderbook.js.map +1 -1
- package/dist/esm/services/getOrders.d.ts +17 -9
- package/dist/esm/services/getOrders.d.ts.map +1 -1
- package/dist/esm/services/getOrders.js +12 -9
- package/dist/esm/services/getOrders.js.map +1 -1
- package/dist/esm/services/getPositions.d.ts +17 -9
- package/dist/esm/services/getPositions.d.ts.map +1 -1
- package/dist/esm/services/getPositions.js +12 -9
- package/dist/esm/services/getPositions.js.map +1 -1
- package/dist/esm/services/getPrices.d.ts +12 -24
- package/dist/esm/services/getPrices.d.ts.map +1 -1
- package/dist/esm/services/getPrices.js +5 -22
- package/dist/esm/services/getPrices.js.map +1 -1
- package/dist/esm/services/getProviders.d.ts +3 -3
- package/dist/esm/services/getProviders.d.ts.map +1 -1
- package/dist/esm/services/getProviders.js +2 -3
- package/dist/esm/services/getProviders.js.map +1 -1
- package/dist/esm/services/getQuote.d.ts +42 -0
- package/dist/esm/services/getQuote.d.ts.map +1 -0
- package/dist/esm/services/getQuote.js +33 -0
- package/dist/esm/services/getQuote.js.map +1 -0
- package/dist/esm/services/getTermsAcceptance.d.ts +24 -0
- package/dist/esm/services/getTermsAcceptance.d.ts.map +1 -0
- package/dist/esm/services/getTermsAcceptance.js +24 -0
- package/dist/esm/services/getTermsAcceptance.js.map +1 -0
- package/dist/esm/services/resolveQuote.d.ts +36 -0
- package/dist/esm/services/resolveQuote.d.ts.map +1 -0
- package/dist/esm/services/resolveQuote.js +74 -0
- package/dist/esm/services/resolveQuote.js.map +1 -0
- package/dist/esm/services/resolveSubscribeQuote.d.ts +31 -0
- package/dist/esm/services/resolveSubscribeQuote.d.ts.map +1 -0
- package/dist/esm/services/resolveSubscribeQuote.js +86 -0
- package/dist/esm/services/resolveSubscribeQuote.js.map +1 -0
- package/dist/esm/storage/parseStoredRecord.d.ts +29 -0
- package/dist/esm/storage/parseStoredRecord.d.ts.map +1 -0
- package/dist/esm/storage/parseStoredRecord.js +47 -0
- package/dist/esm/storage/parseStoredRecord.js.map +1 -0
- package/dist/{types/agent → esm/storage}/storage.d.ts +6 -3
- package/dist/esm/storage/storage.d.ts.map +1 -0
- package/dist/esm/{agent → storage}/storage.js +6 -4
- package/dist/esm/storage/storage.js.map +1 -0
- package/dist/esm/storage/types.d.ts +14 -0
- package/dist/esm/storage/types.d.ts.map +1 -0
- package/dist/esm/{agent → storage}/types.js.map +1 -1
- package/dist/esm/transport/fetchWithRetry.d.ts +22 -0
- package/dist/esm/transport/fetchWithRetry.d.ts.map +1 -0
- package/dist/esm/transport/fetchWithRetry.js +87 -0
- package/dist/esm/transport/fetchWithRetry.js.map +1 -0
- package/dist/esm/transport/request.d.ts +25 -0
- package/dist/esm/transport/request.d.ts.map +1 -0
- package/dist/esm/{utils → transport}/request.js +19 -31
- package/dist/esm/transport/request.js.map +1 -0
- package/dist/esm/transport/retryPolicy.d.ts +106 -0
- package/dist/esm/transport/retryPolicy.d.ts.map +1 -0
- package/dist/esm/transport/retryPolicy.js +99 -0
- package/dist/esm/transport/retryPolicy.js.map +1 -0
- package/dist/esm/types/api.d.ts +214 -0
- package/dist/esm/types/api.d.ts.map +1 -0
- package/dist/esm/types/api.js +2 -0
- package/dist/esm/types/api.js.map +1 -0
- package/dist/esm/types/config.d.ts +70 -0
- package/dist/esm/types/config.d.ts.map +1 -0
- package/dist/esm/types/config.js +2 -0
- package/dist/esm/types/config.js.map +1 -0
- package/dist/esm/types/provider.d.ts +330 -0
- package/dist/esm/types/provider.d.ts.map +1 -0
- package/dist/esm/types/provider.js +2 -0
- package/dist/esm/types/provider.js.map +1 -0
- package/dist/esm/utils/accountSummary.d.ts +12 -12
- package/dist/esm/utils/accountSummary.d.ts.map +1 -1
- package/dist/esm/utils/accountSummary.js +18 -83
- package/dist/esm/utils/accountSummary.js.map +1 -1
- package/dist/esm/utils/assertNever.d.ts +1 -0
- package/dist/esm/utils/assertNever.d.ts.map +1 -1
- package/dist/esm/utils/assertNever.js +1 -0
- package/dist/esm/utils/assertNever.js.map +1 -1
- package/dist/esm/utils/calculations.d.ts +116 -0
- package/dist/esm/utils/calculations.d.ts.map +1 -1
- package/dist/esm/utils/calculations.js +140 -3
- package/dist/esm/utils/calculations.js.map +1 -1
- package/dist/esm/utils/depositChain.d.ts +25 -0
- package/dist/esm/utils/depositChain.d.ts.map +1 -0
- package/dist/esm/utils/depositChain.js +23 -0
- package/dist/esm/utils/depositChain.js.map +1 -0
- package/dist/esm/utils/explorer.d.ts +33 -0
- package/dist/esm/utils/explorer.d.ts.map +1 -0
- package/dist/esm/utils/explorer.js +38 -0
- package/dist/esm/utils/explorer.js.map +1 -0
- package/dist/esm/utils/fillClassification.d.ts +13 -0
- package/dist/esm/utils/fillClassification.d.ts.map +1 -0
- package/dist/esm/utils/fillClassification.js +44 -0
- package/dist/esm/utils/fillClassification.js.map +1 -0
- package/dist/esm/utils/format.d.ts +66 -0
- package/dist/esm/utils/format.d.ts.map +1 -0
- package/dist/esm/utils/format.js +171 -0
- package/dist/esm/utils/format.js.map +1 -0
- package/dist/esm/utils/orderClassification.d.ts +19 -1
- package/dist/esm/utils/orderClassification.d.ts.map +1 -1
- package/dist/esm/utils/orderClassification.js +26 -1
- package/dist/esm/utils/orderClassification.js.map +1 -1
- package/dist/esm/utils/orderMath.d.ts +8 -4
- package/dist/esm/utils/orderMath.d.ts.map +1 -1
- package/dist/esm/utils/orderMath.js +9 -5
- package/dist/esm/utils/orderMath.js.map +1 -1
- package/dist/esm/utils/parse.d.ts +8 -5
- package/dist/esm/utils/parse.d.ts.map +1 -1
- package/dist/esm/utils/parse.js +8 -6
- package/dist/esm/utils/parse.js.map +1 -1
- package/dist/esm/utils/positionMath.d.ts +29 -0
- package/dist/esm/utils/positionMath.d.ts.map +1 -1
- package/dist/esm/utils/positionMath.js +36 -0
- package/dist/esm/utils/positionMath.js.map +1 -1
- package/dist/esm/utils/signTypedData.d.ts +9 -4
- package/dist/esm/utils/signTypedData.d.ts.map +1 -1
- package/dist/esm/utils/signTypedData.js +9 -3
- package/dist/esm/utils/signTypedData.js.map +1 -1
- package/dist/esm/utils/sleep.d.ts +5 -0
- package/dist/esm/utils/sleep.d.ts.map +1 -1
- package/dist/esm/utils/sleep.js +5 -0
- package/dist/esm/utils/sleep.js.map +1 -1
- package/dist/esm/utils/units.d.ts +8 -1
- package/dist/esm/utils/units.d.ts.map +1 -1
- package/dist/esm/utils/units.js +8 -1
- package/dist/esm/utils/units.js.map +1 -1
- package/dist/esm/utils/validation.d.ts +4 -1
- package/dist/esm/utils/validation.d.ts.map +1 -1
- package/dist/esm/utils/validation.js +4 -1
- package/dist/esm/utils/validation.js.map +1 -1
- package/dist/esm/version.d.ts +1 -1
- package/dist/esm/version.d.ts.map +1 -1
- package/dist/esm/version.js +1 -1
- package/dist/esm/version.js.map +1 -1
- package/dist/esm/websocket/PerpsWsClient.d.ts +100 -0
- package/dist/esm/websocket/PerpsWsClient.d.ts.map +1 -0
- package/dist/esm/websocket/PerpsWsClient.js +121 -0
- package/dist/esm/websocket/PerpsWsClient.js.map +1 -0
- package/dist/esm/websocket/ReconnectingWebSocket.d.ts +130 -0
- package/dist/esm/websocket/ReconnectingWebSocket.d.ts.map +1 -0
- package/dist/esm/websocket/ReconnectingWebSocket.js +288 -0
- package/dist/esm/websocket/ReconnectingWebSocket.js.map +1 -0
- package/dist/esm/websocket/WsProviderBase.d.ts +89 -0
- package/dist/esm/websocket/WsProviderBase.d.ts.map +1 -0
- package/dist/esm/websocket/WsProviderBase.js +246 -0
- package/dist/esm/websocket/WsProviderBase.js.map +1 -0
- package/dist/esm/websocket/cachePromise.d.ts +14 -0
- package/dist/esm/websocket/cachePromise.d.ts.map +1 -0
- package/dist/esm/websocket/cachePromise.js +27 -0
- package/dist/esm/websocket/cachePromise.js.map +1 -0
- package/dist/esm/websocket/types.d.ts +60 -0
- package/dist/esm/websocket/types.d.ts.map +1 -0
- package/dist/esm/{realtime → websocket}/types.js.map +1 -1
- package/dist/esm/websocket/wsLog.d.ts +50 -0
- package/dist/esm/websocket/wsLog.d.ts.map +1 -0
- package/dist/esm/websocket/wsLog.js +68 -0
- package/dist/esm/websocket/wsLog.js.map +1 -0
- package/dist/types/client/PerpsClient.d.ts +200 -195
- package/dist/types/client/PerpsClient.d.ts.map +1 -1
- package/dist/types/client/bindProvider.d.ts +13 -0
- package/dist/types/client/bindProvider.d.ts.map +1 -0
- package/dist/types/client/createPerpsClient.d.ts +34 -53
- package/dist/types/client/createPerpsClient.d.ts.map +1 -1
- package/dist/types/client/requireProvider.d.ts +12 -0
- package/dist/types/client/requireProvider.d.ts.map +1 -0
- package/dist/types/errors/PerpsError.d.ts +8 -0
- package/dist/types/errors/PerpsError.d.ts.map +1 -1
- package/dist/types/errors/constants.d.ts +8 -2
- package/dist/types/errors/constants.d.ts.map +1 -1
- package/dist/types/index.d.ts +49 -23
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/registry/assetRegistry.d.ts +25 -0
- package/dist/types/registry/assetRegistry.d.ts.map +1 -0
- package/dist/types/registry/marketRegistry.d.ts +42 -0
- package/dist/types/registry/marketRegistry.d.ts.map +1 -0
- package/dist/types/registry/referenceDataRegistry.d.ts +44 -0
- package/dist/types/registry/referenceDataRegistry.d.ts.map +1 -0
- package/dist/types/services/createAction.d.ts +17 -2
- package/dist/types/services/createAction.d.ts.map +1 -1
- package/dist/types/services/executeAction.d.ts +17 -2
- package/dist/types/services/executeAction.d.ts.map +1 -1
- package/dist/types/services/getAccount.d.ts +19 -16
- package/dist/types/services/getAccount.d.ts.map +1 -1
- package/dist/types/services/getActivity.d.ts +15 -25
- package/dist/types/services/getActivity.d.ts.map +1 -1
- package/dist/types/services/getAssets.d.ts +14 -5
- package/dist/types/services/getAssets.d.ts.map +1 -1
- package/dist/types/services/getFills.d.ts +18 -29
- package/dist/types/services/getFills.d.ts.map +1 -1
- package/dist/types/services/getMarket.d.ts +34 -0
- package/dist/types/services/getMarket.d.ts.map +1 -0
- package/dist/types/services/getMarkets.d.ts +28 -0
- package/dist/types/services/getMarkets.d.ts.map +1 -0
- package/dist/types/services/getMeta.d.ts +19 -0
- package/dist/types/services/getMeta.d.ts.map +1 -0
- package/dist/types/services/getOhlcv.d.ts +15 -19
- package/dist/types/services/getOhlcv.d.ts.map +1 -1
- package/dist/types/services/getOrder.d.ts +16 -16
- package/dist/types/services/getOrder.d.ts.map +1 -1
- package/dist/types/services/getOrderbook.d.ts +13 -23
- package/dist/types/services/getOrderbook.d.ts.map +1 -1
- package/dist/types/services/getOrders.d.ts +17 -9
- package/dist/types/services/getOrders.d.ts.map +1 -1
- package/dist/types/services/getPositions.d.ts +17 -9
- package/dist/types/services/getPositions.d.ts.map +1 -1
- package/dist/types/services/getPrices.d.ts +12 -24
- package/dist/types/services/getPrices.d.ts.map +1 -1
- package/dist/types/services/getProviders.d.ts +3 -3
- package/dist/types/services/getProviders.d.ts.map +1 -1
- package/dist/types/services/getQuote.d.ts +42 -0
- package/dist/types/services/getQuote.d.ts.map +1 -0
- package/dist/types/services/getTermsAcceptance.d.ts +24 -0
- package/dist/types/services/getTermsAcceptance.d.ts.map +1 -0
- package/dist/types/services/resolveQuote.d.ts +36 -0
- package/dist/types/services/resolveQuote.d.ts.map +1 -0
- package/dist/types/services/resolveSubscribeQuote.d.ts +31 -0
- package/dist/types/services/resolveSubscribeQuote.d.ts.map +1 -0
- package/dist/types/storage/parseStoredRecord.d.ts +29 -0
- package/dist/types/storage/parseStoredRecord.d.ts.map +1 -0
- package/dist/{esm/agent → types/storage}/storage.d.ts +6 -3
- package/dist/types/storage/storage.d.ts.map +1 -0
- package/dist/types/storage/types.d.ts +14 -0
- package/dist/types/storage/types.d.ts.map +1 -0
- package/dist/types/transport/fetchWithRetry.d.ts +22 -0
- package/dist/types/transport/fetchWithRetry.d.ts.map +1 -0
- package/dist/types/transport/request.d.ts +25 -0
- package/dist/types/transport/request.d.ts.map +1 -0
- package/dist/types/transport/retryPolicy.d.ts +106 -0
- package/dist/types/transport/retryPolicy.d.ts.map +1 -0
- package/dist/types/types/api.d.ts +214 -0
- package/dist/types/types/api.d.ts.map +1 -0
- package/dist/types/types/config.d.ts +70 -0
- package/dist/types/types/config.d.ts.map +1 -0
- package/dist/types/types/provider.d.ts +330 -0
- package/dist/types/types/provider.d.ts.map +1 -0
- package/dist/types/utils/accountSummary.d.ts +12 -12
- package/dist/types/utils/accountSummary.d.ts.map +1 -1
- package/dist/types/utils/assertNever.d.ts +1 -0
- package/dist/types/utils/assertNever.d.ts.map +1 -1
- package/dist/types/utils/calculations.d.ts +116 -0
- package/dist/types/utils/calculations.d.ts.map +1 -1
- package/dist/types/utils/depositChain.d.ts +25 -0
- package/dist/types/utils/depositChain.d.ts.map +1 -0
- package/dist/types/utils/explorer.d.ts +33 -0
- package/dist/types/utils/explorer.d.ts.map +1 -0
- package/dist/types/utils/fillClassification.d.ts +13 -0
- package/dist/types/utils/fillClassification.d.ts.map +1 -0
- package/dist/types/utils/format.d.ts +66 -0
- package/dist/types/utils/format.d.ts.map +1 -0
- package/dist/types/utils/orderClassification.d.ts +19 -1
- package/dist/types/utils/orderClassification.d.ts.map +1 -1
- package/dist/types/utils/orderMath.d.ts +8 -4
- package/dist/types/utils/orderMath.d.ts.map +1 -1
- package/dist/types/utils/parse.d.ts +8 -5
- package/dist/types/utils/parse.d.ts.map +1 -1
- package/dist/types/utils/positionMath.d.ts +29 -0
- package/dist/types/utils/positionMath.d.ts.map +1 -1
- package/dist/types/utils/signTypedData.d.ts +9 -4
- package/dist/types/utils/signTypedData.d.ts.map +1 -1
- package/dist/types/utils/sleep.d.ts +5 -0
- package/dist/types/utils/sleep.d.ts.map +1 -1
- package/dist/types/utils/units.d.ts +8 -1
- package/dist/types/utils/units.d.ts.map +1 -1
- package/dist/types/utils/validation.d.ts +4 -1
- package/dist/types/utils/validation.d.ts.map +1 -1
- package/dist/types/version.d.ts +1 -1
- package/dist/types/version.d.ts.map +1 -1
- package/dist/types/websocket/PerpsWsClient.d.ts +100 -0
- package/dist/types/websocket/PerpsWsClient.d.ts.map +1 -0
- package/dist/types/websocket/ReconnectingWebSocket.d.ts +130 -0
- package/dist/types/websocket/ReconnectingWebSocket.d.ts.map +1 -0
- package/dist/types/websocket/WsProviderBase.d.ts +89 -0
- package/dist/types/websocket/WsProviderBase.d.ts.map +1 -0
- package/dist/types/websocket/cachePromise.d.ts +14 -0
- package/dist/types/websocket/cachePromise.d.ts.map +1 -0
- package/dist/types/websocket/types.d.ts +60 -0
- package/dist/types/websocket/types.d.ts.map +1 -0
- package/dist/types/websocket/wsLog.d.ts +50 -0
- package/dist/types/websocket/wsLog.d.ts.map +1 -0
- package/package.json +13 -60
- package/src/client/PerpsClient.ts +404 -1115
- package/src/client/bindProvider.ts +24 -0
- package/src/client/createPerpsClient.ts +68 -72
- package/src/client/requireProvider.ts +29 -0
- package/src/errors/PerpsError.ts +8 -0
- package/src/errors/constants.ts +8 -2
- package/src/index.ts +138 -82
- package/src/registry/assetRegistry.ts +62 -0
- package/src/registry/marketRegistry.ts +100 -0
- package/src/registry/referenceDataRegistry.ts +95 -0
- package/src/services/createAction.ts +17 -6
- package/src/services/executeAction.ts +21 -6
- package/src/services/getAccount.ts +24 -25
- package/src/services/getActivity.ts +27 -47
- package/src/services/getAssets.ts +15 -9
- package/src/services/getFills.ts +29 -42
- package/src/services/getMarket.ts +52 -0
- package/src/services/getMarkets.ts +40 -0
- package/src/services/getMeta.ts +30 -0
- package/src/services/getOhlcv.ts +24 -33
- package/src/services/getOrder.ts +20 -27
- package/src/services/getOrderbook.ts +19 -34
- package/src/services/getOrders.ts +27 -21
- package/src/services/getPositions.ts +27 -21
- package/src/services/getPrices.ts +14 -29
- package/src/services/getProviders.ts +4 -7
- package/src/services/getQuote.ts +58 -0
- package/src/services/getTermsAcceptance.ts +32 -0
- package/src/services/resolveQuote.ts +122 -0
- package/src/services/resolveSubscribeQuote.ts +109 -0
- package/src/storage/parseStoredRecord.ts +55 -0
- package/src/{agent → storage}/storage.ts +6 -4
- package/src/storage/types.ts +13 -0
- package/src/transport/fetchWithRetry.ts +116 -0
- package/src/{utils → transport}/request.ts +33 -45
- package/src/transport/retryPolicy.ts +202 -0
- package/src/types/api.ts +239 -0
- package/src/types/config.ts +79 -0
- package/src/types/provider.ts +429 -0
- package/src/utils/accountSummary.ts +25 -109
- package/src/utils/assertNever.ts +1 -0
- package/src/utils/calculations.ts +204 -7
- package/src/utils/depositChain.ts +37 -0
- package/src/utils/explorer.ts +51 -0
- package/src/utils/fillClassification.ts +51 -0
- package/src/utils/format.ts +212 -0
- package/src/utils/orderClassification.ts +33 -1
- package/src/utils/orderMath.ts +9 -5
- package/src/utils/parse.ts +8 -7
- package/src/utils/positionMath.ts +42 -0
- package/src/utils/signTypedData.ts +11 -5
- package/src/utils/sleep.ts +5 -0
- package/src/utils/units.ts +8 -1
- package/src/utils/validation.ts +4 -1
- package/src/version.ts +1 -1
- package/src/websocket/PerpsWsClient.ts +204 -0
- package/src/websocket/ReconnectingWebSocket.ts +353 -0
- package/src/websocket/WsProviderBase.ts +333 -0
- package/src/websocket/cachePromise.ts +30 -0
- package/src/websocket/types.ts +75 -0
- package/src/websocket/wsLog.ts +82 -0
- package/dist/cjs/agent/AgentManager.d.ts +0 -15
- package/dist/cjs/agent/AgentManager.d.ts.map +0 -1
- package/dist/cjs/agent/AgentManager.js +0 -82
- package/dist/cjs/agent/AgentManager.js.map +0 -1
- package/dist/cjs/agent/storage.d.ts.map +0 -1
- package/dist/cjs/agent/storage.js.map +0 -1
- package/dist/cjs/agent/types.d.ts.map +0 -1
- package/dist/cjs/client/projectAccountConfigSettings.d.ts +0 -3
- package/dist/cjs/client/projectAccountConfigSettings.d.ts.map +0 -1
- package/dist/cjs/client/projectAccountConfigSettings.js +0 -17
- package/dist/cjs/client/projectAccountConfigSettings.js.map +0 -1
- package/dist/cjs/client/types.d.ts +0 -85
- package/dist/cjs/client/types.d.ts.map +0 -1
- package/dist/cjs/client/types.js +0 -9
- package/dist/cjs/client/types.js.map +0 -1
- package/dist/cjs/providers/hyperliquid/accountConfig.d.ts +0 -3
- package/dist/cjs/providers/hyperliquid/accountConfig.d.ts.map +0 -1
- package/dist/cjs/providers/hyperliquid/accountConfig.js +0 -41
- package/dist/cjs/providers/hyperliquid/accountConfig.js.map +0 -1
- package/dist/cjs/providers/lighter/accountConfig.d.ts +0 -3
- package/dist/cjs/providers/lighter/accountConfig.d.ts.map +0 -1
- package/dist/cjs/providers/lighter/accountConfig.js +0 -45
- package/dist/cjs/providers/lighter/accountConfig.js.map +0 -1
- package/dist/cjs/realtime/PerpsWsClient.d.ts +0 -20
- package/dist/cjs/realtime/PerpsWsClient.d.ts.map +0 -1
- package/dist/cjs/realtime/PerpsWsClient.js +0 -69
- package/dist/cjs/realtime/PerpsWsClient.js.map +0 -1
- package/dist/cjs/realtime/ReconnectingWebSocket.d.ts +0 -36
- package/dist/cjs/realtime/ReconnectingWebSocket.d.ts.map +0 -1
- package/dist/cjs/realtime/ReconnectingWebSocket.js +0 -132
- package/dist/cjs/realtime/ReconnectingWebSocket.js.map +0 -1
- package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.d.ts +0 -30
- package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.d.ts.map +0 -1
- package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.js +0 -331
- package/dist/cjs/realtime/hyperliquid/HyperliquidWsProvider.js.map +0 -1
- package/dist/cjs/realtime/hyperliquid/types.d.ts +0 -37
- package/dist/cjs/realtime/hyperliquid/types.d.ts.map +0 -1
- package/dist/cjs/realtime/hyperliquid/types.js.map +0 -1
- package/dist/cjs/realtime/lighter/LighterWsProvider.d.ts +0 -48
- package/dist/cjs/realtime/lighter/LighterWsProvider.d.ts.map +0 -1
- package/dist/cjs/realtime/lighter/LighterWsProvider.js +0 -424
- package/dist/cjs/realtime/lighter/LighterWsProvider.js.map +0 -1
- package/dist/cjs/realtime/lighter/types.d.ts +0 -84
- package/dist/cjs/realtime/lighter/types.d.ts.map +0 -1
- package/dist/cjs/realtime/lighter/types.js.map +0 -1
- package/dist/cjs/realtime/types.d.ts +0 -10
- package/dist/cjs/realtime/types.d.ts.map +0 -1
- package/dist/cjs/services/getAsset.d.ts +0 -8
- package/dist/cjs/services/getAsset.d.ts.map +0 -1
- package/dist/cjs/services/getAsset.js.map +0 -1
- package/dist/cjs/signers/lighter/LighterKeyStore.d.ts +0 -20
- package/dist/cjs/signers/lighter/LighterKeyStore.d.ts.map +0 -1
- package/dist/cjs/signers/lighter/LighterKeyStore.js +0 -42
- package/dist/cjs/signers/lighter/LighterKeyStore.js.map +0 -1
- package/dist/cjs/signers/lighter/LighterReadOnlyTokenManager.d.ts +0 -66
- package/dist/cjs/signers/lighter/LighterReadOnlyTokenManager.d.ts.map +0 -1
- package/dist/cjs/signers/lighter/LighterReadOnlyTokenManager.js +0 -141
- package/dist/cjs/signers/lighter/LighterReadOnlyTokenManager.js.map +0 -1
- package/dist/cjs/signers/lighter/LighterSigner.d.ts +0 -41
- package/dist/cjs/signers/lighter/LighterSigner.d.ts.map +0 -1
- package/dist/cjs/signers/lighter/LighterSigner.js +0 -176
- package/dist/cjs/signers/lighter/LighterSigner.js.map +0 -1
- package/dist/cjs/signers/lighter/index.d.ts +0 -9
- package/dist/cjs/signers/lighter/index.d.ts.map +0 -1
- package/dist/cjs/signers/lighter/index.js +0 -20
- package/dist/cjs/signers/lighter/index.js.map +0 -1
- package/dist/cjs/signers/lighter/wasmLoader.d.ts +0 -42
- package/dist/cjs/signers/lighter/wasmLoader.d.ts.map +0 -1
- package/dist/cjs/signers/lighter/wasmLoader.js +0 -166
- package/dist/cjs/signers/lighter/wasmLoader.js.map +0 -1
- package/dist/cjs/utils/hyperliquid/index.d.ts +0 -3
- package/dist/cjs/utils/hyperliquid/index.d.ts.map +0 -1
- package/dist/cjs/utils/hyperliquid/index.js +0 -11
- package/dist/cjs/utils/hyperliquid/index.js.map +0 -1
- package/dist/cjs/utils/hyperliquid/liquidation.d.ts +0 -3
- package/dist/cjs/utils/hyperliquid/liquidation.d.ts.map +0 -1
- package/dist/cjs/utils/hyperliquid/liquidation.js +0 -24
- package/dist/cjs/utils/hyperliquid/liquidation.js.map +0 -1
- package/dist/cjs/utils/hyperliquid/orderFormatting.d.ts +0 -4
- package/dist/cjs/utils/hyperliquid/orderFormatting.d.ts.map +0 -1
- package/dist/cjs/utils/hyperliquid/orderFormatting.js +0 -33
- package/dist/cjs/utils/hyperliquid/orderFormatting.js.map +0 -1
- package/dist/cjs/utils/request.d.ts.map +0 -1
- package/dist/cjs/utils/request.js.map +0 -1
- package/dist/cjs/wasm/lighter-signer.wasm +0 -0
- package/dist/cjs/wasm/wasm_exec.js +0 -575
- package/dist/esm/agent/AgentManager.d.ts +0 -45
- package/dist/esm/agent/AgentManager.d.ts.map +0 -1
- package/dist/esm/agent/AgentManager.js +0 -112
- package/dist/esm/agent/AgentManager.js.map +0 -1
- package/dist/esm/agent/storage.d.ts.map +0 -1
- package/dist/esm/agent/storage.js.map +0 -1
- package/dist/esm/agent/types.d.ts +0 -23
- package/dist/esm/agent/types.d.ts.map +0 -1
- package/dist/esm/client/projectAccountConfigSettings.d.ts +0 -18
- package/dist/esm/client/projectAccountConfigSettings.d.ts.map +0 -1
- package/dist/esm/client/projectAccountConfigSettings.js +0 -29
- package/dist/esm/client/projectAccountConfigSettings.js.map +0 -1
- package/dist/esm/client/types.d.ts +0 -200
- package/dist/esm/client/types.d.ts.map +0 -1
- package/dist/esm/client/types.js +0 -12
- package/dist/esm/client/types.js.map +0 -1
- package/dist/esm/providers/hyperliquid/accountConfig.d.ts +0 -13
- package/dist/esm/providers/hyperliquid/accountConfig.d.ts.map +0 -1
- package/dist/esm/providers/hyperliquid/accountConfig.js +0 -69
- package/dist/esm/providers/hyperliquid/accountConfig.js.map +0 -1
- package/dist/esm/providers/lighter/accountConfig.d.ts +0 -13
- package/dist/esm/providers/lighter/accountConfig.d.ts.map +0 -1
- package/dist/esm/providers/lighter/accountConfig.js +0 -79
- package/dist/esm/providers/lighter/accountConfig.js.map +0 -1
- package/dist/esm/realtime/PerpsWsClient.d.ts +0 -26
- package/dist/esm/realtime/PerpsWsClient.d.ts.map +0 -1
- package/dist/esm/realtime/PerpsWsClient.js +0 -65
- package/dist/esm/realtime/PerpsWsClient.js.map +0 -1
- package/dist/esm/realtime/ReconnectingWebSocket.d.ts +0 -36
- package/dist/esm/realtime/ReconnectingWebSocket.d.ts.map +0 -1
- package/dist/esm/realtime/ReconnectingWebSocket.js +0 -128
- package/dist/esm/realtime/ReconnectingWebSocket.js.map +0 -1
- package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.d.ts +0 -32
- package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.d.ts.map +0 -1
- package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.js +0 -339
- package/dist/esm/realtime/hyperliquid/HyperliquidWsProvider.js.map +0 -1
- package/dist/esm/realtime/hyperliquid/types.d.ts +0 -37
- package/dist/esm/realtime/hyperliquid/types.d.ts.map +0 -1
- package/dist/esm/realtime/hyperliquid/types.js +0 -4
- package/dist/esm/realtime/hyperliquid/types.js.map +0 -1
- package/dist/esm/realtime/lighter/LighterWsProvider.d.ts +0 -68
- package/dist/esm/realtime/lighter/LighterWsProvider.d.ts.map +0 -1
- package/dist/esm/realtime/lighter/LighterWsProvider.js +0 -474
- package/dist/esm/realtime/lighter/LighterWsProvider.js.map +0 -1
- package/dist/esm/realtime/lighter/types.d.ts +0 -108
- package/dist/esm/realtime/lighter/types.d.ts.map +0 -1
- package/dist/esm/realtime/lighter/types.js +0 -14
- package/dist/esm/realtime/lighter/types.js.map +0 -1
- package/dist/esm/realtime/types.d.ts +0 -10
- package/dist/esm/realtime/types.d.ts.map +0 -1
- package/dist/esm/services/getAsset.d.ts +0 -20
- package/dist/esm/services/getAsset.d.ts.map +0 -1
- package/dist/esm/services/getAsset.js +0 -18
- package/dist/esm/services/getAsset.js.map +0 -1
- package/dist/esm/signers/lighter/LighterKeyStore.d.ts +0 -29
- package/dist/esm/signers/lighter/LighterKeyStore.d.ts.map +0 -1
- package/dist/esm/signers/lighter/LighterKeyStore.js +0 -53
- package/dist/esm/signers/lighter/LighterKeyStore.js.map +0 -1
- package/dist/esm/signers/lighter/LighterReadOnlyTokenManager.d.ts +0 -174
- package/dist/esm/signers/lighter/LighterReadOnlyTokenManager.d.ts.map +0 -1
- package/dist/esm/signers/lighter/LighterReadOnlyTokenManager.js +0 -214
- package/dist/esm/signers/lighter/LighterReadOnlyTokenManager.js.map +0 -1
- package/dist/esm/signers/lighter/LighterSigner.d.ts +0 -88
- package/dist/esm/signers/lighter/LighterSigner.d.ts.map +0 -1
- package/dist/esm/signers/lighter/LighterSigner.js +0 -226
- package/dist/esm/signers/lighter/LighterSigner.js.map +0 -1
- package/dist/esm/signers/lighter/index.d.ts +0 -9
- package/dist/esm/signers/lighter/index.d.ts.map +0 -1
- package/dist/esm/signers/lighter/index.js +0 -5
- package/dist/esm/signers/lighter/index.js.map +0 -1
- package/dist/esm/signers/lighter/wasmLoader.d.ts +0 -71
- package/dist/esm/signers/lighter/wasmLoader.d.ts.map +0 -1
- package/dist/esm/signers/lighter/wasmLoader.js +0 -181
- package/dist/esm/signers/lighter/wasmLoader.js.map +0 -1
- package/dist/esm/utils/hyperliquid/index.d.ts +0 -3
- package/dist/esm/utils/hyperliquid/index.d.ts.map +0 -1
- package/dist/esm/utils/hyperliquid/index.js +0 -3
- package/dist/esm/utils/hyperliquid/index.js.map +0 -1
- package/dist/esm/utils/hyperliquid/liquidation.d.ts +0 -46
- package/dist/esm/utils/hyperliquid/liquidation.d.ts.map +0 -1
- package/dist/esm/utils/hyperliquid/liquidation.js +0 -63
- package/dist/esm/utils/hyperliquid/liquidation.js.map +0 -1
- package/dist/esm/utils/hyperliquid/orderFormatting.d.ts +0 -44
- package/dist/esm/utils/hyperliquid/orderFormatting.d.ts.map +0 -1
- package/dist/esm/utils/hyperliquid/orderFormatting.js +0 -79
- package/dist/esm/utils/hyperliquid/orderFormatting.js.map +0 -1
- package/dist/esm/utils/request.d.ts +0 -25
- package/dist/esm/utils/request.d.ts.map +0 -1
- package/dist/esm/utils/request.js.map +0 -1
- package/dist/esm/wasm/lighter-signer.wasm +0 -0
- package/dist/esm/wasm/wasm_exec.js +0 -575
- package/dist/types/agent/AgentManager.d.ts +0 -45
- package/dist/types/agent/AgentManager.d.ts.map +0 -1
- package/dist/types/agent/storage.d.ts.map +0 -1
- package/dist/types/agent/types.d.ts +0 -23
- package/dist/types/agent/types.d.ts.map +0 -1
- package/dist/types/client/projectAccountConfigSettings.d.ts +0 -18
- package/dist/types/client/projectAccountConfigSettings.d.ts.map +0 -1
- package/dist/types/client/types.d.ts +0 -200
- package/dist/types/client/types.d.ts.map +0 -1
- package/dist/types/providers/hyperliquid/accountConfig.d.ts +0 -13
- package/dist/types/providers/hyperliquid/accountConfig.d.ts.map +0 -1
- package/dist/types/providers/lighter/accountConfig.d.ts +0 -13
- package/dist/types/providers/lighter/accountConfig.d.ts.map +0 -1
- package/dist/types/realtime/PerpsWsClient.d.ts +0 -26
- package/dist/types/realtime/PerpsWsClient.d.ts.map +0 -1
- package/dist/types/realtime/ReconnectingWebSocket.d.ts.map +0 -1
- package/dist/types/realtime/hyperliquid/HyperliquidWsProvider.d.ts +0 -32
- package/dist/types/realtime/hyperliquid/HyperliquidWsProvider.d.ts.map +0 -1
- package/dist/types/realtime/hyperliquid/types.d.ts +0 -37
- package/dist/types/realtime/hyperliquid/types.d.ts.map +0 -1
- package/dist/types/realtime/lighter/LighterWsProvider.d.ts +0 -68
- package/dist/types/realtime/lighter/LighterWsProvider.d.ts.map +0 -1
- package/dist/types/realtime/lighter/types.d.ts +0 -108
- package/dist/types/realtime/lighter/types.d.ts.map +0 -1
- package/dist/types/realtime/types.d.ts +0 -10
- package/dist/types/realtime/types.d.ts.map +0 -1
- package/dist/types/services/getAsset.d.ts +0 -20
- package/dist/types/services/getAsset.d.ts.map +0 -1
- package/dist/types/signers/lighter/LighterKeyStore.d.ts +0 -29
- package/dist/types/signers/lighter/LighterKeyStore.d.ts.map +0 -1
- package/dist/types/signers/lighter/LighterReadOnlyTokenManager.d.ts +0 -174
- package/dist/types/signers/lighter/LighterReadOnlyTokenManager.d.ts.map +0 -1
- package/dist/types/signers/lighter/LighterSigner.d.ts +0 -88
- package/dist/types/signers/lighter/LighterSigner.d.ts.map +0 -1
- package/dist/types/signers/lighter/index.d.ts +0 -9
- package/dist/types/signers/lighter/index.d.ts.map +0 -1
- package/dist/types/signers/lighter/wasmLoader.d.ts +0 -71
- package/dist/types/signers/lighter/wasmLoader.d.ts.map +0 -1
- package/dist/types/utils/hyperliquid/index.d.ts +0 -3
- package/dist/types/utils/hyperliquid/index.d.ts.map +0 -1
- package/dist/types/utils/hyperliquid/liquidation.d.ts +0 -46
- package/dist/types/utils/hyperliquid/liquidation.d.ts.map +0 -1
- package/dist/types/utils/hyperliquid/orderFormatting.d.ts +0 -44
- package/dist/types/utils/hyperliquid/orderFormatting.d.ts.map +0 -1
- package/dist/types/utils/request.d.ts +0 -25
- package/dist/types/utils/request.d.ts.map +0 -1
- package/src/agent/AgentManager.ts +0 -137
- package/src/agent/types.ts +0 -24
- package/src/client/projectAccountConfigSettings.ts +0 -39
- package/src/client/types.ts +0 -240
- package/src/providers/hyperliquid/accountConfig.ts +0 -92
- package/src/providers/lighter/accountConfig.ts +0 -103
- package/src/realtime/PerpsWsClient.ts +0 -108
- package/src/realtime/ReconnectingWebSocket.ts +0 -156
- package/src/realtime/hyperliquid/HyperliquidWsProvider.ts +0 -413
- package/src/realtime/hyperliquid/types.ts +0 -46
- package/src/realtime/lighter/LighterWsProvider.ts +0 -682
- package/src/realtime/lighter/types.ts +0 -121
- package/src/realtime/types.ts +0 -16
- package/src/services/getAsset.ts +0 -37
- package/src/signers/lighter/LighterKeyStore.ts +0 -74
- package/src/signers/lighter/LighterReadOnlyTokenManager.ts +0 -358
- package/src/signers/lighter/LighterSigner.ts +0 -396
- package/src/signers/lighter/index.ts +0 -36
- package/src/signers/lighter/wasmLoader.ts +0 -291
- package/src/utils/hyperliquid/index.ts +0 -9
- package/src/utils/hyperliquid/liquidation.ts +0 -71
- package/src/utils/hyperliquid/orderFormatting.ts +0 -96
- package/wasm/lighter-signer.wasm +0 -0
- package/wasm/wasm_exec.js +0 -575
- /package/dist/cjs/{agent → storage}/storage.d.ts +0 -0
- /package/dist/cjs/{agent → storage}/storage.js +0 -0
- /package/dist/cjs/{agent → storage}/types.js +0 -0
- /package/dist/cjs/{realtime/hyperliquid → websocket}/types.js +0 -0
- /package/dist/esm/{agent → storage}/types.js +0 -0
- /package/dist/esm/{realtime → websocket}/types.js +0 -0
package/src/agent/types.ts
DELETED
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { Address, Hex } from '@lifi/perps-types'
|
|
2
|
-
|
|
3
|
-
/**
|
|
4
|
-
* Agent keypair for signing trading actions.
|
|
5
|
-
*/
|
|
6
|
-
export interface Agent {
|
|
7
|
-
/** Agent wallet address */
|
|
8
|
-
address: Address
|
|
9
|
-
/** Agent private key */
|
|
10
|
-
privateKey: Hex
|
|
11
|
-
}
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* Storage adapter interface for persisting agent keys.
|
|
15
|
-
* Implement this interface to use custom storage (e.g., encrypted storage, database).
|
|
16
|
-
*/
|
|
17
|
-
export interface StorageAdapter {
|
|
18
|
-
/** Get a value by key */
|
|
19
|
-
get(key: string): Promise<string | null>
|
|
20
|
-
/** Set a value by key */
|
|
21
|
-
set(key: string, value: string): Promise<void>
|
|
22
|
-
/** Remove a value by key */
|
|
23
|
-
remove(key: string): Promise<void>
|
|
24
|
-
}
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
AccountConfig,
|
|
3
|
-
AccountConfigSetting,
|
|
4
|
-
ProviderOption,
|
|
5
|
-
ProviderSetup,
|
|
6
|
-
} from '@lifi/perps-types'
|
|
7
|
-
import { projectHyperliquidConfigSettings } from '../providers/hyperliquid/accountConfig.js'
|
|
8
|
-
import { projectLighterConfigSettings } from '../providers/lighter/accountConfig.js'
|
|
9
|
-
import { assertNever } from '../utils/assertNever.js'
|
|
10
|
-
|
|
11
|
-
/**
|
|
12
|
-
* Project a typed `AccountConfig` against the provider's `setup` + `options`
|
|
13
|
-
* descriptors into `AccountConfigSetting[]`.
|
|
14
|
-
*
|
|
15
|
-
* Switches on `config.provider` to pick the per-provider mapper. The
|
|
16
|
-
* `assertNever` exhaustiveness check in the `default` arm forces a compile
|
|
17
|
-
* error whenever a new variant is added to `AccountConfig`.
|
|
18
|
-
*
|
|
19
|
-
* Produces exactly one `AccountConfigSetting` per descriptor in
|
|
20
|
-
* `setup`-then-`options` order.
|
|
21
|
-
*
|
|
22
|
-
* @param config Typed account-state union (discriminated on `provider`).
|
|
23
|
-
* @param setup `Provider.setup` from the matching provider metadata.
|
|
24
|
-
* @param options `Provider.options` from the matching provider metadata.
|
|
25
|
-
*/
|
|
26
|
-
export function projectAccountConfigSettings(
|
|
27
|
-
config: AccountConfig,
|
|
28
|
-
setup: ProviderSetup[],
|
|
29
|
-
options: ProviderOption[]
|
|
30
|
-
): AccountConfigSetting[] {
|
|
31
|
-
switch (config.provider) {
|
|
32
|
-
case 'hyperliquid':
|
|
33
|
-
return projectHyperliquidConfigSettings(config, setup, options)
|
|
34
|
-
case 'lighter':
|
|
35
|
-
return projectLighterConfigSettings(config, setup, options)
|
|
36
|
-
default:
|
|
37
|
-
return assertNever(config)
|
|
38
|
-
}
|
|
39
|
-
}
|
package/src/client/types.ts
DELETED
|
@@ -1,240 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
AccountConfigSetting,
|
|
3
|
-
AccountResponse,
|
|
4
|
-
ActionStep,
|
|
5
|
-
Address,
|
|
6
|
-
AssetIdentity,
|
|
7
|
-
ExecuteActionResponse,
|
|
8
|
-
ModifyOrderInput,
|
|
9
|
-
OrderSide,
|
|
10
|
-
OrderType,
|
|
11
|
-
SignedActionStep,
|
|
12
|
-
TimeInForce,
|
|
13
|
-
TriggerOrderInput,
|
|
14
|
-
WithdrawalParams,
|
|
15
|
-
} from '@lifi/perps-types'
|
|
16
|
-
import type { StorageAdapter } from '../agent/types.js'
|
|
17
|
-
import type {
|
|
18
|
-
LighterReadOnlyTokenManagerOptions,
|
|
19
|
-
LighterSignerConfig,
|
|
20
|
-
} from '../signers/lighter/index.js'
|
|
21
|
-
import type { ProviderConfigs } from './createPerpsClient.js'
|
|
22
|
-
|
|
23
|
-
// Re-export the SDK client types from createPerpsClient
|
|
24
|
-
export type {
|
|
25
|
-
HyperliquidConfig,
|
|
26
|
-
PerpsBaseConfig,
|
|
27
|
-
PerpsConfig,
|
|
28
|
-
PerpsSDKClient,
|
|
29
|
-
ProviderConfig,
|
|
30
|
-
ProviderConfigs,
|
|
31
|
-
RequestInterceptor,
|
|
32
|
-
SDKRequestOptions,
|
|
33
|
-
} from './createPerpsClient.js'
|
|
34
|
-
|
|
35
|
-
/**
|
|
36
|
-
* Signing mode determines who signs trading actions.
|
|
37
|
-
*
|
|
38
|
-
* - `USER`: User wallet signs each action (requires wallet popup per action)
|
|
39
|
-
* - `USER_AGENT`: SDK-generated agent signs actions (no popups after initial setup)
|
|
40
|
-
*/
|
|
41
|
-
export enum SigningMode {
|
|
42
|
-
USER = 'USER',
|
|
43
|
-
USER_AGENT = 'USER_AGENT',
|
|
44
|
-
}
|
|
45
|
-
|
|
46
|
-
/**
|
|
47
|
-
* Options for PerpsClient constructor.
|
|
48
|
-
*/
|
|
49
|
-
export interface PerpsClientOptions {
|
|
50
|
-
/** Integrator identifier (required) */
|
|
51
|
-
integrator: string
|
|
52
|
-
/** API key for authenticated requests (get one at https://portal.li.fi/) */
|
|
53
|
-
apiKey: string
|
|
54
|
-
/** Base API URL. Defaults to DEFAULT_API_URL */
|
|
55
|
-
apiUrl?: string
|
|
56
|
-
/** Custom storage adapter for agent keys. Defaults to localStorage. */
|
|
57
|
-
storage?: StorageAdapter
|
|
58
|
-
/** Provider-specific configuration */
|
|
59
|
-
providers?: ProviderConfigs
|
|
60
|
-
/**
|
|
61
|
-
* Optional Lighter WASM signer configuration. Override the REST URL, chain
|
|
62
|
-
* ID, or WASM asset locations. Omit to accept defaults (mainnet, chain 304,
|
|
63
|
-
* WASM assets bundled with the package).
|
|
64
|
-
*/
|
|
65
|
-
lighter?: LighterSignerConfig
|
|
66
|
-
/**
|
|
67
|
-
* Optional Lighter read-only token manager configuration. Override the
|
|
68
|
-
* Lighter REST URL, inject a custom HTTP fetcher, or pin a clock for
|
|
69
|
-
* tests. `storage` is shared with the rest of the client unless explicitly
|
|
70
|
-
* overridden here. Omit to accept the manager's defaults.
|
|
71
|
-
*/
|
|
72
|
-
lighterReadOnlyToken?: LighterReadOnlyTokenManagerOptions
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
/**
|
|
76
|
-
* Parameters for the internal `buildPrerequisites` helper that materialises
|
|
77
|
-
* typed-data envelopes for the setup descriptors.
|
|
78
|
-
*/
|
|
79
|
-
export interface CheckPrerequisitesParams {
|
|
80
|
-
/** Provider to build setup actions for */
|
|
81
|
-
provider: string
|
|
82
|
-
/** User wallet address */
|
|
83
|
-
address: Address
|
|
84
|
-
/** Address of the signer (auto-set in USER_AGENT mode) */
|
|
85
|
-
signerAddress?: Address
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
/**
|
|
89
|
-
* Parameters for placing an order.
|
|
90
|
-
*/
|
|
91
|
-
export interface PlaceOrderParams {
|
|
92
|
-
/** Provider to place order on */
|
|
93
|
-
provider: string
|
|
94
|
-
/** User wallet address */
|
|
95
|
-
address: Address
|
|
96
|
-
/** Asset identity */
|
|
97
|
-
asset: AssetIdentity
|
|
98
|
-
/** Order side */
|
|
99
|
-
side: OrderSide
|
|
100
|
-
/** Order type */
|
|
101
|
-
type: OrderType
|
|
102
|
-
/** Order size */
|
|
103
|
-
size: string
|
|
104
|
-
/** Order price */
|
|
105
|
-
price: string
|
|
106
|
-
/** Leverage */
|
|
107
|
-
leverage?: number
|
|
108
|
-
/** Reduce only flag */
|
|
109
|
-
reduceOnly?: boolean
|
|
110
|
-
/** Time in force */
|
|
111
|
-
timeInForce?: TimeInForce
|
|
112
|
-
/** Expiration time */
|
|
113
|
-
expiresAt?: string
|
|
114
|
-
/** Take profit trigger */
|
|
115
|
-
takeProfit?: TriggerOrderInput
|
|
116
|
-
/** Stop loss trigger */
|
|
117
|
-
stopLoss?: TriggerOrderInput
|
|
118
|
-
}
|
|
119
|
-
|
|
120
|
-
/**
|
|
121
|
-
* Parameters for placing trigger-only orders (TP/SL on existing positions).
|
|
122
|
-
* Sends a TRIGGER_ONLY order that skips the main order wire.
|
|
123
|
-
*/
|
|
124
|
-
export interface PlaceTriggerOrderParams {
|
|
125
|
-
provider: string
|
|
126
|
-
address: Address
|
|
127
|
-
asset: AssetIdentity
|
|
128
|
-
side: OrderSide
|
|
129
|
-
takeProfit?: TriggerOrderInput
|
|
130
|
-
stopLoss?: TriggerOrderInput
|
|
131
|
-
}
|
|
132
|
-
|
|
133
|
-
/**
|
|
134
|
-
* Parameters for withdrawing funds.
|
|
135
|
-
*/
|
|
136
|
-
export interface WithdrawParams {
|
|
137
|
-
/** Provider to withdraw from */
|
|
138
|
-
provider: string
|
|
139
|
-
/** User wallet address (account owner) */
|
|
140
|
-
address: Address
|
|
141
|
-
/** Withdrawal details */
|
|
142
|
-
withdrawal: WithdrawalParams
|
|
143
|
-
}
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* Parameters for canceling orders.
|
|
147
|
-
*/
|
|
148
|
-
export interface CancelOrdersParams {
|
|
149
|
-
/** Provider to cancel orders on */
|
|
150
|
-
provider: string
|
|
151
|
-
/** User wallet address */
|
|
152
|
-
address: Address
|
|
153
|
-
/** Order IDs to cancel */
|
|
154
|
-
ids: string[]
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
/**
|
|
158
|
-
* Parameters for modifying orders.
|
|
159
|
-
*/
|
|
160
|
-
export interface ModifyOrdersParams {
|
|
161
|
-
/** Provider to modify orders on */
|
|
162
|
-
provider: string
|
|
163
|
-
/** User wallet address */
|
|
164
|
-
address: Address
|
|
165
|
-
/** Modifications to apply */
|
|
166
|
-
modifications: ModifyOrderInput[]
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
/**
|
|
170
|
-
* Parameters for {@link PerpsClient.checkSetup}.
|
|
171
|
-
*/
|
|
172
|
-
export interface GetSetupParams {
|
|
173
|
-
/** Provider to check setup for */
|
|
174
|
-
provider: string
|
|
175
|
-
/** User wallet address */
|
|
176
|
-
address: Address
|
|
177
|
-
}
|
|
178
|
-
|
|
179
|
-
/**
|
|
180
|
-
* Result from {@link PerpsClient.checkSetup}.
|
|
181
|
-
*
|
|
182
|
-
* Reports the unsatisfied entries on `Provider.setup` for the queried
|
|
183
|
-
* account, split by the signer role the descriptor declares.
|
|
184
|
-
*
|
|
185
|
-
* `Provider.options` items are NEVER included here — they don't gate trading
|
|
186
|
-
* and are surfaced separately via `getAccount().settings`.
|
|
187
|
-
*/
|
|
188
|
-
export interface SetupResult {
|
|
189
|
-
/** Setup steps requiring user wallet signature */
|
|
190
|
-
userPrerequisites: ActionStep[]
|
|
191
|
-
/** Setup steps the SDK auto-signs with the agent */
|
|
192
|
-
agentPrerequisites: ActionStep[]
|
|
193
|
-
/** Whether all setup items are already satisfied (ready to trade) */
|
|
194
|
-
isReady: boolean
|
|
195
|
-
}
|
|
196
|
-
|
|
197
|
-
/**
|
|
198
|
-
* Parameters for {@link PerpsClient.satisfySetup}.
|
|
199
|
-
*/
|
|
200
|
-
export interface SatisfySetupParams {
|
|
201
|
-
/** Provider to satisfy setup for */
|
|
202
|
-
provider: string
|
|
203
|
-
/** User wallet address */
|
|
204
|
-
address: Address
|
|
205
|
-
/** The result from checkSetup() */
|
|
206
|
-
required: SetupResult
|
|
207
|
-
/** User-signed actions corresponding to required.userPrerequisites */
|
|
208
|
-
userSignedActions: SignedActionStep[]
|
|
209
|
-
}
|
|
210
|
-
|
|
211
|
-
/**
|
|
212
|
-
* Result from {@link PerpsClient.satisfySetup}.
|
|
213
|
-
*/
|
|
214
|
-
export interface SatisfySetupResult {
|
|
215
|
-
/** Results from user-signed setup submission */
|
|
216
|
-
userResults: ExecuteActionResponse
|
|
217
|
-
/** Results from agent-signed setup submission (if any) */
|
|
218
|
-
agentResults?: ExecuteActionResponse
|
|
219
|
-
/**
|
|
220
|
-
* Fallback user-wallet setup steps surfaced when an agent-signed
|
|
221
|
-
* `ACCOUNT_MODE` dispatch is not authorised (e.g. Hyperliquid refuses to
|
|
222
|
-
* upgrade from a non-default abstraction variant without a user signature).
|
|
223
|
-
* Caller must re-sign these with the user's wallet.
|
|
224
|
-
*/
|
|
225
|
-
fallbackUserPrerequisites?: ActionStep[]
|
|
226
|
-
}
|
|
227
|
-
|
|
228
|
-
/**
|
|
229
|
-
* Result envelope returned by {@link PerpsClient.getAccount} — wraps the
|
|
230
|
-
* backend's `AccountResponse` with a single SDK-projected `settings` array.
|
|
231
|
-
*
|
|
232
|
-
* `settings` contains exactly one `AccountConfigSetting` per descriptor on
|
|
233
|
-
* `Provider.setup` + `Provider.options` (in that order). Index the
|
|
234
|
-
* projection by `setting.type === descriptor.type` and read
|
|
235
|
-
* `setting.values[i].value` for each `Param` the descriptor declared.
|
|
236
|
-
*/
|
|
237
|
-
export interface GetAccountResult extends AccountResponse {
|
|
238
|
-
/** SDK-projected current state of every setup + options descriptor. */
|
|
239
|
-
settings: AccountConfigSetting[]
|
|
240
|
-
}
|
|
@@ -1,92 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
AccountConfigSetting,
|
|
3
|
-
HyperliquidAccountConfig,
|
|
4
|
-
ProviderActionDescriptor,
|
|
5
|
-
ProviderOption,
|
|
6
|
-
ProviderSetup,
|
|
7
|
-
} from '@lifi/perps-types'
|
|
8
|
-
import { ActionType, PerpsErrorCode } from '@lifi/perps-types'
|
|
9
|
-
import { PerpsError } from '../../errors/PerpsError.js'
|
|
10
|
-
import { assertNever } from '../../utils/assertNever.js'
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Project a single Hyperliquid descriptor against the typed
|
|
14
|
-
* `HyperliquidAccountConfig` into an `AccountConfigSetting`.
|
|
15
|
-
*
|
|
16
|
-
* Mapping table:
|
|
17
|
-
*
|
|
18
|
-
* | descriptor.type | projected values
|
|
19
|
-
* |--------------------------|-----------------------------------------------
|
|
20
|
-
* | APPROVE_AGENT | [] (no parameters)
|
|
21
|
-
* | APPROVE_BUILDER_FEE | [] (no parameters)
|
|
22
|
-
* | ACCOUNT_MODE | [{ name: 'mode', value: config.abstractionMode }]
|
|
23
|
-
*
|
|
24
|
-
* The switch is exhaustive over `ActionType` so enum additions force a
|
|
25
|
-
* compile error in the `default` arm. ActionTypes that are not valid on
|
|
26
|
-
* `Provider.setup` / `Provider.options` throw at runtime.
|
|
27
|
-
*/
|
|
28
|
-
function projectHyperliquidDescriptor(
|
|
29
|
-
descriptor: ProviderActionDescriptor,
|
|
30
|
-
config: HyperliquidAccountConfig
|
|
31
|
-
): AccountConfigSetting {
|
|
32
|
-
switch (descriptor.type) {
|
|
33
|
-
// Zero-parameter user-approval descriptors. The "satisfied or not"
|
|
34
|
-
// state for these comes from `checkSetup`'s unsatisfied list, not from
|
|
35
|
-
// a projected value.
|
|
36
|
-
case ActionType.APPROVE_AGENT:
|
|
37
|
-
case ActionType.APPROVE_BUILDER_FEE:
|
|
38
|
-
return { type: descriptor.type, values: [] }
|
|
39
|
-
|
|
40
|
-
// `config.abstractionMode === null` means abstraction has never been set;
|
|
41
|
-
// callers fall back to the descriptor's `default` ParamOption.
|
|
42
|
-
case ActionType.ACCOUNT_MODE:
|
|
43
|
-
return {
|
|
44
|
-
type: descriptor.type,
|
|
45
|
-
values: [{ name: 'mode', value: config.abstractionMode }],
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
case ActionType.ACCOUNT_TYPE:
|
|
49
|
-
case ActionType.SEND_ASSET:
|
|
50
|
-
case ActionType.WITHDRAWAL:
|
|
51
|
-
case ActionType.TRANSFER:
|
|
52
|
-
case ActionType.PLACE_ORDER:
|
|
53
|
-
case ActionType.PLACE_TRIGGER_ORDER:
|
|
54
|
-
case ActionType.CANCEL_ORDER:
|
|
55
|
-
case ActionType.CANCEL_ALL_ORDERS:
|
|
56
|
-
case ActionType.MODIFY_ORDER:
|
|
57
|
-
case ActionType.UPDATE_LEVERAGE:
|
|
58
|
-
case ActionType.UPDATE_POSITION_MARGIN:
|
|
59
|
-
case ActionType.REGISTER_API_KEY:
|
|
60
|
-
case ActionType.APPROVE_READ_ONLY_TOKEN:
|
|
61
|
-
case ActionType.DEPOSIT:
|
|
62
|
-
throw new PerpsError(
|
|
63
|
-
PerpsErrorCode.SDKError,
|
|
64
|
-
`Hyperliquid account-config mapper has no projection for ` +
|
|
65
|
-
`descriptor type '${descriptor.type}' — this ActionType is not ` +
|
|
66
|
-
`valid on Provider.setup / Provider.options for Hyperliquid.`
|
|
67
|
-
)
|
|
68
|
-
|
|
69
|
-
default:
|
|
70
|
-
return assertNever(descriptor.type)
|
|
71
|
-
}
|
|
72
|
-
}
|
|
73
|
-
|
|
74
|
-
/**
|
|
75
|
-
* Project the union of Hyperliquid setup + options descriptors against the
|
|
76
|
-
* typed `HyperliquidAccountConfig`. Produces exactly one
|
|
77
|
-
* `AccountConfigSetting` per descriptor, in `setup`-then-`options` order
|
|
78
|
-
* (preserving the order in which the backend emits them).
|
|
79
|
-
*
|
|
80
|
-
* @param config Typed account state for the Hyperliquid account.
|
|
81
|
-
* @param setup `Provider.setup` array as emitted by `/providers`.
|
|
82
|
-
* @param options `Provider.options` array as emitted by `/providers`.
|
|
83
|
-
*/
|
|
84
|
-
export function projectHyperliquidConfigSettings(
|
|
85
|
-
config: HyperliquidAccountConfig,
|
|
86
|
-
setup: ProviderSetup[],
|
|
87
|
-
options: ProviderOption[]
|
|
88
|
-
): AccountConfigSetting[] {
|
|
89
|
-
return [...setup, ...options].map((descriptor) =>
|
|
90
|
-
projectHyperliquidDescriptor(descriptor, config)
|
|
91
|
-
)
|
|
92
|
-
}
|
|
@@ -1,103 +0,0 @@
|
|
|
1
|
-
import type {
|
|
2
|
-
AccountConfigSetting,
|
|
3
|
-
LighterAccountConfig,
|
|
4
|
-
ProviderActionDescriptor,
|
|
5
|
-
ProviderOption,
|
|
6
|
-
ProviderSetup,
|
|
7
|
-
} from '@lifi/perps-types'
|
|
8
|
-
import { ActionType, PerpsErrorCode } from '@lifi/perps-types'
|
|
9
|
-
import { PerpsError } from '../../errors/PerpsError.js'
|
|
10
|
-
import { assertNever } from '../../utils/assertNever.js'
|
|
11
|
-
|
|
12
|
-
/**
|
|
13
|
-
* Project a single Lighter descriptor against the typed
|
|
14
|
-
* `LighterAccountConfig` into an `AccountConfigSetting`.
|
|
15
|
-
*
|
|
16
|
-
* Mapping table:
|
|
17
|
-
*
|
|
18
|
-
* | descriptor.type | projected values
|
|
19
|
-
* |---------------------------|--------------------------------------------------
|
|
20
|
-
* | REGISTER_API_KEY | [] (no parameters)
|
|
21
|
-
* | APPROVE_READ_ONLY_TOKEN | [] (no parameters)
|
|
22
|
-
* | ACCOUNT_MODE | [{ name: 'mode', value: null }] (Lighter has no
|
|
23
|
-
* | | abstraction-mode equivalent; read-only here)
|
|
24
|
-
* | ACCOUNT_TYPE | [{ name: 'tier', value: config.accountType }]
|
|
25
|
-
*
|
|
26
|
-
* The switch is exhaustive over `ActionType` so enum additions force a
|
|
27
|
-
* compile error in the `default` arm. ActionTypes that are not valid on
|
|
28
|
-
* `Provider.setup` / `Provider.options` throw at runtime.
|
|
29
|
-
*/
|
|
30
|
-
function projectLighterDescriptor(
|
|
31
|
-
descriptor: ProviderActionDescriptor,
|
|
32
|
-
config: LighterAccountConfig
|
|
33
|
-
): AccountConfigSetting {
|
|
34
|
-
switch (descriptor.type) {
|
|
35
|
-
// Zero-parameter user-approval descriptors. The "satisfied or not"
|
|
36
|
-
// state comes from `checkSetup`'s unsatisfied list and the
|
|
37
|
-
// `config.apiKeyRegistered` / `config.readOnlyTokenApproved` flags,
|
|
38
|
-
// not from a projected value.
|
|
39
|
-
case ActionType.REGISTER_API_KEY:
|
|
40
|
-
case ActionType.APPROVE_READ_ONLY_TOKEN:
|
|
41
|
-
return { type: descriptor.type, values: [] }
|
|
42
|
-
|
|
43
|
-
// Lighter exposes no abstraction-mode equivalent; if a backend descriptor
|
|
44
|
-
// surfaces ACCOUNT_MODE on Lighter it always projects `null` and callers
|
|
45
|
-
// fall back to the descriptor's `default` ParamOption.
|
|
46
|
-
case ActionType.ACCOUNT_MODE:
|
|
47
|
-
return {
|
|
48
|
-
type: descriptor.type,
|
|
49
|
-
values: [{ name: 'mode', value: null }],
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
// `tier` maps to the raw integer `config.accountType` Lighter publishes;
|
|
53
|
-
// decoding to a human label is the caller's responsibility.
|
|
54
|
-
case ActionType.ACCOUNT_TYPE:
|
|
55
|
-
return {
|
|
56
|
-
type: descriptor.type,
|
|
57
|
-
values: [{ name: 'tier', value: config.accountType }],
|
|
58
|
-
}
|
|
59
|
-
|
|
60
|
-
case ActionType.APPROVE_AGENT:
|
|
61
|
-
case ActionType.APPROVE_BUILDER_FEE:
|
|
62
|
-
case ActionType.SEND_ASSET:
|
|
63
|
-
case ActionType.WITHDRAWAL:
|
|
64
|
-
case ActionType.TRANSFER:
|
|
65
|
-
case ActionType.PLACE_ORDER:
|
|
66
|
-
case ActionType.PLACE_TRIGGER_ORDER:
|
|
67
|
-
case ActionType.CANCEL_ORDER:
|
|
68
|
-
case ActionType.CANCEL_ALL_ORDERS:
|
|
69
|
-
case ActionType.MODIFY_ORDER:
|
|
70
|
-
case ActionType.UPDATE_LEVERAGE:
|
|
71
|
-
case ActionType.UPDATE_POSITION_MARGIN:
|
|
72
|
-
case ActionType.DEPOSIT:
|
|
73
|
-
throw new PerpsError(
|
|
74
|
-
PerpsErrorCode.SDKError,
|
|
75
|
-
`Lighter account-config mapper has no projection for ` +
|
|
76
|
-
`descriptor type '${descriptor.type}' — this ActionType is not ` +
|
|
77
|
-
`valid on Provider.setup / Provider.options for Lighter.`
|
|
78
|
-
)
|
|
79
|
-
|
|
80
|
-
default:
|
|
81
|
-
return assertNever(descriptor.type)
|
|
82
|
-
}
|
|
83
|
-
}
|
|
84
|
-
|
|
85
|
-
/**
|
|
86
|
-
* Project the union of Lighter setup + options descriptors against the typed
|
|
87
|
-
* `LighterAccountConfig`. Produces exactly one `AccountConfigSetting` per
|
|
88
|
-
* descriptor, in `setup`-then-`options` order (preserving the order in which
|
|
89
|
-
* the backend emits them).
|
|
90
|
-
*
|
|
91
|
-
* @param config Typed account state for the Lighter account.
|
|
92
|
-
* @param setup `Provider.setup` array as emitted by `/providers`.
|
|
93
|
-
* @param options `Provider.options` array as emitted by `/providers`.
|
|
94
|
-
*/
|
|
95
|
-
export function projectLighterConfigSettings(
|
|
96
|
-
config: LighterAccountConfig,
|
|
97
|
-
setup: ProviderSetup[],
|
|
98
|
-
options: ProviderOption[]
|
|
99
|
-
): AccountConfigSetting[] {
|
|
100
|
-
return [...setup, ...options].map((descriptor) =>
|
|
101
|
-
projectLighterDescriptor(descriptor, config)
|
|
102
|
-
)
|
|
103
|
-
}
|
|
@@ -1,108 +0,0 @@
|
|
|
1
|
-
import type { Subscription } from '@lifi/perps-types'
|
|
2
|
-
import type { PerpsSDKClient } from '../client/createPerpsClient.js'
|
|
3
|
-
import { getProviders } from '../services/getProviders.js'
|
|
4
|
-
import { HyperliquidWsProvider } from './hyperliquid/HyperliquidWsProvider.js'
|
|
5
|
-
import {
|
|
6
|
-
type LighterAuthProvider,
|
|
7
|
-
LighterWsProvider,
|
|
8
|
-
} from './lighter/LighterWsProvider.js'
|
|
9
|
-
import type {
|
|
10
|
-
EventForSubscription,
|
|
11
|
-
SubscriptionListener,
|
|
12
|
-
WsProvider,
|
|
13
|
-
} from './types.js'
|
|
14
|
-
|
|
15
|
-
export interface PerpsWsClientOptions {
|
|
16
|
-
/**
|
|
17
|
-
* Async function that mints a Lighter auth token for an L1 address. When
|
|
18
|
-
* provided, authenticated Lighter channels (orderUpdates, positions) will
|
|
19
|
-
* use the returned token. The provider is invoked on each subscribe send,
|
|
20
|
-
* including reconnects, so callers can transparently rotate tokens.
|
|
21
|
-
*/
|
|
22
|
-
lighterAuthProvider?: LighterAuthProvider
|
|
23
|
-
}
|
|
24
|
-
|
|
25
|
-
export class PerpsWsClient {
|
|
26
|
-
private readonly client: PerpsSDKClient
|
|
27
|
-
private readonly options: PerpsWsClientOptions
|
|
28
|
-
private providers = new Map<string, WsProvider>()
|
|
29
|
-
private initPromises = new Map<string, Promise<WsProvider>>()
|
|
30
|
-
|
|
31
|
-
constructor(client: PerpsSDKClient, options: PerpsWsClientOptions = {}) {
|
|
32
|
-
this.client = client
|
|
33
|
-
this.options = options
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
async subscribe<S extends Subscription>(
|
|
37
|
-
sub: S,
|
|
38
|
-
listener: (event: EventForSubscription<S>) => void
|
|
39
|
-
): Promise<() => void> {
|
|
40
|
-
const providerKey = sub.dex
|
|
41
|
-
const provider = await this.getOrCreateProvider(providerKey)
|
|
42
|
-
return provider.subscribe(sub, listener as SubscriptionListener)
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
close() {
|
|
46
|
-
for (const p of this.providers.values()) {
|
|
47
|
-
p.close()
|
|
48
|
-
}
|
|
49
|
-
this.providers.clear()
|
|
50
|
-
this.initPromises.clear()
|
|
51
|
-
}
|
|
52
|
-
|
|
53
|
-
private async getOrCreateProvider(provider: string): Promise<WsProvider> {
|
|
54
|
-
const existing = this.providers.get(provider)
|
|
55
|
-
if (existing) {
|
|
56
|
-
return existing
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
let initPromise = this.initPromises.get(provider)
|
|
60
|
-
if (!initPromise) {
|
|
61
|
-
initPromise = this.initProvider(provider)
|
|
62
|
-
this.initPromises.set(provider, initPromise)
|
|
63
|
-
}
|
|
64
|
-
return initPromise
|
|
65
|
-
}
|
|
66
|
-
|
|
67
|
-
private async initProvider(provider: string): Promise<WsProvider> {
|
|
68
|
-
const { providers } = await getProviders(this.client)
|
|
69
|
-
|
|
70
|
-
const providerInfo = providers.find((d) => d.key === provider)
|
|
71
|
-
if (!providerInfo?.wsUrl) {
|
|
72
|
-
throw new Error(`No WebSocket URL found for provider: ${provider}`)
|
|
73
|
-
}
|
|
74
|
-
|
|
75
|
-
const allMarkets = (providerInfo.markets ?? []) as Array<{
|
|
76
|
-
id: string
|
|
77
|
-
}>
|
|
78
|
-
const providerConfig = this.client.config.providers?.[provider]
|
|
79
|
-
const configuredMarkets = providerConfig?.markets
|
|
80
|
-
const filteredMarkets = configuredMarkets
|
|
81
|
-
? allMarkets.filter((m) => configuredMarkets.includes(m.id))
|
|
82
|
-
: allMarkets
|
|
83
|
-
const subProviders = filteredMarkets
|
|
84
|
-
.map((m) => m.id)
|
|
85
|
-
.filter((id) => id !== provider && id !== 'spot')
|
|
86
|
-
|
|
87
|
-
const wsProvider = this.createWsProvider(
|
|
88
|
-
provider,
|
|
89
|
-
providerInfo.wsUrl,
|
|
90
|
-
subProviders
|
|
91
|
-
)
|
|
92
|
-
this.providers.set(provider, wsProvider)
|
|
93
|
-
return wsProvider
|
|
94
|
-
}
|
|
95
|
-
|
|
96
|
-
private createWsProvider(
|
|
97
|
-
provider: string,
|
|
98
|
-
wsUrl: string,
|
|
99
|
-
subProviders: string[]
|
|
100
|
-
): WsProvider {
|
|
101
|
-
if (provider === 'lighter') {
|
|
102
|
-
return new LighterWsProvider(wsUrl, provider, {
|
|
103
|
-
authProvider: this.options.lighterAuthProvider,
|
|
104
|
-
})
|
|
105
|
-
}
|
|
106
|
-
return new HyperliquidWsProvider(wsUrl, provider, subProviders)
|
|
107
|
-
}
|
|
108
|
-
}
|