@lifi/perps-sdk-provider-lighter 0.2.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +176 -0
- package/dist/cjs/LighterProvider.d.ts +20 -0
- package/dist/cjs/LighterProvider.d.ts.map +1 -0
- package/dist/cjs/LighterProvider.js +592 -0
- package/dist/cjs/LighterProvider.js.map +1 -0
- package/dist/cjs/accountConfig.d.ts +3 -0
- package/dist/cjs/accountConfig.d.ts.map +1 -0
- package/dist/cjs/accountConfig.js +69 -0
- package/dist/cjs/accountConfig.js.map +1 -0
- package/dist/cjs/accountSummary.d.ts +3 -0
- package/dist/cjs/accountSummary.d.ts.map +1 -0
- package/dist/cjs/accountSummary.js +8 -0
- package/dist/cjs/accountSummary.js.map +1 -0
- package/dist/cjs/constants.d.ts +14 -0
- package/dist/cjs/constants.d.ts.map +1 -0
- package/dist/cjs/constants.js +18 -0
- package/dist/cjs/constants.js.map +1 -0
- package/dist/cjs/index.d.ts +11 -0
- package/dist/cjs/index.d.ts.map +1 -0
- package/dist/cjs/index.js +35 -0
- package/dist/cjs/index.js.map +1 -0
- package/dist/cjs/package.json +1 -0
- package/dist/cjs/signers/LighterKeyStore.d.ts +18 -0
- package/dist/cjs/signers/LighterKeyStore.d.ts.map +1 -0
- package/dist/cjs/signers/LighterKeyStore.js +54 -0
- package/dist/cjs/signers/LighterKeyStore.js.map +1 -0
- package/dist/cjs/signers/LighterReadOnlyTokenManager.d.ts +56 -0
- package/dist/cjs/signers/LighterReadOnlyTokenManager.d.ts.map +1 -0
- package/dist/cjs/signers/LighterReadOnlyTokenManager.js +127 -0
- package/dist/cjs/signers/LighterReadOnlyTokenManager.js.map +1 -0
- package/dist/cjs/signers/LighterSigner.d.ts +41 -0
- package/dist/cjs/signers/LighterSigner.d.ts.map +1 -0
- package/dist/cjs/signers/LighterSigner.js +175 -0
- package/dist/cjs/signers/LighterSigner.js.map +1 -0
- package/dist/cjs/signers/createAuthToken.d.ts +12 -0
- package/dist/cjs/signers/createAuthToken.d.ts.map +1 -0
- package/dist/cjs/signers/createAuthToken.js +28 -0
- package/dist/cjs/signers/createAuthToken.js.map +1 -0
- package/dist/cjs/signers/index.d.ts +11 -0
- package/dist/cjs/signers/index.d.ts.map +1 -0
- package/dist/cjs/signers/index.js +19 -0
- package/dist/cjs/signers/index.js.map +1 -0
- package/dist/cjs/signers/signActions.d.ts +15 -0
- package/dist/cjs/signers/signActions.d.ts.map +1 -0
- package/dist/cjs/signers/signActions.js +142 -0
- package/dist/cjs/signers/signActions.js.map +1 -0
- package/dist/cjs/signers/wasmLoader.d.ts +42 -0
- package/dist/cjs/signers/wasmLoader.d.ts.map +1 -0
- package/dist/cjs/signers/wasmLoader.js +166 -0
- package/dist/cjs/signers/wasmLoader.js.map +1 -0
- package/dist/cjs/types/account.d.ts +97 -0
- package/dist/cjs/types/account.d.ts.map +1 -0
- package/dist/cjs/types/account.js +3 -0
- package/dist/cjs/types/account.js.map +1 -0
- package/dist/cjs/types/action.d.ts +72 -0
- package/dist/cjs/types/action.d.ts.map +1 -0
- package/dist/cjs/types/action.js +23 -0
- package/dist/cjs/types/action.js.map +1 -0
- package/dist/cjs/types/activity.d.ts +73 -0
- package/dist/cjs/types/activity.d.ts.map +1 -0
- package/dist/cjs/types/activity.js +3 -0
- package/dist/cjs/types/activity.js.map +1 -0
- package/dist/cjs/types/asset.d.ts +122 -0
- package/dist/cjs/types/asset.d.ts.map +1 -0
- package/dist/cjs/types/asset.js +3 -0
- package/dist/cjs/types/asset.js.map +1 -0
- package/dist/cjs/types/fill.d.ts +29 -0
- package/dist/cjs/types/fill.d.ts.map +1 -0
- package/dist/cjs/types/fill.js +3 -0
- package/dist/cjs/types/fill.js.map +1 -0
- package/dist/cjs/types/index.d.ts +9 -0
- package/dist/cjs/types/index.d.ts.map +1 -0
- package/dist/cjs/types/index.js +25 -0
- package/dist/cjs/types/index.js.map +1 -0
- package/dist/cjs/types/order.d.ts +57 -0
- package/dist/cjs/types/order.d.ts.map +1 -0
- package/dist/cjs/types/order.js +3 -0
- package/dist/cjs/types/order.js.map +1 -0
- package/dist/cjs/types/submit.d.ts +39 -0
- package/dist/cjs/types/submit.d.ts.map +1 -0
- package/dist/cjs/types/submit.js +3 -0
- package/dist/cjs/types/submit.js.map +1 -0
- package/dist/cjs/types/ws.d.ts +84 -0
- package/dist/cjs/types/ws.d.ts.map +1 -0
- package/dist/cjs/types/ws.js +3 -0
- package/dist/cjs/types/ws.js.map +1 -0
- package/dist/cjs/utils/activityCursor.d.ts +12 -0
- package/dist/cjs/utils/activityCursor.d.ts.map +1 -0
- package/dist/cjs/utils/activityCursor.js +85 -0
- package/dist/cjs/utils/activityCursor.js.map +1 -0
- package/dist/cjs/utils/apiClient.d.ts +26 -0
- package/dist/cjs/utils/apiClient.d.ts.map +1 -0
- package/dist/cjs/utils/apiClient.js +94 -0
- package/dist/cjs/utils/apiClient.js.map +1 -0
- package/dist/cjs/utils/fetchDetailedAccount.d.ts +5 -0
- package/dist/cjs/utils/fetchDetailedAccount.d.ts.map +1 -0
- package/dist/cjs/utils/fetchDetailedAccount.js +22 -0
- package/dist/cjs/utils/fetchDetailedAccount.js.map +1 -0
- package/dist/cjs/utils/index.d.ts +16 -0
- package/dist/cjs/utils/index.d.ts.map +1 -0
- package/dist/cjs/utils/index.js +45 -0
- package/dist/cjs/utils/index.js.map +1 -0
- package/dist/cjs/utils/lighterAsset.d.ts +3 -0
- package/dist/cjs/utils/lighterAsset.d.ts.map +1 -0
- package/dist/cjs/utils/lighterAsset.js +12 -0
- package/dist/cjs/utils/lighterAsset.js.map +1 -0
- package/dist/cjs/utils/liquidation.d.ts +4 -0
- package/dist/cjs/utils/liquidation.d.ts.map +1 -0
- package/dist/cjs/utils/liquidation.js +16 -0
- package/dist/cjs/utils/liquidation.js.map +1 -0
- package/dist/cjs/utils/mapFill.d.ts +4 -0
- package/dist/cjs/utils/mapFill.d.ts.map +1 -0
- package/dist/cjs/utils/mapFill.js +61 -0
- package/dist/cjs/utils/mapFill.js.map +1 -0
- package/dist/cjs/utils/mapOpenPositions.d.ts +4 -0
- package/dist/cjs/utils/mapOpenPositions.d.ts.map +1 -0
- package/dist/cjs/utils/mapOpenPositions.js +9 -0
- package/dist/cjs/utils/mapOpenPositions.js.map +1 -0
- package/dist/cjs/utils/mapOrder.d.ts +15 -0
- package/dist/cjs/utils/mapOrder.d.ts.map +1 -0
- package/dist/cjs/utils/mapOrder.js +164 -0
- package/dist/cjs/utils/mapOrder.js.map +1 -0
- package/dist/cjs/utils/mapPosition.d.ts +4 -0
- package/dist/cjs/utils/mapPosition.d.ts.map +1 -0
- package/dist/cjs/utils/mapPosition.js +30 -0
- package/dist/cjs/utils/mapPosition.js.map +1 -0
- package/dist/cjs/utils/ohlcvInterval.d.ts +2 -0
- package/dist/cjs/utils/ohlcvInterval.d.ts.map +1 -0
- package/dist/cjs/utils/ohlcvInterval.js +26 -0
- package/dist/cjs/utils/ohlcvInterval.js.map +1 -0
- package/dist/cjs/utils/orderFormatting.d.ts +4 -0
- package/dist/cjs/utils/orderFormatting.d.ts.map +1 -0
- package/dist/cjs/utils/orderFormatting.js +23 -0
- package/dist/cjs/utils/orderFormatting.js.map +1 -0
- package/dist/cjs/utils/time.d.ts +3 -0
- package/dist/cjs/utils/time.d.ts.map +1 -0
- package/dist/cjs/utils/time.js +8 -0
- package/dist/cjs/utils/time.js.map +1 -0
- package/dist/cjs/utils/wireEncoding.d.ts +9 -0
- package/dist/cjs/utils/wireEncoding.d.ts.map +1 -0
- package/dist/cjs/utils/wireEncoding.js +87 -0
- package/dist/cjs/utils/wireEncoding.js.map +1 -0
- package/dist/cjs/websocket/LighterWsProvider.d.ts +45 -0
- package/dist/cjs/websocket/LighterWsProvider.d.ts.map +1 -0
- package/dist/cjs/websocket/LighterWsProvider.js +396 -0
- package/dist/cjs/websocket/LighterWsProvider.js.map +1 -0
- package/dist/esm/LighterProvider.d.ts +105 -0
- package/dist/esm/LighterProvider.d.ts.map +1 -0
- package/dist/esm/LighterProvider.js +684 -0
- package/dist/esm/LighterProvider.js.map +1 -0
- package/dist/esm/accountConfig.d.ts +14 -0
- package/dist/esm/accountConfig.d.ts.map +1 -0
- package/dist/esm/accountConfig.js +135 -0
- package/dist/esm/accountConfig.js.map +1 -0
- package/dist/esm/accountSummary.d.ts +12 -0
- package/dist/esm/accountSummary.d.ts.map +1 -0
- package/dist/esm/accountSummary.js +14 -0
- package/dist/esm/accountSummary.js.map +1 -0
- package/dist/esm/constants.d.ts +74 -0
- package/dist/esm/constants.d.ts.map +1 -0
- package/dist/esm/constants.js +73 -0
- package/dist/esm/constants.js.map +1 -0
- package/dist/esm/index.d.ts +22 -0
- package/dist/esm/index.d.ts.map +1 -0
- package/dist/esm/index.js +22 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/package.json +1 -0
- package/dist/esm/signers/LighterKeyStore.d.ts +24 -0
- package/dist/esm/signers/LighterKeyStore.d.ts.map +1 -0
- package/dist/esm/signers/LighterKeyStore.js +55 -0
- package/dist/esm/signers/LighterKeyStore.js.map +1 -0
- package/dist/esm/signers/LighterReadOnlyTokenManager.d.ts +157 -0
- package/dist/esm/signers/LighterReadOnlyTokenManager.d.ts.map +1 -0
- package/dist/esm/signers/LighterReadOnlyTokenManager.js +194 -0
- package/dist/esm/signers/LighterReadOnlyTokenManager.js.map +1 -0
- package/dist/esm/signers/LighterSigner.d.ts +94 -0
- package/dist/esm/signers/LighterSigner.d.ts.map +1 -0
- package/dist/esm/signers/LighterSigner.js +228 -0
- package/dist/esm/signers/LighterSigner.js.map +1 -0
- package/dist/esm/signers/createAuthToken.d.ts +36 -0
- package/dist/esm/signers/createAuthToken.d.ts.map +1 -0
- package/dist/esm/signers/createAuthToken.js +42 -0
- package/dist/esm/signers/createAuthToken.js.map +1 -0
- package/dist/esm/signers/index.d.ts +11 -0
- package/dist/esm/signers/index.d.ts.map +1 -0
- package/dist/esm/signers/index.js +7 -0
- package/dist/esm/signers/index.js.map +1 -0
- package/dist/esm/signers/signActions.d.ts +54 -0
- package/dist/esm/signers/signActions.d.ts.map +1 -0
- package/dist/esm/signers/signActions.js +193 -0
- package/dist/esm/signers/signActions.js.map +1 -0
- package/dist/esm/signers/wasmLoader.d.ts +79 -0
- package/dist/esm/signers/wasmLoader.d.ts.map +1 -0
- package/dist/esm/signers/wasmLoader.js +180 -0
- package/dist/esm/signers/wasmLoader.js.map +1 -0
- package/dist/esm/types/account.d.ts +113 -0
- package/dist/esm/types/account.d.ts.map +1 -0
- package/dist/esm/types/account.js +4 -0
- package/dist/esm/types/account.js.map +1 -0
- package/dist/esm/types/action.d.ts +146 -0
- package/dist/esm/types/action.d.ts.map +1 -0
- package/dist/esm/types/action.js +50 -0
- package/dist/esm/types/action.js.map +1 -0
- package/dist/esm/types/activity.d.ts +83 -0
- package/dist/esm/types/activity.d.ts.map +1 -0
- package/dist/esm/types/activity.js +4 -0
- package/dist/esm/types/activity.js.map +1 -0
- package/dist/esm/types/asset.d.ts +134 -0
- package/dist/esm/types/asset.d.ts.map +1 -0
- package/dist/esm/types/asset.js +3 -0
- package/dist/esm/types/asset.js.map +1 -0
- package/dist/esm/types/fill.d.ts +31 -0
- package/dist/esm/types/fill.d.ts.map +1 -0
- package/dist/esm/types/fill.js +3 -0
- package/dist/esm/types/fill.js.map +1 -0
- package/dist/esm/types/index.d.ts +9 -0
- package/dist/esm/types/index.d.ts.map +1 -0
- package/dist/esm/types/index.js +12 -0
- package/dist/esm/types/index.js.map +1 -0
- package/dist/esm/types/order.d.ts +61 -0
- package/dist/esm/types/order.d.ts.map +1 -0
- package/dist/esm/types/order.js +3 -0
- package/dist/esm/types/order.js.map +1 -0
- package/dist/esm/types/submit.d.ts +76 -0
- package/dist/esm/types/submit.d.ts.map +1 -0
- package/dist/esm/types/submit.js +3 -0
- package/dist/esm/types/submit.js.map +1 -0
- package/dist/esm/types/ws.d.ts +124 -0
- package/dist/esm/types/ws.d.ts.map +1 -0
- package/dist/esm/types/ws.js +11 -0
- package/dist/esm/types/ws.js.map +1 -0
- package/dist/esm/utils/activityCursor.d.ts +51 -0
- package/dist/esm/utils/activityCursor.d.ts.map +1 -0
- package/dist/esm/utils/activityCursor.js +99 -0
- package/dist/esm/utils/activityCursor.js.map +1 -0
- package/dist/esm/utils/apiClient.d.ts +65 -0
- package/dist/esm/utils/apiClient.d.ts.map +1 -0
- package/dist/esm/utils/apiClient.js +131 -0
- package/dist/esm/utils/apiClient.js.map +1 -0
- package/dist/esm/utils/fetchDetailedAccount.d.ts +11 -0
- package/dist/esm/utils/fetchDetailedAccount.d.ts.map +1 -0
- package/dist/esm/utils/fetchDetailedAccount.js +24 -0
- package/dist/esm/utils/fetchDetailedAccount.js.map +1 -0
- package/dist/esm/utils/index.d.ts +16 -0
- package/dist/esm/utils/index.d.ts.map +1 -0
- package/dist/esm/utils/index.js +17 -0
- package/dist/esm/utils/index.js.map +1 -0
- package/dist/esm/utils/lighterAsset.d.ts +4 -0
- package/dist/esm/utils/lighterAsset.d.ts.map +1 -0
- package/dist/esm/utils/lighterAsset.js +9 -0
- package/dist/esm/utils/lighterAsset.js.map +1 -0
- package/dist/esm/utils/liquidation.d.ts +22 -0
- package/dist/esm/utils/liquidation.d.ts.map +1 -0
- package/dist/esm/utils/liquidation.js +31 -0
- package/dist/esm/utils/liquidation.js.map +1 -0
- package/dist/esm/utils/mapFill.d.ts +10 -0
- package/dist/esm/utils/mapFill.d.ts.map +1 -0
- package/dist/esm/utils/mapFill.js +72 -0
- package/dist/esm/utils/mapFill.js.map +1 -0
- package/dist/esm/utils/mapOpenPositions.d.ts +11 -0
- package/dist/esm/utils/mapOpenPositions.d.ts.map +1 -0
- package/dist/esm/utils/mapOpenPositions.js +12 -0
- package/dist/esm/utils/mapOpenPositions.js.map +1 -0
- package/dist/esm/utils/mapOrder.d.ts +72 -0
- package/dist/esm/utils/mapOrder.d.ts.map +1 -0
- package/dist/esm/utils/mapOrder.js +219 -0
- package/dist/esm/utils/mapOrder.js.map +1 -0
- package/dist/esm/utils/mapPosition.d.ts +9 -0
- package/dist/esm/utils/mapPosition.d.ts.map +1 -0
- package/dist/esm/utils/mapPosition.js +34 -0
- package/dist/esm/utils/mapPosition.js.map +1 -0
- package/dist/esm/utils/ohlcvInterval.d.ts +3 -0
- package/dist/esm/utils/ohlcvInterval.d.ts.map +1 -0
- package/dist/esm/utils/ohlcvInterval.js +30 -0
- package/dist/esm/utils/ohlcvInterval.js.map +1 -0
- package/dist/esm/utils/orderFormatting.d.ts +29 -0
- package/dist/esm/utils/orderFormatting.d.ts.map +1 -0
- package/dist/esm/utils/orderFormatting.js +41 -0
- package/dist/esm/utils/orderFormatting.js.map +1 -0
- package/dist/esm/utils/time.d.ts +5 -0
- package/dist/esm/utils/time.d.ts.map +1 -0
- package/dist/esm/utils/time.js +5 -0
- package/dist/esm/utils/time.js.map +1 -0
- package/dist/esm/utils/wireEncoding.d.ts +72 -0
- package/dist/esm/utils/wireEncoding.d.ts.map +1 -0
- package/dist/esm/utils/wireEncoding.js +129 -0
- package/dist/esm/utils/wireEncoding.js.map +1 -0
- package/dist/esm/websocket/LighterWsProvider.d.ts +97 -0
- package/dist/esm/websocket/LighterWsProvider.d.ts.map +1 -0
- package/dist/esm/websocket/LighterWsProvider.js +489 -0
- package/dist/esm/websocket/LighterWsProvider.js.map +1 -0
- package/dist/types/LighterProvider.d.ts +105 -0
- package/dist/types/LighterProvider.d.ts.map +1 -0
- package/dist/types/accountConfig.d.ts +14 -0
- package/dist/types/accountConfig.d.ts.map +1 -0
- package/dist/types/accountSummary.d.ts +12 -0
- package/dist/types/accountSummary.d.ts.map +1 -0
- package/dist/types/constants.d.ts +74 -0
- package/dist/types/constants.d.ts.map +1 -0
- package/dist/types/index.d.ts +22 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/signers/LighterKeyStore.d.ts +24 -0
- package/dist/types/signers/LighterKeyStore.d.ts.map +1 -0
- package/dist/types/signers/LighterReadOnlyTokenManager.d.ts +157 -0
- package/dist/types/signers/LighterReadOnlyTokenManager.d.ts.map +1 -0
- package/dist/types/signers/LighterSigner.d.ts +94 -0
- package/dist/types/signers/LighterSigner.d.ts.map +1 -0
- package/dist/types/signers/createAuthToken.d.ts +36 -0
- package/dist/types/signers/createAuthToken.d.ts.map +1 -0
- package/dist/types/signers/index.d.ts +11 -0
- package/dist/types/signers/index.d.ts.map +1 -0
- package/dist/types/signers/signActions.d.ts +54 -0
- package/dist/types/signers/signActions.d.ts.map +1 -0
- package/dist/types/signers/wasmLoader.d.ts +79 -0
- package/dist/types/signers/wasmLoader.d.ts.map +1 -0
- package/dist/types/types/account.d.ts +113 -0
- package/dist/types/types/account.d.ts.map +1 -0
- package/dist/types/types/action.d.ts +146 -0
- package/dist/types/types/action.d.ts.map +1 -0
- package/dist/types/types/activity.d.ts +83 -0
- package/dist/types/types/activity.d.ts.map +1 -0
- package/dist/types/types/asset.d.ts +134 -0
- package/dist/types/types/asset.d.ts.map +1 -0
- package/dist/types/types/fill.d.ts +31 -0
- package/dist/types/types/fill.d.ts.map +1 -0
- package/dist/types/types/index.d.ts +9 -0
- package/dist/types/types/index.d.ts.map +1 -0
- package/dist/types/types/order.d.ts +61 -0
- package/dist/types/types/order.d.ts.map +1 -0
- package/dist/types/types/submit.d.ts +76 -0
- package/dist/types/types/submit.d.ts.map +1 -0
- package/dist/types/types/ws.d.ts +124 -0
- package/dist/types/types/ws.d.ts.map +1 -0
- package/dist/types/utils/activityCursor.d.ts +51 -0
- package/dist/types/utils/activityCursor.d.ts.map +1 -0
- package/dist/types/utils/apiClient.d.ts +65 -0
- package/dist/types/utils/apiClient.d.ts.map +1 -0
- package/dist/types/utils/fetchDetailedAccount.d.ts +11 -0
- package/dist/types/utils/fetchDetailedAccount.d.ts.map +1 -0
- package/dist/types/utils/index.d.ts +16 -0
- package/dist/types/utils/index.d.ts.map +1 -0
- package/dist/types/utils/lighterAsset.d.ts +4 -0
- package/dist/types/utils/lighterAsset.d.ts.map +1 -0
- package/dist/types/utils/liquidation.d.ts +22 -0
- package/dist/types/utils/liquidation.d.ts.map +1 -0
- package/dist/types/utils/mapFill.d.ts +10 -0
- package/dist/types/utils/mapFill.d.ts.map +1 -0
- package/dist/types/utils/mapOpenPositions.d.ts +11 -0
- package/dist/types/utils/mapOpenPositions.d.ts.map +1 -0
- package/dist/types/utils/mapOrder.d.ts +72 -0
- package/dist/types/utils/mapOrder.d.ts.map +1 -0
- package/dist/types/utils/mapPosition.d.ts +9 -0
- package/dist/types/utils/mapPosition.d.ts.map +1 -0
- package/dist/types/utils/ohlcvInterval.d.ts +3 -0
- package/dist/types/utils/ohlcvInterval.d.ts.map +1 -0
- package/dist/types/utils/orderFormatting.d.ts +29 -0
- package/dist/types/utils/orderFormatting.d.ts.map +1 -0
- package/dist/types/utils/time.d.ts +5 -0
- package/dist/types/utils/time.d.ts.map +1 -0
- package/dist/types/utils/wireEncoding.d.ts +72 -0
- package/dist/types/utils/wireEncoding.d.ts.map +1 -0
- package/dist/types/websocket/LighterWsProvider.d.ts +97 -0
- package/dist/types/websocket/LighterWsProvider.d.ts.map +1 -0
- package/dist/wasm/lighter-signer.wasm +0 -0
- package/dist/wasm/wasm_exec.js +575 -0
- package/package.json +67 -0
- package/src/LighterProvider.ts +1167 -0
- package/src/accountConfig.ts +162 -0
- package/src/accountSummary.ts +22 -0
- package/src/constants.ts +89 -0
- package/src/index.ts +37 -0
- package/src/signers/LighterKeyStore.ts +79 -0
- package/src/signers/LighterReadOnlyTokenManager.ts +340 -0
- package/src/signers/LighterSigner.ts +400 -0
- package/src/signers/createAuthToken.ts +69 -0
- package/src/signers/index.ts +36 -0
- package/src/signers/signActions.ts +311 -0
- package/src/signers/wasmLoader.ts +293 -0
- package/src/types/account.ts +123 -0
- package/src/types/action.ts +163 -0
- package/src/types/activity.ts +94 -0
- package/src/types/asset.ts +146 -0
- package/src/types/fill.ts +42 -0
- package/src/types/index.ts +12 -0
- package/src/types/order.ts +65 -0
- package/src/types/submit.ts +83 -0
- package/src/types/ws.ts +136 -0
- package/src/utils/activityCursor.ts +150 -0
- package/src/utils/apiClient.ts +185 -0
- package/src/utils/fetchDetailedAccount.ts +46 -0
- package/src/utils/index.ts +38 -0
- package/src/utils/lighterAsset.ts +10 -0
- package/src/utils/liquidation.ts +39 -0
- package/src/utils/mapFill.ts +108 -0
- package/src/utils/mapOpenPositions.ts +18 -0
- package/src/utils/mapOrder.ts +258 -0
- package/src/utils/mapPosition.ts +42 -0
- package/src/utils/ohlcvInterval.ts +34 -0
- package/src/utils/orderFormatting.ts +46 -0
- package/src/utils/time.ts +6 -0
- package/src/utils/wireEncoding.ts +179 -0
- package/src/websocket/LighterWsProvider.ts +725 -0
- package/wasm/lighter-signer.wasm +0 -0
- package/wasm/wasm_exec.js +575 -0
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
// Account / balance shapes returned by Lighter's `/api/v1/account` and
|
|
2
|
+
// `/api/v1/accountLimits` endpoints.
|
|
3
|
+
|
|
4
|
+
/** @public */
|
|
5
|
+
export type LtAccountPosition = {
|
|
6
|
+
market_id: number
|
|
7
|
+
/** Present on REST `/api/v1/account` rows; WS position frames may omit it. */
|
|
8
|
+
symbol?: string
|
|
9
|
+
initial_margin_fraction: string
|
|
10
|
+
open_order_count: number
|
|
11
|
+
pending_order_count: number
|
|
12
|
+
position_tied_order_count: number
|
|
13
|
+
sign: number
|
|
14
|
+
position: string
|
|
15
|
+
avg_entry_price: string
|
|
16
|
+
position_value: string
|
|
17
|
+
unrealized_pnl: string
|
|
18
|
+
realized_pnl: string
|
|
19
|
+
liquidation_price: string
|
|
20
|
+
total_funding_paid_out: string
|
|
21
|
+
margin_mode: number
|
|
22
|
+
allocated_margin: string
|
|
23
|
+
total_discount: string
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/** @public */
|
|
27
|
+
export type LtAccountAsset = {
|
|
28
|
+
symbol: string
|
|
29
|
+
asset_id: number
|
|
30
|
+
balance: string
|
|
31
|
+
locked_balance: string
|
|
32
|
+
}
|
|
33
|
+
|
|
34
|
+
/**
|
|
35
|
+
* Account-position row from `/api/v1/account`. Identical shape to
|
|
36
|
+
* `LtAccountPosition` — alias kept for read-side clarity at call sites that
|
|
37
|
+
* fan out off per-market order counts (`open_order_count`,
|
|
38
|
+
* `pending_order_count`, `position_tied_order_count`).
|
|
39
|
+
* @public
|
|
40
|
+
*/
|
|
41
|
+
export type LtDetailedAccountPosition = LtAccountPosition
|
|
42
|
+
|
|
43
|
+
/** @public */
|
|
44
|
+
export interface LtApprovedIntegrator {
|
|
45
|
+
account_index: number
|
|
46
|
+
name: string
|
|
47
|
+
max_perps_taker_fee: number
|
|
48
|
+
max_perps_maker_fee: number
|
|
49
|
+
max_spot_taker_fee: number
|
|
50
|
+
max_spot_maker_fee: number
|
|
51
|
+
approval_expiry: number
|
|
52
|
+
}
|
|
53
|
+
|
|
54
|
+
/** @public */
|
|
55
|
+
export interface LtDetailedAccount {
|
|
56
|
+
code: number
|
|
57
|
+
account_type: number
|
|
58
|
+
index: number
|
|
59
|
+
l1_address: string
|
|
60
|
+
cancel_all_time: number
|
|
61
|
+
total_order_count: number
|
|
62
|
+
total_isolated_order_count: number
|
|
63
|
+
pending_order_count: number
|
|
64
|
+
available_balance: string
|
|
65
|
+
status: number
|
|
66
|
+
collateral: string
|
|
67
|
+
transaction_time: number
|
|
68
|
+
account_trading_mode: number
|
|
69
|
+
account_index: number
|
|
70
|
+
name: string
|
|
71
|
+
description: string
|
|
72
|
+
positions: LtDetailedAccountPosition[]
|
|
73
|
+
assets: LtAccountAsset[]
|
|
74
|
+
total_asset_value: string
|
|
75
|
+
cross_asset_value: string
|
|
76
|
+
approved_integrators?: LtApprovedIntegrator[]
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/** @public */
|
|
80
|
+
export interface LtDetailedAccountsResponse {
|
|
81
|
+
code: number
|
|
82
|
+
total: number
|
|
83
|
+
accounts: LtDetailedAccount[]
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
/** @public */
|
|
87
|
+
export interface LtAccountLimits {
|
|
88
|
+
code: number
|
|
89
|
+
message?: string
|
|
90
|
+
max_llp_percentage: number
|
|
91
|
+
max_llp_amount: string
|
|
92
|
+
user_tier: string
|
|
93
|
+
user_tier_name?: string
|
|
94
|
+
can_create_public_pool: boolean
|
|
95
|
+
current_maker_fee_tick: number
|
|
96
|
+
current_taker_fee_tick: number
|
|
97
|
+
leased_lit: string
|
|
98
|
+
effective_lit_stakes: string
|
|
99
|
+
}
|
|
100
|
+
|
|
101
|
+
/** @public */
|
|
102
|
+
export interface LtSubAccount {
|
|
103
|
+
code: number
|
|
104
|
+
account_type: number
|
|
105
|
+
index: number
|
|
106
|
+
l1_address: string
|
|
107
|
+
cancel_all_time: number
|
|
108
|
+
total_order_count: number
|
|
109
|
+
total_isolated_order_count: number
|
|
110
|
+
pending_order_count: number
|
|
111
|
+
available_balance: string
|
|
112
|
+
status: number
|
|
113
|
+
collateral: string
|
|
114
|
+
transaction_time: number
|
|
115
|
+
account_trading_mode: number
|
|
116
|
+
}
|
|
117
|
+
|
|
118
|
+
/** @public */
|
|
119
|
+
export interface LtAccountsByL1AddressResponse {
|
|
120
|
+
code: number
|
|
121
|
+
l1_address: string
|
|
122
|
+
sub_accounts: LtSubAccount[]
|
|
123
|
+
}
|
|
@@ -0,0 +1,163 @@
|
|
|
1
|
+
// Shapes of `wasmSignParams` per action. The backend populates these and the
|
|
2
|
+
// SDK passes them to the WASM signer alongside SDK-managed fields (nonce,
|
|
3
|
+
// account_index, api_key_index).
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Backend-provided params for SignCreateOrder.
|
|
7
|
+
*
|
|
8
|
+
* @public
|
|
9
|
+
*/
|
|
10
|
+
export type LtCreateOrderWasmParams = {
|
|
11
|
+
market_index: number
|
|
12
|
+
client_order_index: number
|
|
13
|
+
base_amount: number
|
|
14
|
+
price: number
|
|
15
|
+
is_ask: number
|
|
16
|
+
order_type: number
|
|
17
|
+
time_in_force: number
|
|
18
|
+
reduce_only: boolean
|
|
19
|
+
trigger_price: number
|
|
20
|
+
order_expiry: number
|
|
21
|
+
integrator_account_index: number
|
|
22
|
+
integrator_taker_fee: number
|
|
23
|
+
integrator_maker_fee: number
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* Backend-provided params for SignCancelOrder.
|
|
28
|
+
*
|
|
29
|
+
* @public
|
|
30
|
+
*/
|
|
31
|
+
export type LtCancelOrderWasmParams = {
|
|
32
|
+
market_index: number
|
|
33
|
+
order_index: number
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
/**
|
|
37
|
+
* Backend-provided params for SignModifyOrder.
|
|
38
|
+
*
|
|
39
|
+
* @public
|
|
40
|
+
*/
|
|
41
|
+
export type LtModifyOrderWasmParams = {
|
|
42
|
+
market_index: number
|
|
43
|
+
order_index: number
|
|
44
|
+
base_amount: number
|
|
45
|
+
price: number
|
|
46
|
+
trigger_price: number
|
|
47
|
+
integrator_account_index: number
|
|
48
|
+
integrator_taker_fee: number
|
|
49
|
+
integrator_maker_fee: number
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Backend-provided params for SignUpdateLeverage.
|
|
54
|
+
*
|
|
55
|
+
* @public
|
|
56
|
+
*/
|
|
57
|
+
export type LtUpdateLeverageWasmParams = {
|
|
58
|
+
market_index: number
|
|
59
|
+
fraction: number
|
|
60
|
+
margin_mode: number
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
/**
|
|
64
|
+
* Backend-provided params for SignUpdateMargin.
|
|
65
|
+
*
|
|
66
|
+
* @public
|
|
67
|
+
*/
|
|
68
|
+
export type LtUpdateMarginWasmParams = {
|
|
69
|
+
market_index: number
|
|
70
|
+
usdc_amount: number
|
|
71
|
+
direction: number
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
/**
|
|
75
|
+
* Backend-provided params for SignWithdraw.
|
|
76
|
+
*
|
|
77
|
+
* @public
|
|
78
|
+
*/
|
|
79
|
+
export type LtWithdrawWasmParams = {
|
|
80
|
+
asset_index: number
|
|
81
|
+
route_type: number
|
|
82
|
+
amount: number
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* Backend-provided params for SignCancelAllOrders.
|
|
87
|
+
*
|
|
88
|
+
* @public
|
|
89
|
+
*/
|
|
90
|
+
export type LtCancelAllOrdersWasmParams = {
|
|
91
|
+
/** 0=immediate (cancel GTC), 1=scheduled, 2=abort scheduled */
|
|
92
|
+
time_in_force: number
|
|
93
|
+
/** Unix timestamp in milliseconds. Use Date.now() for immediate cancels. */
|
|
94
|
+
timestamp_ms: number
|
|
95
|
+
}
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Backend-provided params for SignChangePubKey (REGISTER_API_KEY).
|
|
99
|
+
*
|
|
100
|
+
* Hybrid signing: this action requires both a WASM blob and an L1 Ethereum
|
|
101
|
+
* signature (the user's wallet signs the ChangePubKey message). The SDK
|
|
102
|
+
* generates the keypair via the WASM signer and fills in `new_public_key`
|
|
103
|
+
* before invoking SignChangePubKey.
|
|
104
|
+
* @public
|
|
105
|
+
*/
|
|
106
|
+
export type LtChangePubKeyWasmParams = {
|
|
107
|
+
/** API key slot index to register (0-255). SDK fills in the generated public key. */
|
|
108
|
+
api_key_index: number
|
|
109
|
+
nonce: number
|
|
110
|
+
}
|
|
111
|
+
|
|
112
|
+
/** @public */
|
|
113
|
+
export const LT_ORDER_TYPE_LIMIT = 0
|
|
114
|
+
/** @public */
|
|
115
|
+
export const LT_ORDER_TYPE_MARKET = 1
|
|
116
|
+
/** @public */
|
|
117
|
+
export const LT_ORDER_TYPE_STOP_LOSS = 2
|
|
118
|
+
/** @public */
|
|
119
|
+
export const LT_ORDER_TYPE_STOP_LOSS_LIMIT = 3
|
|
120
|
+
/** @public */
|
|
121
|
+
export const LT_ORDER_TYPE_TAKE_PROFIT = 4
|
|
122
|
+
/** @public */
|
|
123
|
+
export const LT_ORDER_TYPE_TAKE_PROFIT_LIMIT = 5
|
|
124
|
+
/** @public */
|
|
125
|
+
export const LT_ORDER_TYPE_TWAP = 6
|
|
126
|
+
|
|
127
|
+
/** @public */
|
|
128
|
+
export const LT_TIME_IN_FORCE_IOC = 0
|
|
129
|
+
/** @public */
|
|
130
|
+
export const LT_TIME_IN_FORCE_GTC = 1
|
|
131
|
+
/** @public */
|
|
132
|
+
export const LT_TIME_IN_FORCE_POST_ONLY = 2
|
|
133
|
+
|
|
134
|
+
/** @public */
|
|
135
|
+
export const LT_MARGIN_MODE_CROSS = 0
|
|
136
|
+
/** @public */
|
|
137
|
+
export const LT_MARGIN_MODE_ISOLATED = 1
|
|
138
|
+
|
|
139
|
+
/** @public */
|
|
140
|
+
export const LT_MARGIN_DIRECTION_REMOVE = 0
|
|
141
|
+
/** @public */
|
|
142
|
+
export const LT_MARGIN_DIRECTION_ADD = 1
|
|
143
|
+
|
|
144
|
+
/** @public */
|
|
145
|
+
export const LT_ROUTE_PERP = 0
|
|
146
|
+
/** @public */
|
|
147
|
+
export const LT_ROUTE_SPOT = 1
|
|
148
|
+
|
|
149
|
+
/** @public */
|
|
150
|
+
export const LT_ASSET_ID_USDC = 3
|
|
151
|
+
|
|
152
|
+
/** @public */
|
|
153
|
+
export const LT_NIL_TRIGGER_PRICE = 0
|
|
154
|
+
/**
|
|
155
|
+
* Sentinel the lighter-go WASM signer translates to "default 28-day expiry
|
|
156
|
+
* from now" at sign time (`wasm/main.go:325`, `wasm/main.go:898`). On the
|
|
157
|
+
* wire, `OrderExpiry` is an *absolute* Unix-ms timestamp, not a duration;
|
|
158
|
+
* `-1` lets the signer fill in the default, any positive int64 sets an
|
|
159
|
+
* explicit absolute expiry. Matches lighter-python's
|
|
160
|
+
* `DEFAULT_28_DAY_ORDER_EXPIRY`.
|
|
161
|
+
* @public
|
|
162
|
+
*/
|
|
163
|
+
export const LT_DEFAULT_ORDER_EXPIRY = -1
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
// Activity history shapes returned by Lighter's REST API
|
|
2
|
+
// (deposits, withdrawals, funding payments, liquidations, transfers).
|
|
3
|
+
|
|
4
|
+
/** @public */
|
|
5
|
+
export interface LtDepositHistoryItem {
|
|
6
|
+
id: string
|
|
7
|
+
asset_id: number
|
|
8
|
+
amount: string
|
|
9
|
+
timestamp: number
|
|
10
|
+
status: string
|
|
11
|
+
l1_tx_hash: string
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/** @public */
|
|
15
|
+
export interface LtDepositHistoryResponse {
|
|
16
|
+
code: number
|
|
17
|
+
deposits: LtDepositHistoryItem[]
|
|
18
|
+
cursor?: string
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
/** @public */
|
|
22
|
+
export interface LtWithdrawHistoryItem {
|
|
23
|
+
id: string
|
|
24
|
+
asset_id: number
|
|
25
|
+
amount: string
|
|
26
|
+
timestamp: number
|
|
27
|
+
status: string
|
|
28
|
+
type: string
|
|
29
|
+
l1_tx_hash: string
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
/** @public */
|
|
33
|
+
export interface LtWithdrawHistoryResponse {
|
|
34
|
+
code: number
|
|
35
|
+
withdraws: LtWithdrawHistoryItem[]
|
|
36
|
+
cursor?: string
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/** @public */
|
|
40
|
+
export interface LtPositionFunding {
|
|
41
|
+
timestamp: number
|
|
42
|
+
market_id: number
|
|
43
|
+
funding_id: number
|
|
44
|
+
change: string
|
|
45
|
+
rate: string
|
|
46
|
+
position_size: string
|
|
47
|
+
position_side: string
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/** @public */
|
|
51
|
+
export interface LtPositionFundingsResponse {
|
|
52
|
+
code: number
|
|
53
|
+
position_fundings: LtPositionFunding[]
|
|
54
|
+
next_cursor?: string
|
|
55
|
+
}
|
|
56
|
+
|
|
57
|
+
/** @public */
|
|
58
|
+
export interface LtLiquidation {
|
|
59
|
+
id: number
|
|
60
|
+
market_id: number
|
|
61
|
+
type: string
|
|
62
|
+
executed_at: number
|
|
63
|
+
}
|
|
64
|
+
|
|
65
|
+
/** @public */
|
|
66
|
+
export interface LtLiquidationsResponse {
|
|
67
|
+
code: number
|
|
68
|
+
liquidations: LtLiquidation[]
|
|
69
|
+
next_cursor?: string
|
|
70
|
+
}
|
|
71
|
+
|
|
72
|
+
/** @public */
|
|
73
|
+
export interface LtTransfer {
|
|
74
|
+
id: string
|
|
75
|
+
asset_id: number
|
|
76
|
+
amount: string
|
|
77
|
+
fee: string
|
|
78
|
+
timestamp: number
|
|
79
|
+
type: string
|
|
80
|
+
from_l1_address: string
|
|
81
|
+
to_l1_address: string
|
|
82
|
+
from_account_index: number
|
|
83
|
+
to_account_index: number
|
|
84
|
+
from_route: 'spot' | 'perps'
|
|
85
|
+
to_route: 'spot' | 'perps'
|
|
86
|
+
tx_hash: string
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
/** @public */
|
|
90
|
+
export interface LtTransferHistoryResponse {
|
|
91
|
+
code: number
|
|
92
|
+
transfers: LtTransfer[]
|
|
93
|
+
cursor?: string
|
|
94
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
// Market / asset / orderbook metadata returned by Lighter's REST API.
|
|
2
|
+
|
|
3
|
+
/** @public */
|
|
4
|
+
export interface LtMarketConfig {
|
|
5
|
+
market_margin_mode: number
|
|
6
|
+
insurance_fund_account_index: number
|
|
7
|
+
liquidation_mode: number
|
|
8
|
+
force_reduce_only: boolean
|
|
9
|
+
trading_hours: string
|
|
10
|
+
funding_fee_discounts_enabled: boolean
|
|
11
|
+
hidden: boolean
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
/** @public */
|
|
15
|
+
export interface LtPerpsOrderBookDetail {
|
|
16
|
+
symbol: string
|
|
17
|
+
market_id: number
|
|
18
|
+
market_type: string
|
|
19
|
+
base_asset_id: number
|
|
20
|
+
quote_asset_id: number
|
|
21
|
+
status: string
|
|
22
|
+
taker_fee: string
|
|
23
|
+
maker_fee: string
|
|
24
|
+
liquidation_fee: string
|
|
25
|
+
min_base_amount: string
|
|
26
|
+
min_quote_amount: string
|
|
27
|
+
order_quote_limit: string
|
|
28
|
+
supported_size_decimals: number
|
|
29
|
+
supported_price_decimals: number
|
|
30
|
+
supported_quote_decimals: number
|
|
31
|
+
size_decimals: number
|
|
32
|
+
price_decimals: number
|
|
33
|
+
quote_multiplier: number
|
|
34
|
+
default_initial_margin_fraction: number
|
|
35
|
+
min_initial_margin_fraction: number
|
|
36
|
+
maintenance_margin_fraction: number
|
|
37
|
+
closeout_margin_fraction: number
|
|
38
|
+
last_trade_price: number
|
|
39
|
+
daily_trades_count: number
|
|
40
|
+
daily_base_token_volume: number
|
|
41
|
+
daily_quote_token_volume: number
|
|
42
|
+
daily_price_low: number
|
|
43
|
+
daily_price_high: number
|
|
44
|
+
daily_price_change: number
|
|
45
|
+
daily_chart: Record<string, unknown>
|
|
46
|
+
open_interest: number
|
|
47
|
+
market_config: LtMarketConfig
|
|
48
|
+
strategy_index: number
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
/** @public */
|
|
52
|
+
export interface LtSpotOrderBookDetail {
|
|
53
|
+
symbol: string
|
|
54
|
+
market_id: number
|
|
55
|
+
market_type: string
|
|
56
|
+
base_asset_id: number
|
|
57
|
+
quote_asset_id: number
|
|
58
|
+
status: string
|
|
59
|
+
taker_fee: string
|
|
60
|
+
maker_fee: string
|
|
61
|
+
liquidation_fee: string
|
|
62
|
+
min_base_amount: string
|
|
63
|
+
min_quote_amount: string
|
|
64
|
+
order_quote_limit: string
|
|
65
|
+
supported_size_decimals: number
|
|
66
|
+
supported_price_decimals: number
|
|
67
|
+
supported_quote_decimals: number
|
|
68
|
+
size_decimals: number
|
|
69
|
+
price_decimals: number
|
|
70
|
+
last_trade_price: number
|
|
71
|
+
daily_trades_count: number
|
|
72
|
+
daily_base_token_volume: number
|
|
73
|
+
daily_quote_token_volume: number
|
|
74
|
+
daily_price_low: number
|
|
75
|
+
daily_price_high: number
|
|
76
|
+
daily_price_change: number
|
|
77
|
+
daily_chart: Record<string, unknown>
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
/** @public */
|
|
81
|
+
export interface LtOrderBookDetailsResponse {
|
|
82
|
+
code: number
|
|
83
|
+
order_book_details: LtPerpsOrderBookDetail[]
|
|
84
|
+
spot_order_book_details: LtSpotOrderBookDetail[]
|
|
85
|
+
}
|
|
86
|
+
|
|
87
|
+
/** @public */
|
|
88
|
+
export interface LtToken {
|
|
89
|
+
symbol: string
|
|
90
|
+
name: string
|
|
91
|
+
logo: string
|
|
92
|
+
logo_extension: string
|
|
93
|
+
market: 'PERPS' | 'SPOT'
|
|
94
|
+
}
|
|
95
|
+
|
|
96
|
+
/** @public */
|
|
97
|
+
export interface LtTokenListResponse {
|
|
98
|
+
code: number
|
|
99
|
+
tokens: LtToken[]
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
/** @public */
|
|
103
|
+
export interface LtAssetDetail {
|
|
104
|
+
asset_id: number
|
|
105
|
+
symbol: string
|
|
106
|
+
l1_decimals: number
|
|
107
|
+
decimals: number
|
|
108
|
+
l1_address: string
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
/** @public */
|
|
112
|
+
export interface LtAssetDetailsResponse {
|
|
113
|
+
code: number
|
|
114
|
+
asset_details: LtAssetDetail[]
|
|
115
|
+
}
|
|
116
|
+
|
|
117
|
+
/** @public */
|
|
118
|
+
export interface LtCandle {
|
|
119
|
+
t: number
|
|
120
|
+
o: number
|
|
121
|
+
h: number
|
|
122
|
+
l: number
|
|
123
|
+
c: number
|
|
124
|
+
v: number
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
/** @public */
|
|
128
|
+
export interface LtCandlesResponse {
|
|
129
|
+
code: number
|
|
130
|
+
r: string
|
|
131
|
+
c: LtCandle[]
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
/** @public */
|
|
135
|
+
export interface LtFundingRate {
|
|
136
|
+
market_id: number
|
|
137
|
+
exchange: string
|
|
138
|
+
symbol: string
|
|
139
|
+
rate: number
|
|
140
|
+
}
|
|
141
|
+
|
|
142
|
+
/** @public */
|
|
143
|
+
export interface LtFundingRatesResponse {
|
|
144
|
+
code: number
|
|
145
|
+
funding_rates: LtFundingRate[]
|
|
146
|
+
}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
// Trade (fill) shapes returned by Lighter's `/api/v1/trades` endpoint.
|
|
2
|
+
|
|
3
|
+
/** @public */
|
|
4
|
+
export type LtTrade = {
|
|
5
|
+
trade_id: number
|
|
6
|
+
tx_hash: string
|
|
7
|
+
type: string
|
|
8
|
+
market_id: number
|
|
9
|
+
size: string
|
|
10
|
+
price: string
|
|
11
|
+
usd_amount: string
|
|
12
|
+
ask_id: number
|
|
13
|
+
bid_id: number
|
|
14
|
+
ask_account_id: number
|
|
15
|
+
bid_account_id: number
|
|
16
|
+
is_maker_ask: boolean
|
|
17
|
+
block_height: number
|
|
18
|
+
timestamp: number
|
|
19
|
+
// Lighter's OpenAPI spec marks these as required `StrictInt`, but the live
|
|
20
|
+
// /api/v1/trades endpoint omits them on some `type: "trade"` rows (observed
|
|
21
|
+
// on older trades) — keep optional and let the mapper emit `undefined`.
|
|
22
|
+
taker_fee?: number
|
|
23
|
+
maker_fee?: number
|
|
24
|
+
transaction_time: number
|
|
25
|
+
// Per-counterparty position snapshot BEFORE the trade is applied. Signed
|
|
26
|
+
// strings: positive = long, negative = short, "0" / "0.00000" = flat.
|
|
27
|
+
taker_position_size_before: string
|
|
28
|
+
maker_position_size_before: string
|
|
29
|
+
// Per-counterparty entry-quote (notional cost basis) snapshot BEFORE the
|
|
30
|
+
// trade. Paired with `*_position_size_before`, avg entry =
|
|
31
|
+
// entry_quote_before / |position_size_before|. Optional: absent on older
|
|
32
|
+
// trade rows that predate the field.
|
|
33
|
+
taker_entry_quote_before?: string
|
|
34
|
+
maker_entry_quote_before?: string
|
|
35
|
+
}
|
|
36
|
+
|
|
37
|
+
/** @public */
|
|
38
|
+
export interface LtTradesResponse {
|
|
39
|
+
code: number
|
|
40
|
+
next_cursor: string
|
|
41
|
+
trades: LtTrade[]
|
|
42
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
// biome-ignore-all lint/performance/noBarrelFile lint/performance/noReExportAll: single re-export entry point
|
|
2
|
+
// for every Lighter wire type. Internal modules import per-file paths (e.g.
|
|
3
|
+
// `../types/account.js`) to avoid pulling unrelated types into bundles.
|
|
4
|
+
|
|
5
|
+
export * from './account.js'
|
|
6
|
+
export * from './action.js'
|
|
7
|
+
export * from './activity.js'
|
|
8
|
+
export * from './asset.js'
|
|
9
|
+
export * from './fill.js'
|
|
10
|
+
export * from './order.js'
|
|
11
|
+
export * from './submit.js'
|
|
12
|
+
export * from './ws.js'
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// Order shapes returned by Lighter's REST API.
|
|
2
|
+
|
|
3
|
+
/** @public */
|
|
4
|
+
export type LtOrder = {
|
|
5
|
+
order_index: number
|
|
6
|
+
client_order_index: number
|
|
7
|
+
order_id: string
|
|
8
|
+
client_order_id: string
|
|
9
|
+
market_index: number
|
|
10
|
+
owner_account_index: number
|
|
11
|
+
initial_base_amount: string
|
|
12
|
+
price: string
|
|
13
|
+
nonce: number
|
|
14
|
+
remaining_base_amount: string
|
|
15
|
+
is_ask: boolean
|
|
16
|
+
filled_base_amount: string
|
|
17
|
+
filled_quote_amount: string
|
|
18
|
+
side: string
|
|
19
|
+
type: string
|
|
20
|
+
time_in_force: string
|
|
21
|
+
reduce_only: boolean
|
|
22
|
+
trigger_price: string
|
|
23
|
+
order_expiry: number
|
|
24
|
+
status: string
|
|
25
|
+
trigger_status: string
|
|
26
|
+
trigger_time: number
|
|
27
|
+
parent_order_index: number
|
|
28
|
+
parent_order_id: string
|
|
29
|
+
to_trigger_order_id_0: string
|
|
30
|
+
to_trigger_order_id_1: string
|
|
31
|
+
to_cancel_order_id_0: string
|
|
32
|
+
block_height: number
|
|
33
|
+
timestamp: number
|
|
34
|
+
created_at: number
|
|
35
|
+
updated_at: number
|
|
36
|
+
transaction_time: number
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
/** @public */
|
|
40
|
+
export interface LtOrdersResponse {
|
|
41
|
+
code: number
|
|
42
|
+
next_cursor: string
|
|
43
|
+
orders: LtOrder[]
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
/** @public */
|
|
47
|
+
export interface LtOrderBookOrder {
|
|
48
|
+
order_index: number
|
|
49
|
+
order_id: string
|
|
50
|
+
owner_account_index: number
|
|
51
|
+
initial_base_amount: string
|
|
52
|
+
remaining_base_amount: string
|
|
53
|
+
price: string
|
|
54
|
+
order_expiry: number
|
|
55
|
+
transaction_time: number
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** @public */
|
|
59
|
+
export interface LtOrderBookOrdersResponse {
|
|
60
|
+
code: number
|
|
61
|
+
total_asks: number
|
|
62
|
+
asks: LtOrderBookOrder[]
|
|
63
|
+
total_bids: number
|
|
64
|
+
bids: LtOrderBookOrder[]
|
|
65
|
+
}
|