@aephia/atlas-kit 0.6.0-next.98 → 0.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (764) hide show
  1. package/dist/cargo/actions/deposit.d.ts +4 -1
  2. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  3. package/dist/cargo/actions/deposit.js +56 -133
  4. package/dist/cargo/actions/deposit.js.map +1 -1
  5. package/dist/cargo/actions/index.d.ts +14 -7
  6. package/dist/cargo/actions/index.d.ts.map +1 -1
  7. package/dist/cargo/actions/index.js +105 -93
  8. package/dist/cargo/actions/index.js.map +1 -1
  9. package/dist/cargo/actions/wallet-context.d.ts +52 -3
  10. package/dist/cargo/actions/wallet-context.d.ts.map +1 -1
  11. package/dist/cargo/actions/wallet-context.js +118 -7
  12. package/dist/cargo/actions/wallet-context.js.map +1 -1
  13. package/dist/cargo/actions/wallet-token.d.ts +1 -6
  14. package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
  15. package/dist/cargo/actions/wallet-token.js +0 -45
  16. package/dist/cargo/actions/wallet-token.js.map +1 -1
  17. package/dist/cargo/actions/withdrawal.d.ts +1 -1
  18. package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
  19. package/dist/cargo/actions/withdrawal.js +37 -163
  20. package/dist/cargo/actions/withdrawal.js.map +1 -1
  21. package/dist/cargo/index.d.ts.map +1 -1
  22. package/dist/cargo/index.js +2 -10
  23. package/dist/cargo/index.js.map +1 -1
  24. package/dist/claim-stakes/actions/index.d.ts +80 -14
  25. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  26. package/dist/claim-stakes/actions/index.js +668 -717
  27. package/dist/claim-stakes/actions/index.js.map +1 -1
  28. package/dist/claim-stakes/index.d.ts +8 -6
  29. package/dist/claim-stakes/index.d.ts.map +1 -1
  30. package/dist/claim-stakes/index.js +12 -18
  31. package/dist/claim-stakes/index.js.map +1 -1
  32. package/dist/client/context.d.ts.map +1 -1
  33. package/dist/client/context.js +353 -37
  34. package/dist/client/context.js.map +1 -1
  35. package/dist/client/contracts.d.ts +54 -1
  36. package/dist/client/contracts.d.ts.map +1 -1
  37. package/dist/client/deployments.d.ts +17 -0
  38. package/dist/client/deployments.d.ts.map +1 -1
  39. package/dist/client/deployments.js +17 -0
  40. package/dist/client/deployments.js.map +1 -1
  41. package/dist/client/index.d.ts +22 -1
  42. package/dist/client/index.d.ts.map +1 -1
  43. package/dist/client/index.js +21 -0
  44. package/dist/client/index.js.map +1 -1
  45. package/dist/client/rpc-subscription-provider.d.ts +2 -0
  46. package/dist/client/rpc-subscription-provider.d.ts.map +1 -1
  47. package/dist/client/rpc-subscription-provider.js +135 -101
  48. package/dist/client/rpc-subscription-provider.js.map +1 -1
  49. package/dist/combat/actions/index.d.ts +30 -12
  50. package/dist/combat/actions/index.d.ts.map +1 -1
  51. package/dist/combat/actions/index.js +266 -256
  52. package/dist/combat/actions/index.js.map +1 -1
  53. package/dist/combat/index.d.ts +25 -8
  54. package/dist/combat/index.d.ts.map +1 -1
  55. package/dist/combat/index.js +21 -18
  56. package/dist/combat/index.js.map +1 -1
  57. package/dist/crafting/actions/fee-rate.d.ts +47 -0
  58. package/dist/crafting/actions/fee-rate.d.ts.map +1 -0
  59. package/dist/crafting/actions/fee-rate.js +58 -0
  60. package/dist/crafting/actions/fee-rate.js.map +1 -0
  61. package/dist/crafting/actions/index.d.ts +28 -28
  62. package/dist/crafting/actions/index.d.ts.map +1 -1
  63. package/dist/crafting/actions/index.js +246 -317
  64. package/dist/crafting/actions/index.js.map +1 -1
  65. package/dist/crafting/estimate.d.ts +101 -0
  66. package/dist/crafting/estimate.d.ts.map +1 -0
  67. package/dist/crafting/estimate.js +108 -0
  68. package/dist/crafting/estimate.js.map +1 -0
  69. package/dist/crafting/index.d.ts +6 -5
  70. package/dist/crafting/index.d.ts.map +1 -1
  71. package/dist/crafting/index.js +6 -13
  72. package/dist/crafting/index.js.map +1 -1
  73. package/dist/factions/actions/index.d.ts +1 -1
  74. package/dist/factions/actions/index.d.ts.map +1 -1
  75. package/dist/factions/actions/index.js +5 -4
  76. package/dist/factions/actions/index.js.map +1 -1
  77. package/dist/factions/index.d.ts +18 -1
  78. package/dist/factions/index.d.ts.map +1 -1
  79. package/dist/factions/index.js +24 -18
  80. package/dist/factions/index.js.map +1 -1
  81. package/dist/fleets/actions/add-ship.d.ts +18 -5
  82. package/dist/fleets/actions/add-ship.d.ts.map +1 -1
  83. package/dist/fleets/actions/add-ship.js +35 -48
  84. package/dist/fleets/actions/add-ship.js.map +1 -1
  85. package/dist/fleets/actions/create-fleet.d.ts +1 -1
  86. package/dist/fleets/actions/create-fleet.d.ts.map +1 -1
  87. package/dist/fleets/actions/create-fleet.js +8 -38
  88. package/dist/fleets/actions/create-fleet.js.map +1 -1
  89. package/dist/fleets/actions/crew-transfer.d.ts +8 -4
  90. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -1
  91. package/dist/fleets/actions/crew-transfer.js +27 -42
  92. package/dist/fleets/actions/crew-transfer.js.map +1 -1
  93. package/dist/fleets/actions/deployment-storage.d.ts +161 -0
  94. package/dist/fleets/actions/deployment-storage.d.ts.map +1 -0
  95. package/dist/fleets/actions/deployment-storage.js +297 -0
  96. package/dist/fleets/actions/deployment-storage.js.map +1 -0
  97. package/dist/fleets/actions/disband.d.ts +42 -0
  98. package/dist/fleets/actions/disband.d.ts.map +1 -0
  99. package/dist/fleets/actions/disband.js +107 -0
  100. package/dist/fleets/actions/disband.js.map +1 -0
  101. package/dist/fleets/actions/index.d.ts +55 -11
  102. package/dist/fleets/actions/index.d.ts.map +1 -1
  103. package/dist/fleets/actions/index.js +288 -241
  104. package/dist/fleets/actions/index.js.map +1 -1
  105. package/dist/fleets/actions/respawn.d.ts +1 -1
  106. package/dist/fleets/actions/respawn.d.ts.map +1 -1
  107. package/dist/fleets/actions/respawn.js +8 -37
  108. package/dist/fleets/actions/respawn.js.map +1 -1
  109. package/dist/fleets/actions/ship-import.d.ts +1 -1
  110. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  111. package/dist/fleets/actions/ship-import.js +39 -91
  112. package/dist/fleets/actions/ship-import.js.map +1 -1
  113. package/dist/fleets/actions/sync.d.ts +24 -0
  114. package/dist/fleets/actions/sync.d.ts.map +1 -0
  115. package/dist/fleets/actions/sync.js +55 -0
  116. package/dist/fleets/actions/sync.js.map +1 -0
  117. package/dist/fleets/composition-stats.d.ts +101 -0
  118. package/dist/fleets/composition-stats.d.ts.map +1 -0
  119. package/dist/fleets/composition-stats.js +354 -0
  120. package/dist/fleets/composition-stats.js.map +1 -0
  121. package/dist/fleets/cooldown.d.ts +7 -4
  122. package/dist/fleets/cooldown.d.ts.map +1 -1
  123. package/dist/fleets/cooldown.js +11 -6
  124. package/dist/fleets/cooldown.js.map +1 -1
  125. package/dist/fleets/index.d.ts +1 -0
  126. package/dist/fleets/index.d.ts.map +1 -1
  127. package/dist/fleets/index.js +3 -10
  128. package/dist/fleets/index.js.map +1 -1
  129. package/dist/fleets/movement-arithmetic.d.ts.map +1 -1
  130. package/dist/fleets/movement-arithmetic.js +4 -0
  131. package/dist/fleets/movement-arithmetic.js.map +1 -1
  132. package/dist/fleets/subwarp-estimate.d.ts +3 -1
  133. package/dist/fleets/subwarp-estimate.d.ts.map +1 -1
  134. package/dist/fleets/subwarp-estimate.js +3 -1
  135. package/dist/fleets/subwarp-estimate.js.map +1 -1
  136. package/dist/fleets/warp-lane-policy.d.ts +13 -7
  137. package/dist/fleets/warp-lane-policy.d.ts.map +1 -1
  138. package/dist/fleets/warp-lane-policy.js +19 -7
  139. package/dist/fleets/warp-lane-policy.js.map +1 -1
  140. package/dist/identity/actions/create-profile.d.ts +1 -1
  141. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  142. package/dist/identity/actions/create-profile.js +2 -2
  143. package/dist/identity/actions/create-profile.js.map +1 -1
  144. package/dist/identity/actions/index.d.ts +2 -1
  145. package/dist/identity/actions/index.d.ts.map +1 -1
  146. package/dist/identity/actions/index.js +6 -4
  147. package/dist/identity/actions/index.js.map +1 -1
  148. package/dist/identity/actions/research-unlock.d.ts +61 -0
  149. package/dist/identity/actions/research-unlock.d.ts.map +1 -0
  150. package/dist/identity/actions/research-unlock.js +166 -0
  151. package/dist/identity/actions/research-unlock.js.map +1 -0
  152. package/dist/identity/index.d.ts +62 -2
  153. package/dist/identity/index.d.ts.map +1 -1
  154. package/dist/identity/index.js +63 -12
  155. package/dist/identity/index.js.map +1 -1
  156. package/dist/index.d.ts +2 -1
  157. package/dist/index.d.ts.map +1 -1
  158. package/dist/index.js +4 -4
  159. package/dist/index.js.map +1 -1
  160. package/dist/internal/c4/account-decoding.d.ts +49 -0
  161. package/dist/internal/c4/account-decoding.d.ts.map +1 -0
  162. package/dist/internal/c4/account-decoding.js +74 -0
  163. package/dist/internal/c4/account-decoding.js.map +1 -0
  164. package/dist/internal/c4/career-xp.d.ts +58 -0
  165. package/dist/internal/c4/career-xp.d.ts.map +1 -0
  166. package/dist/internal/c4/career-xp.js +80 -0
  167. package/dist/internal/c4/career-xp.js.map +1 -0
  168. package/dist/internal/c4/cargo-instructions.d.ts +24 -0
  169. package/dist/internal/c4/cargo-instructions.d.ts.map +1 -0
  170. package/dist/internal/c4/cargo-instructions.js +30 -0
  171. package/dist/internal/c4/cargo-instructions.js.map +1 -0
  172. package/dist/internal/c4/cargo-pod.d.ts +15 -0
  173. package/dist/internal/c4/cargo-pod.d.ts.map +1 -0
  174. package/dist/internal/c4/cargo-pod.js +13 -0
  175. package/dist/internal/c4/cargo-pod.js.map +1 -0
  176. package/dist/internal/c4/character-modifier.d.ts +1 -1
  177. package/dist/internal/c4/character-modifier.d.ts.map +1 -1
  178. package/dist/internal/c4/character.d.ts +157 -0
  179. package/dist/internal/c4/character.d.ts.map +1 -0
  180. package/dist/internal/c4/character.js +64 -0
  181. package/dist/internal/c4/character.js.map +1 -0
  182. package/dist/internal/c4/claim-stake-building-definitions.d.ts.map +1 -1
  183. package/dist/internal/c4/claim-stake-building-definitions.js +2 -1
  184. package/dist/internal/c4/claim-stake-building-definitions.js.map +1 -1
  185. package/dist/internal/c4/claim-stake-configuration.d.ts.map +1 -1
  186. package/dist/internal/c4/claim-stake-configuration.js +5 -36
  187. package/dist/internal/c4/claim-stake-configuration.js.map +1 -1
  188. package/dist/internal/c4/claim-stake-definitions.d.ts +4 -0
  189. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  190. package/dist/internal/c4/claim-stake-definitions.js +6 -2
  191. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  192. package/dist/internal/c4/claim-stake-plots.d.ts +17 -0
  193. package/dist/internal/c4/claim-stake-plots.d.ts.map +1 -0
  194. package/dist/internal/c4/claim-stake-plots.js +29 -0
  195. package/dist/internal/c4/claim-stake-plots.js.map +1 -0
  196. package/dist/internal/c4/claim-stake-standing.d.ts +80 -0
  197. package/dist/internal/c4/claim-stake-standing.d.ts.map +1 -0
  198. package/dist/internal/c4/claim-stake-standing.js +61 -0
  199. package/dist/internal/c4/claim-stake-standing.js.map +1 -0
  200. package/dist/internal/c4/claim-stake-storage.d.ts +45 -0
  201. package/dist/internal/c4/claim-stake-storage.d.ts.map +1 -0
  202. package/dist/internal/c4/claim-stake-storage.js +207 -0
  203. package/dist/internal/c4/claim-stake-storage.js.map +1 -0
  204. package/dist/internal/c4/claim-stake.d.ts +9 -6
  205. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  206. package/dist/internal/c4/claim-stake.js +24 -56
  207. package/dist/internal/c4/claim-stake.js.map +1 -1
  208. package/dist/internal/c4/combat-storage.d.ts +20 -0
  209. package/dist/internal/c4/combat-storage.d.ts.map +1 -0
  210. package/dist/internal/c4/combat-storage.js +43 -0
  211. package/dist/internal/c4/combat-storage.js.map +1 -0
  212. package/dist/internal/c4/combat.d.ts +1 -55
  213. package/dist/internal/c4/combat.d.ts.map +1 -1
  214. package/dist/internal/c4/combat.js +16 -180
  215. package/dist/internal/c4/combat.js.map +1 -1
  216. package/dist/internal/c4/crafting-storage.d.ts +20 -0
  217. package/dist/internal/c4/crafting-storage.d.ts.map +1 -0
  218. package/dist/internal/c4/crafting-storage.js +54 -0
  219. package/dist/internal/c4/crafting-storage.js.map +1 -0
  220. package/dist/internal/c4/crafting.d.ts +9 -1
  221. package/dist/internal/c4/crafting.d.ts.map +1 -1
  222. package/dist/internal/c4/crafting.js +38 -98
  223. package/dist/internal/c4/crafting.js.map +1 -1
  224. package/dist/internal/c4/currency-cache.d.ts +1 -1
  225. package/dist/internal/c4/currency-cache.d.ts.map +1 -1
  226. package/dist/internal/c4/currency-cache.js +6 -9
  227. package/dist/internal/c4/currency-cache.js.map +1 -1
  228. package/dist/internal/c4/discriminators.d.ts +93 -0
  229. package/dist/internal/c4/discriminators.d.ts.map +1 -0
  230. package/dist/internal/c4/discriminators.js +190 -0
  231. package/dist/internal/c4/discriminators.js.map +1 -0
  232. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -1
  233. package/dist/internal/c4/faction-epoch-meter.js +5 -10
  234. package/dist/internal/c4/faction-epoch-meter.js.map +1 -1
  235. package/dist/internal/c4/faction-treasury.d.ts.map +1 -1
  236. package/dist/internal/c4/faction-treasury.js +11 -18
  237. package/dist/internal/c4/faction-treasury.js.map +1 -1
  238. package/dist/internal/c4/faction.d.ts +21 -0
  239. package/dist/internal/c4/faction.d.ts.map +1 -0
  240. package/dist/internal/c4/faction.js +23 -0
  241. package/dist/internal/c4/faction.js.map +1 -0
  242. package/dist/internal/c4/factions.d.ts +31 -3
  243. package/dist/internal/c4/factions.d.ts.map +1 -1
  244. package/dist/internal/c4/factions.js +103 -104
  245. package/dist/internal/c4/factions.js.map +1 -1
  246. package/dist/internal/c4/fleet-creation.d.ts +9 -2
  247. package/dist/internal/c4/fleet-creation.d.ts.map +1 -1
  248. package/dist/internal/c4/fleet-creation.js +15 -18
  249. package/dist/internal/c4/fleet-creation.js.map +1 -1
  250. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  251. package/dist/internal/c4/fleet-crew-binding.js +21 -49
  252. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  253. package/dist/internal/c4/fleet-disband-layout.d.ts +7 -0
  254. package/dist/internal/c4/fleet-disband-layout.d.ts.map +1 -0
  255. package/dist/internal/c4/fleet-disband-layout.js +7 -0
  256. package/dist/internal/c4/fleet-disband-layout.js.map +1 -0
  257. package/dist/internal/c4/fleet-disband.d.ts +41 -0
  258. package/dist/internal/c4/fleet-disband.d.ts.map +1 -0
  259. package/dist/internal/c4/fleet-disband.js +86 -0
  260. package/dist/internal/c4/fleet-disband.js.map +1 -0
  261. package/dist/internal/c4/fleet-points.d.ts +3 -0
  262. package/dist/internal/c4/fleet-points.d.ts.map +1 -0
  263. package/dist/internal/c4/fleet-points.js +8 -0
  264. package/dist/internal/c4/fleet-points.js.map +1 -0
  265. package/dist/internal/c4/fleet-ship-assembly.d.ts +20 -5
  266. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -1
  267. package/dist/internal/c4/fleet-ship-assembly.js +62 -10
  268. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -1
  269. package/dist/internal/c4/fleet-storage.d.ts +44 -0
  270. package/dist/internal/c4/fleet-storage.d.ts.map +1 -0
  271. package/dist/internal/c4/fleet-storage.js +108 -0
  272. package/dist/internal/c4/fleet-storage.js.map +1 -0
  273. package/dist/internal/c4/fleet-sync.d.ts +5 -0
  274. package/dist/internal/c4/fleet-sync.d.ts.map +1 -0
  275. package/dist/internal/c4/fleet-sync.js +15 -0
  276. package/dist/internal/c4/fleet-sync.js.map +1 -0
  277. package/dist/internal/c4/fleet.d.ts +20 -5
  278. package/dist/internal/c4/fleet.d.ts.map +1 -1
  279. package/dist/internal/c4/fleet.js +24 -84
  280. package/dist/internal/c4/fleet.js.map +1 -1
  281. package/dist/internal/c4/game.d.ts +76 -21
  282. package/dist/internal/c4/game.d.ts.map +1 -1
  283. package/dist/internal/c4/game.js +127 -116
  284. package/dist/internal/c4/game.js.map +1 -1
  285. package/dist/internal/c4/identity.d.ts +2 -153
  286. package/dist/internal/c4/identity.d.ts.map +1 -1
  287. package/dist/internal/c4/identity.js +19 -126
  288. package/dist/internal/c4/identity.js.map +1 -1
  289. package/dist/internal/c4/local-market-order.d.ts +4 -6
  290. package/dist/internal/c4/local-market-order.d.ts.map +1 -1
  291. package/dist/internal/c4/local-market-order.js +5 -6
  292. package/dist/internal/c4/local-market-order.js.map +1 -1
  293. package/dist/internal/c4/loot-layout.js +1 -1
  294. package/dist/internal/c4/loot-layout.js.map +1 -1
  295. package/dist/internal/c4/loot.d.ts +89 -0
  296. package/dist/internal/c4/loot.d.ts.map +1 -0
  297. package/dist/internal/c4/loot.js +109 -0
  298. package/dist/internal/c4/loot.js.map +1 -0
  299. package/dist/internal/c4/loyalty.d.ts +7 -3
  300. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  301. package/dist/internal/c4/loyalty.js +41 -130
  302. package/dist/internal/c4/loyalty.js.map +1 -1
  303. package/dist/internal/c4/market-storage.d.ts +25 -0
  304. package/dist/internal/c4/market-storage.d.ts.map +1 -0
  305. package/dist/internal/c4/market-storage.js +53 -0
  306. package/dist/internal/c4/market-storage.js.map +1 -0
  307. package/dist/internal/c4/market.d.ts +3 -0
  308. package/dist/internal/c4/market.d.ts.map +1 -1
  309. package/dist/internal/c4/market.js +20 -76
  310. package/dist/internal/c4/market.js.map +1 -1
  311. package/dist/internal/c4/mining-instructions.d.ts +1 -1
  312. package/dist/internal/c4/mining-instructions.d.ts.map +1 -1
  313. package/dist/internal/c4/mining-instructions.js +1 -1
  314. package/dist/internal/c4/mining-instructions.js.map +1 -1
  315. package/dist/internal/c4/open-signal.d.ts +1 -1
  316. package/dist/internal/c4/open-signal.d.ts.map +1 -1
  317. package/dist/internal/c4/open-signal.js +1 -1
  318. package/dist/internal/c4/open-signal.js.map +1 -1
  319. package/dist/internal/c4/pda.d.ts +49 -1
  320. package/dist/internal/c4/pda.d.ts.map +1 -1
  321. package/dist/internal/c4/pda.js +122 -17
  322. package/dist/internal/c4/pda.js.map +1 -1
  323. package/dist/internal/c4/profile-faction.d.ts +2 -1
  324. package/dist/internal/c4/profile-faction.d.ts.map +1 -1
  325. package/dist/internal/c4/profile-faction.js +36 -72
  326. package/dist/internal/c4/profile-faction.js.map +1 -1
  327. package/dist/internal/c4/profile-permissions.d.ts +1 -1
  328. package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
  329. package/dist/internal/c4/profile-permissions.js +16 -1
  330. package/dist/internal/c4/profile-permissions.js.map +1 -1
  331. package/dist/internal/c4/rewards.d.ts +1 -34
  332. package/dist/internal/c4/rewards.d.ts.map +1 -1
  333. package/dist/internal/c4/rewards.js +23 -170
  334. package/dist/internal/c4/rewards.js.map +1 -1
  335. package/dist/internal/c4/runtime-bindings.d.ts +2 -1
  336. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -1
  337. package/dist/internal/c4/runtime-bindings.js +1 -1
  338. package/dist/internal/c4/runtime-bindings.js.map +1 -1
  339. package/dist/internal/c4/scan-lifecycle.d.ts +21 -3
  340. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -1
  341. package/dist/internal/c4/scan-lifecycle.js +35 -44
  342. package/dist/internal/c4/scan-lifecycle.js.map +1 -1
  343. package/dist/internal/c4/scan-storage.d.ts +7 -0
  344. package/dist/internal/c4/scan-storage.d.ts.map +1 -0
  345. package/dist/internal/c4/scan-storage.js +10 -0
  346. package/dist/internal/c4/scan-storage.js.map +1 -0
  347. package/dist/internal/c4/scanning.d.ts +3 -13
  348. package/dist/internal/c4/scanning.d.ts.map +1 -1
  349. package/dist/internal/c4/scanning.js +25 -75
  350. package/dist/internal/c4/scanning.js.map +1 -1
  351. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  352. package/dist/internal/c4/ship-stats.js +24 -26
  353. package/dist/internal/c4/ship-stats.js.map +1 -1
  354. package/dist/internal/c4/starbase.d.ts.map +1 -1
  355. package/dist/internal/c4/starbase.js +24 -96
  356. package/dist/internal/c4/starbase.js.map +1 -1
  357. package/dist/internal/c4/stimulant.d.ts +26 -0
  358. package/dist/internal/c4/stimulant.d.ts.map +1 -0
  359. package/dist/internal/c4/stimulant.js +36 -0
  360. package/dist/internal/c4/stimulant.js.map +1 -0
  361. package/dist/internal/c4/wallet-cargo-cache.js +2 -1
  362. package/dist/internal/c4/wallet-cargo-cache.js.map +1 -1
  363. package/dist/internal/c4/world.d.ts +6 -2
  364. package/dist/internal/c4/world.d.ts.map +1 -1
  365. package/dist/internal/c4/world.js +32 -107
  366. package/dist/internal/c4/world.js.map +1 -1
  367. package/dist/internal/fleet-route.d.ts +12 -0
  368. package/dist/internal/fleet-route.d.ts.map +1 -0
  369. package/dist/internal/fleet-route.js +11 -0
  370. package/dist/internal/fleet-route.js.map +1 -0
  371. package/dist/internal/fleet.d.ts +3 -3
  372. package/dist/internal/fleet.d.ts.map +1 -1
  373. package/dist/internal/fleet.js +1 -5
  374. package/dist/internal/fleet.js.map +1 -1
  375. package/dist/internal/loyalty-atlas-bank-state.d.ts +3 -2
  376. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -1
  377. package/dist/internal/loyalty-atlas-bank-state.js +4 -3
  378. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -1
  379. package/dist/internal/planning/account-state.d.ts +6 -0
  380. package/dist/internal/planning/account-state.d.ts.map +1 -1
  381. package/dist/internal/planning/account-state.js +13 -0
  382. package/dist/internal/planning/account-state.js.map +1 -1
  383. package/dist/internal/planning/arrival-guards.d.ts +0 -1
  384. package/dist/internal/planning/arrival-guards.d.ts.map +1 -1
  385. package/dist/internal/planning/arrival-guards.js +3 -18
  386. package/dist/internal/planning/arrival-guards.js.map +1 -1
  387. package/dist/internal/planning/authorization-adapter.d.ts +59 -36
  388. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  389. package/dist/internal/planning/authorization-adapter.js +165 -71
  390. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  391. package/dist/internal/planning/cargo-storage-actions.d.ts +8 -0
  392. package/dist/internal/planning/cargo-storage-actions.d.ts.map +1 -0
  393. package/dist/internal/planning/cargo-storage-actions.js +97 -0
  394. package/dist/internal/planning/cargo-storage-actions.js.map +1 -0
  395. package/dist/internal/planning/character-access.d.ts +28 -0
  396. package/dist/internal/planning/character-access.d.ts.map +1 -0
  397. package/dist/internal/planning/character-access.js +41 -0
  398. package/dist/internal/planning/character-access.js.map +1 -0
  399. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -1
  400. package/dist/internal/planning/character-registration-guard.js +2 -1
  401. package/dist/internal/planning/character-registration-guard.js.map +1 -1
  402. package/dist/internal/planning/character-registration.d.ts.map +1 -1
  403. package/dist/internal/planning/character-registration.js +2 -1
  404. package/dist/internal/planning/character-registration.js.map +1 -1
  405. package/dist/internal/planning/claim-stake-storage-actions.d.ts +12 -0
  406. package/dist/internal/planning/claim-stake-storage-actions.d.ts.map +1 -0
  407. package/dist/internal/planning/claim-stake-storage-actions.js +63 -0
  408. package/dist/internal/planning/claim-stake-storage-actions.js.map +1 -0
  409. package/dist/internal/planning/combat-storage-actions.d.ts +9 -0
  410. package/dist/internal/planning/combat-storage-actions.d.ts.map +1 -0
  411. package/dist/internal/planning/combat-storage-actions.js +55 -0
  412. package/dist/internal/planning/combat-storage-actions.js.map +1 -0
  413. package/dist/internal/planning/crafting-storage-actions.d.ts +7 -0
  414. package/dist/internal/planning/crafting-storage-actions.d.ts.map +1 -0
  415. package/dist/internal/planning/crafting-storage-actions.js +64 -0
  416. package/dist/internal/planning/crafting-storage-actions.js.map +1 -0
  417. package/dist/internal/planning/currency-cache-guard.d.ts +3 -1
  418. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -1
  419. package/dist/internal/planning/currency-cache-guard.js +47 -2
  420. package/dist/internal/planning/currency-cache-guard.js.map +1 -1
  421. package/dist/internal/planning/democracy-history.d.ts.map +1 -1
  422. package/dist/internal/planning/democracy-history.js +6 -15
  423. package/dist/internal/planning/democracy-history.js.map +1 -1
  424. package/dist/internal/planning/direct-options.d.ts +17 -0
  425. package/dist/internal/planning/direct-options.d.ts.map +1 -0
  426. package/dist/internal/planning/direct-options.js +43 -0
  427. package/dist/internal/planning/direct-options.js.map +1 -0
  428. package/dist/internal/planning/disband-storage-actions.d.ts +9 -0
  429. package/dist/internal/planning/disband-storage-actions.d.ts.map +1 -0
  430. package/dist/internal/planning/disband-storage-actions.js +24 -0
  431. package/dist/internal/planning/disband-storage-actions.js.map +1 -0
  432. package/dist/internal/planning/faction-enrollment.d.ts +0 -2
  433. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  434. package/dist/internal/planning/faction-enrollment.js +0 -9
  435. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  436. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -1
  437. package/dist/internal/planning/fleet-arrival.js +10 -8
  438. package/dist/internal/planning/fleet-arrival.js.map +1 -1
  439. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -1
  440. package/dist/internal/planning/fleet-attack-xp.js +5 -11
  441. package/dist/internal/planning/fleet-attack-xp.js.map +1 -1
  442. package/dist/internal/planning/fleet-creation.d.ts.map +1 -1
  443. package/dist/internal/planning/fleet-creation.js +17 -36
  444. package/dist/internal/planning/fleet-creation.js.map +1 -1
  445. package/dist/internal/planning/fleet-crew-guard.d.ts +2 -1
  446. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -1
  447. package/dist/internal/planning/fleet-crew-guard.js +2 -1
  448. package/dist/internal/planning/fleet-crew-guard.js.map +1 -1
  449. package/dist/internal/planning/fleet-crew-transfer.d.ts +1 -1
  450. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -1
  451. package/dist/internal/planning/fleet-crew-transfer.js +45 -24
  452. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -1
  453. package/dist/internal/planning/fleet-disband-guard.d.ts +12 -0
  454. package/dist/internal/planning/fleet-disband-guard.d.ts.map +1 -0
  455. package/dist/internal/planning/fleet-disband-guard.js +54 -0
  456. package/dist/internal/planning/fleet-disband-guard.js.map +1 -0
  457. package/dist/internal/planning/fleet-disband.d.ts +36 -0
  458. package/dist/internal/planning/fleet-disband.d.ts.map +1 -0
  459. package/dist/internal/planning/fleet-disband.js +82 -0
  460. package/dist/internal/planning/fleet-disband.js.map +1 -0
  461. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +3 -3
  462. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -1
  463. package/dist/internal/planning/fleet-dock-funding-guard.js +87 -96
  464. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -1
  465. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -1
  466. package/dist/internal/planning/fleet-dock-funding.js +10 -0
  467. package/dist/internal/planning/fleet-dock-funding.js.map +1 -1
  468. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -1
  469. package/dist/internal/planning/fleet-docking-guard.js +3 -1
  470. package/dist/internal/planning/fleet-docking-guard.js.map +1 -1
  471. package/dist/internal/planning/fleet-docking.d.ts +17 -2
  472. package/dist/internal/planning/fleet-docking.d.ts.map +1 -1
  473. package/dist/internal/planning/fleet-docking.js +83 -62
  474. package/dist/internal/planning/fleet-docking.js.map +1 -1
  475. package/dist/internal/planning/fleet-rental.d.ts +5 -0
  476. package/dist/internal/planning/fleet-rental.d.ts.map +1 -0
  477. package/dist/internal/planning/fleet-rental.js +9 -0
  478. package/dist/internal/planning/fleet-rental.js.map +1 -0
  479. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -1
  480. package/dist/internal/planning/fleet-respawn.js +10 -12
  481. package/dist/internal/planning/fleet-respawn.js.map +1 -1
  482. package/dist/internal/planning/fleet-ship-assembly.d.ts +2 -0
  483. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -1
  484. package/dist/internal/planning/fleet-ship-assembly.js +94 -64
  485. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -1
  486. package/dist/internal/planning/fleet-state.d.ts +25 -0
  487. package/dist/internal/planning/fleet-state.d.ts.map +1 -0
  488. package/dist/internal/planning/fleet-state.js +28 -0
  489. package/dist/internal/planning/fleet-state.js.map +1 -0
  490. package/dist/internal/planning/governance-fees.d.ts.map +1 -1
  491. package/dist/internal/planning/governance-fees.js +7 -15
  492. package/dist/internal/planning/governance-fees.js.map +1 -1
  493. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -1
  494. package/dist/internal/planning/local-market-order-funding.js +4 -2
  495. package/dist/internal/planning/local-market-order-funding.js.map +1 -1
  496. package/dist/internal/planning/local-market-order.d.ts +4 -4
  497. package/dist/internal/planning/local-market-order.d.ts.map +1 -1
  498. package/dist/internal/planning/local-market-order.js +82 -109
  499. package/dist/internal/planning/local-market-order.js.map +1 -1
  500. package/dist/internal/planning/market-storage-actions.d.ts +7 -0
  501. package/dist/internal/planning/market-storage-actions.d.ts.map +1 -0
  502. package/dist/internal/planning/market-storage-actions.js +71 -0
  503. package/dist/internal/planning/market-storage-actions.js.map +1 -0
  504. package/dist/internal/planning/mining-stop.d.ts.map +1 -1
  505. package/dist/internal/planning/mining-stop.js +2 -1
  506. package/dist/internal/planning/mining-stop.js.map +1 -1
  507. package/dist/internal/planning/mining-storage-actions.d.ts +11 -0
  508. package/dist/internal/planning/mining-storage-actions.d.ts.map +1 -0
  509. package/dist/internal/planning/mining-storage-actions.js +57 -0
  510. package/dist/internal/planning/mining-storage-actions.js.map +1 -0
  511. package/dist/internal/planning/movement-storage-actions.d.ts +7 -0
  512. package/dist/internal/planning/movement-storage-actions.d.ts.map +1 -0
  513. package/dist/internal/planning/movement-storage-actions.js +38 -0
  514. package/dist/internal/planning/movement-storage-actions.js.map +1 -0
  515. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -1
  516. package/dist/internal/planning/movement-xp-guard.js +3 -2
  517. package/dist/internal/planning/movement-xp-guard.js.map +1 -1
  518. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -1
  519. package/dist/internal/planning/open-signal-guard.js +2 -1
  520. package/dist/internal/planning/open-signal-guard.js.map +1 -1
  521. package/dist/internal/planning/open-signal.d.ts.map +1 -1
  522. package/dist/internal/planning/open-signal.js +16 -7
  523. package/dist/internal/planning/open-signal.js.map +1 -1
  524. package/dist/internal/planning/original-token.d.ts +40 -0
  525. package/dist/internal/planning/original-token.d.ts.map +1 -0
  526. package/dist/internal/planning/original-token.js +112 -0
  527. package/dist/internal/planning/original-token.js.map +1 -0
  528. package/dist/internal/planning/own-starbase-facts.d.ts +37 -0
  529. package/dist/internal/planning/own-starbase-facts.d.ts.map +1 -0
  530. package/dist/internal/planning/own-starbase-facts.js +52 -0
  531. package/dist/internal/planning/own-starbase-facts.js.map +1 -0
  532. package/dist/internal/planning/plan-fields.d.ts +60 -0
  533. package/dist/internal/planning/plan-fields.d.ts.map +1 -0
  534. package/dist/internal/planning/plan-fields.js +159 -0
  535. package/dist/internal/planning/plan-fields.js.map +1 -0
  536. package/dist/internal/planning/plan-guards.d.ts +4 -0
  537. package/dist/internal/planning/plan-guards.d.ts.map +1 -0
  538. package/dist/internal/planning/plan-guards.js +184 -0
  539. package/dist/internal/planning/plan-guards.js.map +1 -0
  540. package/dist/internal/planning/profile-key.d.ts +13 -0
  541. package/dist/internal/planning/profile-key.d.ts.map +1 -0
  542. package/dist/internal/planning/profile-key.js +20 -0
  543. package/dist/internal/planning/profile-key.js.map +1 -0
  544. package/dist/internal/planning/profile-storage-funding-guard.d.ts +29 -0
  545. package/dist/internal/planning/profile-storage-funding-guard.d.ts.map +1 -0
  546. package/dist/internal/planning/profile-storage-funding-guard.js +115 -0
  547. package/dist/internal/planning/profile-storage-funding-guard.js.map +1 -0
  548. package/dist/internal/planning/profile-storage-funding.d.ts +46 -0
  549. package/dist/internal/planning/profile-storage-funding.d.ts.map +1 -0
  550. package/dist/internal/planning/profile-storage-funding.js +58 -0
  551. package/dist/internal/planning/profile-storage-funding.js.map +1 -0
  552. package/dist/internal/planning/recipe-state.d.ts +4 -1
  553. package/dist/internal/planning/recipe-state.d.ts.map +1 -1
  554. package/dist/internal/planning/recipe-state.js +7 -4
  555. package/dist/internal/planning/recipe-state.js.map +1 -1
  556. package/dist/internal/planning/region-access.d.ts +30 -0
  557. package/dist/internal/planning/region-access.d.ts.map +1 -0
  558. package/dist/internal/planning/region-access.js +94 -0
  559. package/dist/internal/planning/region-access.js.map +1 -0
  560. package/dist/internal/planning/rent-catalog.d.ts +37 -0
  561. package/dist/internal/planning/rent-catalog.d.ts.map +1 -0
  562. package/dist/internal/planning/rent-catalog.js +165 -0
  563. package/dist/internal/planning/rent-catalog.js.map +1 -0
  564. package/dist/internal/planning/research-unlock.d.ts +69 -0
  565. package/dist/internal/planning/research-unlock.d.ts.map +1 -0
  566. package/dist/internal/planning/research-unlock.js +287 -0
  567. package/dist/internal/planning/research-unlock.js.map +1 -0
  568. package/dist/internal/planning/respawn-guards.js +2 -1
  569. package/dist/internal/planning/respawn-guards.js.map +1 -1
  570. package/dist/internal/planning/runtime-guards.d.ts +0 -2
  571. package/dist/internal/planning/runtime-guards.d.ts.map +1 -1
  572. package/dist/internal/planning/runtime-guards.js +49 -29
  573. package/dist/internal/planning/runtime-guards.js.map +1 -1
  574. package/dist/internal/planning/scan-completion-guard.d.ts +6 -6
  575. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -1
  576. package/dist/internal/planning/scan-completion-guard.js +8 -7
  577. package/dist/internal/planning/scan-completion-guard.js.map +1 -1
  578. package/dist/internal/planning/scan-completion.d.ts.map +1 -1
  579. package/dist/internal/planning/scan-completion.js +9 -7
  580. package/dist/internal/planning/scan-completion.js.map +1 -1
  581. package/dist/internal/planning/scan-detect-guard.d.ts +1 -1
  582. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -1
  583. package/dist/internal/planning/scan-detect-guard.js +2 -2
  584. package/dist/internal/planning/scan-detect-guard.js.map +1 -1
  585. package/dist/internal/planning/scan-detect.d.ts +1 -1
  586. package/dist/internal/planning/scan-detect.d.ts.map +1 -1
  587. package/dist/internal/planning/scan-detect.js +10 -8
  588. package/dist/internal/planning/scan-detect.js.map +1 -1
  589. package/dist/internal/planning/scan-idle-scope.d.ts +5 -0
  590. package/dist/internal/planning/scan-idle-scope.d.ts.map +1 -0
  591. package/dist/internal/planning/scan-idle-scope.js +5 -0
  592. package/dist/internal/planning/scan-idle-scope.js.map +1 -0
  593. package/dist/internal/planning/scan-storage-actions.d.ts +9 -0
  594. package/dist/internal/planning/scan-storage-actions.d.ts.map +1 -0
  595. package/dist/internal/planning/scan-storage-actions.js +27 -0
  596. package/dist/internal/planning/scan-storage-actions.js.map +1 -0
  597. package/dist/internal/planning/ship-import-funding.js +3 -2
  598. package/dist/internal/planning/ship-import-funding.js.map +1 -1
  599. package/dist/internal/planning/ship-token.d.ts +1 -5
  600. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  601. package/dist/internal/planning/ship-token.js +0 -36
  602. package/dist/internal/planning/ship-token.js.map +1 -1
  603. package/dist/internal/planning/starbase-player-owner.d.ts +21 -0
  604. package/dist/internal/planning/starbase-player-owner.d.ts.map +1 -0
  605. package/dist/internal/planning/starbase-player-owner.js +17 -0
  606. package/dist/internal/planning/starbase-player-owner.js.map +1 -0
  607. package/dist/internal/planning/starbase-player-recovery-guard.d.ts +7 -0
  608. package/dist/internal/planning/starbase-player-recovery-guard.d.ts.map +1 -0
  609. package/dist/internal/planning/starbase-player-recovery-guard.js +39 -0
  610. package/dist/internal/planning/starbase-player-recovery-guard.js.map +1 -0
  611. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -1
  612. package/dist/internal/planning/starbase-system-guard.js +2 -1
  613. package/dist/internal/planning/starbase-system-guard.js.map +1 -1
  614. package/dist/internal/planning/starbase-system.d.ts +5 -2
  615. package/dist/internal/planning/starbase-system.d.ts.map +1 -1
  616. package/dist/internal/planning/starbase-system.js +6 -3
  617. package/dist/internal/planning/starbase-system.js.map +1 -1
  618. package/dist/internal/planning/storage-action-readers.d.ts +10 -0
  619. package/dist/internal/planning/storage-action-readers.d.ts.map +1 -0
  620. package/dist/internal/planning/storage-action-readers.js +58 -0
  621. package/dist/internal/planning/storage-action-readers.js.map +1 -0
  622. package/dist/internal/planning/storage-actions.d.ts +89 -0
  623. package/dist/internal/planning/storage-actions.d.ts.map +1 -0
  624. package/dist/internal/planning/storage-actions.js +183 -0
  625. package/dist/internal/planning/storage-actions.js.map +1 -0
  626. package/dist/internal/planning/token-mint.d.ts.map +1 -1
  627. package/dist/internal/planning/token-mint.js +2 -1
  628. package/dist/internal/planning/token-mint.js.map +1 -1
  629. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -1
  630. package/dist/internal/planning/trade-faction-market.js +4 -4
  631. package/dist/internal/planning/trade-faction-market.js.map +1 -1
  632. package/dist/internal/planning/wallet-starbase.d.ts +34 -0
  633. package/dist/internal/planning/wallet-starbase.d.ts.map +1 -0
  634. package/dist/internal/planning/wallet-starbase.js +39 -0
  635. package/dist/internal/planning/wallet-starbase.js.map +1 -0
  636. package/dist/internal/planning/xp-runtime.d.ts.map +1 -1
  637. package/dist/internal/planning/xp-runtime.js +16 -20
  638. package/dist/internal/planning/xp-runtime.js.map +1 -1
  639. package/dist/internal/read-meta.d.ts +12 -0
  640. package/dist/internal/read-meta.d.ts.map +1 -1
  641. package/dist/internal/read-meta.js +10 -0
  642. package/dist/internal/read-meta.js.map +1 -1
  643. package/dist/loyalty/actions/index.d.ts +1 -1
  644. package/dist/loyalty/actions/index.d.ts.map +1 -1
  645. package/dist/loyalty/actions/index.js +12 -43
  646. package/dist/loyalty/actions/index.js.map +1 -1
  647. package/dist/loyalty/index.d.ts +4 -0
  648. package/dist/loyalty/index.d.ts.map +1 -1
  649. package/dist/loyalty/index.js +19 -27
  650. package/dist/loyalty/index.js.map +1 -1
  651. package/dist/markets/actions/index.d.ts +1 -1
  652. package/dist/markets/actions/index.d.ts.map +1 -1
  653. package/dist/markets/actions/index.js +140 -178
  654. package/dist/markets/actions/index.js.map +1 -1
  655. package/dist/markets/actions/trade-faction-market.d.ts +4 -2
  656. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -1
  657. package/dist/markets/actions/trade-faction-market.js +59 -39
  658. package/dist/markets/actions/trade-faction-market.js.map +1 -1
  659. package/dist/markets/index.d.ts.map +1 -1
  660. package/dist/markets/index.js +3 -11
  661. package/dist/markets/index.js.map +1 -1
  662. package/dist/mining/actions/index.d.ts +1 -1
  663. package/dist/mining/actions/index.d.ts.map +1 -1
  664. package/dist/mining/actions/index.js +84 -47
  665. package/dist/mining/actions/index.js.map +1 -1
  666. package/dist/mining/estimate-input.d.ts +103 -0
  667. package/dist/mining/estimate-input.d.ts.map +1 -0
  668. package/dist/mining/estimate-input.js +86 -0
  669. package/dist/mining/estimate-input.js.map +1 -0
  670. package/dist/mining/index.d.ts +1 -0
  671. package/dist/mining/index.d.ts.map +1 -1
  672. package/dist/mining/index.js +4 -11
  673. package/dist/mining/index.js.map +1 -1
  674. package/dist/planning/assembly.d.ts +1 -1
  675. package/dist/planning/assembly.d.ts.map +1 -1
  676. package/dist/planning/assembly.js +6 -30
  677. package/dist/planning/assembly.js.map +1 -1
  678. package/dist/planning/execution.d.ts +1 -0
  679. package/dist/planning/execution.d.ts.map +1 -1
  680. package/dist/planning/execution.js +149 -45
  681. package/dist/planning/execution.js.map +1 -1
  682. package/dist/planning/index.d.ts +70 -7
  683. package/dist/planning/index.d.ts.map +1 -1
  684. package/dist/planning/index.js +28 -1141
  685. package/dist/planning/index.js.map +1 -1
  686. package/dist/planning/plan-construction.d.ts +25 -0
  687. package/dist/planning/plan-construction.d.ts.map +1 -0
  688. package/dist/planning/plan-construction.js +143 -0
  689. package/dist/planning/plan-construction.js.map +1 -0
  690. package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
  691. package/dist/planning/plan-sequence-execution.js +1 -11
  692. package/dist/planning/plan-sequence-execution.js.map +1 -1
  693. package/dist/planning/plan-validation.d.ts +17 -0
  694. package/dist/planning/plan-validation.d.ts.map +1 -0
  695. package/dist/planning/plan-validation.js +147 -0
  696. package/dist/planning/plan-validation.js.map +1 -0
  697. package/dist/registry/cargo.d.ts +2 -2
  698. package/dist/registry/cargo.d.ts.map +1 -1
  699. package/dist/registry/cargo.js +3 -4
  700. package/dist/registry/cargo.js.map +1 -1
  701. package/dist/registry/definition-section-snapshot.d.ts +1 -1
  702. package/dist/registry/definition-section-snapshot.d.ts.map +1 -1
  703. package/dist/registry/definition-section-snapshot.js +10 -3
  704. package/dist/registry/definition-section-snapshot.js.map +1 -1
  705. package/dist/registry/index.d.ts +31 -4
  706. package/dist/registry/index.d.ts.map +1 -1
  707. package/dist/registry/index.js +226 -227
  708. package/dist/registry/index.js.map +1 -1
  709. package/dist/registry/onboarding.d.ts.map +1 -1
  710. package/dist/registry/onboarding.js +4 -2
  711. package/dist/registry/onboarding.js.map +1 -1
  712. package/dist/registry/ship-stats-snapshot.d.ts.map +1 -1
  713. package/dist/registry/ship-stats-snapshot.js +19 -5
  714. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  715. package/dist/registry/ships.js +1 -1
  716. package/dist/registry/ships.js.map +1 -1
  717. package/dist/rewards/index.d.ts +11 -5
  718. package/dist/rewards/index.d.ts.map +1 -1
  719. package/dist/rewards/index.js +10 -21
  720. package/dist/rewards/index.js.map +1 -1
  721. package/dist/scanning/actions/index.d.ts +1 -1
  722. package/dist/scanning/actions/index.d.ts.map +1 -1
  723. package/dist/scanning/actions/index.js +38 -8
  724. package/dist/scanning/actions/index.js.map +1 -1
  725. package/dist/scanning/index.d.ts +6 -11
  726. package/dist/scanning/index.d.ts.map +1 -1
  727. package/dist/scanning/index.js +7 -15
  728. package/dist/scanning/index.js.map +1 -1
  729. package/dist/scanning/odds.d.ts +5 -1
  730. package/dist/scanning/odds.d.ts.map +1 -1
  731. package/dist/scanning/odds.js.map +1 -1
  732. package/dist/scanning/signals.d.ts +6 -1
  733. package/dist/scanning/signals.d.ts.map +1 -1
  734. package/dist/scanning/signals.js +3 -1
  735. package/dist/scanning/signals.js.map +1 -1
  736. package/dist/starbases/actions/index.d.ts +49 -4
  737. package/dist/starbases/actions/index.d.ts.map +1 -1
  738. package/dist/starbases/actions/index.js +120 -69
  739. package/dist/starbases/actions/index.js.map +1 -1
  740. package/dist/starbases/index.d.ts +18 -0
  741. package/dist/starbases/index.d.ts.map +1 -1
  742. package/dist/starbases/index.js +24 -11
  743. package/dist/starbases/index.js.map +1 -1
  744. package/dist/world/index.d.ts +87 -13
  745. package/dist/world/index.d.ts.map +1 -1
  746. package/dist/world/index.js +88 -22
  747. package/dist/world/index.js.map +1 -1
  748. package/dist/world/planet-claim-stake-plots.d.ts +49 -40
  749. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -1
  750. package/dist/world/planet-claim-stake-plots.js +47 -40
  751. package/dist/world/planet-claim-stake-plots.js.map +1 -1
  752. package/dist/world/starbase-status.d.ts +54 -13
  753. package/dist/world/starbase-status.d.ts.map +1 -1
  754. package/dist/world/starbase-status.js +65 -0
  755. package/dist/world/starbase-status.js.map +1 -1
  756. package/package.json +2 -2
  757. package/dist/internal/c4/faction-adapter.d.ts +0 -12
  758. package/dist/internal/c4/faction-adapter.d.ts.map +0 -1
  759. package/dist/internal/c4/faction-adapter.js +0 -52
  760. package/dist/internal/c4/faction-adapter.js.map +0 -1
  761. package/dist/internal/planning/movement-character.d.ts +0 -7
  762. package/dist/internal/planning/movement-character.d.ts.map +0 -1
  763. package/dist/internal/planning/movement-character.js +0 -41
  764. package/dist/internal/planning/movement-character.js.map +0 -1
@@ -0,0 +1,55 @@
1
+ import { SageSdkError } from '../../client/errors.js';
2
+ import { readContextRawAccounts } from '../../client/reconciliation.js';
3
+ import { requireGameAddress } from '../../internal/game-context.js';
4
+ import { deriveFleetAddress, fleetAccountDefinition, } from '../../internal/c4/fleet.js';
5
+ import { syncFleetWithGameInstruction } from '../../internal/c4/fleet-sync.js';
6
+ import { buildPlannerPlan } from '../../planning/plan-construction.js';
7
+ import { readFreshGameShipDefinitionSequence } from '../../registry/ships.js';
8
+ /** Plans the permissionless Fleet sync with the configured Game. Verified
9
+ * against the program's behaviour: it rebuilds the Fleet's ship counts and
10
+ * stats from the current ship definitions and caps its AP, SP, HP and pending
11
+ * repair at the new maxima, in any Fleet state. Run it, confirm it, then
12
+ * replan an action that refuses a Fleet built under older ship definitions,
13
+ * such as ship assembly, crew transfer or signal detection.
14
+ * `deriveFleetCompositionStats` projects the rebuilt stats beforehand.
15
+ *
16
+ * Only the Game and the Fleet are involved: no Profile key signs it and no
17
+ * storage is funded, so any fee payer can submit it for any Fleet. A Fleet
18
+ * already on the current definitions only has its pools capped. Simulate
19
+ * before signing, then read the Fleet back after confirmation.
20
+ * @example
21
+ * ```ts
22
+ * declare const ctx: SageContext, fleet: Address;
23
+ * const plan = await planSyncFleetWithGame(ctx, fleet);
24
+ * console.log(plan.describe());
25
+ * ```
26
+ */
27
+ export async function planSyncFleetWithGame(ctx, fleet) {
28
+ const game = requireGameAddress(ctx);
29
+ const [[raw], current] = await Promise.all([
30
+ readContextRawAccounts(ctx, [fleet]),
31
+ readFreshGameShipDefinitionSequence(ctx),
32
+ ]);
33
+ if (!raw || raw.executable)
34
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'The selected Fleet is missing or executable. Refresh a valid Fleet and replan the sync.', { address: fleet });
35
+ const data = fleetAccountDefinition.decode(raw);
36
+ if (data.game !== game || (await deriveFleetAddress(data)) !== fleet)
37
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', `Fleet ${fleet} is not a canonical Fleet of the configured Game ${game}. Select a Fleet of this Game and replan the sync.`, { address: fleet });
38
+ const sequence = data.shipDefinitionsSeqId === current
39
+ ? `is already on ship definition sequence ${String(current)}, so only its AP, SP, HP and pending repair are capped at their maxima`
40
+ : `moves from ship definition sequence ${String(data.shipDefinitionsSeqId)} to ${String(current)}: its ship counts and stats are rebuilt from the current definitions, and its AP, SP, HP and pending repair are capped at the new maxima`;
41
+ const summary = `Sync Fleet ${data.name} (${fleet}) with Game ${game}. The Fleet ${sequence}. No Profile key signs it and no storage is funded; the fee payer is the only signer. Simulate before signing; the chain stays authoritative.`;
42
+ return buildPlannerPlan({
43
+ kind: 'fleets.sync-fleet-with-game',
44
+ summary,
45
+ preconditions: [],
46
+ steps: [
47
+ {
48
+ describes: summary,
49
+ instruction: syncFleetWithGameInstruction(game, fleet),
50
+ signers: [],
51
+ },
52
+ ],
53
+ });
54
+ }
55
+ //# sourceMappingURL=sync.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../../../src/fleets/actions/sync.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EACL,kBAAkB,EAClB,sBAAsB,GACvB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AAE/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,qCAAqC,CAAC;AACvE,OAAO,EAAE,mCAAmC,EAAE,MAAM,yBAAyB,CAAC;AAE9E;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAAgB,EAChB,KAAc;IAEd,MAAM,IAAI,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACrC,MAAM,CAAC,CAAC,GAAG,CAAC,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACzC,sBAAsB,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;QACpC,mCAAmC,CAAC,GAAG,CAAC;KACzC,CAAC,CAAC;IACH,IAAI,CAAC,GAAG,IAAI,GAAG,CAAC,UAAU;QACxB,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,yFAAyF,EACzF,EAAE,OAAO,EAAE,KAAK,EAAE,CACnB,CAAC;IACJ,MAAM,IAAI,GAAG,sBAAsB,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAChD,IAAI,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,MAAM,kBAAkB,CAAC,IAAI,CAAC,CAAC,KAAK,KAAK;QAClE,MAAM,IAAI,YAAY,CACpB,4BAA4B,EAC5B,SAAS,KAAK,oDAAoD,IAAI,oDAAoD,EAC1H,EAAE,OAAO,EAAE,KAAK,EAAE,CACnB,CAAC;IACJ,MAAM,QAAQ,GACZ,IAAI,CAAC,oBAAoB,KAAK,OAAO;QACnC,CAAC,CAAC,0CAA0C,MAAM,CAAC,OAAO,CAAC,wEAAwE;QACnI,CAAC,CAAC,uCAAuC,MAAM,CAAC,IAAI,CAAC,oBAAoB,CAAC,OAAO,MAAM,CAAC,OAAO,CAAC,0IAA0I,CAAC;IAC/O,MAAM,OAAO,GAAG,cAAc,IAAI,CAAC,IAAI,KAAK,KAAK,eAAe,IAAI,eAAe,QAAQ,+IAA+I,CAAC;IAC3O,OAAO,gBAAgB,CAAC;QACtB,IAAI,EAAE,6BAA6B;QACnC,OAAO;QACP,aAAa,EAAE,EAAE;QACjB,KAAK,EAAE;YACL;gBACE,SAAS,EAAE,OAAO;gBAClB,WAAW,EAAE,4BAA4B,CAAC,IAAI,EAAE,KAAK,CAAC;gBACtD,OAAO,EAAE,EAAE;aACZ;SACF;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,101 @@
1
+ import type { FleetShipCountsData, FleetStatsData } from '../internal/c4/fleet.js';
2
+ import type { ShipDefinitionSummary } from '../registry/index.js';
3
+ /** Inputs for projecting a Fleet's stored stats after ship assembly. Pass the
4
+ * whole loaded ships section (`listShipConfigurations`), the current Fleet
5
+ * snapshot (omit it for a newly created, empty Fleet) and the ships to add, one
6
+ * entry per add-ship instruction in submission order, as successive
7
+ * `planAddShipToFleet` Plans would submit them.
8
+ * @example
9
+ * ```ts
10
+ * declare const ctx: SageContext, fleet: FleetSnapshot;
11
+ * const input: FleetCompositionStatsInput = {
12
+ * definitions: await listShipConfigurations(ctx),
13
+ * fleet,
14
+ * additions: [{ shipId: 12, amount: 1n }],
15
+ * };
16
+ * ```
17
+ */
18
+ export interface FleetCompositionStatsInput {
19
+ readonly definitions: readonly Pick<ShipDefinitionSummary, 'id' | 'sizeClass' | 'stats' | 'definitionSequenceId'>[];
20
+ /** A Fleet snapshot, or the same fields from raw Fleet data with
21
+ * `fleetShips` mapped to `{ id: shipId, quantity }`. */
22
+ readonly fleet?: {
23
+ readonly ships: readonly {
24
+ readonly id: number;
25
+ readonly quantity: bigint;
26
+ }[];
27
+ readonly shipCounts: FleetShipCountsData;
28
+ readonly stats: FleetStatsData;
29
+ readonly shipDefinitionsSeqId: number;
30
+ };
31
+ readonly additions: readonly {
32
+ readonly shipId: number;
33
+ readonly amount: bigint;
34
+ }[];
35
+ }
36
+ /** Projected stored Fleet stats after the additions, in the same units as a
37
+ * Fleet's `stats`. `route` says which program path produced them: `new-fleet`
38
+ * starts from an empty Fleet, `stored` builds on the Fleet's stored stats, and
39
+ * `resynchronized` first rebuilds a Fleet on an older ship-definition sequence
40
+ * from the current definitions, as the program does before adding ships.
41
+ * @example
42
+ * ```ts
43
+ * declare const projected: FleetCompositionStats;
44
+ * console.log(projected.route, projected.fleetPoints, projected.stats.cargo.miningRate.value);
45
+ * ```
46
+ */
47
+ export interface FleetCompositionStats {
48
+ readonly route: 'new-fleet' | 'stored' | 'resynchronized';
49
+ readonly definitionSequenceId: number;
50
+ readonly ships: readonly {
51
+ readonly id: number;
52
+ readonly quantity: bigint;
53
+ }[];
54
+ readonly shipCounts: FleetShipCountsData;
55
+ /** XXS 1, XS 4, Small 9, Medium 16, Large 25, Capital 36, Commander 49, Titan 128. */
56
+ readonly fleetPoints: number;
57
+ readonly stats: FleetStatsData;
58
+ toJSON(): unknown;
59
+ }
60
+ /** Projects the stats a Fleet stores after ship assembly, exactly as the program
61
+ * aggregates them; verified against the program's behaviour. Capacities, Fuel
62
+ * and upkeep rates, mining and load rates, crew, AP/HP/SP and damage are added
63
+ * and capped. Subwarp, warp and lane speeds take the lowest value. Maximum warp
64
+ * distance, warp cooldown, warp spool, shield break delay, damage variance,
65
+ * respawn times and scan cooldown take the highest. Stealth, hit, aim and
66
+ * critical values are truncated per-ship averages, which the program rescales
67
+ * on every addition, so one addition of two ships can differ from two
68
+ * additions of one. Repair cost (weighted by hull points) and repair efficiency
69
+ * (weighted by repair ability) are recomputed over every ship aboard.
70
+ *
71
+ * A Fleet on the definitions' sequence builds on its stored stats and counts.
72
+ * One on an older sequence is first rebuilt from the current definitions of
73
+ * the ships aboard, as the program does before adding ships. A missing ship
74
+ * definition, mixed definition sequences, an amount outside 1n-255n or an
75
+ * overflow the program refuses throw `InvalidDerivationInputError`; other
76
+ * inputs are trusted as typed.
77
+ *
78
+ * Character research does not change stored stats: pass the Character's raw
79
+ * speed and cooldown modifiers to the travel helpers at use time. This is not
80
+ * an eligibility check (`planAddShipToFleet` applies ship size, research tags,
81
+ * Fleet size and formation limits), and checks no funding, entitlement or crew
82
+ * provisioning. Current AP, SP and HP are not projected. Read the Fleet back
83
+ * after confirmation; the chain stays authoritative. Requalify after program
84
+ * changes.
85
+ * @example
86
+ * ```ts
87
+ * declare const ctx: SageContext, fleet: FleetSnapshot, character: CharacterSnapshot;
88
+ * const projected = deriveFleetCompositionStats({
89
+ * definitions: await listShipConfigurations(ctx),
90
+ * fleet,
91
+ * additions: [{ shipId: 12, amount: 1n }],
92
+ * });
93
+ * const travel = deriveFleetTravelProfile({
94
+ * stats: projected.stats,
95
+ * subwarpSpeedModifierRaw: character.modifiers.values.subwarpSpeedModifierRaw,
96
+ * });
97
+ * console.log(projected.stats.cargo.miningRate.value, travel.subwarp?.secondsPerAu);
98
+ * ```
99
+ */
100
+ export declare function deriveFleetCompositionStats(input: FleetCompositionStatsInput): FleetCompositionStats;
101
+ //# sourceMappingURL=composition-stats.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composition-stats.d.ts","sourceRoot":"","sources":["../../src/fleets/composition-stats.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,mBAAmB,EACnB,cAAc,EACf,MAAM,yBAAyB,CAAC;AAIjC,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAElE;;;;;;;;;;;;;;GAcG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,WAAW,EAAE,SAAS,IAAI,CACjC,qBAAqB,EACrB,IAAI,GAAG,WAAW,GAAG,OAAO,GAAG,sBAAsB,CACtD,EAAE,CAAC;IACJ;4DACwD;IACxD,QAAQ,CAAC,KAAK,CAAC,EAAE;QACf,QAAQ,CAAC,KAAK,EAAE,SAAS;YACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;YACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;SAC3B,EAAE,CAAC;QACJ,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;QACzC,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;QAC/B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;KACvC,CAAC;IACF,QAAQ,CAAC,SAAS,EAAE,SAAS;QAC3B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;QACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;KACzB,EAAE,CAAC;CACL;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,KAAK,EAAE,WAAW,GAAG,QAAQ,GAAG,gBAAgB,CAAC;IAC1D,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,KAAK,EAAE,SAAS;QACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;KAC3B,EAAE,CAAC;IACJ,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,sFAAsF;IACtF,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,cAAc,CAAC;IAC/B,MAAM,IAAI,OAAO,CAAC;CACnB;AA6OD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,0BAA0B,GAChC,qBAAqB,CAwGvB"}
@@ -0,0 +1,354 @@
1
+ import { InvalidDerivationInputError } from '../client/index.js';
2
+ import { fleetCapacityPoints } from '../internal/c4/fleet-points.js';
3
+ import { attachJsonSerialization } from '../internal/json.js';
4
+ import { freezeResolvedSnapshot } from '../internal/resolved-snapshot.js';
5
+ const U32 = (1n << 32n) - 1n;
6
+ const CONSUMPTION_U26F6 = 50000000n << 6n;
7
+ const sum = (cap) => ({ kind: 'sum', cap });
8
+ const max = { kind: 'max' };
9
+ const speed = { kind: 'speed' };
10
+ const average = { kind: 'average' };
11
+ const checked = (maximum, minimum = 0n) => ({
12
+ kind: 'checked',
13
+ min: minimum,
14
+ max: maximum,
15
+ });
16
+ const damage = (name) => [
17
+ [`damage${name}`, sum(1000000n), 'number'],
18
+ [`damage${name}Variance`, max, 6],
19
+ ];
20
+ // Verified against the program's ship-assembly behaviour.
21
+ const FIELDS = {
22
+ movement: [
23
+ ['subwarpSpeed', speed, 16],
24
+ ['warpSpeed', speed, 16],
25
+ ['warpLaneSpeed', speed, 16],
26
+ ['maxWarpDistance', max, 8],
27
+ ['warpCoolDownSeconds', max, 'number'],
28
+ ['subwarpFuelConsumptionRate', sum(CONSUMPTION_U26F6), 6],
29
+ ['warpFuelConsumptionRate', sum(CONSUMPTION_U26F6), 6],
30
+ ['planetExitFuelAmount', sum(50000000n), 'number'],
31
+ ['warpXpRate', sum(U32), 16],
32
+ ['subwarpXpRate', sum(U32), 16],
33
+ ],
34
+ cargo: [
35
+ ['cargoCapacity', sum(100000000n), 'bigint'],
36
+ ['fuelCapacity', sum(100000000n), 'bigint'],
37
+ ['ammoCapacity', sum(1000000000n), 'bigint'],
38
+ ['ammoConsumptionRate', sum(U32), 14],
39
+ ['foodConsumptionRate', sum(U32), 14],
40
+ ['miningRate', sum(U32), 14],
41
+ ['loadRate', sum(CONSUMPTION_U26F6), 6],
42
+ ],
43
+ combat: [
44
+ ['ap', sum(1000000n), 'number'],
45
+ ['hp', sum(1000000n), 'number'],
46
+ ['sp', sum(1000000n), 'number'],
47
+ ['ammoConsumptionRate', sum(CONSUMPTION_U26F6), 6],
48
+ ['apRegenRate', sum(CONSUMPTION_U26F6), 6],
49
+ ['shieldRechargeRate', sum(CONSUMPTION_U26F6), 6],
50
+ ['repairRate', sum(CONSUMPTION_U26F6), 6],
51
+ ['repairAbility', sum(CONSUMPTION_U26F6), 6],
52
+ ['repairEfficiency', { kind: 'repairEfficiency' }, 6],
53
+ ['repairCost', { kind: 'repairCost' }, 6],
54
+ ['lootRate', sum(1000000n << 6n), 6],
55
+ ['shieldBreakDelaySeconds', max, 'number'],
56
+ ['warpSpoolTimeSeconds', max, 'number'],
57
+ ...[
58
+ 'Kinetic',
59
+ 'Energy',
60
+ 'Emp',
61
+ 'Superchill',
62
+ 'Shockwave',
63
+ 'Graygoo',
64
+ 'Heat',
65
+ 'Bomb',
66
+ ].flatMap(damage),
67
+ ...[
68
+ 'Decoy',
69
+ 'EnergyCapacitor',
70
+ 'FireSuppressor',
71
+ 'Flare',
72
+ 'HealingNanobots',
73
+ 'Mine',
74
+ 'NegativeRemPlating',
75
+ 'WarmingPlates',
76
+ 'FaradayShielding',
77
+ ].map((name) => [`counter${name}`, sum(1000000n), 'number']),
78
+ ['stealthPower', average, 6],
79
+ ['hitChance', average, 6],
80
+ ['aimAbility', average, 6],
81
+ ['critChance', average, 6],
82
+ ['critMultiplier', average, 6],
83
+ ['fuelConsumptionRate', sum(CONSUMPTION_U26F6), 6],
84
+ ['missileDamage', sum(CONSUMPTION_U26F6), 6],
85
+ ['missileFireRate', sum(CONSUMPTION_U26F6), 6],
86
+ ],
87
+ misc: [
88
+ ['requiredCrew', checked(0xffffn), 'number'],
89
+ ['passengerCapacity', checked(0xffffn), 'number'],
90
+ ['respawnTimeWithoutFeeSeconds', max, 'number'],
91
+ ['respawnTimeWithFeeSeconds', max, 'number'],
92
+ ['recoveryFeeRaw', checked((1n << 64n) - 1n), 'bigint'],
93
+ ['scanCoolDownSeconds', max, 16],
94
+ ['scanPower', sum(U32), 6],
95
+ ['scanCost', sum(50000000n), 'number'],
96
+ ['scanBonus', checked((1n << 31n) - 1n, -(1n << 31n)), 16],
97
+ ['lpValue', checked(U32), 'number'],
98
+ ['medallionValue', checked(U32), 'number'],
99
+ ['xpValue', sum(U32), 16],
100
+ ],
101
+ };
102
+ const GROUPS = Object.keys(FIELDS);
103
+ const SIZE_KEYS = {
104
+ 'xx-small': 'xxSmall',
105
+ 'x-small': 'xSmall',
106
+ small: 'small',
107
+ medium: 'medium',
108
+ large: 'large',
109
+ capital: 'capital',
110
+ commander: 'commander',
111
+ titan: 'titan',
112
+ };
113
+ function invalid(field, value) {
114
+ throw new InvalidDerivationInputError(field, value, 'Pass one current ships section from listShipConfigurations and amounts of 1n-255n; the program refuses this addition.');
115
+ }
116
+ function readRaw(stats) {
117
+ const raw = {};
118
+ for (const group of GROUPS) {
119
+ const translated = stats[group];
120
+ raw[group] = Object.fromEntries(FIELDS[group].map(([name]) => {
121
+ const value = translated[name];
122
+ return [name, typeof value === 'object' ? value.raw : BigInt(value)];
123
+ }));
124
+ }
125
+ return raw;
126
+ }
127
+ function emptyRaw() {
128
+ const raw = {};
129
+ for (const group of GROUPS)
130
+ raw[group] = Object.fromEntries(FIELDS[group].map(([name]) => [name, 0n]));
131
+ return raw;
132
+ }
133
+ function combine(target, ship, amount) {
134
+ for (const group of GROUPS)
135
+ for (const [name, rule] of FIELDS[group]) {
136
+ const current = target[group][name];
137
+ const incoming = ship[group][name];
138
+ let next;
139
+ switch (rule.kind) {
140
+ case 'sum':
141
+ next = minimum(current + minimum(incoming * amount, rule.cap), rule.cap);
142
+ break;
143
+ case 'average':
144
+ next = minimum(current + minimum(incoming * amount, CONSUMPTION_U26F6), CONSUMPTION_U26F6);
145
+ break;
146
+ case 'checked': {
147
+ const scaled = incoming * amount;
148
+ next = current + scaled;
149
+ for (const value of [scaled, next])
150
+ if (value < rule.min || value > rule.max)
151
+ invalid(`${group}.${name}`, value);
152
+ break;
153
+ }
154
+ case 'speed':
155
+ next = current === 0n ? incoming : minimum(current, incoming);
156
+ break;
157
+ default:
158
+ next = current > incoming ? current : incoming;
159
+ }
160
+ target[group][name] = next;
161
+ }
162
+ }
163
+ function scaleAverages(stats, factor, divide) {
164
+ if (factor <= 1n)
165
+ return;
166
+ for (const [name, rule] of FIELDS.combat)
167
+ if (rule.kind === 'average') {
168
+ const value = stats.combat[name];
169
+ stats.combat[name] = divide
170
+ ? value / factor
171
+ : minimum(value * factor, CONSUMPTION_U26F6);
172
+ }
173
+ }
174
+ function minimum(left, right) {
175
+ return left < right ? left : right;
176
+ }
177
+ function writeStats(raw) {
178
+ const stats = {};
179
+ for (const group of GROUPS) {
180
+ const values = {};
181
+ for (const [name, , shape] of FIELDS[group]) {
182
+ const value = raw[group][name];
183
+ values[name] =
184
+ shape === 'bigint'
185
+ ? value
186
+ : shape === 'number'
187
+ ? Number(value)
188
+ : { raw: value, value: Number(value) / 2 ** shape };
189
+ }
190
+ stats[group] = values;
191
+ }
192
+ stats.misc.recoveryFeeAtlas = Number(raw.misc.recoveryFeeRaw) / 100_000_000;
193
+ return stats;
194
+ }
195
+ /** Projects the stats a Fleet stores after ship assembly, exactly as the program
196
+ * aggregates them; verified against the program's behaviour. Capacities, Fuel
197
+ * and upkeep rates, mining and load rates, crew, AP/HP/SP and damage are added
198
+ * and capped. Subwarp, warp and lane speeds take the lowest value. Maximum warp
199
+ * distance, warp cooldown, warp spool, shield break delay, damage variance,
200
+ * respawn times and scan cooldown take the highest. Stealth, hit, aim and
201
+ * critical values are truncated per-ship averages, which the program rescales
202
+ * on every addition, so one addition of two ships can differ from two
203
+ * additions of one. Repair cost (weighted by hull points) and repair efficiency
204
+ * (weighted by repair ability) are recomputed over every ship aboard.
205
+ *
206
+ * A Fleet on the definitions' sequence builds on its stored stats and counts.
207
+ * One on an older sequence is first rebuilt from the current definitions of
208
+ * the ships aboard, as the program does before adding ships. A missing ship
209
+ * definition, mixed definition sequences, an amount outside 1n-255n or an
210
+ * overflow the program refuses throw `InvalidDerivationInputError`; other
211
+ * inputs are trusted as typed.
212
+ *
213
+ * Character research does not change stored stats: pass the Character's raw
214
+ * speed and cooldown modifiers to the travel helpers at use time. This is not
215
+ * an eligibility check (`planAddShipToFleet` applies ship size, research tags,
216
+ * Fleet size and formation limits), and checks no funding, entitlement or crew
217
+ * provisioning. Current AP, SP and HP are not projected. Read the Fleet back
218
+ * after confirmation; the chain stays authoritative. Requalify after program
219
+ * changes.
220
+ * @example
221
+ * ```ts
222
+ * declare const ctx: SageContext, fleet: FleetSnapshot, character: CharacterSnapshot;
223
+ * const projected = deriveFleetCompositionStats({
224
+ * definitions: await listShipConfigurations(ctx),
225
+ * fleet,
226
+ * additions: [{ shipId: 12, amount: 1n }],
227
+ * });
228
+ * const travel = deriveFleetTravelProfile({
229
+ * stats: projected.stats,
230
+ * subwarpSpeedModifierRaw: character.modifiers.values.subwarpSpeedModifierRaw,
231
+ * });
232
+ * console.log(projected.stats.cargo.miningRate.value, travel.subwarp?.secondsPerAu);
233
+ * ```
234
+ */
235
+ export function deriveFleetCompositionStats(input) {
236
+ const definitions = new Map();
237
+ let sequence;
238
+ for (const definition of input.definitions) {
239
+ sequence ??= definition.definitionSequenceId;
240
+ if (definition.definitionSequenceId !== sequence)
241
+ invalid('Ship definition sequence', definition.definitionSequenceId);
242
+ definitions.set(definition.id, definition);
243
+ }
244
+ if (sequence === undefined)
245
+ invalid('Ship definitions', 0);
246
+ const rawDefinitions = new Map();
247
+ const lookup = (id) => {
248
+ const definition = definitions.get(id);
249
+ if (definition === undefined)
250
+ invalid('Ship definition id', id);
251
+ let raw = rawDefinitions.get(id);
252
+ if (raw === undefined) {
253
+ raw = readRaw(definition.stats);
254
+ rawDefinitions.set(id, raw);
255
+ }
256
+ return { definition, raw };
257
+ };
258
+ const fleet = input.fleet;
259
+ const ships = new Map(fleet?.ships.map(({ id, quantity }) => [id, quantity]));
260
+ const counts = {
261
+ total: 0n,
262
+ xxSmall: 0n,
263
+ xSmall: 0n,
264
+ small: 0n,
265
+ medium: 0n,
266
+ large: 0n,
267
+ capital: 0n,
268
+ commander: 0n,
269
+ titan: 0n,
270
+ };
271
+ const addCounts = (definition, amount) => {
272
+ const key = SIZE_KEYS[definition.sizeClass];
273
+ counts[key] += amount;
274
+ counts.total += amount;
275
+ if (counts[key] > 0xffffn)
276
+ invalid(`shipCounts.${key}`, counts[key]);
277
+ };
278
+ let route;
279
+ let stats;
280
+ if (fleet === undefined) {
281
+ route = 'new-fleet';
282
+ stats = emptyRaw();
283
+ }
284
+ else {
285
+ stats = readRaw(fleet.stats);
286
+ for (const key of Object.keys(counts))
287
+ counts[key] = BigInt(fleet.shipCounts[key]);
288
+ if (fleet.shipDefinitionsSeqId === sequence)
289
+ route = 'stored';
290
+ else {
291
+ route = 'resynchronized';
292
+ if (ships.size > 0) {
293
+ stats = emptyRaw();
294
+ for (const key of Object.keys(counts))
295
+ counts[key] = 0n;
296
+ for (const [id, quantity] of ships) {
297
+ const { definition, raw } = lookup(id);
298
+ addCounts(definition, quantity);
299
+ combine(stats, raw, quantity);
300
+ }
301
+ scaleAverages(stats, counts.total, true);
302
+ setRepair(stats, ships, lookup);
303
+ }
304
+ }
305
+ }
306
+ for (const { shipId, amount } of input.additions) {
307
+ if (amount < 1n || amount > 255n)
308
+ invalid('Addition amount', amount);
309
+ const { definition, raw } = lookup(shipId);
310
+ scaleAverages(stats, counts.total, false);
311
+ combine(stats, raw, amount);
312
+ addCounts(definition, amount);
313
+ ships.set(shipId, (ships.get(shipId) ?? 0n) + amount);
314
+ scaleAverages(stats, counts.total, true);
315
+ setRepair(stats, ships, lookup);
316
+ }
317
+ const shipCounts = Object.fromEntries(Object.entries(counts).map(([key, value]) => [key, Number(value)]));
318
+ return freezeResolvedSnapshot(attachJsonSerialization({
319
+ route,
320
+ definitionSequenceId: sequence,
321
+ ships: [...ships].map(([id, quantity]) => ({ id, quantity })),
322
+ shipCounts,
323
+ fleetPoints: fleetCapacityPoints([
324
+ shipCounts.xxSmall,
325
+ shipCounts.xSmall,
326
+ shipCounts.small,
327
+ shipCounts.medium,
328
+ shipCounts.large,
329
+ shipCounts.capital,
330
+ shipCounts.commander,
331
+ shipCounts.titan,
332
+ ]),
333
+ stats: writeStats(stats),
334
+ }));
335
+ }
336
+ function setRepair(stats, ships, lookup) {
337
+ let costWeighted = 0n;
338
+ let hullWeight = 0n;
339
+ let efficiencyWeighted = 0n;
340
+ let abilityWeight = 0n;
341
+ for (const [id, quantity] of ships) {
342
+ const { combat } = lookup(id).raw;
343
+ const hull = combat.hp * quantity;
344
+ const ability = combat.repairAbility * quantity;
345
+ hullWeight += hull;
346
+ costWeighted += combat.repairCost * hull;
347
+ abilityWeight += ability;
348
+ efficiencyWeighted += combat.repairEfficiency * ability;
349
+ }
350
+ stats.combat.repairCost = hullWeight === 0n ? 0n : costWeighted / hullWeight;
351
+ stats.combat.repairEfficiency =
352
+ abilityWeight === 0n ? 0n : efficiencyWeighted / abilityWeight;
353
+ }
354
+ //# sourceMappingURL=composition-stats.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"composition-stats.js","sourceRoot":"","sources":["../../src/fleets/composition-stats.ts"],"names":[],"mappings":"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"}
@@ -16,19 +16,22 @@ export type FleetMovementCooldownInput = {
16
16
  } | {
17
17
  readonly kind: 'warpLane';
18
18
  readonly departsAtUnixSeconds: bigint;
19
+ readonly existingCooldownExpiresAt: bigint;
19
20
  } | {
20
21
  readonly kind: 'subwarp';
21
22
  readonly existingCooldownExpiresAt: bigint;
22
23
  };
23
24
  /** Predicts the assigned warp-cooldown expiry in Unix seconds for a movement.
24
25
  * Coordinate warp anchors at arrival and rounds the modified base upward;
25
- * a zero modifier uses the unmodified base. Lane warp assigns departure time,
26
- * replacing even a later expiry. Subwarp preserves the existing expiry.
26
+ * a zero modifier uses the unmodified base. Lane warp adds no cooldown but
27
+ * never erases an active one: the expiry becomes the later of the existing
28
+ * expiry and the departure time. Subwarp preserves the existing expiry.
27
29
  *
28
- * Qualified against PTR deployment slot 54356023. Coordinate/lane timestamps
30
+ * Coordinate-warp arithmetic is qualified against PTR deployment slot
31
+ * 54356023; the lane rule follows the current program. Coordinate/lane timestamps
29
32
  * must be nonnegative signed-i64 values, base seconds an integer in 0..65535,
30
33
  * and modifier raw a nonnegative signed-i64 value. Overflow is rejected.
31
- * Existing subwarp expiry may be any signed-i64 value, including sentinels.
34
+ * An existing expiry may be any signed-i64 value, including sentinels.
32
35
  * This pure helper does not calculate journey duration or check state, active
33
36
  * cooldown, permissions, Fuel or lane eligibility. Use deriveFleetTimers for
34
37
  * observed timer display and simulate the intended action before signing.
@@ -1 +1 @@
1
- {"version":3,"file":"cooldown.d.ts","sourceRoot":"","sources":["../../src/fleets/cooldown.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,MAAM,0BAA0B,GAClC;IACE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAA;CAAE,GACpE;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAA;CAAE,CAAC;AAY7E;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,0BAA0B,GAChC,MAAM,CA2BR"}
1
+ {"version":3,"file":"cooldown.d.ts","sourceRoot":"","sources":["../../src/fleets/cooldown.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,MAAM,0BAA0B,GAClC;IACE,QAAQ,CAAC,IAAI,EAAE,gBAAgB,CAAC;IAChC,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,oBAAoB,EAAE,MAAM,CAAC;IACtC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAC;CAC5C,GACD;IAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,CAAC,yBAAyB,EAAE,MAAM,CAAA;CAAE,CAAC;AAY7E;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,0BAA0B,GAChC,MAAM,CAqCR"}
@@ -9,13 +9,15 @@ function bounded(field, value, minimum = 0n) {
9
9
  }
10
10
  /** Predicts the assigned warp-cooldown expiry in Unix seconds for a movement.
11
11
  * Coordinate warp anchors at arrival and rounds the modified base upward;
12
- * a zero modifier uses the unmodified base. Lane warp assigns departure time,
13
- * replacing even a later expiry. Subwarp preserves the existing expiry.
12
+ * a zero modifier uses the unmodified base. Lane warp adds no cooldown but
13
+ * never erases an active one: the expiry becomes the later of the existing
14
+ * expiry and the departure time. Subwarp preserves the existing expiry.
14
15
  *
15
- * Qualified against PTR deployment slot 54356023. Coordinate/lane timestamps
16
+ * Coordinate-warp arithmetic is qualified against PTR deployment slot
17
+ * 54356023; the lane rule follows the current program. Coordinate/lane timestamps
16
18
  * must be nonnegative signed-i64 values, base seconds an integer in 0..65535,
17
19
  * and modifier raw a nonnegative signed-i64 value. Overflow is rejected.
18
- * Existing subwarp expiry may be any signed-i64 value, including sentinels.
20
+ * An existing expiry may be any signed-i64 value, including sentinels.
19
21
  * This pure helper does not calculate journey duration or check state, active
20
22
  * cooldown, permissions, Fuel or lane eligibility. Use deriveFleetTimers for
21
23
  * observed timer display and simulate the intended action before signing.
@@ -30,8 +32,11 @@ function bounded(field, value, minimum = 0n) {
30
32
  export function deriveFleetMovementCooldown(input) {
31
33
  if (input.kind === 'subwarp')
32
34
  return bounded('Existing warp cooldown expiry', input.existingCooldownExpiresAt, -(1n << 63n));
33
- if (input.kind === 'warpLane')
34
- return bounded('Warp-lane departure timestamp', input.departsAtUnixSeconds);
35
+ if (input.kind === 'warpLane') {
36
+ const departure = bounded('Warp-lane departure timestamp', input.departsAtUnixSeconds);
37
+ const existing = bounded('Existing warp cooldown expiry', input.existingCooldownExpiresAt, -(1n << 63n));
38
+ return existing > departure ? existing : departure;
39
+ }
35
40
  const arrival = bounded('Coordinate-warp arrival timestamp', input.arrivesAtUnixSeconds);
36
41
  const base = input.baseCooldownSeconds;
37
42
  if (!Number.isInteger(base) || base < 0 || base > 65535)
@@ -1 +1 @@
1
- {"version":3,"file":"cooldown.js","sourceRoot":"","sources":["../../src/fleets/cooldown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AAsBjE,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;AACtC,MAAM,KAAK,GAAG,EAAE,IAAI,GAAG,CAAC;AACxB,MAAM,MAAM,GACV,yIAAyI,CAAC;AAC5I,SAAS,OAAO,CAAC,KAAa,EAAE,KAAa,EAAE,OAAO,GAAG,EAAE;IACzD,IAAI,KAAK,GAAG,OAAO,IAAI,KAAK,GAAG,YAAY;QACzC,MAAM,IAAI,2BAA2B,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAiC;IAEjC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAC1B,OAAO,OAAO,CACZ,+BAA+B,EAC/B,KAAK,CAAC,yBAAyB,EAC/B,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CACb,CAAC;IACJ,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU;QAC3B,OAAO,OAAO,CAAC,+BAA+B,EAAE,KAAK,CAAC,oBAAoB,CAAC,CAAC;IAC9E,MAAM,OAAO,GAAG,OAAO,CACrB,mCAAmC,EACnC,KAAK,CAAC,oBAAoB,CAC3B,CAAC;IACF,MAAM,IAAI,GAAG,KAAK,CAAC,mBAAmB,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,KAAK;QACrD,MAAM,IAAI,2BAA2B,CACnC,4BAA4B,EAC5B,IAAI,EACJ,MAAM,CACP,CAAC;IACJ,MAAM,QAAQ,GAAG,OAAO,CACtB,sCAAsC,EACtC,KAAK,CAAC,mBAAmB,CAC1B,CAAC;IACF,MAAM,QAAQ,GACZ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;IAC7E,OAAO,OAAO,CAAC,gCAAgC,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAC;AACvE,CAAC"}
1
+ {"version":3,"file":"cooldown.js","sourceRoot":"","sources":["../../src/fleets/cooldown.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AA0BjE,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,GAAG,CAAC,GAAG,EAAE,CAAC;AACtC,MAAM,KAAK,GAAG,EAAE,IAAI,GAAG,CAAC;AACxB,MAAM,MAAM,GACV,yIAAyI,CAAC;AAC5I,SAAS,OAAO,CAAC,KAAa,EAAE,KAAa,EAAE,OAAO,GAAG,EAAE;IACzD,IAAI,KAAK,GAAG,OAAO,IAAI,KAAK,GAAG,YAAY;QACzC,MAAM,IAAI,2BAA2B,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC9D,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAiC;IAEjC,IAAI,KAAK,CAAC,IAAI,KAAK,SAAS;QAC1B,OAAO,OAAO,CACZ,+BAA+B,EAC/B,KAAK,CAAC,yBAAyB,EAC/B,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CACb,CAAC;IACJ,IAAI,KAAK,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC9B,MAAM,SAAS,GAAG,OAAO,CACvB,+BAA+B,EAC/B,KAAK,CAAC,oBAAoB,CAC3B,CAAC;QACF,MAAM,QAAQ,GAAG,OAAO,CACtB,+BAA+B,EAC/B,KAAK,CAAC,yBAAyB,EAC/B,CAAC,CAAC,EAAE,IAAI,GAAG,CAAC,CACb,CAAC;QACF,OAAO,QAAQ,GAAG,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACrD,CAAC;IACD,MAAM,OAAO,GAAG,OAAO,CACrB,mCAAmC,EACnC,KAAK,CAAC,oBAAoB,CAC3B,CAAC;IACF,MAAM,IAAI,GAAG,KAAK,CAAC,mBAAmB,CAAC;IACvC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,GAAG,KAAK;QACrD,MAAM,IAAI,2BAA2B,CACnC,4BAA4B,EAC5B,IAAI,EACJ,MAAM,CACP,CAAC;IACJ,MAAM,QAAQ,GAAG,OAAO,CACtB,sCAAsC,EACtC,KAAK,CAAC,mBAAmB,CAC1B,CAAC;IACF,MAAM,QAAQ,GACZ,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,GAAG,KAAK,GAAG,EAAE,CAAC,GAAG,KAAK,CAAC;IAC7E,OAAO,OAAO,CAAC,gCAAgC,EAAE,OAAO,GAAG,QAAQ,CAAC,CAAC;AACvE,CAAC"}
@@ -4,6 +4,7 @@ export { deriveFleetWarpLaneEstimate, type FleetWarpLaneEstimate, type FleetWarp
4
4
  export { deriveFleetCoordinateWarpEstimate, type FleetCoordinateWarpEstimate, type FleetCoordinateWarpEstimateInput, } from './coordinate-warp-estimate.js';
5
5
  export { deriveFleetSubwarpEstimate, type FleetSubwarpEstimate, type FleetSubwarpEstimateInput, } from './subwarp-estimate.js';
6
6
  export { deriveFleetMovementCooldown, type FleetMovementCooldownInput, } from './cooldown.js';
7
+ export { deriveFleetCompositionStats, type FleetCompositionStats, type FleetCompositionStatsInput, } from './composition-stats.js';
7
8
  export { deriveFleetTravelProfile, type FleetTravelProfile, type FleetTravelProfileInput, } from './travel-profile.js';
8
9
  import { SageSdkError, type Address, type DiscoveryRequest, type EntityRef, type ReadOptions, type SageContext, type SageSubscription, type SubscriptionDiagnosticEvent, type SubscriptionOptions } from '../client/index.js';
9
10
  import { deriveFleetTimers, interpolateSubwarpPosition, type ResolvedFleetAccountData } from '../internal/fleet.js';