@drift-labs/common 1.0.59 → 1.0.61

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (284) hide show
  1. package/lib/_deprecated/common-math.d.ts +10 -0
  2. package/lib/_deprecated/common-math.js +9 -0
  3. package/lib/_deprecated/common-math.js.map +1 -0
  4. package/lib/_deprecated/common-ui-utils.d.ts +248 -0
  5. package/lib/_deprecated/common-ui-utils.js +59 -0
  6. package/lib/_deprecated/common-ui-utils.js.map +1 -0
  7. package/lib/_deprecated/equality-checks.d.ts +2 -0
  8. package/lib/_deprecated/equality-checks.js +7 -0
  9. package/lib/_deprecated/equality-checks.js.map +1 -0
  10. package/lib/{common-ui-utils/market.d.ts → _deprecated/market-utils.d.ts} +5 -7
  11. package/lib/_deprecated/market-utils.js +18 -0
  12. package/lib/_deprecated/market-utils.js.map +1 -0
  13. package/lib/_deprecated/order-utils.d.ts +12 -0
  14. package/lib/_deprecated/order-utils.js +18 -0
  15. package/lib/_deprecated/order-utils.js.map +1 -0
  16. package/lib/_deprecated/trading-utils.d.ts +52 -0
  17. package/lib/_deprecated/trading-utils.js +27 -0
  18. package/lib/_deprecated/trading-utils.js.map +1 -0
  19. package/lib/_deprecated/user-utils.d.ts +17 -0
  20. package/lib/_deprecated/user-utils.js +12 -0
  21. package/lib/_deprecated/user-utils.js.map +1 -0
  22. package/lib/_deprecated/utils.d.ts +40 -0
  23. package/lib/_deprecated/utils.js +47 -0
  24. package/lib/_deprecated/utils.js.map +1 -0
  25. package/lib/clients/tvFeed.js +2 -2
  26. package/lib/clients/tvFeed.js.map +1 -1
  27. package/lib/drift/Drift/clients/AuthorityDrift/DriftOperations/index.js +8 -8
  28. package/lib/drift/Drift/clients/AuthorityDrift/DriftOperations/index.js.map +1 -1
  29. package/lib/drift/Drift/clients/AuthorityDrift/index.js +9 -9
  30. package/lib/drift/Drift/clients/AuthorityDrift/index.js.map +1 -1
  31. package/lib/drift/Drift/clients/CentralServerDrift/index.js +5 -4
  32. package/lib/drift/Drift/clients/CentralServerDrift/index.js.map +1 -1
  33. package/lib/drift/base/actions/trade/editOrder.d.ts +1 -1
  34. package/lib/drift/base/actions/trade/editOrder.js.map +1 -1
  35. package/lib/drift/base/actions/trade/margin.js +4 -4
  36. package/lib/drift/base/actions/trade/margin.js.map +1 -1
  37. package/lib/drift/base/actions/trade/openPerpOrder/auction.d.ts +1 -1
  38. package/lib/drift/base/actions/trade/openPerpOrder/auction.js +4 -3
  39. package/lib/drift/base/actions/trade/openPerpOrder/auction.js.map +1 -1
  40. package/lib/drift/base/actions/trade/openPerpOrder/dlobServer/index.js +2 -2
  41. package/lib/drift/base/actions/trade/openPerpOrder/dlobServer/index.js.map +1 -1
  42. package/lib/drift/base/actions/trade/openPerpOrder/isolatedPositionDeposit.js +2 -2
  43. package/lib/drift/base/actions/trade/openPerpOrder/isolatedPositionDeposit.js.map +1 -1
  44. package/lib/drift/base/actions/trade/openPerpOrder/openPerpMarketOrder/index.d.ts +1 -1
  45. package/lib/drift/base/actions/trade/openPerpOrder/openPerpMarketOrder/index.js +4 -4
  46. package/lib/drift/base/actions/trade/openPerpOrder/openPerpMarketOrder/index.js.map +1 -1
  47. package/lib/drift/base/actions/trade/openPerpOrder/openPerpNonMarketOrder/index.d.ts +4 -4
  48. package/lib/drift/base/actions/trade/openPerpOrder/openPerpNonMarketOrder/index.js +60 -32
  49. package/lib/drift/base/actions/trade/openPerpOrder/openPerpNonMarketOrder/index.js.map +1 -1
  50. package/lib/drift/base/actions/trade/openPerpOrder/openSwiftOrder/index.js +4 -3
  51. package/lib/drift/base/actions/trade/openPerpOrder/openSwiftOrder/index.js.map +1 -1
  52. package/lib/drift/base/actions/trade/openPerpOrder/positionMaxLeverage.js +2 -2
  53. package/lib/drift/base/actions/trade/openPerpOrder/positionMaxLeverage.js.map +1 -1
  54. package/lib/drift/base/actions/trade/openPerpOrder/types.d.ts +5 -0
  55. package/lib/drift/base/actions/trade/openPerpOrder/types.js.map +1 -1
  56. package/lib/drift/base/actions/user/create.js +2 -2
  57. package/lib/drift/base/actions/user/create.js.map +1 -1
  58. package/lib/drift/base/details/user/balances.js +2 -2
  59. package/lib/drift/base/details/user/balances.js.map +1 -1
  60. package/lib/drift/base/details/user/positions.js +2 -2
  61. package/lib/drift/base/details/user/positions.js.map +1 -1
  62. package/lib/index.d.ts +28 -28
  63. package/lib/index.js +44 -29
  64. package/lib/index.js.map +1 -1
  65. package/lib/utils/accounts/index.d.ts +6 -0
  66. package/lib/utils/accounts/index.js +23 -0
  67. package/lib/utils/accounts/index.js.map +1 -0
  68. package/lib/utils/accounts/init.d.ts +22 -0
  69. package/lib/utils/accounts/init.js +90 -0
  70. package/lib/utils/accounts/init.js.map +1 -0
  71. package/lib/utils/accounts/keys.d.ts +22 -0
  72. package/lib/utils/accounts/keys.js +36 -0
  73. package/lib/utils/accounts/keys.js.map +1 -0
  74. package/lib/utils/accounts/multiple.d.ts +14 -0
  75. package/lib/utils/accounts/multiple.js +45 -0
  76. package/lib/utils/accounts/multiple.js.map +1 -0
  77. package/lib/utils/accounts/signature.d.ts +6 -0
  78. package/lib/utils/accounts/signature.js +53 -0
  79. package/lib/utils/accounts/signature.js.map +1 -0
  80. package/lib/utils/accounts/subaccounts.d.ts +8 -0
  81. package/lib/utils/accounts/subaccounts.js +31 -0
  82. package/lib/utils/accounts/subaccounts.js.map +1 -0
  83. package/lib/utils/{WalletConnectionState.d.ts → accounts/wallet.d.ts} +7 -1
  84. package/lib/utils/{WalletConnectionState.js → accounts/wallet.js} +32 -2
  85. package/lib/utils/accounts/wallet.js.map +1 -0
  86. package/lib/utils/core/arrays.d.ts +2 -0
  87. package/lib/utils/core/arrays.js +25 -0
  88. package/lib/utils/core/arrays.js.map +1 -0
  89. package/lib/utils/core/async.d.ts +5 -0
  90. package/lib/utils/core/async.js +17 -0
  91. package/lib/utils/core/async.js.map +1 -0
  92. package/lib/utils/core/cache.d.ts +1 -0
  93. package/lib/utils/core/cache.js +40 -0
  94. package/lib/utils/core/cache.js.map +1 -0
  95. package/lib/utils/core/data-structures.d.ts +30 -0
  96. package/lib/utils/core/data-structures.js +84 -0
  97. package/lib/utils/core/data-structures.js.map +1 -0
  98. package/lib/utils/{equalityChecks.d.ts → core/equality.d.ts} +1 -1
  99. package/lib/utils/{equalityChecks.js → core/equality.js} +3 -3
  100. package/lib/utils/core/equality.js.map +1 -0
  101. package/lib/utils/core/fetch.js.map +1 -0
  102. package/lib/utils/core/index.d.ts +7 -0
  103. package/lib/utils/core/index.js +24 -0
  104. package/lib/utils/core/index.js.map +1 -0
  105. package/lib/utils/core/serialization.d.ts +30 -0
  106. package/lib/utils/core/serialization.js +92 -0
  107. package/lib/utils/core/serialization.js.map +1 -0
  108. package/lib/utils/{enum.js → enum/index.js} +1 -1
  109. package/lib/utils/enum/index.js.map +1 -0
  110. package/lib/utils/index.d.ts +11 -176
  111. package/lib/utils/index.js +25 -594
  112. package/lib/utils/index.js.map +1 -1
  113. package/lib/utils/markets/balances.d.ts +6 -0
  114. package/lib/utils/markets/balances.js +29 -0
  115. package/lib/utils/markets/balances.js.map +1 -0
  116. package/lib/utils/markets/config.d.ts +5 -0
  117. package/lib/utils/markets/config.js +24 -0
  118. package/lib/utils/markets/config.js.map +1 -0
  119. package/lib/utils/markets/index.d.ts +6 -0
  120. package/lib/utils/markets/index.js +23 -0
  121. package/lib/utils/markets/index.js.map +1 -0
  122. package/lib/utils/markets/interest.d.ts +25 -0
  123. package/lib/utils/markets/interest.js +65 -0
  124. package/lib/utils/markets/interest.js.map +1 -0
  125. package/lib/utils/markets/leverage.d.ts +12 -0
  126. package/lib/utils/markets/leverage.js +60 -0
  127. package/lib/utils/markets/leverage.js.map +1 -0
  128. package/lib/utils/markets/operations.d.ts +21 -0
  129. package/lib/utils/markets/operations.js +59 -0
  130. package/lib/utils/markets/operations.js.map +1 -0
  131. package/lib/utils/math/bignum.d.ts +3 -0
  132. package/lib/utils/math/bignum.js +16 -0
  133. package/lib/utils/math/bignum.js.map +1 -0
  134. package/lib/utils/math/bn.d.ts +7 -0
  135. package/lib/utils/math/bn.js +58 -0
  136. package/lib/utils/math/bn.js.map +1 -0
  137. package/lib/utils/math/index.d.ts +7 -0
  138. package/lib/utils/math/index.js +24 -0
  139. package/lib/utils/math/index.js.map +1 -0
  140. package/lib/utils/math/numbers.d.ts +13 -0
  141. package/lib/utils/math/numbers.js +56 -0
  142. package/lib/utils/math/numbers.js.map +1 -0
  143. package/lib/utils/math/precision.d.ts +19 -0
  144. package/lib/utils/math/precision.js +73 -0
  145. package/lib/utils/math/precision.js.map +1 -0
  146. package/lib/utils/math/price.d.ts +12 -0
  147. package/lib/utils/math/price.js +45 -0
  148. package/lib/utils/math/price.js.map +1 -0
  149. package/lib/utils/math/sort.d.ts +13 -0
  150. package/lib/utils/math/sort.js +33 -0
  151. package/lib/utils/math/sort.js.map +1 -0
  152. package/lib/utils/math/spread.d.ts +8 -0
  153. package/lib/utils/math/spread.js +87 -0
  154. package/lib/utils/math/spread.js.map +1 -0
  155. package/lib/utils/orderbook/index.js +4 -4
  156. package/lib/utils/orderbook/index.js.map +1 -1
  157. package/lib/utils/orders/filters.d.ts +7 -0
  158. package/lib/utils/orders/filters.js +31 -0
  159. package/lib/utils/orders/filters.js.map +1 -0
  160. package/lib/utils/orders/flags.d.ts +12 -0
  161. package/lib/utils/orders/flags.js +44 -0
  162. package/lib/utils/orders/flags.js.map +1 -0
  163. package/lib/utils/orders/index.d.ts +6 -0
  164. package/lib/utils/orders/index.js +23 -0
  165. package/lib/utils/orders/index.js.map +1 -0
  166. package/lib/utils/orders/labels.d.ts +4 -0
  167. package/lib/utils/orders/labels.js +122 -0
  168. package/lib/utils/orders/labels.js.map +1 -0
  169. package/lib/utils/orders/misc.d.ts +11 -0
  170. package/lib/utils/orders/misc.js +27 -0
  171. package/lib/utils/orders/misc.js.map +1 -0
  172. package/lib/utils/orders/oracle.d.ts +5 -0
  173. package/lib/utils/orders/oracle.js +23 -0
  174. package/lib/utils/orders/oracle.js.map +1 -0
  175. package/lib/utils/orders/sort.d.ts +38 -0
  176. package/lib/utils/orders/sort.js +83 -0
  177. package/lib/utils/orders/sort.js.map +1 -0
  178. package/lib/utils/positions/index.d.ts +2 -0
  179. package/lib/{common-ui-utils → utils/positions}/index.js +1 -5
  180. package/lib/utils/positions/index.js.map +1 -0
  181. package/lib/utils/positions/open.d.ts +4 -0
  182. package/lib/{common-ui-utils/user.js → utils/positions/open.js} +10 -81
  183. package/lib/utils/positions/open.js.map +1 -0
  184. package/lib/utils/positions/user.d.ts +37 -0
  185. package/lib/utils/positions/user.js +74 -0
  186. package/lib/utils/positions/user.js.map +1 -0
  187. package/lib/utils/settings/settings.js.map +1 -0
  188. package/lib/utils/strings/convert.d.ts +11 -0
  189. package/lib/utils/{strings.js → strings/convert.js} +2 -51
  190. package/lib/utils/strings/convert.js.map +1 -0
  191. package/lib/utils/strings/format.d.ts +14 -0
  192. package/lib/utils/strings/format.js +61 -0
  193. package/lib/utils/strings/format.js.map +1 -0
  194. package/lib/utils/strings/index.d.ts +4 -0
  195. package/lib/utils/strings/index.js +21 -0
  196. package/lib/utils/strings/index.js.map +1 -0
  197. package/lib/utils/strings/parse.d.ts +4 -0
  198. package/lib/utils/strings/parse.js +25 -0
  199. package/lib/utils/strings/parse.js.map +1 -0
  200. package/lib/utils/strings/status.d.ts +15 -0
  201. package/lib/utils/strings/status.js +21 -0
  202. package/lib/utils/strings/status.js.map +1 -0
  203. package/lib/utils/token/account.d.ts +16 -0
  204. package/lib/utils/token/account.js +36 -0
  205. package/lib/utils/token/account.js.map +1 -0
  206. package/lib/utils/{token.d.ts → token/address.d.ts} +2 -7
  207. package/lib/utils/token/address.js +30 -0
  208. package/lib/utils/token/address.js.map +1 -0
  209. package/lib/utils/token/index.d.ts +3 -0
  210. package/lib/utils/token/index.js +20 -0
  211. package/lib/utils/token/index.js.map +1 -0
  212. package/lib/utils/token/instructions.d.ts +3 -0
  213. package/lib/utils/token/instructions.js +17 -0
  214. package/lib/utils/token/instructions.js.map +1 -0
  215. package/lib/utils/trading/auction.d.ts +82 -0
  216. package/lib/utils/trading/auction.js +208 -0
  217. package/lib/utils/trading/auction.js.map +1 -0
  218. package/lib/utils/trading/index.d.ts +7 -0
  219. package/lib/utils/trading/index.js +24 -0
  220. package/lib/utils/trading/index.js.map +1 -0
  221. package/lib/utils/trading/leverage.d.ts +18 -0
  222. package/lib/utils/trading/leverage.js +79 -0
  223. package/lib/utils/trading/leverage.js.map +1 -0
  224. package/lib/utils/trading/liquidation.d.ts +22 -0
  225. package/lib/utils/trading/liquidation.js +67 -0
  226. package/lib/utils/trading/liquidation.js.map +1 -0
  227. package/lib/utils/trading/lp.d.ts +4 -0
  228. package/lib/utils/trading/lp.js +20 -0
  229. package/lib/utils/trading/lp.js.map +1 -0
  230. package/lib/utils/trading/pnl.d.ts +34 -0
  231. package/lib/utils/trading/pnl.js +88 -0
  232. package/lib/utils/trading/pnl.js.map +1 -0
  233. package/lib/utils/trading/price.d.ts +12 -0
  234. package/lib/utils/trading/price.js +36 -0
  235. package/lib/utils/trading/price.js.map +1 -0
  236. package/lib/utils/trading/size.d.ts +27 -0
  237. package/lib/utils/trading/size.js +83 -0
  238. package/lib/utils/trading/size.js.map +1 -0
  239. package/lib/utils/{validation.d.ts → validation/address.d.ts} +1 -2
  240. package/lib/utils/{validation.js → validation/address.js} +4 -6
  241. package/lib/utils/validation/address.js.map +1 -0
  242. package/lib/utils/validation/index.d.ts +3 -0
  243. package/lib/utils/validation/index.js +20 -0
  244. package/lib/utils/validation/index.js.map +1 -0
  245. package/lib/utils/validation/input.d.ts +3 -0
  246. package/lib/utils/validation/input.js +33 -0
  247. package/lib/utils/validation/input.js.map +1 -0
  248. package/lib/utils/validation/notional.d.ts +2 -0
  249. package/lib/utils/validation/notional.js +8 -0
  250. package/lib/utils/validation/notional.js.map +1 -0
  251. package/package.json +90 -3
  252. package/lib/common-ui-utils/commonUiUtils.d.ts +0 -251
  253. package/lib/common-ui-utils/commonUiUtils.js +0 -647
  254. package/lib/common-ui-utils/commonUiUtils.js.map +0 -1
  255. package/lib/common-ui-utils/index.d.ts +0 -6
  256. package/lib/common-ui-utils/index.js.map +0 -1
  257. package/lib/common-ui-utils/market.js +0 -134
  258. package/lib/common-ui-utils/market.js.map +0 -1
  259. package/lib/common-ui-utils/order.d.ts +0 -25
  260. package/lib/common-ui-utils/order.js +0 -191
  261. package/lib/common-ui-utils/order.js.map +0 -1
  262. package/lib/common-ui-utils/settings/settings.js.map +0 -1
  263. package/lib/common-ui-utils/trading.d.ts +0 -79
  264. package/lib/common-ui-utils/trading.js +0 -313
  265. package/lib/common-ui-utils/trading.js.map +0 -1
  266. package/lib/common-ui-utils/user.d.ts +0 -18
  267. package/lib/common-ui-utils/user.js.map +0 -1
  268. package/lib/utils/WalletConnectionState.js.map +0 -1
  269. package/lib/utils/enum.js.map +0 -1
  270. package/lib/utils/equalityChecks.js.map +0 -1
  271. package/lib/utils/fetch.js.map +0 -1
  272. package/lib/utils/math.d.ts +0 -31
  273. package/lib/utils/math.js +0 -181
  274. package/lib/utils/math.js.map +0 -1
  275. package/lib/utils/strings.d.ts +0 -34
  276. package/lib/utils/strings.js.map +0 -1
  277. package/lib/utils/token.js +0 -45
  278. package/lib/utils/token.js.map +0 -1
  279. package/lib/utils/validation.js.map +0 -1
  280. /package/lib/utils/{fetch.d.ts → core/fetch.d.ts} +0 -0
  281. /package/lib/utils/{fetch.js → core/fetch.js} +0 -0
  282. /package/lib/utils/{enum.d.ts → enum/index.d.ts} +0 -0
  283. /package/lib/{common-ui-utils → utils}/settings/settings.d.ts +0 -0
  284. /package/lib/{common-ui-utils → utils}/settings/settings.js +0 -0
@@ -0,0 +1,10 @@
1
+ /** @deprecated Use direct import from '@drift-labs/common/utils/math' */
2
+ export declare const COMMON_MATH: {
3
+ calculateSpreadBidAskMark: (l2: Pick<import("@drift-labs/sdk").L2OrderBook, "bids" | "asks">, oraclePrice?: BN) => {
4
+ bestBidPrice: BN;
5
+ bestAskPrice: BN;
6
+ markPrice: BN;
7
+ spreadPct: any;
8
+ spreadQuote: any;
9
+ };
10
+ };
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.COMMON_MATH = void 0;
4
+ const spread_1 = require("../utils/math/spread");
5
+ /** @deprecated Use direct import from '@drift-labs/common/utils/math' */
6
+ exports.COMMON_MATH = {
7
+ calculateSpreadBidAskMark: spread_1.calculateSpreadBidAskMark,
8
+ };
9
+ //# sourceMappingURL=common-math.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-math.js","sourceRoot":"","sources":["../../src/_deprecated/common-math.ts"],"names":[],"mappings":";;;AAAA,iDAAiE;AAEjE,yEAAyE;AAC5D,QAAA,WAAW,GAAG;IAC1B,yBAAyB,EAAzB,kCAAyB;CACzB,CAAC","sourcesContent":["import { calculateSpreadBidAskMark } from '../utils/math/spread';\n\n/** @deprecated Use direct import from '@drift-labs/common/utils/math' */\nexport const COMMON_MATH = {\n\tcalculateSpreadBidAskMark,\n};\n"]}
@@ -0,0 +1,248 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/trading', '@drift-labs/common/utils/accounts', etc. */
4
+ export declare const COMMON_UI_UTILS: {
5
+ getOrderLabelFromOrderDetails: (orderDetails: Pick<import("..").UISerializableOrder, "orderType" | "direction" | "triggerCondition" | "oraclePriceOffset" | "existingPositionDirection">) => string;
6
+ getLimitPriceFromOracleOffset: (order: import("..").UISerializableOrder, oraclePrice: import("@drift-labs/sdk").BigNum) => import("@drift-labs/sdk").BigNum;
7
+ isAuctionEmpty: typeof import("..").isAuctionEmpty;
8
+ getUIOrderTypeFromSdkOrderType: (orderType: import("@drift-labs/sdk").OrderType, triggerCondition: import("@drift-labs/sdk").OrderTriggerCondition, direction: import("@drift-labs/sdk").PositionDirection, oracleOffset: import("@drift-labs/sdk").BigNum) => import("..").UIOrderTypeValue;
9
+ getPerpAuctionDuration: typeof import("..").getPerpAuctionDuration;
10
+ getPerpOrderParamsBitFlags: typeof import("..").getPerpOrderParamsBitFlags;
11
+ isOrderTriggered: (order: Pick<import("..").UISerializableOrder, "status" | "orderType" | "triggerCondition">) => boolean;
12
+ getBaseAssetSymbol: (marketName: string, removePrefix?: boolean) => string;
13
+ getPausedOperations: (marketAccount: import("@drift-labs/sdk").SpotMarketAccount | import("@drift-labs/sdk").PerpMarketAccount) => string[];
14
+ PerpOperationsMap: {
15
+ UPDATE_FUNDING: string;
16
+ AMM_FILL: string;
17
+ FILL: string;
18
+ SETTLE_PNL: string;
19
+ SETTLE_PNL_WITH_POSITION: string;
20
+ };
21
+ SpotOperationsMap: {
22
+ UPDATE_CUMULATIVE_INTEREST: string;
23
+ FILL: string;
24
+ WITHDRAW: string;
25
+ };
26
+ InsuranceFundOperationsMap: {
27
+ INIT: string;
28
+ ADD: string;
29
+ REQUEST_REMOVE: string;
30
+ REMOVE: string;
31
+ };
32
+ getMarketConfig: typeof import("..").getMarketConfig;
33
+ getMaxLeverageForMarket: (marketType: import("@drift-labs/sdk").MarketType, marketIndex: number, driftClient: import("@drift-labs/sdk").DriftClient) => {
34
+ maxLeverage: number;
35
+ highLeverageMaxLeverage: number;
36
+ hasHighLeverage: boolean;
37
+ };
38
+ getMaxLeverageForMarketAccount: (marketType: import("@drift-labs/sdk").MarketType, marketAccount: import("@drift-labs/sdk").SpotMarketAccount | import("@drift-labs/sdk").PerpMarketAccount) => {
39
+ maxLeverage: number;
40
+ highLeverageMaxLeverage: number;
41
+ hasHighLeverage: boolean;
42
+ };
43
+ calculatePnlPctFromPosition: (pnl: BN, position: import("..").OpenPosition, marginUsed?: BN) => number;
44
+ calculatePotentialProfit: (props: {
45
+ currentPositionSize: import("@drift-labs/sdk").BigNum;
46
+ currentPositionDirection: import("@drift-labs/sdk").PositionDirection;
47
+ currentPositionEntryPrice: import("@drift-labs/sdk").BigNum;
48
+ tradeDirection: import("@drift-labs/sdk").PositionDirection;
49
+ exitBaseSize: import("@drift-labs/sdk").BigNum;
50
+ exitPrice: import("@drift-labs/sdk").BigNum;
51
+ takerFeeBps: number;
52
+ slippageTolerance?: number;
53
+ isMarketOrder?: boolean;
54
+ }) => {
55
+ estimatedProfit: import("@drift-labs/sdk").BigNum;
56
+ estimatedProfitBeforeFees: import("@drift-labs/sdk").BigNum;
57
+ estimatedTakerFee: import("@drift-labs/sdk").BigNum;
58
+ notionalSizeAtEntry: import("@drift-labs/sdk").BigNum;
59
+ notionalSizeAtExit: import("@drift-labs/sdk").BigNum;
60
+ };
61
+ calculateLiquidationPriceAfterPerpTrade: ({ estEntryPrice, orderType, perpMarketIndex, tradeBaseSize, isLong, userClient, oraclePrice, limitPrice, offsetCollateral, precision, isEnteringHighLeverageMode, capLiqPrice, marginType, }: {
62
+ estEntryPrice: BN;
63
+ orderType: import("..").UIOrderType;
64
+ perpMarketIndex: number;
65
+ tradeBaseSize: BN;
66
+ isLong: boolean;
67
+ userClient: import("@drift-labs/sdk").User;
68
+ oraclePrice: BN;
69
+ limitPrice?: BN;
70
+ offsetCollateral?: BN;
71
+ precision?: number;
72
+ isEnteringHighLeverageMode?: boolean;
73
+ capLiqPrice?: boolean;
74
+ marginType?: "Cross" | "Isolated";
75
+ }) => number;
76
+ checkIsMarketOrderType: (orderType: import("..").UIOrderType) => boolean;
77
+ convertLeverageToMarginRatio: (leverage: number) => number;
78
+ convertMarginRatioToLeverage: (marginRatio: number, decimals?: number) => number;
79
+ getMarketTickSize: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => BN;
80
+ getMarketTickSizeDecimals: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => number;
81
+ getMarketStepSize: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => BN;
82
+ getMarketStepSizeDecimals: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => number;
83
+ isEntirePositionOrder: (orderAmount: import("@drift-labs/sdk").BigNum) => boolean;
84
+ getMaxLeverageOrderSize: (orderAmount: import("@drift-labs/sdk").BigNum) => import("@drift-labs/sdk").BigNum;
85
+ formatOrderSize: (orderAmount: import("@drift-labs/sdk").BigNum, formatFn?: (amount: import("@drift-labs/sdk").BigNum) => string) => string;
86
+ getMarginUsedForPosition: (user: import("@drift-labs/sdk").User, marketIndex: number, includeOpenOrders?: boolean) => any;
87
+ validateLeverageChange: ({ user, marketIndex, newLeverage, }: {
88
+ user: import("@drift-labs/sdk").User;
89
+ marketIndex: number;
90
+ newLeverage: number;
91
+ }) => boolean;
92
+ getOpenPositionData: (driftClient: import("@drift-labs/sdk").DriftClient, userPositions: import("@drift-labs/sdk").PerpPosition[], user: import("@drift-labs/sdk").User, perpMarketLookup: import("@drift-labs/sdk").PerpMarketConfig[], markPriceCallback?: (marketIndex: number) => BN) => import("..").OpenPosition[];
93
+ checkIfUserAccountExists: (driftClient: import("@drift-labs/sdk").DriftClient, config: {
94
+ type: "userPubKey";
95
+ userPubKey: import("@solana/web3.js").PublicKey;
96
+ } | {
97
+ type: "subAccountId";
98
+ subAccountId: number;
99
+ authority: import("@solana/web3.js").PublicKey;
100
+ }) => Promise<boolean>;
101
+ getUserMaxLeverageForMarket: (user: import("@drift-labs/sdk").User, marketIndex: number, marketLeverageDetails: {
102
+ regularMaxLeverage: number;
103
+ highLeverageMaxLeverage: number;
104
+ hasHighLeverage: boolean;
105
+ }, uiSavedMaxLeverage?: number) => number;
106
+ abbreviateAddress: (address: string | import("@solana/web3.js").PublicKey, length?: number) => string;
107
+ calculateAverageEntryPrice: (quoteAssetAmount: import("@drift-labs/sdk").BigNum, baseAssetAmount: import("@drift-labs/sdk").BigNum) => import("@drift-labs/sdk").BigNum;
108
+ chunks: <T>(array: readonly T[], size: number) => T[][];
109
+ compareSignatures: (original: string, hashed: string) => Promise<boolean>;
110
+ createPlaceholderIWallet: (walletPubKey?: import("@solana/web3.js").PublicKey) => import("@drift-labs/sdk").IWalletV2;
111
+ deriveMarketOrderParams: ({ marketType, marketIndex, direction, maxLeverageSelected, maxLeverageOrderSize, baseAmount, reduceOnly, allowInfSlippage, oraclePrice, bestPrice, entryPrice, worstPrice, markPrice, auctionDuration, auctionStartPriceOffset, auctionEndPriceOffset, auctionStartPriceOffsetFrom, auctionEndPriceOffsetFrom, auctionPriceCaps, slippageTolerance, isOracleOrder, additionalEndPriceBuffer, forceUpToSlippage, bestBidPrice, bestAskPrice, ensureCrossingEndPrice, }: {
112
+ marketType: import("@drift-labs/sdk").MarketType;
113
+ marketIndex: number;
114
+ direction: import("@drift-labs/sdk").PositionDirection;
115
+ maxLeverageSelected: boolean;
116
+ maxLeverageOrderSize: BN;
117
+ baseAmount: BN;
118
+ reduceOnly: boolean;
119
+ allowInfSlippage: boolean;
120
+ oraclePrice: BN;
121
+ bestPrice: BN;
122
+ entryPrice: BN;
123
+ worstPrice: BN;
124
+ markPrice: BN;
125
+ auctionDuration: number;
126
+ auctionStartPriceOffset: number;
127
+ auctionEndPriceOffset: number;
128
+ auctionPriceCaps?: {
129
+ min: BN;
130
+ max: BN;
131
+ };
132
+ auctionStartPriceOffsetFrom: import("..").TradeOffsetPrice;
133
+ auctionEndPriceOffsetFrom: import("..").TradeOffsetPrice;
134
+ slippageTolerance: number;
135
+ isOracleOrder?: boolean;
136
+ additionalEndPriceBuffer?: BN;
137
+ forceUpToSlippage?: boolean;
138
+ bestBidPrice?: BN;
139
+ bestAskPrice?: BN;
140
+ ensureCrossingEndPrice?: boolean;
141
+ }) => {
142
+ orderType?: import("@drift-labs/sdk").OrderType;
143
+ marketType?: import("@drift-labs/sdk").MarketType;
144
+ userOrderId?: number;
145
+ direction?: import("@drift-labs/sdk").PositionDirection;
146
+ baseAssetAmount?: BN;
147
+ price?: BN;
148
+ marketIndex?: number;
149
+ reduceOnly?: boolean;
150
+ postOnly?: import("@drift-labs/sdk").PostOnlyParams;
151
+ bitFlags?: number;
152
+ triggerPrice?: any;
153
+ triggerCondition?: import("@drift-labs/sdk").OrderTriggerCondition;
154
+ oraclePriceOffset?: number;
155
+ auctionDuration?: number;
156
+ maxTs?: any;
157
+ auctionStartPrice?: any;
158
+ auctionEndPrice?: any;
159
+ } & import("@drift-labs/sdk").NecessaryOrderParams & {
160
+ constrainedBySlippage?: boolean;
161
+ };
162
+ fetchCurrentSubaccounts: (driftClient: import("@drift-labs/sdk").DriftClient) => import("@drift-labs/sdk").UserAccount[];
163
+ fetchUserClientsAndAccounts: (driftClient: import("@drift-labs/sdk").DriftClient) => {
164
+ user: import("@drift-labs/sdk").User;
165
+ userAccount: import("@drift-labs/sdk").UserAccount;
166
+ }[];
167
+ formatTokenInputCurried: (setAmount: (amount: string) => void, spotMarketConfig: import("@drift-labs/sdk").SpotMarketConfig) => (newAmount: string) => void;
168
+ getBalanceFromTokenAccountResult: (account: {
169
+ pubkey: import("@solana/web3.js").PublicKey;
170
+ account: import("@solana/web3.js").AccountInfo<import("@solana/web3.js").ParsedAccountData>;
171
+ }) => any;
172
+ getIdAndAuthorityFromKey: (key: string) => {
173
+ userId: number;
174
+ userAuthority: import("@solana/web3.js").PublicKey;
175
+ } | {
176
+ userId: undefined;
177
+ userAuthority: undefined;
178
+ };
179
+ getLimitAuctionParams: ({ direction, inputPrice, startPriceFromSettings, duration, auctionStartPriceOffset, oraclePriceBands, }: {
180
+ direction: import("@drift-labs/sdk").PositionDirection;
181
+ inputPrice: import("@drift-labs/sdk").BigNum;
182
+ startPriceFromSettings: BN;
183
+ duration: number;
184
+ auctionStartPriceOffset: number;
185
+ oraclePriceBands?: [BN, BN];
186
+ }) => import("..").AuctionParams;
187
+ getLpSharesAmountForQuote: (driftClient: import("@drift-labs/sdk").DriftClient, marketIndex: number, quoteAmount: BN) => import("@drift-labs/sdk").BigNum;
188
+ getMarketAuctionParams: ({ direction, startPriceFromSettings, endPriceFromSettings, limitPrice, duration, auctionStartPriceOffset, auctionEndPriceOffset, additionalEndPriceBuffer, forceUpToSlippage, bestBidPrice, bestAskPrice, ensureCrossingEndPrice, }: {
189
+ direction: import("@drift-labs/sdk").PositionDirection;
190
+ startPriceFromSettings: BN;
191
+ endPriceFromSettings: BN;
192
+ limitPrice: BN;
193
+ duration: number;
194
+ auctionStartPriceOffset: number;
195
+ auctionEndPriceOffset: number;
196
+ additionalEndPriceBuffer?: BN;
197
+ forceUpToSlippage?: boolean;
198
+ bestBidPrice?: BN;
199
+ bestAskPrice?: BN;
200
+ ensureCrossingEndPrice?: boolean;
201
+ }) => import("..").AuctionParams;
202
+ getMarketKey: (marketIndex: number, marketType: import("@drift-labs/sdk").MarketType) => string;
203
+ getMarketOrderLimitPrice: ({ direction, baselinePrice, slippageTolerance, }: {
204
+ direction: import("@drift-labs/sdk").PositionDirection;
205
+ baselinePrice: BN;
206
+ slippageTolerance: number;
207
+ }) => BN;
208
+ getMultipleAccounts: (connection: any, keys: string[], commitment: string) => Promise<{
209
+ keys: string[];
210
+ array: import("@solana/web3.js").AccountInfo<Buffer>[];
211
+ }>;
212
+ getMultipleAccountsCore: (connection: any, keys: string[], commitment: string) => Promise<{
213
+ keys: string[];
214
+ array: import("@solana/web3.js").AccountInfo<string[]>[];
215
+ }>;
216
+ getPriceObject: ({ oraclePrice, bestOffer, entryPrice, worstPrice, markPrice, direction, }: {
217
+ oraclePrice: BN;
218
+ bestOffer: BN;
219
+ entryPrice: BN;
220
+ worstPrice: BN;
221
+ markPrice: BN;
222
+ direction: import("@drift-labs/sdk").PositionDirection;
223
+ }) => {
224
+ oracle: BN;
225
+ bestOffer: BN;
226
+ entry: BN;
227
+ best: BN;
228
+ worst: BN;
229
+ mark: BN;
230
+ };
231
+ getQuoteValueForLpShares: (driftClient: import("@drift-labs/sdk").DriftClient, marketIndex: number, sharesAmount: BN) => import("@drift-labs/sdk").BigNum;
232
+ getSignatureVerificationMessageForSettings: (authority: import("@solana/web3.js").PublicKey, signTs: number) => Uint8Array;
233
+ getTokenAccount: (connection: import("@solana/web3.js").Connection, mintAddress: string, userPubKey: string) => Promise<{
234
+ pubkey: import("@solana/web3.js").PublicKey;
235
+ account: import("@solana/web3.js").AccountInfo<import("@solana/web3.js").ParsedAccountData>;
236
+ }>;
237
+ getTokenAddress: (mintAddress: string, userPubKey: string) => Promise<import("@solana/web3.js").PublicKey>;
238
+ getUserKey: (userId: number, authority: import("@solana/web3.js").PublicKey) => string;
239
+ hashSignature: (signature: string) => Promise<string>;
240
+ initializeAndSubscribeToNewUserAccount: (driftClient: import("@drift-labs/sdk").DriftClient, userIdToInit: number, authority: import("@solana/web3.js").PublicKey, callbacks: {
241
+ initializationStep: () => Promise<boolean>;
242
+ postInitializationStep?: () => Promise<boolean>;
243
+ handleSuccessStep?: (accountAlreadyExisted: boolean) => Promise<boolean>;
244
+ }) => Promise<"ok" | "failed_initializationStep" | "failed_postInitializationStep" | "failed_awaitAccountInitializationChainState" | "failed_handleSuccessStep">;
245
+ userExists: (driftClient: import("@drift-labs/sdk").DriftClient, userId: number, authority: import("@solana/web3.js").PublicKey) => Promise<boolean>;
246
+ verifySignature: (signature: Uint8Array, message: Uint8Array, pubKey: import("@solana/web3.js").PublicKey) => boolean;
247
+ trimTrailingZeros: (str: string, zerosToShow?: number) => string;
248
+ };
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.COMMON_UI_UTILS = void 0;
4
+ const format_1 = require("../utils/strings/format");
5
+ const price_1 = require("../utils/math/price");
6
+ const arrays_1 = require("../utils/core/arrays");
7
+ const signature_1 = require("../utils/accounts/signature");
8
+ const wallet_1 = require("../utils/accounts/wallet");
9
+ const auction_1 = require("../utils/trading/auction");
10
+ const subaccounts_1 = require("../utils/accounts/subaccounts");
11
+ const input_1 = require("../utils/validation/input");
12
+ const account_1 = require("../utils/token/account");
13
+ const keys_1 = require("../utils/accounts/keys");
14
+ const lp_1 = require("../utils/trading/lp");
15
+ const price_2 = require("../utils/trading/price");
16
+ const multiple_1 = require("../utils/accounts/multiple");
17
+ const address_1 = require("../utils/token/address");
18
+ const init_1 = require("../utils/accounts/init");
19
+ const user_utils_1 = require("./user-utils");
20
+ const trading_utils_1 = require("./trading-utils");
21
+ const market_utils_1 = require("./market-utils");
22
+ const order_utils_1 = require("./order-utils");
23
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/trading', '@drift-labs/common/utils/accounts', etc. */
24
+ exports.COMMON_UI_UTILS = {
25
+ abbreviateAddress: format_1.abbreviateAddress,
26
+ calculateAverageEntryPrice: price_1.calculateAverageEntryPrice,
27
+ chunks: arrays_1.chunks,
28
+ compareSignatures: signature_1.compareSignatures,
29
+ createPlaceholderIWallet: wallet_1.createPlaceholderIWallet,
30
+ deriveMarketOrderParams: auction_1.deriveMarketOrderParams,
31
+ fetchCurrentSubaccounts: subaccounts_1.fetchCurrentSubaccounts,
32
+ fetchUserClientsAndAccounts: subaccounts_1.fetchUserClientsAndAccounts,
33
+ formatTokenInputCurried: input_1.formatTokenInputCurried,
34
+ getBalanceFromTokenAccountResult: account_1.getBalanceFromTokenAccountResult,
35
+ getIdAndAuthorityFromKey: keys_1.getIdAndAuthorityFromKey,
36
+ getLimitAuctionParams: auction_1.getLimitAuctionParams,
37
+ getLpSharesAmountForQuote: lp_1.getLpSharesAmountForQuote,
38
+ getMarketAuctionParams: auction_1.getMarketAuctionParams,
39
+ getMarketKey: keys_1.getMarketKey,
40
+ getMarketOrderLimitPrice: price_2.getMarketOrderLimitPrice,
41
+ getMultipleAccounts: multiple_1.getMultipleAccounts,
42
+ getMultipleAccountsCore: multiple_1.getMultipleAccountsCore,
43
+ getPriceObject: auction_1.getPriceObject,
44
+ getQuoteValueForLpShares: lp_1.getQuoteValueForLpShares,
45
+ getSignatureVerificationMessageForSettings: signature_1.getSignatureVerificationMessageForSettings,
46
+ getTokenAccount: account_1.getTokenAccount,
47
+ getTokenAddress: address_1.getTokenAddress,
48
+ getUserKey: keys_1.getUserKey,
49
+ hashSignature: signature_1.hashSignature,
50
+ initializeAndSubscribeToNewUserAccount: init_1.initializeAndSubscribeToNewUserAccount,
51
+ userExists: subaccounts_1.userExists,
52
+ verifySignature: signature_1.verifySignature,
53
+ trimTrailingZeros: format_1.trimTrailingZeros,
54
+ ...user_utils_1.USER_UTILS,
55
+ ...trading_utils_1.TRADING_UTILS,
56
+ ...market_utils_1.MARKET_UTILS,
57
+ ...order_utils_1.ORDER_COMMON_UTILS,
58
+ };
59
+ //# sourceMappingURL=common-ui-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common-ui-utils.js","sourceRoot":"","sources":["../../src/_deprecated/common-ui-utils.ts"],"names":[],"mappings":";;;AAAA,oDAA+E;AAC/E,+CAAiE;AACjE,iDAA8C;AAC9C,2DAKqC;AACrC,qDAAoE;AACpE,sDAKkC;AAClC,+DAIuC;AACvC,qDAAoE;AACpE,oDAGgC;AAChC,iDAIgC;AAChC,4CAG6B;AAC7B,kDAAkE;AAClE,yDAGoC;AACpC,oDAAyD;AACzD,iDAAgF;AAChF,6CAA0C;AAC1C,mDAAgD;AAChD,iDAA8C;AAC9C,+CAAmD;AAEnD,wHAAwH;AAC3G,QAAA,eAAe,GAAG;IAC9B,iBAAiB,EAAjB,0BAAiB;IACjB,0BAA0B,EAA1B,kCAA0B;IAC1B,MAAM,EAAN,eAAM;IACN,iBAAiB,EAAjB,6BAAiB;IACjB,wBAAwB,EAAxB,iCAAwB;IACxB,uBAAuB,EAAvB,iCAAuB;IACvB,uBAAuB,EAAvB,qCAAuB;IACvB,2BAA2B,EAA3B,yCAA2B;IAC3B,uBAAuB,EAAvB,+BAAuB;IACvB,gCAAgC,EAAhC,0CAAgC;IAChC,wBAAwB,EAAxB,+BAAwB;IACxB,qBAAqB,EAArB,+BAAqB;IACrB,yBAAyB,EAAzB,8BAAyB;IACzB,sBAAsB,EAAtB,gCAAsB;IACtB,YAAY,EAAZ,mBAAY;IACZ,wBAAwB,EAAxB,gCAAwB;IACxB,mBAAmB,EAAnB,8BAAmB;IACnB,uBAAuB,EAAvB,kCAAuB;IACvB,cAAc,EAAd,wBAAc;IACd,wBAAwB,EAAxB,6BAAwB;IACxB,0CAA0C,EAA1C,sDAA0C;IAC1C,eAAe,EAAf,yBAAe;IACf,eAAe,EAAf,yBAAe;IACf,UAAU,EAAV,iBAAU;IACV,aAAa,EAAb,yBAAa;IACb,sCAAsC,EAAtC,6CAAsC;IACtC,UAAU,EAAV,wBAAU;IACV,eAAe,EAAf,2BAAe;IACf,iBAAiB,EAAjB,0BAAiB;IACjB,GAAG,uBAAU;IACb,GAAG,6BAAa;IAChB,GAAG,2BAAY;IACf,GAAG,gCAAkB;CACrB,CAAC","sourcesContent":["import { abbreviateAddress, trimTrailingZeros } from '../utils/strings/format';\nimport { calculateAverageEntryPrice } from '../utils/math/price';\nimport { chunks } from '../utils/core/arrays';\nimport {\n\tcompareSignatures,\n\tgetSignatureVerificationMessageForSettings,\n\tverifySignature,\n\thashSignature,\n} from '../utils/accounts/signature';\nimport { createPlaceholderIWallet } from '../utils/accounts/wallet';\nimport {\n\tderiveMarketOrderParams,\n\tgetLimitAuctionParams,\n\tgetMarketAuctionParams,\n\tgetPriceObject,\n} from '../utils/trading/auction';\nimport {\n\tfetchCurrentSubaccounts,\n\tfetchUserClientsAndAccounts,\n\tuserExists,\n} from '../utils/accounts/subaccounts';\nimport { formatTokenInputCurried } from '../utils/validation/input';\nimport {\n\tgetBalanceFromTokenAccountResult,\n\tgetTokenAccount,\n} from '../utils/token/account';\nimport {\n\tgetIdAndAuthorityFromKey,\n\tgetUserKey,\n\tgetMarketKey,\n} from '../utils/accounts/keys';\nimport {\n\tgetLpSharesAmountForQuote,\n\tgetQuoteValueForLpShares,\n} from '../utils/trading/lp';\nimport { getMarketOrderLimitPrice } from '../utils/trading/price';\nimport {\n\tgetMultipleAccounts,\n\tgetMultipleAccountsCore,\n} from '../utils/accounts/multiple';\nimport { getTokenAddress } from '../utils/token/address';\nimport { initializeAndSubscribeToNewUserAccount } from '../utils/accounts/init';\nimport { USER_UTILS } from './user-utils';\nimport { TRADING_UTILS } from './trading-utils';\nimport { MARKET_UTILS } from './market-utils';\nimport { ORDER_COMMON_UTILS } from './order-utils';\n\n/** @deprecated Use direct imports from '@drift-labs/common/utils/trading', '@drift-labs/common/utils/accounts', etc. */\nexport const COMMON_UI_UTILS = {\n\tabbreviateAddress,\n\tcalculateAverageEntryPrice,\n\tchunks,\n\tcompareSignatures,\n\tcreatePlaceholderIWallet,\n\tderiveMarketOrderParams,\n\tfetchCurrentSubaccounts,\n\tfetchUserClientsAndAccounts,\n\tformatTokenInputCurried,\n\tgetBalanceFromTokenAccountResult,\n\tgetIdAndAuthorityFromKey,\n\tgetLimitAuctionParams,\n\tgetLpSharesAmountForQuote,\n\tgetMarketAuctionParams,\n\tgetMarketKey,\n\tgetMarketOrderLimitPrice,\n\tgetMultipleAccounts,\n\tgetMultipleAccountsCore,\n\tgetPriceObject,\n\tgetQuoteValueForLpShares,\n\tgetSignatureVerificationMessageForSettings,\n\tgetTokenAccount,\n\tgetTokenAddress,\n\tgetUserKey,\n\thashSignature,\n\tinitializeAndSubscribeToNewUserAccount,\n\tuserExists,\n\tverifySignature,\n\ttrimTrailingZeros,\n\t...USER_UTILS,\n\t...TRADING_UTILS,\n\t...MARKET_UTILS,\n\t...ORDER_COMMON_UTILS,\n};\n"]}
@@ -0,0 +1,2 @@
1
+ /** @deprecated Use direct import from '@drift-labs/common/utils/core/equality' */
2
+ export { EQUALITY_CHECKS } from '../utils/core/equality';
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EQUALITY_CHECKS = void 0;
4
+ /** @deprecated Use direct import from '@drift-labs/common/utils/core/equality' */
5
+ var equality_1 = require("../utils/core/equality");
6
+ Object.defineProperty(exports, "EQUALITY_CHECKS", { enumerable: true, get: function () { return equality_1.EQUALITY_CHECKS; } });
7
+ //# sourceMappingURL=equality-checks.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"equality-checks.js","sourceRoot":"","sources":["../../src/_deprecated/equality-checks.ts"],"names":[],"mappings":";;;AAAA,kFAAkF;AAClF,mDAAyD;AAAhD,2GAAA,eAAe,OAAA","sourcesContent":["/** @deprecated Use direct import from '@drift-labs/common/utils/core/equality' */\nexport { EQUALITY_CHECKS } from '../utils/core/equality';\n"]}
@@ -1,9 +1,8 @@
1
- import { PerpMarketAccount, SpotMarketAccount, MarketType, SpotMarketConfig, DriftEnv, PerpMarketConfig, DriftClient } from '@drift-labs/sdk';
2
- declare function getMarketConfig(driftEnv: DriftEnv, marketType: typeof MarketType.PERP, marketIndex: number): PerpMarketConfig;
3
- declare function getMarketConfig(driftEnv: DriftEnv, marketType: typeof MarketType.SPOT, marketIndex: number): SpotMarketConfig;
1
+ import { getMarketConfig } from '../utils/markets/config';
2
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/markets' */
4
3
  export declare const MARKET_UTILS: {
5
4
  getBaseAssetSymbol: (marketName: string, removePrefix?: boolean) => string;
6
- getPausedOperations: (marketAccount: PerpMarketAccount | SpotMarketAccount) => string[];
5
+ getPausedOperations: (marketAccount: import("@drift-labs/sdk").SpotMarketAccount | import("@drift-labs/sdk").PerpMarketAccount) => string[];
7
6
  PerpOperationsMap: {
8
7
  UPDATE_FUNDING: string;
9
8
  AMM_FILL: string;
@@ -23,15 +22,14 @@ export declare const MARKET_UTILS: {
23
22
  REMOVE: string;
24
23
  };
25
24
  getMarketConfig: typeof getMarketConfig;
26
- getMaxLeverageForMarket: (marketType: MarketType, marketIndex: number, driftClient: DriftClient) => {
25
+ getMaxLeverageForMarket: (marketType: import("@drift-labs/sdk").MarketType, marketIndex: number, driftClient: import("@drift-labs/sdk").DriftClient) => {
27
26
  maxLeverage: number;
28
27
  highLeverageMaxLeverage: number;
29
28
  hasHighLeverage: boolean;
30
29
  };
31
- getMaxLeverageForMarketAccount: (marketType: MarketType, marketAccount: PerpMarketAccount | SpotMarketAccount) => {
30
+ getMaxLeverageForMarketAccount: (marketType: import("@drift-labs/sdk").MarketType, marketAccount: import("@drift-labs/sdk").SpotMarketAccount | import("@drift-labs/sdk").PerpMarketAccount) => {
32
31
  maxLeverage: number;
33
32
  highLeverageMaxLeverage: number;
34
33
  hasHighLeverage: boolean;
35
34
  };
36
35
  };
37
- export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.MARKET_UTILS = void 0;
4
+ const config_1 = require("../utils/markets/config");
5
+ const operations_1 = require("../utils/markets/operations");
6
+ const leverage_1 = require("../utils/markets/leverage");
7
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/markets' */
8
+ exports.MARKET_UTILS = {
9
+ getBaseAssetSymbol: config_1.getBaseAssetSymbol,
10
+ getPausedOperations: operations_1.getPausedOperations,
11
+ PerpOperationsMap: operations_1.PerpOperationsMap,
12
+ SpotOperationsMap: operations_1.SpotOperationsMap,
13
+ InsuranceFundOperationsMap: operations_1.InsuranceFundOperationsMap,
14
+ getMarketConfig: config_1.getMarketConfig,
15
+ getMaxLeverageForMarket: leverage_1.getMaxLeverageForMarket,
16
+ getMaxLeverageForMarketAccount: leverage_1.getMaxLeverageForMarketAccount,
17
+ };
18
+ //# sourceMappingURL=market-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"market-utils.js","sourceRoot":"","sources":["../../src/_deprecated/market-utils.ts"],"names":[],"mappings":";;;AAAA,oDAA8E;AAC9E,4DAKqC;AACrC,wDAGmC;AAEnC,6EAA6E;AAChE,QAAA,YAAY,GAAG;IAC3B,kBAAkB,EAAlB,2BAAkB;IAClB,mBAAmB,EAAnB,gCAAmB;IACnB,iBAAiB,EAAjB,8BAAiB;IACjB,iBAAiB,EAAjB,8BAAiB;IACjB,0BAA0B,EAA1B,uCAA0B;IAC1B,eAAe,EAAf,wBAAe;IACf,uBAAuB,EAAvB,kCAAuB;IACvB,8BAA8B,EAA9B,yCAA8B;CAC9B,CAAC","sourcesContent":["import { getBaseAssetSymbol, getMarketConfig } from '../utils/markets/config';\nimport {\n\tgetPausedOperations,\n\tPerpOperationsMap,\n\tSpotOperationsMap,\n\tInsuranceFundOperationsMap,\n} from '../utils/markets/operations';\nimport {\n\tgetMaxLeverageForMarket,\n\tgetMaxLeverageForMarketAccount,\n} from '../utils/markets/leverage';\n\n/** @deprecated Use direct imports from '@drift-labs/common/utils/markets' */\nexport const MARKET_UTILS = {\n\tgetBaseAssetSymbol,\n\tgetPausedOperations,\n\tPerpOperationsMap,\n\tSpotOperationsMap,\n\tInsuranceFundOperationsMap,\n\tgetMarketConfig,\n\tgetMaxLeverageForMarket,\n\tgetMaxLeverageForMarketAccount,\n};\n"]}
@@ -0,0 +1,12 @@
1
+ import { isAuctionEmpty } from '../utils/orders/oracle';
2
+ import { getPerpAuctionDuration, getPerpOrderParamsBitFlags } from '../utils/orders/flags';
3
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/orders' */
4
+ export declare const ORDER_COMMON_UTILS: {
5
+ getOrderLabelFromOrderDetails: (orderDetails: Pick<import("..").UISerializableOrder, "orderType" | "direction" | "triggerCondition" | "oraclePriceOffset" | "existingPositionDirection">) => string;
6
+ getLimitPriceFromOracleOffset: (order: import("..").UISerializableOrder, oraclePrice: import("@drift-labs/sdk").BigNum) => import("@drift-labs/sdk").BigNum;
7
+ isAuctionEmpty: typeof isAuctionEmpty;
8
+ getUIOrderTypeFromSdkOrderType: (orderType: import("@drift-labs/sdk").OrderType, triggerCondition: import("@drift-labs/sdk").OrderTriggerCondition, direction: import("@drift-labs/sdk").PositionDirection, oracleOffset: import("@drift-labs/sdk").BigNum) => import("..").UIOrderTypeValue;
9
+ getPerpAuctionDuration: typeof getPerpAuctionDuration;
10
+ getPerpOrderParamsBitFlags: typeof getPerpOrderParamsBitFlags;
11
+ isOrderTriggered: (order: Pick<import("..").UISerializableOrder, "status" | "orderType" | "triggerCondition">) => boolean;
12
+ };
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.ORDER_COMMON_UTILS = void 0;
4
+ const labels_1 = require("../utils/orders/labels");
5
+ const oracle_1 = require("../utils/orders/oracle");
6
+ const flags_1 = require("../utils/orders/flags");
7
+ const filters_1 = require("../utils/orders/filters");
8
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/orders' */
9
+ exports.ORDER_COMMON_UTILS = {
10
+ getOrderLabelFromOrderDetails: labels_1.getOrderLabelFromOrderDetails,
11
+ getLimitPriceFromOracleOffset: oracle_1.getLimitPriceFromOracleOffset,
12
+ isAuctionEmpty: oracle_1.isAuctionEmpty,
13
+ getUIOrderTypeFromSdkOrderType: labels_1.getUIOrderTypeFromSdkOrderType,
14
+ getPerpAuctionDuration: flags_1.getPerpAuctionDuration,
15
+ getPerpOrderParamsBitFlags: flags_1.getPerpOrderParamsBitFlags,
16
+ isOrderTriggered: filters_1.isOrderTriggered,
17
+ };
18
+ //# sourceMappingURL=order-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"order-utils.js","sourceRoot":"","sources":["../../src/_deprecated/order-utils.ts"],"names":[],"mappings":";;;AAAA,mDAGgC;AAChC,mDAGgC;AAChC,iDAG+B;AAC/B,qDAA2D;AAE3D,4EAA4E;AAC/D,QAAA,kBAAkB,GAAG;IACjC,6BAA6B,EAA7B,sCAA6B;IAC7B,6BAA6B,EAA7B,sCAA6B;IAC7B,cAAc,EAAd,uBAAc;IACd,8BAA8B,EAA9B,uCAA8B;IAC9B,sBAAsB,EAAtB,8BAAsB;IACtB,0BAA0B,EAA1B,kCAA0B;IAC1B,gBAAgB,EAAhB,0BAAgB;CAChB,CAAC","sourcesContent":["import {\n\tgetOrderLabelFromOrderDetails,\n\tgetUIOrderTypeFromSdkOrderType,\n} from '../utils/orders/labels';\nimport {\n\tgetLimitPriceFromOracleOffset,\n\tisAuctionEmpty,\n} from '../utils/orders/oracle';\nimport {\n\tgetPerpAuctionDuration,\n\tgetPerpOrderParamsBitFlags,\n} from '../utils/orders/flags';\nimport { isOrderTriggered } from '../utils/orders/filters';\n\n/** @deprecated Use direct imports from '@drift-labs/common/utils/orders' */\nexport const ORDER_COMMON_UTILS = {\n\tgetOrderLabelFromOrderDetails,\n\tgetLimitPriceFromOracleOffset,\n\tisAuctionEmpty,\n\tgetUIOrderTypeFromSdkOrderType,\n\tgetPerpAuctionDuration,\n\tgetPerpOrderParamsBitFlags,\n\tisOrderTriggered,\n};\n"]}
@@ -0,0 +1,52 @@
1
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/trading' */
2
+ export declare const TRADING_UTILS: {
3
+ calculatePnlPctFromPosition: (pnl: BN, position: import("..").OpenPosition, marginUsed?: BN) => number;
4
+ calculatePotentialProfit: (props: {
5
+ currentPositionSize: import("@drift-labs/sdk").BigNum;
6
+ currentPositionDirection: import("@drift-labs/sdk").PositionDirection;
7
+ currentPositionEntryPrice: import("@drift-labs/sdk").BigNum;
8
+ tradeDirection: import("@drift-labs/sdk").PositionDirection;
9
+ exitBaseSize: import("@drift-labs/sdk").BigNum;
10
+ exitPrice: import("@drift-labs/sdk").BigNum;
11
+ takerFeeBps: number;
12
+ slippageTolerance?: number;
13
+ isMarketOrder?: boolean;
14
+ }) => {
15
+ estimatedProfit: import("@drift-labs/sdk").BigNum;
16
+ estimatedProfitBeforeFees: import("@drift-labs/sdk").BigNum;
17
+ estimatedTakerFee: import("@drift-labs/sdk").BigNum;
18
+ notionalSizeAtEntry: import("@drift-labs/sdk").BigNum;
19
+ notionalSizeAtExit: import("@drift-labs/sdk").BigNum;
20
+ };
21
+ calculateLiquidationPriceAfterPerpTrade: ({ estEntryPrice, orderType, perpMarketIndex, tradeBaseSize, isLong, userClient, oraclePrice, limitPrice, offsetCollateral, precision, isEnteringHighLeverageMode, capLiqPrice, marginType, }: {
22
+ estEntryPrice: BN;
23
+ orderType: import("..").UIOrderType;
24
+ perpMarketIndex: number;
25
+ tradeBaseSize: BN;
26
+ isLong: boolean;
27
+ userClient: import("@drift-labs/sdk").User;
28
+ oraclePrice: BN;
29
+ limitPrice?: BN;
30
+ offsetCollateral?: BN;
31
+ precision?: number;
32
+ isEnteringHighLeverageMode?: boolean;
33
+ capLiqPrice?: boolean;
34
+ marginType?: "Cross" | "Isolated";
35
+ }) => number;
36
+ checkIsMarketOrderType: (orderType: import("..").UIOrderType) => boolean;
37
+ convertLeverageToMarginRatio: (leverage: number) => number;
38
+ convertMarginRatioToLeverage: (marginRatio: number, decimals?: number) => number;
39
+ getMarketTickSize: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => BN;
40
+ getMarketTickSizeDecimals: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => number;
41
+ getMarketStepSize: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => BN;
42
+ getMarketStepSizeDecimals: (driftClient: import("@drift-labs/sdk").DriftClient, marketId: import("..").MarketId) => number;
43
+ isEntirePositionOrder: (orderAmount: import("@drift-labs/sdk").BigNum) => boolean;
44
+ getMaxLeverageOrderSize: (orderAmount: import("@drift-labs/sdk").BigNum) => import("@drift-labs/sdk").BigNum;
45
+ formatOrderSize: (orderAmount: import("@drift-labs/sdk").BigNum, formatFn?: (amount: import("@drift-labs/sdk").BigNum) => string) => string;
46
+ getMarginUsedForPosition: (user: import("@drift-labs/sdk").User, marketIndex: number, includeOpenOrders?: boolean) => any;
47
+ validateLeverageChange: ({ user, marketIndex, newLeverage, }: {
48
+ user: import("@drift-labs/sdk").User;
49
+ marketIndex: number;
50
+ newLeverage: number;
51
+ }) => boolean;
52
+ };
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TRADING_UTILS = void 0;
4
+ const pnl_1 = require("../utils/trading/pnl");
5
+ const liquidation_1 = require("../utils/trading/liquidation");
6
+ const price_1 = require("../utils/trading/price");
7
+ const leverage_1 = require("../utils/trading/leverage");
8
+ const size_1 = require("../utils/trading/size");
9
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/trading' */
10
+ exports.TRADING_UTILS = {
11
+ calculatePnlPctFromPosition: pnl_1.calculatePnlPctFromPosition,
12
+ calculatePotentialProfit: pnl_1.calculatePotentialProfit,
13
+ calculateLiquidationPriceAfterPerpTrade: liquidation_1.calculateLiquidationPriceAfterPerpTrade,
14
+ checkIsMarketOrderType: price_1.checkIsMarketOrderType,
15
+ convertLeverageToMarginRatio: leverage_1.convertLeverageToMarginRatio,
16
+ convertMarginRatioToLeverage: leverage_1.convertMarginRatioToLeverage,
17
+ getMarketTickSize: size_1.getMarketTickSize,
18
+ getMarketTickSizeDecimals: size_1.getMarketTickSizeDecimals,
19
+ getMarketStepSize: size_1.getMarketStepSize,
20
+ getMarketStepSizeDecimals: size_1.getMarketStepSizeDecimals,
21
+ isEntirePositionOrder: size_1.isEntirePositionOrder,
22
+ getMaxLeverageOrderSize: size_1.getMaxLeverageOrderSize,
23
+ formatOrderSize: size_1.formatOrderSize,
24
+ getMarginUsedForPosition: leverage_1.getMarginUsedForPosition,
25
+ validateLeverageChange: leverage_1.validateLeverageChange,
26
+ };
27
+ //# sourceMappingURL=trading-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"trading-utils.js","sourceRoot":"","sources":["../../src/_deprecated/trading-utils.ts"],"names":[],"mappings":";;;AAAA,8CAG8B;AAC9B,8DAAuF;AACvF,kDAAgE;AAChE,wDAKmC;AACnC,gDAQ+B;AAE/B,6EAA6E;AAChE,QAAA,aAAa,GAAG;IAC5B,2BAA2B,EAA3B,iCAA2B;IAC3B,wBAAwB,EAAxB,8BAAwB;IACxB,uCAAuC,EAAvC,qDAAuC;IACvC,sBAAsB,EAAtB,8BAAsB;IACtB,4BAA4B,EAA5B,uCAA4B;IAC5B,4BAA4B,EAA5B,uCAA4B;IAC5B,iBAAiB,EAAjB,wBAAiB;IACjB,yBAAyB,EAAzB,gCAAyB;IACzB,iBAAiB,EAAjB,wBAAiB;IACjB,yBAAyB,EAAzB,gCAAyB;IACzB,qBAAqB,EAArB,4BAAqB;IACrB,uBAAuB,EAAvB,8BAAuB;IACvB,eAAe,EAAf,sBAAe;IACf,wBAAwB,EAAxB,mCAAwB;IACxB,sBAAsB,EAAtB,iCAAsB;CACtB,CAAC","sourcesContent":["import {\n\tcalculatePnlPctFromPosition,\n\tcalculatePotentialProfit,\n} from '../utils/trading/pnl';\nimport { calculateLiquidationPriceAfterPerpTrade } from '../utils/trading/liquidation';\nimport { checkIsMarketOrderType } from '../utils/trading/price';\nimport {\n\tconvertLeverageToMarginRatio,\n\tconvertMarginRatioToLeverage,\n\tgetMarginUsedForPosition,\n\tvalidateLeverageChange,\n} from '../utils/trading/leverage';\nimport {\n\tgetMarketTickSize,\n\tgetMarketTickSizeDecimals,\n\tgetMarketStepSize,\n\tgetMarketStepSizeDecimals,\n\tisEntirePositionOrder,\n\tgetMaxLeverageOrderSize,\n\tformatOrderSize,\n} from '../utils/trading/size';\n\n/** @deprecated Use direct imports from '@drift-labs/common/utils/trading' */\nexport const TRADING_UTILS = {\n\tcalculatePnlPctFromPosition,\n\tcalculatePotentialProfit,\n\tcalculateLiquidationPriceAfterPerpTrade,\n\tcheckIsMarketOrderType,\n\tconvertLeverageToMarginRatio,\n\tconvertMarginRatioToLeverage,\n\tgetMarketTickSize,\n\tgetMarketTickSizeDecimals,\n\tgetMarketStepSize,\n\tgetMarketStepSizeDecimals,\n\tisEntirePositionOrder,\n\tgetMaxLeverageOrderSize,\n\tformatOrderSize,\n\tgetMarginUsedForPosition,\n\tvalidateLeverageChange,\n};\n"]}
@@ -0,0 +1,17 @@
1
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/positions' */
2
+ export declare const USER_UTILS: {
3
+ getOpenPositionData: (driftClient: import("@drift-labs/sdk").DriftClient, userPositions: import("@drift-labs/sdk").PerpPosition[], user: import("@drift-labs/sdk").User, perpMarketLookup: import("@drift-labs/sdk").PerpMarketConfig[], markPriceCallback?: (marketIndex: number) => BN) => import("..").OpenPosition[];
4
+ checkIfUserAccountExists: (driftClient: import("@drift-labs/sdk").DriftClient, config: {
5
+ type: "userPubKey";
6
+ userPubKey: import("@solana/web3.js").PublicKey;
7
+ } | {
8
+ type: "subAccountId";
9
+ subAccountId: number;
10
+ authority: import("@solana/web3.js").PublicKey;
11
+ }) => Promise<boolean>;
12
+ getUserMaxLeverageForMarket: (user: import("@drift-labs/sdk").User, marketIndex: number, marketLeverageDetails: {
13
+ regularMaxLeverage: number;
14
+ highLeverageMaxLeverage: number;
15
+ hasHighLeverage: boolean;
16
+ }, uiSavedMaxLeverage?: number) => number;
17
+ };
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.USER_UTILS = void 0;
4
+ const open_1 = require("../utils/positions/open");
5
+ const user_1 = require("../utils/positions/user");
6
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/positions' */
7
+ exports.USER_UTILS = {
8
+ getOpenPositionData: open_1.getOpenPositionData,
9
+ checkIfUserAccountExists: user_1.checkIfUserAccountExists,
10
+ getUserMaxLeverageForMarket: user_1.getUserMaxLeverageForMarket,
11
+ };
12
+ //# sourceMappingURL=user-utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user-utils.js","sourceRoot":"","sources":["../../src/_deprecated/user-utils.ts"],"names":[],"mappings":";;;AAAA,kDAA8D;AAC9D,kDAGiC;AAEjC,+EAA+E;AAClE,QAAA,UAAU,GAAG;IACzB,mBAAmB,EAAnB,0BAAmB;IACnB,wBAAwB,EAAxB,+BAAwB;IACxB,2BAA2B,EAA3B,kCAA2B;CAC3B,CAAC","sourcesContent":["import { getOpenPositionData } from '../utils/positions/open';\nimport {\n\tcheckIfUserAccountExists,\n\tgetUserMaxLeverageForMarket,\n} from '../utils/positions/user';\n\n/** @deprecated Use direct imports from '@drift-labs/common/utils/positions' */\nexport const USER_UTILS = {\n\tgetOpenPositionData,\n\tcheckIfUserAccountExists,\n\tgetUserMaxLeverageForMarket,\n};\n"]}
@@ -0,0 +1,40 @@
1
+ /// <reference types="node" />
2
+ /// <reference types="node" />
3
+ /** @deprecated Use direct imports from '@drift-labs/common/utils/math', '@drift-labs/common/utils/core', etc. */
4
+ export declare const COMMON_UTILS: {
5
+ getIfVaultBalance: (spotMarketConfig: import("@drift-labs/sdk").SpotMarketConfig, driftClient: import("@drift-labs/sdk").DriftClient) => Promise<import("@drift-labs/sdk").BigNum>;
6
+ getIfStakingVaultApr: (spotMarketConfig: import("@drift-labs/sdk").SpotMarketConfig, driftClient: import("@drift-labs/sdk").DriftClient) => Promise<number>;
7
+ getCurrentOpenInterestForMarket: (marketIndex: number, marketType: import("@drift-labs/sdk").MarketType, driftClient: import("@drift-labs/sdk").DriftClient) => number;
8
+ getDepositAprForMarket: (marketIndex: number, marketType: import("@drift-labs/sdk").MarketType, driftClient: import("@drift-labs/sdk").DriftClient) => number;
9
+ getBorrowAprForMarket: (marketIndex: number, marketType: import("@drift-labs/sdk").MarketType, driftClient: import("@drift-labs/sdk").DriftClient) => number;
10
+ getTotalBorrowsForMarket: (market: import("@drift-labs/sdk").SpotMarketConfig, driftClient: import("@drift-labs/sdk").DriftClient) => number;
11
+ getTotalDepositsForMarket: (market: import("@drift-labs/sdk").SpotMarketConfig, driftClient: import("@drift-labs/sdk").DriftClient) => {
12
+ totalDepositsBase: number;
13
+ totalDepositsQuote: number;
14
+ };
15
+ dividesExactly: (numerator: number, denominator: number) => boolean;
16
+ toSnakeCase: (str: string) => string;
17
+ toCamelCase: (str: string) => string;
18
+ getTieredSortScore: (aScores: number[], bScores: number[]) => number;
19
+ normalizeBaseAssetSymbol: (symbol: string) => string;
20
+ calculateZScore: (target: number, previousValues: number[]) => number;
21
+ glueArray: <T>(size: number, elements: T[]) => T[][];
22
+ timedPromise: <T_1>(promise: T_1) => Promise<{
23
+ promiseTime: number;
24
+ promiseResult: Awaited<T_1>;
25
+ }>;
26
+ chunks: <T_2>(array: readonly T_2[], size: number) => T_2[][];
27
+ getMultipleAccountsInfoChunked: (connection: import("@solana/web3.js").Connection, accounts: import("@solana/web3.js").PublicKey[]) => Promise<import("@solana/web3.js").AccountInfo<Buffer>[]>;
28
+ MATH: {
29
+ NUM: {
30
+ mean: (numbers: number[]) => number;
31
+ median: (numbers: number[]) => number;
32
+ };
33
+ BN: {
34
+ bnMax: (numbers: BN[]) => BN;
35
+ bnMin: (numbers: BN[]) => BN;
36
+ bnMean: (numbers: BN[]) => BN;
37
+ bnMedian: (numbers: BN[]) => BN;
38
+ };
39
+ };
40
+ };