@lifi/perps-sdk 0.0.0-preview-64fca0d
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/LICENSE +201 -0
- package/dist/cjs/client/PerpsClient.d.ts +63 -0
- package/dist/cjs/client/PerpsClient.d.ts.map +1 -0
- package/dist/cjs/client/PerpsClient.js +269 -0
- package/dist/cjs/client/PerpsClient.js.map +1 -0
- 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 +10 -0
- package/dist/cjs/client/createPerpsClient.d.ts.map +1 -0
- package/dist/cjs/client/createPerpsClient.js +54 -0
- package/dist/cjs/client/createPerpsClient.js.map +1 -0
- 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 +8 -0
- package/dist/cjs/errors/PerpsError.d.ts.map +1 -0
- package/dist/cjs/errors/PerpsError.js +15 -0
- package/dist/cjs/errors/PerpsError.js.map +1 -0
- package/dist/cjs/errors/constants.d.ts +5 -0
- package/dist/cjs/errors/constants.d.ts.map +1 -0
- package/dist/cjs/errors/constants.js +9 -0
- package/dist/cjs/errors/constants.js.map +1 -0
- package/dist/cjs/index.d.ts +78 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +168 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- 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 +13 -0
- package/dist/cjs/services/createAction.d.ts.map +1 -0
- package/dist/cjs/services/createAction.js +17 -0
- package/dist/cjs/services/createAction.js.map +1 -0
- package/dist/cjs/services/executeAction.d.ts +13 -0
- package/dist/cjs/services/executeAction.d.ts.map +1 -0
- package/dist/cjs/services/executeAction.js +18 -0
- package/dist/cjs/services/executeAction.js.map +1 -0
- package/dist/cjs/services/getAccount.d.ts +10 -0
- package/dist/cjs/services/getAccount.d.ts.map +1 -0
- package/dist/cjs/services/getAccount.js +8 -0
- package/dist/cjs/services/getAccount.js.map +1 -0
- package/dist/cjs/services/getActivity.d.ts +15 -0
- package/dist/cjs/services/getActivity.d.ts.map +1 -0
- package/dist/cjs/services/getActivity.js +15 -0
- package/dist/cjs/services/getActivity.js.map +1 -0
- package/dist/cjs/services/getAssets.d.ts +8 -0
- package/dist/cjs/services/getAssets.d.ts.map +1 -0
- package/dist/cjs/services/getAssets.js +11 -0
- package/dist/cjs/services/getAssets.js.map +1 -0
- package/dist/cjs/services/getFills.d.ts +14 -0
- package/dist/cjs/services/getFills.d.ts.map +1 -0
- package/dist/cjs/services/getFills.js +14 -0
- package/dist/cjs/services/getFills.js.map +1 -0
- 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/getMarkets.js +12 -0
- 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 +13 -0
- package/dist/cjs/services/getOhlcv.d.ts.map +1 -0
- package/dist/cjs/services/getOhlcv.js +16 -0
- package/dist/cjs/services/getOhlcv.js.map +1 -0
- package/dist/cjs/services/getOrder.d.ts +11 -0
- package/dist/cjs/services/getOrder.d.ts.map +1 -0
- package/dist/cjs/services/getOrder.js +8 -0
- package/dist/cjs/services/getOrder.js.map +1 -0
- package/dist/cjs/services/getOrderbook.d.ts +10 -0
- package/dist/cjs/services/getOrderbook.d.ts.map +1 -0
- package/dist/cjs/services/getOrderbook.js +13 -0
- package/dist/cjs/services/getOrderbook.js.map +1 -0
- package/dist/cjs/services/getOrders.d.ts +13 -0
- package/dist/cjs/services/getOrders.d.ts.map +1 -0
- package/dist/cjs/services/getOrders.js +13 -0
- package/dist/cjs/services/getOrders.js.map +1 -0
- package/dist/cjs/services/getPositions.d.ts +13 -0
- package/dist/cjs/services/getPositions.d.ts.map +1 -0
- package/dist/cjs/services/getPositions.js +13 -0
- package/dist/cjs/services/getPositions.js.map +1 -0
- package/dist/cjs/services/getPrices.d.ts +9 -0
- package/dist/cjs/services/getPrices.d.ts.map +1 -0
- package/dist/cjs/services/getPrices.js +12 -0
- package/dist/cjs/services/getPrices.js.map +1 -0
- package/dist/cjs/services/getProviders.d.ts +5 -0
- package/dist/cjs/services/getProviders.d.ts.map +1 -0
- package/dist/cjs/services/getProviders.js +8 -0
- package/dist/cjs/services/getProviders.js.map +1 -0
- 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 +6 -0
- package/dist/cjs/services/resolveQuote.d.ts.map +1 -0
- package/dist/cjs/services/resolveQuote.js +36 -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 +63 -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 +4 -0
- package/dist/cjs/storage/storage.d.ts.map +1 -0
- package/dist/cjs/storage/storage.js +47 -0
- package/dist/cjs/storage/storage.js.map +1 -0
- package/dist/cjs/storage/types.d.ts +6 -0
- package/dist/cjs/storage/types.d.ts.map +1 -0
- package/dist/cjs/storage/types.js +3 -0
- package/dist/cjs/storage/types.js.map +1 -0
- 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/transport/request.d.ts +8 -0
- package/dist/cjs/transport/request.d.ts.map +1 -0
- package/dist/cjs/transport/request.js +75 -0
- 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/types/api.js +3 -0
- 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/types/config.js +3 -0
- 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 +3 -0
- package/dist/cjs/utils/accountSummary.d.ts.map +1 -0
- package/dist/cjs/utils/accountSummary.js +25 -0
- package/dist/cjs/utils/accountSummary.js.map +1 -0
- package/dist/cjs/utils/assertNever.d.ts +2 -0
- package/dist/cjs/utils/assertNever.d.ts.map +1 -0
- package/dist/cjs/utils/assertNever.js +7 -0
- package/dist/cjs/utils/assertNever.js.map +1 -0
- package/dist/cjs/utils/calculations.d.ts +51 -0
- package/dist/cjs/utils/calculations.d.ts.map +1 -0
- package/dist/cjs/utils/calculations.js +149 -0
- package/dist/cjs/utils/calculations.js.map +1 -0
- 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 +10 -0
- package/dist/cjs/utils/orderClassification.d.ts.map +1 -0
- package/dist/cjs/utils/orderClassification.js +49 -0
- package/dist/cjs/utils/orderClassification.js.map +1 -0
- package/dist/cjs/utils/orderMath.d.ts +6 -0
- package/dist/cjs/utils/orderMath.d.ts.map +1 -0
- package/dist/cjs/utils/orderMath.js +71 -0
- package/dist/cjs/utils/orderMath.js.map +1 -0
- package/dist/cjs/utils/parse.d.ts +2 -0
- package/dist/cjs/utils/parse.d.ts.map +1 -0
- package/dist/cjs/utils/parse.js +14 -0
- package/dist/cjs/utils/parse.js.map +1 -0
- package/dist/cjs/utils/positionMath.d.ts +32 -0
- package/dist/cjs/utils/positionMath.d.ts.map +1 -0
- package/dist/cjs/utils/positionMath.js +52 -0
- package/dist/cjs/utils/positionMath.js.map +1 -0
- package/dist/cjs/utils/signTypedData.d.ts +5 -0
- package/dist/cjs/utils/signTypedData.d.ts.map +1 -0
- package/dist/cjs/utils/signTypedData.js +23 -0
- package/dist/cjs/utils/signTypedData.js.map +1 -0
- package/dist/cjs/utils/sleep.d.ts +2 -0
- package/dist/cjs/utils/sleep.d.ts.map +1 -0
- package/dist/cjs/utils/sleep.js +6 -0
- package/dist/cjs/utils/sleep.js.map +1 -0
- package/dist/cjs/utils/units.d.ts +3 -0
- package/dist/cjs/utils/units.d.ts.map +1 -0
- package/dist/cjs/utils/units.js +18 -0
- package/dist/cjs/utils/units.js.map +1 -0
- package/dist/cjs/utils/validation.d.ts +2 -0
- package/dist/cjs/utils/validation.d.ts.map +1 -0
- package/dist/cjs/utils/validation.js +16 -0
- package/dist/cjs/utils/validation.js.map +1 -0
- package/dist/cjs/version.d.ts +3 -0
- package/dist/cjs/version.d.ts.map +1 -0
- package/dist/cjs/version.js +6 -0
- package/dist/cjs/version.js.map +1 -0
- 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/cjs/websocket/ReconnectingWebSocket.d.ts +52 -0
- 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/websocket/types.js +3 -0
- package/dist/cjs/websocket/types.js.map +1 -0
- 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 +285 -0
- package/dist/esm/client/PerpsClient.d.ts.map +1 -0
- package/dist/esm/client/PerpsClient.js +498 -0
- package/dist/esm/client/PerpsClient.js.map +1 -0
- 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 +37 -0
- package/dist/esm/client/createPerpsClient.d.ts.map +1 -0
- package/dist/esm/client/createPerpsClient.js +76 -0
- package/dist/esm/client/createPerpsClient.js.map +1 -0
- 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 +16 -0
- package/dist/esm/errors/PerpsError.d.ts.map +1 -0
- package/dist/esm/errors/PerpsError.js +19 -0
- package/dist/esm/errors/PerpsError.js.map +1 -0
- package/dist/esm/errors/constants.d.ts +11 -0
- package/dist/esm/errors/constants.d.ts.map +1 -0
- package/dist/esm/errors/constants.js +12 -0
- package/dist/esm/errors/constants.js.map +1 -0
- package/dist/esm/index.d.ts +86 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +63 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- 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 +26 -0
- package/dist/esm/services/createAction.d.ts.map +1 -0
- package/dist/esm/services/createAction.js +22 -0
- package/dist/esm/services/createAction.js.map +1 -0
- package/dist/esm/services/executeAction.d.ts +26 -0
- package/dist/esm/services/executeAction.d.ts.map +1 -0
- package/dist/esm/services/executeAction.js +26 -0
- package/dist/esm/services/executeAction.js.map +1 -0
- package/dist/esm/services/getAccount.d.ts +35 -0
- package/dist/esm/services/getAccount.d.ts.map +1 -0
- package/dist/esm/services/getAccount.js +25 -0
- package/dist/esm/services/getAccount.js.map +1 -0
- package/dist/esm/services/getActivity.d.ts +39 -0
- package/dist/esm/services/getActivity.d.ts.map +1 -0
- package/dist/esm/services/getActivity.js +29 -0
- package/dist/esm/services/getActivity.js.map +1 -0
- package/dist/esm/services/getAssets.d.ts +27 -0
- package/dist/esm/services/getAssets.d.ts.map +1 -0
- package/dist/esm/services/getAssets.js +22 -0
- package/dist/esm/services/getAssets.js.map +1 -0
- package/dist/esm/services/getFills.d.ts +38 -0
- package/dist/esm/services/getFills.d.ts.map +1 -0
- package/dist/esm/services/getFills.js +28 -0
- package/dist/esm/services/getFills.js.map +1 -0
- 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 +21 -0
- package/dist/esm/services/getMeta.d.ts.map +1 -0
- package/dist/esm/services/getMeta.js +21 -0
- package/dist/esm/services/getMeta.js.map +1 -0
- package/dist/esm/services/getOhlcv.d.ts +36 -0
- package/dist/esm/services/getOhlcv.d.ts.map +1 -0
- package/dist/esm/services/getOhlcv.js +28 -0
- package/dist/esm/services/getOhlcv.js.map +1 -0
- package/dist/esm/services/getOrder.d.ts +33 -0
- package/dist/esm/services/getOrder.d.ts.map +1 -0
- package/dist/esm/services/getOrder.js +22 -0
- package/dist/esm/services/getOrder.js.map +1 -0
- package/dist/esm/services/getOrderbook.d.ts +24 -0
- package/dist/esm/services/getOrderbook.d.ts.map +1 -0
- package/dist/esm/services/getOrderbook.js +17 -0
- package/dist/esm/services/getOrderbook.js.map +1 -0
- package/dist/esm/services/getOrders.d.ts +35 -0
- package/dist/esm/services/getOrders.d.ts.map +1 -0
- package/dist/esm/services/getOrders.js +26 -0
- package/dist/esm/services/getOrders.js.map +1 -0
- package/dist/esm/services/getPositions.d.ts +35 -0
- package/dist/esm/services/getPositions.d.ts.map +1 -0
- package/dist/esm/services/getPositions.js +26 -0
- package/dist/esm/services/getPositions.js.map +1 -0
- package/dist/esm/services/getPrices.d.ts +21 -0
- package/dist/esm/services/getPrices.d.ts.map +1 -0
- package/dist/esm/services/getPrices.js +15 -0
- package/dist/esm/services/getPrices.js.map +1 -0
- package/dist/esm/services/getProviders.d.ts +22 -0
- package/dist/esm/services/getProviders.d.ts.map +1 -0
- package/dist/esm/services/getProviders.js +22 -0
- package/dist/esm/services/getProviders.js.map +1 -0
- 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 +26 -0
- package/dist/esm/services/getTermsAcceptance.d.ts.map +1 -0
- package/dist/esm/services/getTermsAcceptance.js +26 -0
- package/dist/esm/services/getTermsAcceptance.js.map +1 -0
- package/dist/esm/services/resolveQuote.d.ts +26 -0
- package/dist/esm/services/resolveQuote.d.ts.map +1 -0
- package/dist/esm/services/resolveQuote.js +52 -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 +84 -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/esm/storage/storage.d.ts +15 -0
- package/dist/esm/storage/storage.d.ts.map +1 -0
- package/dist/esm/storage/storage.js +56 -0
- 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/storage/types.js +2 -0
- package/dist/esm/storage/types.js.map +1 -0
- 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/transport/request.js +82 -0
- 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 +13 -0
- package/dist/esm/utils/accountSummary.d.ts.map +1 -0
- package/dist/esm/utils/accountSummary.js +32 -0
- package/dist/esm/utils/accountSummary.js.map +1 -0
- package/dist/esm/utils/assertNever.d.ts +20 -0
- package/dist/esm/utils/assertNever.d.ts.map +1 -0
- package/dist/esm/utils/assertNever.js +22 -0
- package/dist/esm/utils/assertNever.js.map +1 -0
- package/dist/esm/utils/calculations.d.ts +223 -0
- package/dist/esm/utils/calculations.d.ts.map +1 -0
- package/dist/esm/utils/calculations.js +291 -0
- package/dist/esm/utils/calculations.js.map +1 -0
- 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 +47 -0
- package/dist/esm/utils/orderClassification.d.ts.map +1 -0
- package/dist/esm/utils/orderClassification.js +78 -0
- package/dist/esm/utils/orderClassification.js.map +1 -0
- package/dist/esm/utils/orderMath.d.ts +44 -0
- package/dist/esm/utils/orderMath.d.ts.map +1 -0
- package/dist/esm/utils/orderMath.js +103 -0
- package/dist/esm/utils/orderMath.js.map +1 -0
- package/dist/esm/utils/parse.d.ts +22 -0
- package/dist/esm/utils/parse.d.ts.map +1 -0
- package/dist/esm/utils/parse.js +31 -0
- package/dist/esm/utils/parse.js.map +1 -0
- package/dist/esm/utils/positionMath.d.ts +107 -0
- package/dist/esm/utils/positionMath.d.ts.map +1 -0
- package/dist/esm/utils/positionMath.js +119 -0
- package/dist/esm/utils/positionMath.js.map +1 -0
- package/dist/esm/utils/signTypedData.d.ts +18 -0
- package/dist/esm/utils/signTypedData.d.ts.map +1 -0
- package/dist/esm/utils/signTypedData.js +32 -0
- package/dist/esm/utils/signTypedData.js.map +1 -0
- package/dist/esm/utils/sleep.d.ts +7 -0
- package/dist/esm/utils/sleep.d.ts.map +1 -0
- package/dist/esm/utils/sleep.js +7 -0
- package/dist/esm/utils/sleep.js.map +1 -0
- package/dist/esm/utils/units.d.ts +27 -0
- package/dist/esm/utils/units.d.ts.map +1 -0
- package/dist/esm/utils/units.js +38 -0
- package/dist/esm/utils/units.js.map +1 -0
- package/dist/esm/utils/validation.d.ts +18 -0
- package/dist/esm/utils/validation.d.ts.map +1 -0
- package/dist/esm/utils/validation.js +29 -0
- package/dist/esm/utils/validation.js.map +1 -0
- package/dist/esm/version.d.ts +3 -0
- package/dist/esm/version.d.ts.map +1 -0
- package/dist/esm/version.js +3 -0
- package/dist/esm/version.js.map +1 -0
- 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/websocket/types.js +2 -0
- package/dist/esm/websocket/types.js.map +1 -0
- 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 +285 -0
- package/dist/types/client/PerpsClient.d.ts.map +1 -0
- 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 +37 -0
- package/dist/types/client/createPerpsClient.d.ts.map +1 -0
- 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 +16 -0
- package/dist/types/errors/PerpsError.d.ts.map +1 -0
- package/dist/types/errors/constants.d.ts +11 -0
- package/dist/types/errors/constants.d.ts.map +1 -0
- package/dist/types/index.d.ts +86 -0
- package/dist/types/index.d.ts.map +1 -0
- 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 +26 -0
- package/dist/types/services/createAction.d.ts.map +1 -0
- package/dist/types/services/executeAction.d.ts +26 -0
- package/dist/types/services/executeAction.d.ts.map +1 -0
- package/dist/types/services/getAccount.d.ts +35 -0
- package/dist/types/services/getAccount.d.ts.map +1 -0
- package/dist/types/services/getActivity.d.ts +39 -0
- package/dist/types/services/getActivity.d.ts.map +1 -0
- package/dist/types/services/getAssets.d.ts +27 -0
- package/dist/types/services/getAssets.d.ts.map +1 -0
- package/dist/types/services/getFills.d.ts +38 -0
- package/dist/types/services/getFills.d.ts.map +1 -0
- 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 +21 -0
- package/dist/types/services/getMeta.d.ts.map +1 -0
- package/dist/types/services/getOhlcv.d.ts +36 -0
- package/dist/types/services/getOhlcv.d.ts.map +1 -0
- package/dist/types/services/getOrder.d.ts +33 -0
- package/dist/types/services/getOrder.d.ts.map +1 -0
- package/dist/types/services/getOrderbook.d.ts +24 -0
- package/dist/types/services/getOrderbook.d.ts.map +1 -0
- package/dist/types/services/getOrders.d.ts +35 -0
- package/dist/types/services/getOrders.d.ts.map +1 -0
- package/dist/types/services/getPositions.d.ts +35 -0
- package/dist/types/services/getPositions.d.ts.map +1 -0
- package/dist/types/services/getPrices.d.ts +21 -0
- package/dist/types/services/getPrices.d.ts.map +1 -0
- package/dist/types/services/getProviders.d.ts +22 -0
- package/dist/types/services/getProviders.d.ts.map +1 -0
- 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 +26 -0
- package/dist/types/services/getTermsAcceptance.d.ts.map +1 -0
- package/dist/types/services/resolveQuote.d.ts +26 -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/types/storage/storage.d.ts +15 -0
- 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 +13 -0
- package/dist/types/utils/accountSummary.d.ts.map +1 -0
- package/dist/types/utils/assertNever.d.ts +20 -0
- package/dist/types/utils/assertNever.d.ts.map +1 -0
- package/dist/types/utils/calculations.d.ts +223 -0
- package/dist/types/utils/calculations.d.ts.map +1 -0
- 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 +47 -0
- package/dist/types/utils/orderClassification.d.ts.map +1 -0
- package/dist/types/utils/orderMath.d.ts +44 -0
- package/dist/types/utils/orderMath.d.ts.map +1 -0
- package/dist/types/utils/parse.d.ts +22 -0
- package/dist/types/utils/parse.d.ts.map +1 -0
- package/dist/types/utils/positionMath.d.ts +107 -0
- package/dist/types/utils/positionMath.d.ts.map +1 -0
- package/dist/types/utils/signTypedData.d.ts +18 -0
- package/dist/types/utils/signTypedData.d.ts.map +1 -0
- package/dist/types/utils/sleep.d.ts +7 -0
- package/dist/types/utils/sleep.d.ts.map +1 -0
- package/dist/types/utils/units.d.ts +27 -0
- package/dist/types/utils/units.d.ts.map +1 -0
- package/dist/types/utils/validation.d.ts +18 -0
- package/dist/types/utils/validation.d.ts.map +1 -0
- package/dist/types/version.d.ts +3 -0
- package/dist/types/version.d.ts.map +1 -0
- 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 +63 -0
- package/src/client/PerpsClient.ts +686 -0
- package/src/client/bindProvider.ts +24 -0
- package/src/client/createPerpsClient.ts +100 -0
- package/src/client/requireProvider.ts +29 -0
- package/src/errors/PerpsError.ts +23 -0
- package/src/errors/constants.ts +10 -0
- package/src/index.ts +215 -0
- 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 +52 -0
- package/src/services/executeAction.ts +56 -0
- package/src/services/getAccount.ts +46 -0
- package/src/services/getActivity.ts +57 -0
- package/src/services/getAssets.ts +38 -0
- package/src/services/getFills.ts +55 -0
- package/src/services/getMarket.ts +52 -0
- package/src/services/getMarkets.ts +40 -0
- package/src/services/getMeta.ts +32 -0
- package/src/services/getOhlcv.ts +52 -0
- package/src/services/getOrder.ts +44 -0
- package/src/services/getOrderbook.ts +37 -0
- package/src/services/getOrders.ts +51 -0
- package/src/services/getPositions.ts +51 -0
- package/src/services/getPrices.ts +33 -0
- package/src/services/getProviders.ts +33 -0
- package/src/services/getQuote.ts +58 -0
- package/src/services/getTermsAcceptance.ts +34 -0
- package/src/services/resolveQuote.ts +90 -0
- package/src/services/resolveSubscribeQuote.ts +107 -0
- package/src/storage/parseStoredRecord.ts +55 -0
- package/src/storage/storage.ts +60 -0
- package/src/storage/types.ts +13 -0
- package/src/transport/fetchWithRetry.ts +116 -0
- package/src/transport/request.ts +123 -0
- 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 +46 -0
- package/src/utils/assertNever.ts +23 -0
- package/src/utils/calculations.ts +407 -0
- 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 +96 -0
- package/src/utils/orderMath.ts +134 -0
- package/src/utils/parse.ts +30 -0
- package/src/utils/positionMath.ts +149 -0
- package/src/utils/signTypedData.ts +41 -0
- package/src/utils/sleep.ts +7 -0
- package/src/utils/units.ts +39 -0
- package/src/utils/validation.ts +38 -0
- package/src/version.ts +2 -0
- 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
|
@@ -0,0 +1,285 @@
|
|
|
1
|
+
import type { AccountResponse, AccountSummary, ActionParamsMap, ActionStep, CreateActionResponse, ExecuteActionResponse, MarketRef, Position, SignedActionStep } from '@lifi/perps-types';
|
|
2
|
+
import { ActionType } from '@lifi/perps-types';
|
|
3
|
+
import type { Address } from 'viem';
|
|
4
|
+
import type { BuildProviderSetupParams, CancelOrdersParams, ExecuteProviderSetupParams, ExecuteProviderSetupResult, GetAccountResult, GetSetupParams, ModifyOrdersParams, PerpsClientOptions, PlaceOrderParams, PlaceTriggerOrderParams, ProviderSetup, WithdrawParams } from '../types/api.js';
|
|
5
|
+
import type { PerpsSDKClient } from '../types/provider.js';
|
|
6
|
+
/**
|
|
7
|
+
* The primary high-level perps API: wraps a {@link PerpsSDKClient} and owns the
|
|
8
|
+
* end-to-end signing pipeline for provider setup, orders, and account-level
|
|
9
|
+
* actions. Construct via `new PerpsClient(options)` or the SDK's higher-level
|
|
10
|
+
* wiring.
|
|
11
|
+
*
|
|
12
|
+
* @public
|
|
13
|
+
*/
|
|
14
|
+
export declare class PerpsClient {
|
|
15
|
+
private sdkClient;
|
|
16
|
+
private providerMetadataCache;
|
|
17
|
+
private _userWallet;
|
|
18
|
+
constructor(options: PerpsClientOptions);
|
|
19
|
+
/**
|
|
20
|
+
* Set or update the end-user's wallet. Used whenever an action's descriptor
|
|
21
|
+
* names the user wallet in its `signers` list. Pass undefined to clear.
|
|
22
|
+
*
|
|
23
|
+
* @public
|
|
24
|
+
*/
|
|
25
|
+
setUserWallet(userWallet: PerpsSDKClient['userWallet']): void;
|
|
26
|
+
/**
|
|
27
|
+
* The underlying low-level {@link PerpsSDKClient} (config, user wallet,
|
|
28
|
+
* provider registry) backing this instance.
|
|
29
|
+
*
|
|
30
|
+
* @public
|
|
31
|
+
*/
|
|
32
|
+
get client(): PerpsSDKClient;
|
|
33
|
+
private getProviderMetadata;
|
|
34
|
+
/**
|
|
35
|
+
* Resolve the registered provider plugin for `provider`, throwing a
|
|
36
|
+
* `PerpsError` when the caller has not registered one via the SDK's
|
|
37
|
+
* `providers` option. The plugin owns signer identity and write-side signing.
|
|
38
|
+
*/
|
|
39
|
+
private requireProvider;
|
|
40
|
+
/**
|
|
41
|
+
* Ask the provider plugin for the signer-bearing wire fields of `action` —
|
|
42
|
+
* the on-wire `signerAddress` and any signer-derived params (e.g.
|
|
43
|
+
* Hyperliquid's `agentAddress` for `APPROVE_AGENT`). Forwards the descriptor's
|
|
44
|
+
* `signers` so the plugin can branch on signer role. Returns empty when the
|
|
45
|
+
* plugin signs as the user or with a non-EVM credential. Core constructs no
|
|
46
|
+
* `signerAddress` itself; signer identity is plugin-owned.
|
|
47
|
+
*/
|
|
48
|
+
private resolveActionRequest;
|
|
49
|
+
/**
|
|
50
|
+
* Delegate signing of `actions` to the provider plugin. The plugin owns
|
|
51
|
+
* every signing arm and branches on the descriptor's `signers` internally,
|
|
52
|
+
* reading the end-user's wallet from the {@link SignActionsContext} when an
|
|
53
|
+
* arm signs as the user.
|
|
54
|
+
*/
|
|
55
|
+
private delegateSignActions;
|
|
56
|
+
/**
|
|
57
|
+
* Assemble the per-call context the provider plugin needs in order to sign:
|
|
58
|
+
* the end-user's wallet and the descriptor's declared `signers`. Core
|
|
59
|
+
* forwards `signers` as data so the plugin can pick WHO signs; it does not
|
|
60
|
+
* branch on them. Provider-owned session credentials (the Hyperliquid agent
|
|
61
|
+
* keypair, Lighter's API key) are resolved inside the provider's
|
|
62
|
+
* `signActions`, not threaded through here.
|
|
63
|
+
*/
|
|
64
|
+
private buildSignActionsContext;
|
|
65
|
+
/**
|
|
66
|
+
* Sign a single provider setup action step by delegating to the provider
|
|
67
|
+
* plugin, which branches on the step's signing scheme internally. Lets
|
|
68
|
+
* consumers collect signed setup actions without embedding per-method
|
|
69
|
+
* signing logic.
|
|
70
|
+
*
|
|
71
|
+
* @throws {PerpsError} When the step's action is not declared by the provider.
|
|
72
|
+
* @public
|
|
73
|
+
*/
|
|
74
|
+
signProviderSetupAction(provider: string, address: Address, step: ActionStep): Promise<SignedActionStep>;
|
|
75
|
+
/**
|
|
76
|
+
* Build (but do not sign or submit) the unsigned action steps for `action`,
|
|
77
|
+
* letting the provider plugin contribute any signer-bearing request fields.
|
|
78
|
+
*
|
|
79
|
+
* @public
|
|
80
|
+
*/
|
|
81
|
+
buildAction<T extends ActionType>(action: T, params: {
|
|
82
|
+
provider: string;
|
|
83
|
+
address: Address;
|
|
84
|
+
params: ActionParamsMap[T];
|
|
85
|
+
}): Promise<CreateActionResponse>;
|
|
86
|
+
/**
|
|
87
|
+
* Fetch the user's account state from the backend and attach the
|
|
88
|
+
* SDK-projected `settings` array — one `AccountConfigSetting` per
|
|
89
|
+
* descriptor on `Provider.setup` + `Provider.options`. Callers read
|
|
90
|
+
* `result.settings` directly without re-deriving values from the typed
|
|
91
|
+
* `AccountConfig`.
|
|
92
|
+
*
|
|
93
|
+
* @throws {PerpsError} When the provider plugin is not registered, or the
|
|
94
|
+
* backend account fetch fails.
|
|
95
|
+
* @public
|
|
96
|
+
*/
|
|
97
|
+
getAccount(params: {
|
|
98
|
+
provider: string;
|
|
99
|
+
address: Address;
|
|
100
|
+
}): Promise<GetAccountResult>;
|
|
101
|
+
/**
|
|
102
|
+
* Roll an already-fetched {@link AccountResponse} (plus its positions) up
|
|
103
|
+
* into an {@link AccountSummary}, delegating to the owning provider so the
|
|
104
|
+
* venue-specific collateral and margin semantics are applied correctly.
|
|
105
|
+
*/
|
|
106
|
+
getPortfolioSummary(account: AccountResponse, positions: Position[]): AccountSummary;
|
|
107
|
+
/**
|
|
108
|
+
* Thin existence check for a provider account at `address`. Returns
|
|
109
|
+
* `true` when `getAccount` resolves, `false` when the backend reports
|
|
110
|
+
* `PerpsErrorCode.AccountNotFound`, and re-throws on any other error
|
|
111
|
+
* (transport failures, validation errors, server errors).
|
|
112
|
+
*
|
|
113
|
+
* @throws {PerpsError} On any backend error other than
|
|
114
|
+
* `PerpsErrorCode.AccountNotFound`.
|
|
115
|
+
* @public
|
|
116
|
+
*/
|
|
117
|
+
accountExists(provider: string, address: Address): Promise<boolean>;
|
|
118
|
+
/**
|
|
119
|
+
* Return the unsatisfied entries on `Provider.setup` for this account as a
|
|
120
|
+
* flat, self-describing list. Trading is gated on `isReady === true`.
|
|
121
|
+
*
|
|
122
|
+
* `Provider.options` descriptors are NEVER returned here — options are
|
|
123
|
+
* post-setup tunables and never gate trading. Option state is surfaced
|
|
124
|
+
* separately via `getAccount().settings`.
|
|
125
|
+
*
|
|
126
|
+
* @public
|
|
127
|
+
*/
|
|
128
|
+
checkSetup(params: GetSetupParams): Promise<ProviderSetup>;
|
|
129
|
+
/**
|
|
130
|
+
* Build the unsigned setup `ActionStep`s still outstanding for an account,
|
|
131
|
+
* ordered by descriptor `sequence`. The backend filters already-satisfied
|
|
132
|
+
* setup; each plugin contributes its own signer-bearing request fields and
|
|
133
|
+
* any local-state params (e.g. Lighter's known pubkey).
|
|
134
|
+
*
|
|
135
|
+
* @public
|
|
136
|
+
*/
|
|
137
|
+
buildProviderSetup(params: BuildProviderSetupParams): Promise<CreateActionResponse>;
|
|
138
|
+
/**
|
|
139
|
+
* Submit the signed setup steps returned by `checkSetup` (and signed by the
|
|
140
|
+
* caller / `signProviderSetupAction`). Routes the batch on the first step's
|
|
141
|
+
* action and lets the plugin contribute that action's `signerAddress`.
|
|
142
|
+
* Throws on any per-step venue rejection.
|
|
143
|
+
*
|
|
144
|
+
* @public
|
|
145
|
+
*/
|
|
146
|
+
executeProviderSetup(params: ExecuteProviderSetupParams): Promise<ExecuteProviderSetupResult>;
|
|
147
|
+
/**
|
|
148
|
+
* Sign and submit one pre-staged setup `ActionStep` end-to-end.
|
|
149
|
+
*
|
|
150
|
+
* The caller is expected to have already obtained the step from a prior
|
|
151
|
+
* {@link checkSetup} call (typically cached by the widget's react-query) —
|
|
152
|
+
* we do NOT refetch. This avoids the double `createAction` round-trip and
|
|
153
|
+
* keeps the nonce that was allocated at staging time committed all the way
|
|
154
|
+
* through submit. If the cached step has gone stale (Lighter's `/nextNonce`
|
|
155
|
+
* advanced underneath us), `executeProviderSetup` will surface a nonce
|
|
156
|
+
* conflict that the caller invalidates on, refetches `checkSetup`, and
|
|
157
|
+
* retries with a fresh step.
|
|
158
|
+
*
|
|
159
|
+
* @throws {PerpsError} When the step's action is not in the provider's
|
|
160
|
+
* `setup` descriptors.
|
|
161
|
+
* @public
|
|
162
|
+
*/
|
|
163
|
+
executeProviderSetupAction(params: {
|
|
164
|
+
provider: string;
|
|
165
|
+
address: Address;
|
|
166
|
+
step: ActionStep;
|
|
167
|
+
}): Promise<void>;
|
|
168
|
+
/**
|
|
169
|
+
* Sign and submit a single provider-option change (a `Provider.options`
|
|
170
|
+
* tunable such as Lighter `ACCOUNT_TYPE` or Hyperliquid `ACCOUNT_MODE`)
|
|
171
|
+
* end-to-end, throwing on a venue rejection.
|
|
172
|
+
*
|
|
173
|
+
* Options are dispatched through the same {@link execute} pipeline as
|
|
174
|
+
* trades, but unlike a trade an option change is a single mandatory action:
|
|
175
|
+
* a per-action `success: false` (returned as a 200 OK) means the user's
|
|
176
|
+
* selection was rejected and must surface, not be silently dropped. This
|
|
177
|
+
* wrapper inspects the result and throws a {@link PerpsError} carrying the
|
|
178
|
+
* venue `error`, giving options the same throw contract that setup has via
|
|
179
|
+
* {@link executeProviderSetupAction}. The only structural difference is that
|
|
180
|
+
* an option carries `params` (the selected value) rather than a pre-staged
|
|
181
|
+
* step.
|
|
182
|
+
*
|
|
183
|
+
* `execute` itself is unchanged — it still returns results without throwing,
|
|
184
|
+
* which the trade hooks rely on for partial-fill handling.
|
|
185
|
+
*
|
|
186
|
+
* @throws {PerpsError} `PerpsErrorCode.ExchangeRejected` carrying the venue
|
|
187
|
+
* error when any returned result has `success: false`; also the errors
|
|
188
|
+
* `execute` itself can throw (unregistered provider, no signer, signing
|
|
189
|
+
* failure).
|
|
190
|
+
* @public
|
|
191
|
+
*/
|
|
192
|
+
executeProviderOption<T extends ActionType>(params: {
|
|
193
|
+
provider: string;
|
|
194
|
+
address: Address;
|
|
195
|
+
action: T;
|
|
196
|
+
params: ActionParamsMap[T];
|
|
197
|
+
}): Promise<void>;
|
|
198
|
+
/**
|
|
199
|
+
* Place a market or limit order. Convenience wrapper over {@link execute}
|
|
200
|
+
* with `ActionType.PLACE_ORDER`.
|
|
201
|
+
*
|
|
202
|
+
* @throws {PerpsError} When the provider is unregistered or the action
|
|
203
|
+
* cannot be signed/submitted.
|
|
204
|
+
* @example
|
|
205
|
+
* ```ts
|
|
206
|
+
* await client.placeOrder({
|
|
207
|
+
* provider: 'hyperliquid',
|
|
208
|
+
* address: '0xUser',
|
|
209
|
+
* market: { symbol: 'ETH' },
|
|
210
|
+
* side: 'buy',
|
|
211
|
+
* size: '0.1',
|
|
212
|
+
* })
|
|
213
|
+
* ```
|
|
214
|
+
* @public
|
|
215
|
+
*/
|
|
216
|
+
placeOrder(params: PlaceOrderParams): Promise<ExecuteActionResponse>;
|
|
217
|
+
/**
|
|
218
|
+
* Place a trigger (take-profit / stop-loss) order. Convenience wrapper over
|
|
219
|
+
* {@link execute} with `ActionType.PLACE_TRIGGER_ORDER`.
|
|
220
|
+
*
|
|
221
|
+
* @throws {PerpsError} When the provider is unregistered or the action
|
|
222
|
+
* cannot be signed/submitted.
|
|
223
|
+
* @public
|
|
224
|
+
*/
|
|
225
|
+
placeTriggerOrder(params: PlaceTriggerOrderParams): Promise<ExecuteActionResponse>;
|
|
226
|
+
/**
|
|
227
|
+
* Cancel one or more open orders. Convenience wrapper over {@link execute}
|
|
228
|
+
* with `ActionType.CANCEL_ORDER`.
|
|
229
|
+
*
|
|
230
|
+
* @throws {PerpsError} When the provider is unregistered or the action
|
|
231
|
+
* cannot be signed/submitted.
|
|
232
|
+
* @public
|
|
233
|
+
*/
|
|
234
|
+
cancelOrders(params: CancelOrdersParams): Promise<ExecuteActionResponse>;
|
|
235
|
+
/**
|
|
236
|
+
* Modify one or more open orders. Convenience wrapper over {@link execute}
|
|
237
|
+
* with `ActionType.MODIFY_ORDER`.
|
|
238
|
+
*
|
|
239
|
+
* @throws {PerpsError} When the provider is unregistered or the action
|
|
240
|
+
* cannot be signed/submitted.
|
|
241
|
+
* @public
|
|
242
|
+
*/
|
|
243
|
+
modifyOrders(params: ModifyOrdersParams): Promise<ExecuteActionResponse>;
|
|
244
|
+
/**
|
|
245
|
+
* Add or remove isolated-position margin. Convenience wrapper over
|
|
246
|
+
* {@link execute} with `ActionType.UPDATE_POSITION_MARGIN`.
|
|
247
|
+
*
|
|
248
|
+
* @throws {PerpsError} When the provider is unregistered or the action
|
|
249
|
+
* cannot be signed/submitted.
|
|
250
|
+
* @public
|
|
251
|
+
*/
|
|
252
|
+
updatePositionMargin(params: {
|
|
253
|
+
provider: string;
|
|
254
|
+
address: Address;
|
|
255
|
+
market: MarketRef;
|
|
256
|
+
action: 'add' | 'remove';
|
|
257
|
+
amount: string;
|
|
258
|
+
}): Promise<ExecuteActionResponse>;
|
|
259
|
+
/**
|
|
260
|
+
* Withdraw funds from the provider account. Convenience wrapper over
|
|
261
|
+
* {@link execute} with `ActionType.WITHDRAWAL`.
|
|
262
|
+
*
|
|
263
|
+
* @throws {PerpsError} When the provider is unregistered or the action
|
|
264
|
+
* cannot be signed/submitted.
|
|
265
|
+
* @public
|
|
266
|
+
*/
|
|
267
|
+
withdraw(params: WithdrawParams): Promise<ExecuteActionResponse>;
|
|
268
|
+
/**
|
|
269
|
+
* Execute any action through the SDK's signing pipeline: fetch the unsigned
|
|
270
|
+
* steps, delegate signing to the provider plugin (which branches on the
|
|
271
|
+
* descriptor's scheme and signer internally), and submit. Core stays
|
|
272
|
+
* signer-agnostic — the plugin owns WHO signs and HOW.
|
|
273
|
+
*
|
|
274
|
+
* @throws {PerpsError} When the action is not declared by the provider,
|
|
275
|
+
* the plugin cannot sign it, or submission fails.
|
|
276
|
+
* @public
|
|
277
|
+
*/
|
|
278
|
+
execute<T extends ActionType>(params: {
|
|
279
|
+
provider: string;
|
|
280
|
+
address: Address;
|
|
281
|
+
action: T;
|
|
282
|
+
params: ActionParamsMap[T];
|
|
283
|
+
}): Promise<ExecuteActionResponse>;
|
|
284
|
+
}
|
|
285
|
+
//# sourceMappingURL=PerpsClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PerpsClient.d.ts","sourceRoot":"","sources":["../../../src/client/PerpsClient.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { PerpsProvider, PerpsProviderPlugin, PerpsSDKClient } from '../types/provider.js';
|
|
2
|
+
/**
|
|
3
|
+
* Inject `client` into a {@link PerpsProviderPlugin} once via its
|
|
4
|
+
* {@link PerpsProviderPlugin.bind} hook, returning the runtime
|
|
5
|
+
* {@link PerpsProvider} — the plugin with its one-shot `bind` member dropped so
|
|
6
|
+
* consumers cannot re-bind a live provider. The read methods are already
|
|
7
|
+
* clientless (`getX(params, options?)`); they resolve their runtime deps from
|
|
8
|
+
* the context the plugin captured during `bind`.
|
|
9
|
+
*
|
|
10
|
+
* @internal
|
|
11
|
+
*/
|
|
12
|
+
export declare function bindProvider(plugin: PerpsProviderPlugin, client: PerpsSDKClient): PerpsProvider;
|
|
13
|
+
//# sourceMappingURL=bindProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bindProvider.d.ts","sourceRoot":"","sources":["../../../src/client/bindProvider.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EACb,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAE7B;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,mBAAmB,EAC3B,MAAM,EAAE,cAAc,GACrB,aAAa,CAIf"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { PerpsConfig } from '../types/api.js';
|
|
2
|
+
import type { ProviderConfigs } from '../types/config.js';
|
|
3
|
+
import type { PerpsProviderPlugin, PerpsSDKClient } from '../types/provider.js';
|
|
4
|
+
/**
|
|
5
|
+
* Default LI.FI perps API base URL used when `PerpsConfig.apiUrl` is omitted.
|
|
6
|
+
*
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export declare const DEFAULT_API_URL = "https://develop.li.quest/v1/perps";
|
|
10
|
+
/**
|
|
11
|
+
* Construct the low-level {@link PerpsSDKClient} — config, the optional
|
|
12
|
+
* end-user wallet, and provider registry — shared by the service functions and
|
|
13
|
+
* the higher-level {@link PerpsClient}.
|
|
14
|
+
*
|
|
15
|
+
* @throws {PerpsError} When `options.integrator` is missing.
|
|
16
|
+
* @example
|
|
17
|
+
* ```ts
|
|
18
|
+
* const client = createPerpsClient({
|
|
19
|
+
* integrator: 'my-app',
|
|
20
|
+
* apiKey: 'key',
|
|
21
|
+
* providers: [hyperliquidProvider()],
|
|
22
|
+
* })
|
|
23
|
+
* ```
|
|
24
|
+
* @public
|
|
25
|
+
*/
|
|
26
|
+
export declare function createPerpsClient(options: PerpsConfig): PerpsSDKClient;
|
|
27
|
+
/**
|
|
28
|
+
* Split the overloaded `providers` option into its two shapes — the
|
|
29
|
+
* plugin array used by {@link PerpsSDKClient.getProvider}, and the
|
|
30
|
+
* keyed `ProviderConfigs` consumed internally by `PerpsWsClient` for
|
|
31
|
+
* markets filtering.
|
|
32
|
+
*/
|
|
33
|
+
export declare function splitProviders(input: PerpsProviderPlugin[] | ProviderConfigs | undefined): {
|
|
34
|
+
providerPlugins: PerpsProviderPlugin[];
|
|
35
|
+
providerConfigs?: ProviderConfigs;
|
|
36
|
+
};
|
|
37
|
+
//# sourceMappingURL=createPerpsClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createPerpsClient.d.ts","sourceRoot":"","sources":["../../../src/client/createPerpsClient.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAClD,OAAO,KAAK,EAAmB,eAAe,EAAE,MAAM,oBAAoB,CAAA;AAC1E,OAAO,KAAK,EAEV,mBAAmB,EACnB,cAAc,EACf,MAAM,sBAAsB,CAAA;AAG7B;;;;GAIG;AACH,eAAO,MAAM,eAAe,sCAAsC,CAAA;AAElE;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,WAAW,GAAG,cAAc,CA4CtE;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,mBAAmB,EAAE,GAAG,eAAe,GAAG,SAAS,GACzD;IACD,eAAe,EAAE,mBAAmB,EAAE,CAAA;IACtC,eAAe,CAAC,EAAE,eAAe,CAAA;CAClC,CAQA"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { PerpsProvider, PerpsSDKClient } from '../types/provider.js';
|
|
2
|
+
/**
|
|
3
|
+
* Resolve the registered bound {@link PerpsProvider} for `provider`, or throw.
|
|
4
|
+
* Account reads run direct-to-venue through the provider, so a missing one is a
|
|
5
|
+
* wiring error (the consumer must pass it to
|
|
6
|
+
* `createPerpsClient({ providers: [...] })`) rather than a runtime-recoverable
|
|
7
|
+
* state.
|
|
8
|
+
*
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export declare function requireProvider(client: PerpsSDKClient, provider: string): PerpsProvider;
|
|
12
|
+
//# sourceMappingURL=requireProvider.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"requireProvider.d.ts","sourceRoot":"","sources":["../../../src/client/requireProvider.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAEzE;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,GACf,aAAa,CAYf"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { PerpsErrorCode } from '@lifi/perps-types';
|
|
2
|
+
/**
|
|
3
|
+
* Error thrown by every SDK code path — backend error responses, transport
|
|
4
|
+
* failures, and SDK-side validation alike. Carries a {@link PerpsErrorCode}
|
|
5
|
+
* for programmatic branching and an optional `tool` tag identifying the
|
|
6
|
+
* originating package.
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export declare class PerpsError extends Error {
|
|
11
|
+
code: PerpsErrorCode;
|
|
12
|
+
name: string;
|
|
13
|
+
tool?: string;
|
|
14
|
+
constructor(code?: PerpsErrorCode, message?: string);
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=PerpsError.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PerpsError.d.ts","sourceRoot":"","sources":["../../../src/errors/PerpsError.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAA;AAElD;;;;;;;GAOG;AACH,qBAAa,UAAW,SAAQ,KAAK;IACnC,IAAI,EAAE,cAAc,CAAA;IACX,IAAI,SAAe;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAA;gBAGX,IAAI,GAAE,cAA4C,EAClD,OAAO,SAA2B;CAKrC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Canonical human-readable messages paired with SDK-originated
|
|
3
|
+
* {@link PerpsError}s.
|
|
4
|
+
*
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export declare enum PerpsErrorMessage {
|
|
8
|
+
AgentNotFound = "Agent not found. Complete provider setup (APPROVE_AGENT) first.",
|
|
9
|
+
AgentStorageCorrupt = "Stored agent keypair is malformed. Revoke and re-approve the agent (APPROVE_AGENT) to regenerate it."
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=constants.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/errors/constants.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,oBAAY,iBAAiB;IAC3B,aAAa,oEAAoE;IACjF,mBAAmB,yGAAyG;CAC7H"}
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* `@lifi/perps-sdk` — the public entry point. Exports `createPerpsClient` and
|
|
3
|
+
* `PerpsClient` (the primary API), the realtime `PerpsWsClient`, the pure
|
|
4
|
+
* calculation/parsing/order helpers, and re-exports the shared `@lifi/perps-types`.
|
|
5
|
+
*
|
|
6
|
+
* @packageDocumentation
|
|
7
|
+
* @public
|
|
8
|
+
*/
|
|
9
|
+
export * from '@lifi/perps-types';
|
|
10
|
+
export { createPerpsClient, DEFAULT_API_URL, } from './client/createPerpsClient.js';
|
|
11
|
+
export { PerpsClient } from './client/PerpsClient.js';
|
|
12
|
+
export { PerpsErrorMessage } from './errors/constants.js';
|
|
13
|
+
export { PerpsError } from './errors/PerpsError.js';
|
|
14
|
+
export { AssetRegistry, getAssetRegistry } from './registry/assetRegistry.js';
|
|
15
|
+
export { getMarketRegistry, MarketRegistry, toMarketDisplay, } from './registry/marketRegistry.js';
|
|
16
|
+
export type { CreateActionParams } from './services/createAction.js';
|
|
17
|
+
export { createAction } from './services/createAction.js';
|
|
18
|
+
export type { ExecuteActionParams } from './services/executeAction.js';
|
|
19
|
+
export { executeAction } from './services/executeAction.js';
|
|
20
|
+
export type { GetAccountParams } from './services/getAccount.js';
|
|
21
|
+
export { getAccount } from './services/getAccount.js';
|
|
22
|
+
export type { GetActivityParams } from './services/getActivity.js';
|
|
23
|
+
export { getActivity } from './services/getActivity.js';
|
|
24
|
+
export type { GetAssetsParams } from './services/getAssets.js';
|
|
25
|
+
export { getAssets } from './services/getAssets.js';
|
|
26
|
+
export type { GetFillsParams } from './services/getFills.js';
|
|
27
|
+
export { getFills } from './services/getFills.js';
|
|
28
|
+
export type { GetMarketParams } from './services/getMarket.js';
|
|
29
|
+
export { getMarket } from './services/getMarket.js';
|
|
30
|
+
export type { GetMarketsParams } from './services/getMarkets.js';
|
|
31
|
+
export { getMarkets } from './services/getMarkets.js';
|
|
32
|
+
export { getMeta } from './services/getMeta.js';
|
|
33
|
+
export type { GetOhlcvParams } from './services/getOhlcv.js';
|
|
34
|
+
export { getOhlcv } from './services/getOhlcv.js';
|
|
35
|
+
export type { GetOrderParams } from './services/getOrder.js';
|
|
36
|
+
export { getOrder } from './services/getOrder.js';
|
|
37
|
+
export type { GetOrderbookParams } from './services/getOrderbook.js';
|
|
38
|
+
export { getOrderbook } from './services/getOrderbook.js';
|
|
39
|
+
export type { GetOrdersParams } from './services/getOrders.js';
|
|
40
|
+
export { getOrders } from './services/getOrders.js';
|
|
41
|
+
export type { GetPositionsParams } from './services/getPositions.js';
|
|
42
|
+
export { getPositions } from './services/getPositions.js';
|
|
43
|
+
export type { GetPricesParams } from './services/getPrices.js';
|
|
44
|
+
export { getPrices } from './services/getPrices.js';
|
|
45
|
+
export { getProviders } from './services/getProviders.js';
|
|
46
|
+
export type { GetQuoteParams } from './services/getQuote.js';
|
|
47
|
+
export { getQuote } from './services/getQuote.js';
|
|
48
|
+
export { getTermsAcceptance } from './services/getTermsAcceptance.js';
|
|
49
|
+
export { resolveQuote, resolveQuoteMarket } from './services/resolveQuote.js';
|
|
50
|
+
export { QUOTE_THROTTLE_MS, resolveSubscribeQuote, } from './services/resolveSubscribeQuote.js';
|
|
51
|
+
export { parseStoredRecord, readValidatedRecord, } from './storage/parseStoredRecord.js';
|
|
52
|
+
export { createMemoryStorage, localStorageAdapter } from './storage/storage.js';
|
|
53
|
+
export type { StorageAdapter } from './storage/types.js';
|
|
54
|
+
export type { FetchWithRetryOptions } from './transport/fetchWithRetry.js';
|
|
55
|
+
export { fetchWithRetry } from './transport/fetchWithRetry.js';
|
|
56
|
+
export type { ProviderRetryConfig, ResolvedRetryPolicy, RetryAttemptContext, RetryClassification, RetryClassifyContext, RetryConfig, RetryPolicy, } from './transport/retryPolicy.js';
|
|
57
|
+
export { DISABLED_RETRY, LIFI_REQUEST_KEY, LIFI_RETRY_DEFAULTS, resolveRetryPolicy, } from './transport/retryPolicy.js';
|
|
58
|
+
export type { BuildProviderSetupParams, CancelOrdersParams, ExecuteProviderSetupParams, ExecuteProviderSetupResult, GetAccountResult, GetSetupParams, ModifyOrdersParams, PerpsClientOptions, PerpsConfig, PlaceOrderParams as ClientPlaceOrderParams, PlaceTriggerOrderParams as ClientPlaceTriggerOrderParams, ProviderSetup, } from './types/api.js';
|
|
59
|
+
export type { HyperliquidConfig, PerpsBaseConfig, PerpsClientSigner, ProviderConfig, ProviderConfigs, RequestInterceptor, SDKRequestOptions, } from './types/config.js';
|
|
60
|
+
export type { ActionSignerContribution, LiquidationEstimateParams, PerpsProvider, PerpsProviderPlugin, PerpsSDKClient, ProviderGetAccountParams, ProviderGetActivityParams, ProviderGetFillsParams, ProviderGetOrderParams, ProviderGetOrdersParams, ProviderGetPositionsParams, ProviderGetQuoteParams, QuoteListener, SignActionsContext, } from './types/provider.js';
|
|
61
|
+
export { summarizeAccount } from './utils/accountSummary.js';
|
|
62
|
+
export type { ExpectedPnl } from './utils/calculations.js';
|
|
63
|
+
export { applySlippage, buildQuote, calculateExpectedPnl, calculateNotionalValue, calculatePositionSize, calculateRealizedPnlPercent, calculateRequiredMargin, calculateRoe, calculateUnrealizedPnl, effectiveLeverage, estimateFees, liquidationDistancePercent, percentFromPrice, priceFromPercent, removableMargin, walkOrderbook, } from './utils/calculations.js';
|
|
64
|
+
export type { DepositProviderKey } from './utils/depositChain.js';
|
|
65
|
+
export { LIFI_DEPOSIT_CHAIN_BY_PROVIDER, lifiDepositChainForProvider, } from './utils/depositChain.js';
|
|
66
|
+
export { ExplorerChainId, explorerTxUrl } from './utils/explorer.js';
|
|
67
|
+
export { classifyFillFromPosition } from './utils/fillClassification.js';
|
|
68
|
+
export type { FormatOptions } from './utils/format.js';
|
|
69
|
+
export { formatCompactUsd, formatPrice, formatSignedPercent, formatSignedUsd, formatUsd, } from './utils/format.js';
|
|
70
|
+
export { ACTIVE_ORDER_STATUSES, classifyFill, FillClassification, isActiveOrderStatus, isStopLossOrder, isTakeProfitOrder, isTpSlOrder, } from './utils/orderClassification.js';
|
|
71
|
+
export { expectedRealizedPnlForOpenOrder, expectedRealizedPnlForTriggerOrder, findMatchingPosition, resolveCloseSize, } from './utils/orderMath.js';
|
|
72
|
+
export { stringToFloat } from './utils/parse.js';
|
|
73
|
+
export { directionSign, estimateIsolatedLiquidationPrice, predictAverageEntryPrice, predictNewLeverage, predictUnrealizedPnl, realizedPnlOnClose, } from './utils/positionMath.js';
|
|
74
|
+
export { signTypedData, signTypedDataWithSigner, } from './utils/signTypedData.js';
|
|
75
|
+
export { fromBaseUnits, fromBaseUnitsNumber } from './utils/units.js';
|
|
76
|
+
export { validateMargin } from './utils/validation.js';
|
|
77
|
+
export { name, version } from './version.js';
|
|
78
|
+
export { cachePromise } from './websocket/cachePromise.js';
|
|
79
|
+
export type { PerpsWsClientOptions, WsProviderFactory, } from './websocket/PerpsWsClient.js';
|
|
80
|
+
export { PerpsWsClient } from './websocket/PerpsWsClient.js';
|
|
81
|
+
export type { ReconnectingWebSocketOptions } from './websocket/ReconnectingWebSocket.js';
|
|
82
|
+
export { ReconnectingWebSocket } from './websocket/ReconnectingWebSocket.js';
|
|
83
|
+
export type { EventForSubscription, SubscriptionListener, WsConnectionStatus, WsProvider, WsStatusListener, } from './websocket/types.js';
|
|
84
|
+
export { WS_CHANNEL_TEARDOWN_LINGER_MS, WsProviderBase, } from './websocket/WsProviderBase.js';
|
|
85
|
+
export { wsLog } from './websocket/wsLog.js';
|
|
86
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { Asset } from '@lifi/perps-types';
|
|
2
|
+
import type { PerpsSDKClient } from '../types/provider.js';
|
|
3
|
+
import { ReferenceDataRegistry } from './referenceDataRegistry.js';
|
|
4
|
+
/**
|
|
5
|
+
* Per-provider index over the backend's `/assets` token registry, keyed by
|
|
6
|
+
* `Asset.id` — the provider-native asset id (Lighter: the stringified
|
|
7
|
+
* `asset_id`, Hyperliquid spot: the venue token index). Obtain via
|
|
8
|
+
* {@link getAssetRegistry}.
|
|
9
|
+
*
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
export declare class AssetRegistry extends ReferenceDataRegistry<Asset> {
|
|
13
|
+
constructor(client: PerpsSDKClient, provider: string);
|
|
14
|
+
/** The most recently synced asset list. Empty before the first {@link sync}. */
|
|
15
|
+
get assets(): readonly Asset[];
|
|
16
|
+
protected fetchItems(bypassHttpCache: boolean): Promise<Asset[]>;
|
|
17
|
+
protected keyOf(asset: Asset): string;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The stable {@link AssetRegistry} for `(client, provider)`.
|
|
21
|
+
*
|
|
22
|
+
* @public
|
|
23
|
+
*/
|
|
24
|
+
export declare function getAssetRegistry(client: PerpsSDKClient, provider: string): AssetRegistry;
|
|
25
|
+
//# sourceMappingURL=assetRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assetRegistry.d.ts","sourceRoot":"","sources":["../../../src/registry/assetRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAkB,MAAM,mBAAmB,CAAA;AAE9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE;;;;;;;GAOG;AACH,qBAAa,aAAc,SAAQ,qBAAqB,CAAC,KAAK,CAAC;gBACjD,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM;IAIpD,gFAAgF;IAChF,IAAI,MAAM,IAAI,SAAS,KAAK,EAAE,CAE7B;IAED,SAAS,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAWhE,SAAS,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,MAAM;CAGtC;AAID;;;;GAIG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,GACf,aAAa,CAYf"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import type { Market, MarketDisplay } from '@lifi/perps-types';
|
|
2
|
+
import type { PerpsSDKClient } from '../types/provider.js';
|
|
3
|
+
import { ReferenceDataRegistry } from './referenceDataRegistry.js';
|
|
4
|
+
/**
|
|
5
|
+
* Per-provider index over the backend's enriched `/markets` list, keyed by
|
|
6
|
+
* `Market.id` — the venue wire key (Hyperliquid: the coin string, Lighter:
|
|
7
|
+
* the stringified `market_index`). Obtain via {@link getMarketRegistry};
|
|
8
|
+
* shared by the provider packages' REST services and WS providers.
|
|
9
|
+
*
|
|
10
|
+
* @public
|
|
11
|
+
*/
|
|
12
|
+
export declare class MarketRegistry extends ReferenceDataRegistry<Market> {
|
|
13
|
+
constructor(client: PerpsSDKClient, provider: string);
|
|
14
|
+
/** The most recently synced market list. Empty before the first {@link sync}. */
|
|
15
|
+
get markets(): readonly Market[];
|
|
16
|
+
/**
|
|
17
|
+
* Lookup by `Market.id`, throwing when the backend list does not know the
|
|
18
|
+
* id. The list is the source of truth for every tradable market, so an id
|
|
19
|
+
* the venue references but the backend does not know is a hard error —
|
|
20
|
+
* never a silent fallback to an unenriched stand-in.
|
|
21
|
+
*
|
|
22
|
+
* @throws {PerpsError} `MarketNotFound`.
|
|
23
|
+
*/
|
|
24
|
+
require(marketId: string): Market;
|
|
25
|
+
protected fetchItems(bypassHttpCache: boolean): Promise<Market[]>;
|
|
26
|
+
protected keyOf(market: Market): string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* The stable {@link MarketRegistry} for `(client, provider)`.
|
|
30
|
+
*
|
|
31
|
+
* @public
|
|
32
|
+
*/
|
|
33
|
+
export declare function getMarketRegistry(client: PerpsSDKClient, provider: string): MarketRegistry;
|
|
34
|
+
/**
|
|
35
|
+
* Project a {@link Market} to the {@link MarketDisplay} identity embedded on
|
|
36
|
+
* mapped positions/orders/fills, preserving the backend's `baseAsset` and
|
|
37
|
+
* `quoteAsset` verbatim (logos, display names).
|
|
38
|
+
*
|
|
39
|
+
* @public
|
|
40
|
+
*/
|
|
41
|
+
export declare const toMarketDisplay: (market: Market) => MarketDisplay;
|
|
42
|
+
//# sourceMappingURL=marketRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"marketRegistry.d.ts","sourceRoot":"","sources":["../../../src/registry/marketRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,MAAM,EAAE,aAAa,EAAmB,MAAM,mBAAmB,CAAA;AAI/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAA;AAElE;;;;;;;GAOG;AACH,qBAAa,cAAe,SAAQ,qBAAqB,CAAC,MAAM,CAAC;gBACnD,MAAM,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM;IAIpD,iFAAiF;IACjF,IAAI,OAAO,IAAI,SAAS,MAAM,EAAE,CAE/B;IAED;;;;;;;OAOG;IACH,OAAO,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM;IAajC,SAAS,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAWjE,SAAS,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM;CAGxC;AAID;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,cAAc,EACtB,QAAQ,EAAE,MAAM,GACf,cAAc,CAYhB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,eAAe,GAAI,QAAQ,MAAM,KAAG,aAM/C,CAAA"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { PerpsSDKClient } from '../types/provider.js';
|
|
2
|
+
/**
|
|
3
|
+
* Per-provider hash index over one of the provider's reference-data lists
|
|
4
|
+
* (`/markets`, `/assets`), keyed by the list's own primary key.
|
|
5
|
+
*
|
|
6
|
+
* NOT a cache: it holds no freshness policy of its own. Every {@link sync}
|
|
7
|
+
* refetches through the HTTP layer, whose `cache-control` headers decide
|
|
8
|
+
* whether the response comes from disk or the network. A lookup miss
|
|
9
|
+
* schedules a cooldown-gated background refetch that bypasses the HTTP
|
|
10
|
+
* cache — the id may have listed after the cached snapshot.
|
|
11
|
+
*
|
|
12
|
+
* @internal
|
|
13
|
+
*/
|
|
14
|
+
export declare abstract class ReferenceDataRegistry<T> {
|
|
15
|
+
protected readonly client: PerpsSDKClient;
|
|
16
|
+
readonly provider: string;
|
|
17
|
+
private readonly kind;
|
|
18
|
+
private index;
|
|
19
|
+
private current;
|
|
20
|
+
private inflight;
|
|
21
|
+
private warnedIds;
|
|
22
|
+
private refreshAfter;
|
|
23
|
+
protected constructor(client: PerpsSDKClient, provider: string, kind: string);
|
|
24
|
+
/** Fetch the provider's full list, bypassing the HTTP cache when asked. */
|
|
25
|
+
protected abstract fetchItems(bypassHttpCache: boolean): Promise<T[]>;
|
|
26
|
+
/** The item's primary key — what {@link get} is keyed by. */
|
|
27
|
+
protected abstract keyOf(item: T): string;
|
|
28
|
+
/**
|
|
29
|
+
* Fetch the list through the HTTP cache and rebuild the index. Concurrent
|
|
30
|
+
* callers share one in-flight fetch; a settled fetch is never reused, so
|
|
31
|
+
* HTTP `cache-control` alone governs freshness.
|
|
32
|
+
*/
|
|
33
|
+
sync(): Promise<readonly T[]>;
|
|
34
|
+
/** The most recently synced list. Empty before the first {@link sync}. */
|
|
35
|
+
protected get items(): readonly T[];
|
|
36
|
+
/**
|
|
37
|
+
* O(1) lookup by primary key. A miss warns once per id and schedules the
|
|
38
|
+
* cooldown-gated, cache-bypassing background refetch.
|
|
39
|
+
*/
|
|
40
|
+
get(id: string): T | undefined;
|
|
41
|
+
private load;
|
|
42
|
+
private scheduleRefresh;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=referenceDataRegistry.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"referenceDataRegistry.d.ts","sourceRoot":"","sources":["../../../src/registry/referenceDataRegistry.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AAK1D;;;;;;;;;;;GAWG;AACH,8BAAsB,qBAAqB,CAAC,CAAC;IAQzC,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,cAAc;IACzC,QAAQ,CAAC,QAAQ,EAAE,MAAM;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI;IATvB,OAAO,CAAC,KAAK,CAAuB;IACpC,OAAO,CAAC,OAAO,CAAmB;IAClC,OAAO,CAAC,QAAQ,CAAmC;IACnD,OAAO,CAAC,SAAS,CAAoB;IACrC,OAAO,CAAC,YAAY,CAAI;IAExB,SAAS,aACY,MAAM,EAAE,cAAc,EAChC,QAAQ,EAAE,MAAM,EACR,IAAI,EAAE,MAAM;IAG/B,2EAA2E;IAC3E,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC,eAAe,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,EAAE,CAAC;IAErE,6DAA6D;IAC7D,SAAS,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,GAAG,MAAM;IAEzC;;;;OAIG;IACH,IAAI,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;IAS7B,0EAA0E;IAC1E,SAAS,KAAK,KAAK,IAAI,SAAS,CAAC,EAAE,CAElC;IAED;;;OAGG;IACH,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,CAAC,GAAG,SAAS;YAahB,IAAI;IAQlB,OAAO,CAAC,eAAe;CAcxB"}
|