@aephia/atlas-kit 0.6.0-next.9 → 0.6.0-next.91

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 (585) hide show
  1. package/README.md +3 -1
  2. package/dist/cargo/actions/deposit.d.ts +1 -1
  3. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  4. package/dist/cargo/actions/deposit.js +25 -12
  5. package/dist/cargo/actions/deposit.js.map +1 -1
  6. package/dist/cargo/actions/index.d.ts.map +1 -1
  7. package/dist/cargo/actions/index.js +3 -2
  8. package/dist/cargo/actions/index.js.map +1 -1
  9. package/dist/cargo/actions/wallet-token.d.ts +1 -1
  10. package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
  11. package/dist/cargo/actions/wallet-token.js +1 -9
  12. package/dist/cargo/actions/wallet-token.js.map +1 -1
  13. package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
  14. package/dist/cargo/actions/withdrawal.js +28 -27
  15. package/dist/cargo/actions/withdrawal.js.map +1 -1
  16. package/dist/claim-stakes/actions/index.d.ts +13 -0
  17. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  18. package/dist/claim-stakes/actions/index.js +95 -44
  19. package/dist/claim-stakes/actions/index.js.map +1 -1
  20. package/dist/claim-stakes/index.d.ts +14 -0
  21. package/dist/claim-stakes/index.d.ts.map +1 -1
  22. package/dist/claim-stakes/index.js +23 -2
  23. package/dist/claim-stakes/index.js.map +1 -1
  24. package/dist/client/context.d.ts.map +1 -1
  25. package/dist/client/context.js +1 -1
  26. package/dist/client/context.js.map +1 -1
  27. package/dist/client/contracts.d.ts +16 -6
  28. package/dist/client/contracts.d.ts.map +1 -1
  29. package/dist/client/errors.d.ts +6 -2
  30. package/dist/client/errors.d.ts.map +1 -1
  31. package/dist/client/errors.js +31 -1
  32. package/dist/client/errors.js.map +1 -1
  33. package/dist/client/index.d.ts +35 -0
  34. package/dist/client/index.d.ts.map +1 -1
  35. package/dist/client/index.js +35 -0
  36. package/dist/client/index.js.map +1 -1
  37. package/dist/client/rpc-subscription-provider.d.ts +35 -0
  38. package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
  39. package/dist/client/rpc-subscription-provider.js +190 -0
  40. package/dist/client/rpc-subscription-provider.js.map +1 -0
  41. package/dist/combat/actions/index.d.ts.map +1 -1
  42. package/dist/combat/actions/index.js +98 -50
  43. package/dist/combat/actions/index.js.map +1 -1
  44. package/dist/crafting/actions/index.d.ts +11 -0
  45. package/dist/crafting/actions/index.d.ts.map +1 -1
  46. package/dist/crafting/actions/index.js +73 -36
  47. package/dist/crafting/actions/index.js.map +1 -1
  48. package/dist/crafting/index.d.ts +33 -3
  49. package/dist/crafting/index.d.ts.map +1 -1
  50. package/dist/crafting/index.js +44 -15
  51. package/dist/crafting/index.js.map +1 -1
  52. package/dist/factions/actions/index.d.ts +1 -0
  53. package/dist/factions/actions/index.d.ts.map +1 -1
  54. package/dist/factions/actions/index.js +2 -1
  55. package/dist/factions/actions/index.js.map +1 -1
  56. package/dist/factions/index.d.ts +1 -1
  57. package/dist/factions/index.d.ts.map +1 -1
  58. package/dist/factions/index.js +14 -8
  59. package/dist/factions/index.js.map +1 -1
  60. package/dist/factions/profile-faction.d.ts +20 -8
  61. package/dist/factions/profile-faction.d.ts.map +1 -1
  62. package/dist/factions/profile-faction.js +20 -8
  63. package/dist/factions/profile-faction.js.map +1 -1
  64. package/dist/fleets/actions/add-ship.d.ts +35 -0
  65. package/dist/fleets/actions/add-ship.d.ts.map +1 -0
  66. package/dist/fleets/actions/add-ship.js +149 -0
  67. package/dist/fleets/actions/add-ship.js.map +1 -0
  68. package/dist/fleets/actions/create-fleet.d.ts +36 -0
  69. package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
  70. package/dist/fleets/actions/create-fleet.js +138 -0
  71. package/dist/fleets/actions/create-fleet.js.map +1 -0
  72. package/dist/fleets/actions/crew-transfer.d.ts +41 -0
  73. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
  74. package/dist/fleets/actions/crew-transfer.js +114 -0
  75. package/dist/fleets/actions/crew-transfer.js.map +1 -0
  76. package/dist/fleets/actions/dock-bounds.d.ts +38 -0
  77. package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
  78. package/dist/fleets/actions/dock-bounds.js +46 -0
  79. package/dist/fleets/actions/dock-bounds.js.map +1 -0
  80. package/dist/fleets/actions/index.d.ts +34 -15
  81. package/dist/fleets/actions/index.d.ts.map +1 -1
  82. package/dist/fleets/actions/index.js +227 -118
  83. package/dist/fleets/actions/index.js.map +1 -1
  84. package/dist/fleets/actions/respawn.d.ts +38 -0
  85. package/dist/fleets/actions/respawn.d.ts.map +1 -0
  86. package/dist/fleets/actions/respawn.js +122 -0
  87. package/dist/fleets/actions/respawn.js.map +1 -0
  88. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  89. package/dist/fleets/actions/ship-import.js +41 -13
  90. package/dist/fleets/actions/ship-import.js.map +1 -1
  91. package/dist/fleets/cooldown.d.ts +44 -0
  92. package/dist/fleets/cooldown.d.ts.map +1 -0
  93. package/dist/fleets/cooldown.js +43 -0
  94. package/dist/fleets/cooldown.js.map +1 -0
  95. package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
  96. package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
  97. package/dist/fleets/coordinate-warp-estimate.js +46 -0
  98. package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
  99. package/dist/fleets/index.d.ts +34 -0
  100. package/dist/fleets/index.d.ts.map +1 -1
  101. package/dist/fleets/index.js +51 -2
  102. package/dist/fleets/index.js.map +1 -1
  103. package/dist/fleets/movement-arithmetic.d.ts +21 -0
  104. package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
  105. package/dist/fleets/movement-arithmetic.js +41 -0
  106. package/dist/fleets/movement-arithmetic.js.map +1 -0
  107. package/dist/fleets/subwarp-estimate.d.ts +70 -0
  108. package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
  109. package/dist/fleets/subwarp-estimate.js +38 -0
  110. package/dist/fleets/subwarp-estimate.js.map +1 -0
  111. package/dist/fleets/warp-lane-estimate.d.ts +59 -0
  112. package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
  113. package/dist/fleets/warp-lane-estimate.js +36 -0
  114. package/dist/fleets/warp-lane-estimate.js.map +1 -0
  115. package/dist/fleets/warp-lane-policy.d.ts +68 -0
  116. package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
  117. package/dist/fleets/warp-lane-policy.js +91 -0
  118. package/dist/fleets/warp-lane-policy.js.map +1 -0
  119. package/dist/fleets/warp-lane-toll.d.ts +55 -0
  120. package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
  121. package/dist/fleets/warp-lane-toll.js +79 -0
  122. package/dist/fleets/warp-lane-toll.js.map +1 -0
  123. package/dist/identity/actions/create-profile.d.ts +2 -0
  124. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  125. package/dist/identity/actions/create-profile.js +14 -9
  126. package/dist/identity/actions/create-profile.js.map +1 -1
  127. package/dist/identity/actions/index.d.ts +3 -3
  128. package/dist/identity/actions/index.d.ts.map +1 -1
  129. package/dist/identity/actions/index.js +48 -27
  130. package/dist/identity/actions/index.js.map +1 -1
  131. package/dist/identity/index.d.ts +15 -0
  132. package/dist/identity/index.d.ts.map +1 -1
  133. package/dist/identity/index.js +15 -0
  134. package/dist/identity/index.js.map +1 -1
  135. package/dist/identity/permissions.d.ts +124 -0
  136. package/dist/identity/permissions.d.ts.map +1 -0
  137. package/dist/identity/permissions.js +171 -0
  138. package/dist/identity/permissions.js.map +1 -0
  139. package/dist/index.d.ts +24 -0
  140. package/dist/index.d.ts.map +1 -1
  141. package/dist/index.js +20 -3
  142. package/dist/index.js.map +1 -1
  143. package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
  144. package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
  145. package/dist/internal/c4/cargo-bytes-config.js +19 -0
  146. package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
  147. package/dist/internal/c4/character-registration.d.ts +2 -0
  148. package/dist/internal/c4/character-registration.d.ts.map +1 -1
  149. package/dist/internal/c4/character-registration.js +2 -0
  150. package/dist/internal/c4/character-registration.js.map +1 -1
  151. package/dist/internal/c4/claim-stake-definitions.d.ts +4 -4
  152. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  153. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  154. package/dist/internal/c4/claim-stake.d.ts +4 -27
  155. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  156. package/dist/internal/c4/claim-stake.js +25 -38
  157. package/dist/internal/c4/claim-stake.js.map +1 -1
  158. package/dist/internal/c4/combat.d.ts +0 -27
  159. package/dist/internal/c4/combat.d.ts.map +1 -1
  160. package/dist/internal/c4/combat.js +0 -33
  161. package/dist/internal/c4/combat.js.map +1 -1
  162. package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
  163. package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
  164. package/dist/internal/c4/crafting-process-codec.js +34 -0
  165. package/dist/internal/c4/crafting-process-codec.js.map +1 -0
  166. package/dist/internal/c4/crafting.d.ts +12 -32
  167. package/dist/internal/c4/crafting.d.ts.map +1 -1
  168. package/dist/internal/c4/crafting.js +31 -44
  169. package/dist/internal/c4/crafting.js.map +1 -1
  170. package/dist/internal/c4/docking-funding.d.ts +4 -0
  171. package/dist/internal/c4/docking-funding.d.ts.map +1 -0
  172. package/dist/internal/c4/docking-funding.js +11 -0
  173. package/dist/internal/c4/docking-funding.js.map +1 -0
  174. package/dist/internal/c4/faction-adapter.d.ts +12 -0
  175. package/dist/internal/c4/faction-adapter.d.ts.map +1 -0
  176. package/dist/internal/c4/faction-adapter.js +52 -0
  177. package/dist/internal/c4/faction-adapter.js.map +1 -0
  178. package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
  179. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
  180. package/dist/internal/c4/faction-epoch-meter.js +31 -0
  181. package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
  182. package/dist/internal/c4/faction-treasury.d.ts +23 -0
  183. package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
  184. package/dist/internal/c4/faction-treasury.js +48 -0
  185. package/dist/internal/c4/faction-treasury.js.map +1 -0
  186. package/dist/internal/c4/factions.d.ts +9 -57
  187. package/dist/internal/c4/factions.d.ts.map +1 -1
  188. package/dist/internal/c4/factions.js +21 -139
  189. package/dist/internal/c4/factions.js.map +1 -1
  190. package/dist/internal/c4/fleet-arrival.d.ts +28 -0
  191. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
  192. package/dist/internal/c4/fleet-arrival.js +42 -0
  193. package/dist/internal/c4/fleet-arrival.js.map +1 -0
  194. package/dist/internal/c4/fleet-creation.d.ts +7 -0
  195. package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
  196. package/dist/internal/c4/fleet-creation.js +180 -0
  197. package/dist/internal/c4/fleet-creation.js.map +1 -0
  198. package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
  199. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  200. package/dist/internal/c4/fleet-crew-binding.js +15 -0
  201. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  202. package/dist/internal/c4/fleet-respawn.d.ts +19 -0
  203. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  204. package/dist/internal/c4/fleet-respawn.js +91 -0
  205. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  206. package/dist/internal/c4/fleet-ship-assembly.d.ts +11 -0
  207. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
  208. package/dist/internal/c4/fleet-ship-assembly.js +44 -0
  209. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
  210. package/dist/internal/c4/fleet.d.ts +45 -19
  211. package/dist/internal/c4/fleet.d.ts.map +1 -1
  212. package/dist/internal/c4/fleet.js +26 -7
  213. package/dist/internal/c4/fleet.js.map +1 -1
  214. package/dist/internal/c4/game-definition-layout.d.ts +2 -0
  215. package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
  216. package/dist/internal/c4/game-definition-layout.js +4 -0
  217. package/dist/internal/c4/game-definition-layout.js.map +1 -1
  218. package/dist/internal/c4/game.d.ts +46 -11
  219. package/dist/internal/c4/game.d.ts.map +1 -1
  220. package/dist/internal/c4/game.js +108 -20
  221. package/dist/internal/c4/game.js.map +1 -1
  222. package/dist/internal/c4/identity.d.ts +4 -8
  223. package/dist/internal/c4/identity.d.ts.map +1 -1
  224. package/dist/internal/c4/identity.js +3 -24
  225. package/dist/internal/c4/identity.js.map +1 -1
  226. package/dist/internal/c4/local-market-order.d.ts +31 -0
  227. package/dist/internal/c4/local-market-order.d.ts.map +1 -0
  228. package/dist/internal/c4/local-market-order.js +47 -0
  229. package/dist/internal/c4/local-market-order.js.map +1 -0
  230. package/dist/internal/c4/loyalty.d.ts +0 -27
  231. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  232. package/dist/internal/c4/loyalty.js +0 -33
  233. package/dist/internal/c4/loyalty.js.map +1 -1
  234. package/dist/internal/c4/market.d.ts +2 -38
  235. package/dist/internal/c4/market.d.ts.map +1 -1
  236. package/dist/internal/c4/market.js +13 -51
  237. package/dist/internal/c4/market.js.map +1 -1
  238. package/dist/internal/c4/mining-instructions.d.ts +2 -0
  239. package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
  240. package/dist/internal/c4/mining-instructions.js +3 -0
  241. package/dist/internal/c4/mining-instructions.js.map +1 -0
  242. package/dist/internal/c4/open-signal.d.ts +8 -0
  243. package/dist/internal/c4/open-signal.d.ts.map +1 -0
  244. package/dist/internal/c4/open-signal.js +37 -0
  245. package/dist/internal/c4/open-signal.js.map +1 -0
  246. package/dist/internal/c4/profile-permissions.d.ts +14 -0
  247. package/dist/internal/c4/profile-permissions.d.ts.map +1 -0
  248. package/dist/internal/c4/profile-permissions.js +81 -0
  249. package/dist/internal/c4/profile-permissions.js.map +1 -0
  250. package/dist/internal/c4/region-geometry.d.ts +8 -0
  251. package/dist/internal/c4/region-geometry.d.ts.map +1 -0
  252. package/dist/internal/c4/region-geometry.js +43 -0
  253. package/dist/internal/c4/region-geometry.js.map +1 -0
  254. package/dist/internal/c4/rewards.d.ts +0 -27
  255. package/dist/internal/c4/rewards.d.ts.map +1 -1
  256. package/dist/internal/c4/rewards.js +0 -33
  257. package/dist/internal/c4/rewards.js.map +1 -1
  258. package/dist/internal/c4/runtime-bindings.d.ts +3 -0
  259. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
  260. package/dist/internal/c4/runtime-bindings.js +4 -0
  261. package/dist/internal/c4/runtime-bindings.js.map +1 -0
  262. package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
  263. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
  264. package/dist/internal/c4/scan-detection-codecs.js +3 -0
  265. package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
  266. package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
  267. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  268. package/dist/internal/c4/scan-lifecycle.js +258 -0
  269. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  270. package/dist/internal/c4/scanning.d.ts +1 -28
  271. package/dist/internal/c4/scanning.d.ts.map +1 -1
  272. package/dist/internal/c4/scanning.js +2 -33
  273. package/dist/internal/c4/scanning.js.map +1 -1
  274. package/dist/internal/c4/ship-import.d.ts +4 -0
  275. package/dist/internal/c4/ship-import.d.ts.map +1 -0
  276. package/dist/internal/c4/ship-import.js +13 -0
  277. package/dist/internal/c4/ship-import.js.map +1 -0
  278. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  279. package/dist/internal/c4/ship-stats.js +25 -21
  280. package/dist/internal/c4/ship-stats.js.map +1 -1
  281. package/dist/internal/c4/starbase.d.ts +0 -32
  282. package/dist/internal/c4/starbase.d.ts.map +1 -1
  283. package/dist/internal/c4/starbase.js +3 -41
  284. package/dist/internal/c4/starbase.js.map +1 -1
  285. package/dist/internal/c4/world.d.ts +36 -7
  286. package/dist/internal/c4/world.d.ts.map +1 -1
  287. package/dist/internal/c4/world.js +58 -25
  288. package/dist/internal/c4/world.js.map +1 -1
  289. package/dist/internal/cargo.d.ts +2 -0
  290. package/dist/internal/cargo.d.ts.map +1 -1
  291. package/dist/internal/cargo.js +8 -0
  292. package/dist/internal/cargo.js.map +1 -1
  293. package/dist/internal/fleet.d.ts +1 -0
  294. package/dist/internal/fleet.d.ts.map +1 -1
  295. package/dist/internal/fleet.js +3 -1
  296. package/dist/internal/fleet.js.map +1 -1
  297. package/dist/internal/loyalty-atlas-bank-state.d.ts +16 -0
  298. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
  299. package/dist/internal/loyalty-atlas-bank-state.js +10 -0
  300. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
  301. package/dist/internal/planning/action-runtime.d.ts +38 -0
  302. package/dist/internal/planning/action-runtime.d.ts.map +1 -0
  303. package/dist/internal/planning/action-runtime.js +63 -0
  304. package/dist/internal/planning/action-runtime.js.map +1 -0
  305. package/dist/internal/planning/arrival-guards.d.ts +20 -0
  306. package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
  307. package/dist/internal/planning/arrival-guards.js +187 -0
  308. package/dist/internal/planning/arrival-guards.js.map +1 -0
  309. package/dist/internal/planning/authorization-adapter.d.ts +10 -7
  310. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  311. package/dist/internal/planning/authorization-adapter.js +87 -16
  312. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  313. package/dist/internal/planning/character-registration-guard.d.ts +4 -0
  314. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
  315. package/dist/internal/planning/character-registration-guard.js +58 -0
  316. package/dist/internal/planning/character-registration-guard.js.map +1 -0
  317. package/dist/internal/planning/character-registration.d.ts +23 -0
  318. package/dist/internal/planning/character-registration.d.ts.map +1 -0
  319. package/dist/internal/planning/character-registration.js +86 -0
  320. package/dist/internal/planning/character-registration.js.map +1 -0
  321. package/dist/internal/planning/democracy-history.d.ts +50 -0
  322. package/dist/internal/planning/democracy-history.d.ts.map +1 -0
  323. package/dist/internal/planning/democracy-history.js +198 -0
  324. package/dist/internal/planning/democracy-history.js.map +1 -0
  325. package/dist/internal/planning/faction-enrollment.d.ts +0 -2
  326. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  327. package/dist/internal/planning/faction-enrollment.js +1 -22
  328. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  329. package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
  330. package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
  331. package/dist/internal/planning/faction-trade-guards.js +15 -0
  332. package/dist/internal/planning/faction-trade-guards.js.map +1 -0
  333. package/dist/internal/planning/faction-trade-state.d.ts +16 -0
  334. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
  335. package/dist/internal/planning/faction-trade-state.js +43 -0
  336. package/dist/internal/planning/faction-trade-state.js.map +1 -0
  337. package/dist/internal/planning/fleet-arrival.d.ts +40 -0
  338. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
  339. package/dist/internal/planning/fleet-arrival.js +105 -0
  340. package/dist/internal/planning/fleet-arrival.js.map +1 -0
  341. package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
  342. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
  343. package/dist/internal/planning/fleet-attack-xp.js +110 -0
  344. package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
  345. package/dist/internal/planning/fleet-creation.d.ts +30 -0
  346. package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
  347. package/dist/internal/planning/fleet-creation.js +108 -0
  348. package/dist/internal/planning/fleet-creation.js.map +1 -0
  349. package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
  350. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
  351. package/dist/internal/planning/fleet-crew-guard.js +47 -0
  352. package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
  353. package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
  354. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
  355. package/dist/internal/planning/fleet-crew-transfer.js +131 -0
  356. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
  357. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
  358. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
  359. package/dist/internal/planning/fleet-dock-funding-guard.js +225 -0
  360. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
  361. package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
  362. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
  363. package/dist/internal/planning/fleet-dock-funding.js +154 -0
  364. package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
  365. package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
  366. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
  367. package/dist/internal/planning/fleet-docking-guard.js +42 -0
  368. package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
  369. package/dist/internal/planning/fleet-docking.d.ts +10 -0
  370. package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
  371. package/dist/internal/planning/fleet-docking.js +85 -0
  372. package/dist/internal/planning/fleet-docking.js.map +1 -0
  373. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  374. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  375. package/dist/internal/planning/fleet-respawn.js +165 -0
  376. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  377. package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
  378. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
  379. package/dist/internal/planning/fleet-ship-assembly.js +137 -0
  380. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
  381. package/dist/internal/planning/governance-fees.d.ts +64 -0
  382. package/dist/internal/planning/governance-fees.d.ts.map +1 -0
  383. package/dist/internal/planning/governance-fees.js +239 -0
  384. package/dist/internal/planning/governance-fees.js.map +1 -0
  385. package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
  386. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
  387. package/dist/internal/planning/local-market-order-funding.js +126 -0
  388. package/dist/internal/planning/local-market-order-funding.js.map +1 -0
  389. package/dist/internal/planning/local-market-order.d.ts +40 -0
  390. package/dist/internal/planning/local-market-order.d.ts.map +1 -0
  391. package/dist/internal/planning/local-market-order.js +166 -0
  392. package/dist/internal/planning/local-market-order.js.map +1 -0
  393. package/dist/internal/planning/mining-stop.d.ts +14 -0
  394. package/dist/internal/planning/mining-stop.d.ts.map +1 -0
  395. package/dist/internal/planning/mining-stop.js +41 -0
  396. package/dist/internal/planning/mining-stop.js.map +1 -0
  397. package/dist/internal/planning/movement-character.d.ts +7 -0
  398. package/dist/internal/planning/movement-character.d.ts.map +1 -0
  399. package/dist/internal/planning/movement-character.js +41 -0
  400. package/dist/internal/planning/movement-character.js.map +1 -0
  401. package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
  402. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
  403. package/dist/internal/planning/movement-xp-guard.js +103 -0
  404. package/dist/internal/planning/movement-xp-guard.js.map +1 -0
  405. package/dist/internal/planning/open-signal-guard.d.ts +3 -0
  406. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
  407. package/dist/internal/planning/open-signal-guard.js +31 -0
  408. package/dist/internal/planning/open-signal-guard.js.map +1 -0
  409. package/dist/internal/planning/open-signal.d.ts +31 -0
  410. package/dist/internal/planning/open-signal.d.ts.map +1 -0
  411. package/dist/internal/planning/open-signal.js +85 -0
  412. package/dist/internal/planning/open-signal.js.map +1 -0
  413. package/dist/internal/planning/rent.d.ts +19 -0
  414. package/dist/internal/planning/rent.d.ts.map +1 -0
  415. package/dist/internal/planning/rent.js +35 -0
  416. package/dist/internal/planning/rent.js.map +1 -0
  417. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  418. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  419. package/dist/internal/planning/respawn-guards.js +41 -0
  420. package/dist/internal/planning/respawn-guards.js.map +1 -0
  421. package/dist/internal/planning/runtime-guards.d.ts +43 -0
  422. package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
  423. package/dist/internal/planning/runtime-guards.js +636 -0
  424. package/dist/internal/planning/runtime-guards.js.map +1 -0
  425. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  426. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  427. package/dist/internal/planning/scan-completion-guard.js +94 -0
  428. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  429. package/dist/internal/planning/scan-completion.d.ts +20 -0
  430. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  431. package/dist/internal/planning/scan-completion.js +196 -0
  432. package/dist/internal/planning/scan-completion.js.map +1 -0
  433. package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
  434. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
  435. package/dist/internal/planning/scan-detect-guard.js +77 -0
  436. package/dist/internal/planning/scan-detect-guard.js.map +1 -0
  437. package/dist/internal/planning/scan-detect.d.ts +24 -0
  438. package/dist/internal/planning/scan-detect.d.ts.map +1 -0
  439. package/dist/internal/planning/scan-detect.js +244 -0
  440. package/dist/internal/planning/scan-detect.js.map +1 -0
  441. package/dist/internal/planning/scan-input.d.ts +9 -0
  442. package/dist/internal/planning/scan-input.d.ts.map +1 -0
  443. package/dist/internal/planning/scan-input.js +58 -0
  444. package/dist/internal/planning/scan-input.js.map +1 -0
  445. package/dist/internal/planning/ship-import-funding.d.ts +22 -0
  446. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
  447. package/dist/internal/planning/ship-import-funding.js +52 -0
  448. package/dist/internal/planning/ship-import-funding.js.map +1 -0
  449. package/dist/internal/planning/ship-token.d.ts +0 -1
  450. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  451. package/dist/internal/planning/ship-token.js +2 -5
  452. package/dist/internal/planning/ship-token.js.map +1 -1
  453. package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
  454. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
  455. package/dist/internal/planning/starbase-system-guard.js +93 -0
  456. package/dist/internal/planning/starbase-system-guard.js.map +1 -0
  457. package/dist/internal/planning/starbase-system.d.ts +12 -0
  458. package/dist/internal/planning/starbase-system.d.ts.map +1 -0
  459. package/dist/internal/planning/starbase-system.js +22 -0
  460. package/dist/internal/planning/starbase-system.js.map +1 -0
  461. package/dist/internal/planning/token-mint.d.ts +4 -0
  462. package/dist/internal/planning/token-mint.d.ts.map +1 -0
  463. package/dist/internal/planning/token-mint.js +15 -0
  464. package/dist/internal/planning/token-mint.js.map +1 -0
  465. package/dist/internal/planning/trade-faction-market.d.ts +20 -0
  466. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
  467. package/dist/internal/planning/trade-faction-market.js +56 -0
  468. package/dist/internal/planning/trade-faction-market.js.map +1 -0
  469. package/dist/internal/planning/xp-runtime.d.ts +36 -0
  470. package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
  471. package/dist/internal/planning/xp-runtime.js +126 -0
  472. package/dist/internal/planning/xp-runtime.js.map +1 -0
  473. package/dist/internal/system-program.d.ts +4 -0
  474. package/dist/internal/system-program.d.ts.map +1 -0
  475. package/dist/internal/system-program.js +3 -0
  476. package/dist/internal/system-program.js.map +1 -0
  477. package/dist/loyalty/actions/index.d.ts.map +1 -1
  478. package/dist/loyalty/actions/index.js +4 -3
  479. package/dist/loyalty/actions/index.js.map +1 -1
  480. package/dist/loyalty/index.d.ts.map +1 -1
  481. package/dist/loyalty/index.js +2 -6
  482. package/dist/loyalty/index.js.map +1 -1
  483. package/dist/markets/actions/index.d.ts +61 -3
  484. package/dist/markets/actions/index.d.ts.map +1 -1
  485. package/dist/markets/actions/index.js +137 -25
  486. package/dist/markets/actions/index.js.map +1 -1
  487. package/dist/markets/actions/trade-faction-market.d.ts +43 -0
  488. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
  489. package/dist/markets/actions/trade-faction-market.js +291 -0
  490. package/dist/markets/actions/trade-faction-market.js.map +1 -0
  491. package/dist/markets/index.d.ts +38 -7
  492. package/dist/markets/index.d.ts.map +1 -1
  493. package/dist/markets/index.js +57 -10
  494. package/dist/markets/index.js.map +1 -1
  495. package/dist/mining/actions/index.d.ts +84 -0
  496. package/dist/mining/actions/index.d.ts.map +1 -0
  497. package/dist/mining/actions/index.js +328 -0
  498. package/dist/mining/actions/index.js.map +1 -0
  499. package/dist/mining/estimate.d.ts +114 -0
  500. package/dist/mining/estimate.d.ts.map +1 -0
  501. package/dist/mining/estimate.js +127 -0
  502. package/dist/mining/estimate.js.map +1 -0
  503. package/dist/mining/index.d.ts +8 -2
  504. package/dist/mining/index.d.ts.map +1 -1
  505. package/dist/mining/index.js +6 -2
  506. package/dist/mining/index.js.map +1 -1
  507. package/dist/planning/assembly.d.ts.map +1 -1
  508. package/dist/planning/assembly.js +24 -0
  509. package/dist/planning/assembly.js.map +1 -1
  510. package/dist/planning/execution.d.ts.map +1 -1
  511. package/dist/planning/execution.js +460 -17
  512. package/dist/planning/execution.js.map +1 -1
  513. package/dist/planning/index.d.ts +181 -149
  514. package/dist/planning/index.d.ts.map +1 -1
  515. package/dist/planning/index.js +869 -121
  516. package/dist/planning/index.js.map +1 -1
  517. package/dist/planning/plan-sequence.d.ts.map +1 -1
  518. package/dist/planning/plan-sequence.js +8 -1
  519. package/dist/planning/plan-sequence.js.map +1 -1
  520. package/dist/planning/simulation.d.ts +25 -1
  521. package/dist/planning/simulation.d.ts.map +1 -1
  522. package/dist/planning/simulation.js +111 -11
  523. package/dist/planning/simulation.js.map +1 -1
  524. package/dist/registry/cargo.d.ts +7 -12
  525. package/dist/registry/cargo.d.ts.map +1 -1
  526. package/dist/registry/cargo.js +19 -19
  527. package/dist/registry/cargo.js.map +1 -1
  528. package/dist/registry/docking.d.ts +10 -0
  529. package/dist/registry/docking.d.ts.map +1 -0
  530. package/dist/registry/docking.js +12 -0
  531. package/dist/registry/docking.js.map +1 -0
  532. package/dist/registry/index.d.ts +4 -0
  533. package/dist/registry/index.d.ts.map +1 -1
  534. package/dist/registry/index.js.map +1 -1
  535. package/dist/registry/onboarding.d.ts +10 -2
  536. package/dist/registry/onboarding.d.ts.map +1 -1
  537. package/dist/registry/onboarding.js +20 -7
  538. package/dist/registry/onboarding.js.map +1 -1
  539. package/dist/registry/scanning.d.ts +7 -0
  540. package/dist/registry/scanning.d.ts.map +1 -0
  541. package/dist/registry/scanning.js +13 -0
  542. package/dist/registry/scanning.js.map +1 -0
  543. package/dist/registry/ship-stats-snapshot.js +19 -19
  544. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  545. package/dist/registry/ships.d.ts +22 -2
  546. package/dist/registry/ships.d.ts.map +1 -1
  547. package/dist/registry/ships.js +31 -4
  548. package/dist/registry/ships.js.map +1 -1
  549. package/dist/registry/xp-runtime.d.ts +4 -0
  550. package/dist/registry/xp-runtime.d.ts.map +1 -0
  551. package/dist/registry/xp-runtime.js +14 -0
  552. package/dist/registry/xp-runtime.js.map +1 -0
  553. package/dist/scanning/actions/index.d.ts +116 -0
  554. package/dist/scanning/actions/index.d.ts.map +1 -0
  555. package/dist/scanning/actions/index.js +185 -0
  556. package/dist/scanning/actions/index.js.map +1 -0
  557. package/dist/scanning/index.d.ts +4 -1
  558. package/dist/scanning/index.d.ts.map +1 -1
  559. package/dist/scanning/index.js +12 -8
  560. package/dist/scanning/index.js.map +1 -1
  561. package/dist/scanning/lifecycle.d.ts +77 -0
  562. package/dist/scanning/lifecycle.d.ts.map +1 -0
  563. package/dist/scanning/lifecycle.js +93 -0
  564. package/dist/scanning/lifecycle.js.map +1 -0
  565. package/dist/scanning/odds.d.ts +111 -0
  566. package/dist/scanning/odds.d.ts.map +1 -0
  567. package/dist/scanning/odds.js +294 -0
  568. package/dist/scanning/odds.js.map +1 -0
  569. package/dist/scanning/signals.d.ts +121 -0
  570. package/dist/scanning/signals.d.ts.map +1 -0
  571. package/dist/scanning/signals.js +171 -0
  572. package/dist/scanning/signals.js.map +1 -0
  573. package/dist/world/index.d.ts +110 -5
  574. package/dist/world/index.d.ts.map +1 -1
  575. package/dist/world/index.js +109 -4
  576. package/dist/world/index.js.map +1 -1
  577. package/dist/world/planet-claim-stake-plots.d.ts +130 -0
  578. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
  579. package/dist/world/planet-claim-stake-plots.js +110 -0
  580. package/dist/world/planet-claim-stake-plots.js.map +1 -0
  581. package/dist/world/starbase-status.d.ts +176 -0
  582. package/dist/world/starbase-status.d.ts.map +1 -0
  583. package/dist/world/starbase-status.js +153 -0
  584. package/dist/world/starbase-status.js.map +1 -0
  585. package/package.json +10 -2
@@ -0,0 +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"}
@@ -0,0 +1,70 @@
1
+ /** Exact inputs for an Idle Fleet's coordinate warp, not lane travel.
2
+ * Coordinates are I8F56, speed U16F16, Fuel rate U26F6, Character warp-speed
3
+ * modifier I32F32, range U8F8 and spool time integer seconds.
4
+ * @example
5
+ * ```ts
6
+ * const input: FleetCoordinateWarpEstimateInput = {
7
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
8
+ * speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,
9
+ * spoolSeconds: 3, maxWarpDistanceRaw: 256n,
10
+ * };
11
+ * ```
12
+ */
13
+ export interface FleetCoordinateWarpEstimateInput {
14
+ readonly fromRaw: {
15
+ readonly x: bigint;
16
+ readonly y: bigint;
17
+ };
18
+ readonly toRaw: {
19
+ readonly x: bigint;
20
+ readonly y: bigint;
21
+ };
22
+ readonly speedRaw: bigint;
23
+ readonly fuelRateRaw: bigint;
24
+ readonly speedModifierRaw: bigint;
25
+ readonly spoolSeconds: number;
26
+ readonly maxWarpDistanceRaw: bigint;
27
+ }
28
+ /** Whole-second duration including spool and whole-unit Fuel debit estimate.
29
+ * withinRange compares only computed distance with the stored maximum; it is
30
+ * not permission to travel. Raw distance has 56 fractional bits; AU is approximate.
31
+ * @example
32
+ * ```ts
33
+ * declare const estimate: FleetCoordinateWarpEstimate;
34
+ * console.log(estimate.durationSeconds, estimate.fuelDebit, estimate.withinRange);
35
+ * ```
36
+ */
37
+ export interface FleetCoordinateWarpEstimate {
38
+ readonly distanceAu: number;
39
+ readonly distanceRaw: bigint;
40
+ readonly durationSeconds: bigint;
41
+ readonly fuelDebit: bigint;
42
+ readonly withinRange: boolean;
43
+ toJSON(): unknown;
44
+ }
45
+ /** Estimates a coordinate warp from Idle using deployment-54356023 arithmetic.
46
+ * Truncates each squared axis before distance calculation, divides duration by
47
+ * base speed and then modifier, rounds travel and Fuel upward, and adds spool.
48
+ * Zero speed modifier means neutral. Exact computed maximum range is inclusive.
49
+ *
50
+ * Coordinates, axis differences and distance must fit signed I8F56, with
51
+ * distinct endpoints. Speed is positive u32 raw, Fuel rate u32 raw, modifier
52
+ * nonnegative i64 raw, spool an integer 0..65535 and range u16 raw. Unsupported
53
+ * inputs are rejected. Tiny distinct points can produce only spool time and
54
+ * zero Fuel. Out-of-range trips still return estimates with withinRange=false.
55
+ *
56
+ * No planet-exit surcharge, XP, cooldown, route policy, Fleet state, crew,
57
+ * permissions or available Fuel are checked. Use the exact encoded destination
58
+ * and Fleet.locationRaw; simulate the actual Plan before signing. Requalify
59
+ * after relevant program changes. Use deriveFleetMovementCooldown separately.
60
+ * @example
61
+ * ```ts
62
+ * const estimate = deriveFleetCoordinateWarpEstimate({
63
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
64
+ * speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,
65
+ * spoolSeconds: 3, maxWarpDistanceRaw: 256n,
66
+ * }); // 4 seconds including spool, 1 Fuel, within range
67
+ * ```
68
+ */
69
+ export declare function deriveFleetCoordinateWarpEstimate(input: FleetCoordinateWarpEstimateInput): FleetCoordinateWarpEstimate;
70
+ //# sourceMappingURL=coordinate-warp-estimate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinate-warp-estimate.d.ts","sourceRoot":"","sources":["../../src/fleets/coordinate-warp-estimate.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;CACrC;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC;IAC9B,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,iCAAiC,CAC/C,KAAK,EAAE,gCAAgC,GACtC,2BAA2B,CAgC7B"}
@@ -0,0 +1,46 @@
1
+ import { InvalidDerivationInputError } from '../client/index.js';
2
+ import { attachJsonSerialization } from '../internal/json.js';
3
+ import { calculateMovement, movementScale } from './movement-arithmetic.js';
4
+ /** Estimates a coordinate warp from Idle using deployment-54356023 arithmetic.
5
+ * Truncates each squared axis before distance calculation, divides duration by
6
+ * base speed and then modifier, rounds travel and Fuel upward, and adds spool.
7
+ * Zero speed modifier means neutral. Exact computed maximum range is inclusive.
8
+ *
9
+ * Coordinates, axis differences and distance must fit signed I8F56, with
10
+ * distinct endpoints. Speed is positive u32 raw, Fuel rate u32 raw, modifier
11
+ * nonnegative i64 raw, spool an integer 0..65535 and range u16 raw. Unsupported
12
+ * inputs are rejected. Tiny distinct points can produce only spool time and
13
+ * zero Fuel. Out-of-range trips still return estimates with withinRange=false.
14
+ *
15
+ * No planet-exit surcharge, XP, cooldown, route policy, Fleet state, crew,
16
+ * permissions or available Fuel are checked. Use the exact encoded destination
17
+ * and Fleet.locationRaw; simulate the actual Plan before signing. Requalify
18
+ * after relevant program changes. Use deriveFleetMovementCooldown separately.
19
+ * @example
20
+ * ```ts
21
+ * const estimate = deriveFleetCoordinateWarpEstimate({
22
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
23
+ * speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,
24
+ * spoolSeconds: 3, maxWarpDistanceRaw: 256n,
25
+ * }); // 4 seconds including spool, 1 Fuel, within range
26
+ * ```
27
+ */
28
+ export function deriveFleetCoordinateWarpEstimate(input) {
29
+ const remedy = 'Use current Fleet warp spool seconds and raw U8F8 maximum range within their u16 bounds; simulate the intended coordinate warp before signing.';
30
+ if (!Number.isInteger(input.spoolSeconds) ||
31
+ input.spoolSeconds < 0 ||
32
+ input.spoolSeconds > 65535)
33
+ throw new InvalidDerivationInputError('Warp spool seconds', input.spoolSeconds, remedy);
34
+ if (input.maxWarpDistanceRaw < 0n || input.maxWarpDistanceRaw > 65535n)
35
+ throw new InvalidDerivationInputError('Maximum warp distance raw', input.maxWarpDistanceRaw, remedy);
36
+ const { distanceRaw, durationSecondsRaw, fuelExpenditureRaw } = calculateMovement(input, 'Coordinate warp');
37
+ return Object.freeze(attachJsonSerialization({
38
+ distanceAu: Number(distanceRaw) / Number(movementScale),
39
+ distanceRaw,
40
+ durationSeconds: BigInt(input.spoolSeconds) +
41
+ (durationSecondsRaw + movementScale - 1n) / movementScale,
42
+ fuelDebit: (fuelExpenditureRaw + movementScale - 1n) / movementScale,
43
+ withinRange: distanceRaw <= input.maxWarpDistanceRaw << 48n,
44
+ }));
45
+ }
46
+ //# sourceMappingURL=coordinate-warp-estimate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"coordinate-warp-estimate.js","sourceRoot":"","sources":["../../src/fleets/coordinate-warp-estimate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AA0C5E;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,UAAU,iCAAiC,CAC/C,KAAuC;IAEvC,MAAM,MAAM,GACV,gJAAgJ,CAAC;IACnJ,IACE,CAAC,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,YAAY,CAAC;QACrC,KAAK,CAAC,YAAY,GAAG,CAAC;QACtB,KAAK,CAAC,YAAY,GAAG,KAAK;QAE1B,MAAM,IAAI,2BAA2B,CACnC,oBAAoB,EACpB,KAAK,CAAC,YAAY,EAClB,MAAM,CACP,CAAC;IACJ,IAAI,KAAK,CAAC,kBAAkB,GAAG,EAAE,IAAI,KAAK,CAAC,kBAAkB,GAAG,MAAM;QACpE,MAAM,IAAI,2BAA2B,CACnC,2BAA2B,EAC3B,KAAK,CAAC,kBAAkB,EACxB,MAAM,CACP,CAAC;IACJ,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAC3D,iBAAiB,CAAC,KAAK,EAAE,iBAAiB,CAAC,CAAC;IAC9C,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;QACvD,WAAW;QACX,eAAe,EACb,MAAM,CAAC,KAAK,CAAC,YAAY,CAAC;YAC1B,CAAC,kBAAkB,GAAG,aAAa,GAAG,EAAE,CAAC,GAAG,aAAa;QAC3D,SAAS,EAAE,CAAC,kBAAkB,GAAG,aAAa,GAAG,EAAE,CAAC,GAAG,aAAa;QACpE,WAAW,EAAE,WAAW,IAAI,KAAK,CAAC,kBAAkB,IAAI,GAAG;KAC5D,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -1,3 +1,9 @@
1
+ export { deriveFleetWarpLanePolicy, type FleetWarpLanePolicy, type FleetWarpLanePolicyInput, type FleetWarpLanePolicyFailure, } from './warp-lane-policy.js';
2
+ export { deriveFleetWarpLaneToll, type FleetWarpLaneToll, type FleetWarpLaneTollInput, } from './warp-lane-toll.js';
3
+ export { deriveFleetWarpLaneEstimate, type FleetWarpLaneEstimate, type FleetWarpLaneEstimateInput, } from './warp-lane-estimate.js';
4
+ export { deriveFleetCoordinateWarpEstimate, type FleetCoordinateWarpEstimate, type FleetCoordinateWarpEstimateInput, } from './coordinate-warp-estimate.js';
5
+ export { deriveFleetSubwarpEstimate, type FleetSubwarpEstimate, type FleetSubwarpEstimateInput, } from './subwarp-estimate.js';
6
+ export { deriveFleetMovementCooldown, type FleetMovementCooldownInput, } from './cooldown.js';
1
7
  import { SageSdkError, type Address, type DiscoveryRequest, type EntityRef, type ReadOptions, type SageContext, type SageSubscription, type SubscriptionDiagnosticEvent, type SubscriptionOptions } from '../client/index.js';
2
8
  import { deriveFleetTimers, interpolateSubwarpPosition, type ResolvedFleetAccountData } from '../internal/fleet.js';
3
9
  export type { CapacitySummary, FleetTimers, ResolvedFleetAccountData, SubwarpPosition, } from '../internal/fleet.js';
@@ -60,6 +66,20 @@ export interface FleetSubscriptionObserver {
60
66
  * ```
61
67
  */
62
68
  export declare function getFleet(ctx: SageContext, address: Address, options?: ReadOptions): Promise<FleetSnapshot>;
69
+ /** Reads required Fleets by account address in one batched data-plane request.
70
+ *
71
+ * The frozen result preserves input order and duplicate positions. Every
72
+ * requested address must exist; use separate optional reads when absence is an
73
+ * expected outcome.
74
+ *
75
+ * @example
76
+ * ```ts
77
+ * declare const ctx: SageContext;
78
+ * declare const fleetAddresses: readonly Address[];
79
+ * const fleets = await getFleets(ctx, fleetAddresses);
80
+ * ```
81
+ */
82
+ export declare function getFleets(ctx: SageContext, addresses: readonly Address[], options?: ReadOptions): Promise<readonly FleetSnapshot[]>;
63
83
  /** Reads an optional Fleet by account address.
64
84
  *
65
85
  * @example
@@ -97,5 +117,19 @@ export declare function watchFleet(ctx: SageContext, address: Address, observer:
97
117
  * ```
98
118
  */
99
119
  export declare function getFleetsByOwner(ctx: SageContext, profileAddress: Address, options?: FleetDiscoveryOptions): Promise<readonly FleetSnapshot[]>;
120
+ /** Discovers every Fleet address for the configured Game.
121
+ *
122
+ * The existing discovery data plane downloads and validates complete Fleet
123
+ * account bytes before exposing an address. It does not hydrate Fleet
124
+ * snapshots or load ship, cargo, or Game registry definitions.
125
+ *
126
+ * @example
127
+ * ```ts
128
+ * declare const ctx: SageContext;
129
+ * const fleetAddresses = await discoverFleetAddresses(ctx);
130
+ * console.log(fleetAddresses, readMeta(fleetAddresses)?.strategy);
131
+ * ```
132
+ */
133
+ export declare function discoverFleetAddresses(ctx: SageContext, options?: FleetDiscoveryOptions): Promise<readonly Address[]>;
100
134
  export { listShipConfigurations, listShipConfigurationsByMint, } from '../registry/index.js';
101
135
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fleets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAGL,YAAY,EAEZ,KAAK,OAAO,EACZ,KAAK,gBAAgB,EACrB,KAAK,SAAS,EAEd,KAAK,WAAW,EAChB,KAAK,WAAW,EAChB,KAAK,gBAAgB,EAErB,KAAK,2BAA2B,EAChC,KAAK,mBAAmB,EACzB,MAAM,oBAAoB,CAAC;AAO5B,OAAO,EACL,iBAAiB,EACjB,0BAA0B,EAE1B,KAAK,wBAAwB,EAC9B,MAAM,sBAAsB,CAAC;AAM9B,YAAY,EACV,eAAe,EACf,WAAW,EACX,wBAAwB,EACxB,eAAe,GAChB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,CAAC;AACzD,YAAY,EACV,gBAAgB,EAChB,oBAAoB,EACpB,iBAAiB,EACjB,mBAAmB,EACnB,oBAAoB,EACpB,eAAe,EACf,kBAAkB,EAClB,sBAAsB,EACtB,mBAAmB,EACnB,mBAAmB,EACnB,cAAc,EACd,cAAc,GACf,MAAM,yBAAyB,CAAC;AAGjC,YAAY,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;;;;;;GAYG;AACH,MAAM,MAAM,qBAAqB,GAAG,IAAI,CACtC,gBAAgB,EAChB,SAAS,GAAG,UAAU,CACvB,CAAC;AAEF;;;;;;;;;GASG;AACH,MAAM,WAAW,aAAc,SAAQ,IAAI,CACzC,wBAAwB,EACxB,cAAc,CACf;IACC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC5C,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;;;;;;GAUG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,UAAU,EAAE,CAAC,KAAK,EAAE,aAAa,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,QAAQ,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE,QAAQ,CAAC,YAAY,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,KAAK,IAAI,CAAC;CACtE;AAsED;;;;;;;;GAQG;AACH,wBAAsB,QAAQ,CAC5B,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,aAAa,CAAC,CAQxB;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC,aAAa,GAAG,SAAS,CAAC,CAQpC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,UAAU,CAC9B,GAAG,EAAE,WAAW,EAChB,OAAO,EAAE,OAAO,EAChB,QAAQ,EAAE,yBAAyB,EACnC,OAAO,CAAC,EAAE,mBAAmB,GAC5B,OAAO,CAAC,gBAAgB,CAAC,CA0B3B;AAED;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CACpC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,OAAO,CAAC,EAAE,qBAAqB,GAC9B,OAAO,CAAC,SAAS,aAAa,EAAE,CAAC,CAOnC;AAED,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/fleets/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,11 @@
1
- import { AccountDecodeError, ProviderError, SageSdkError, entityRef, } from '../client/index.js';
2
- import { assertCanonicalFleetAddress, discoverFleetAccounts, fleetAccountDefinition, } from '../internal/c4/fleet.js';
1
+ export { deriveFleetWarpLanePolicy, } from './warp-lane-policy.js';
2
+ export { deriveFleetWarpLaneToll, } from './warp-lane-toll.js';
3
+ export { deriveFleetWarpLaneEstimate, } from './warp-lane-estimate.js';
4
+ export { deriveFleetCoordinateWarpEstimate, } from './coordinate-warp-estimate.js';
5
+ export { deriveFleetSubwarpEstimate, } from './subwarp-estimate.js';
6
+ export { deriveFleetMovementCooldown, } from './cooldown.js';
7
+ import { AccountDecodeError, AccountNotFoundError, ProviderError, SageSdkError, entityRef, } from '../client/index.js';
8
+ import { assertCanonicalFleetAddress, discoverFleetAccounts, discoverFleetAccountsForGame, fleetAccountDefinition, } from '../internal/c4/fleet.js';
3
9
  import { deriveFleetTimers, interpolateSubwarpPosition, resolveFleetAccount, } from '../internal/fleet.js';
4
10
  import { attachJsonSerialization } from '../internal/json.js';
5
11
  import { requireGameAddress } from '../internal/game-context.js';
@@ -55,6 +61,30 @@ export async function getFleet(ctx, address, options) {
55
61
  const envelope = await ctx.data.read(fleetAccountDefinition, address, options);
56
62
  return toFleetSnapshot(ctx, envelope);
57
63
  }
64
+ /** Reads required Fleets by account address in one batched data-plane request.
65
+ *
66
+ * The frozen result preserves input order and duplicate positions. Every
67
+ * requested address must exist; use separate optional reads when absence is an
68
+ * expected outcome.
69
+ *
70
+ * @example
71
+ * ```ts
72
+ * declare const ctx: SageContext;
73
+ * declare const fleetAddresses: readonly Address[];
74
+ * const fleets = await getFleets(ctx, fleetAddresses);
75
+ * ```
76
+ */
77
+ export async function getFleets(ctx, addresses, options) {
78
+ requireGameAddress(ctx);
79
+ const envelopes = await ctx.data.readMany(fleetAccountDefinition, addresses, options);
80
+ const requiredEnvelopes = envelopes.map((envelope, index) => {
81
+ if (envelope === undefined) {
82
+ throw new AccountNotFoundError('fleet', addresses[index]);
83
+ }
84
+ return envelope;
85
+ });
86
+ return Object.freeze(await Promise.all(requiredEnvelopes.map((envelope) => toFleetSnapshot(ctx, envelope))));
87
+ }
58
88
  /** Reads an optional Fleet by account address.
59
89
  *
60
90
  * @example
@@ -121,5 +151,24 @@ export async function getFleetsByOwner(ctx, profileAddress, options) {
121
151
  const fleets = await Promise.all(envelopes.map((envelope) => toFleetSnapshot(ctx, envelope)));
122
152
  return Object.freeze(attachReadMeta(fleets, metadata));
123
153
  }
154
+ /** Discovers every Fleet address for the configured Game.
155
+ *
156
+ * The existing discovery data plane downloads and validates complete Fleet
157
+ * account bytes before exposing an address. It does not hydrate Fleet
158
+ * snapshots or load ship, cargo, or Game registry definitions.
159
+ *
160
+ * @example
161
+ * ```ts
162
+ * declare const ctx: SageContext;
163
+ * const fleetAddresses = await discoverFleetAddresses(ctx);
164
+ * console.log(fleetAddresses, readMeta(fleetAddresses)?.strategy);
165
+ * ```
166
+ */
167
+ export async function discoverFleetAddresses(ctx, options) {
168
+ const envelopes = await discoverFleetAccountsForGame(ctx, options);
169
+ const metadata = readMeta(envelopes);
170
+ const addresses = envelopes.map(({ address }) => address);
171
+ return Object.freeze(attachReadMeta(addresses, metadata));
172
+ }
124
173
  export { listShipConfigurations, listShipConfigurationsByMint, } from '../registry/index.js';
125
174
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleets/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/fleets/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,yBAAyB,GAI1B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,uBAAuB,GAGxB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EACL,2BAA2B,GAG5B,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iCAAiC,GAGlC,MAAM,+BAA+B,CAAC;AACvC,OAAO,EACL,0BAA0B,GAG3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,2BAA2B,GAE5B,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,kBAAkB,EAClB,oBAAoB,EACpB,aAAa,EACb,YAAY,EACZ,SAAS,GAWV,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EACL,2BAA2B,EAC3B,qBAAqB,EACrB,4BAA4B,EAC5B,sBAAsB,GAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,iBAAiB,EACjB,0BAA0B,EAC1B,mBAAmB,GAEpB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,kBAAkB,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAQ1E,OAAO,EAAE,iBAAiB,EAAE,0BAA0B,EAAE,CAAC;AA4EzD,MAAM,eAAe,GAAG,IAAI,OAAO,EAGhC,CAAC;AAEJ,SAAS,cAAc,CACrB,QAA4C;IAE5C,OAAO;QACL,UAAU,EAAE,QAAQ,CAAC,UAAU;QAC/B,IAAI,EAAE,QAAQ,CAAC,IAAI;QACnB,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,QAAQ,EAAE,QAAQ;KACnB,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,mBAAmB,CAChC,OAAoB,EACpB,QAA4C;IAE5C,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;QAChC,MAAM,IAAI,kBAAkB,CAC1B,OAAO,EACP,QAAQ,CAAC,OAAO,EAChB,IAAI,UAAU,CACZ,qCAAqC,QAAQ,CAAC,IAAI,CAAC,IAAI,gCAAgC,IAAI,GAAG,CAC/F,EACD,gBAAgB,QAAQ,CAAC,OAAO,oBAAoB,QAAQ,CAAC,IAAI,CAAC,IAAI,6BAA6B,IAAI,8GAA8G,CACtN,CAAC;IACJ,CAAC;IACD,MAAM,2BAA2B,CAAC,QAAQ,CAAC,CAAC;IAC5C,MAAM,EAAE,YAAY,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,mBAAmB,CAC7D,OAAO,EACP,QAAQ,CAAC,IAAI,CACd,CAAC;IACF,OAAO,sBAAsB,CAC3B,cAAc,CACZ,uBAAuB,CAAC;QACtB,GAAG,QAAQ;QACX,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,IAAI,EAAE,OAAgB;QACtB,YAAY,EAAE,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC;KACjD,CAAC,EACF,cAAc,CAAC,QAAQ,CAAC,CACzB,CACF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CACtB,OAAoB,EACpB,QAA4C;IAE5C,MAAM,QAAQ,GAAG,eAAe,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC/C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;QAC3B,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACvD,eAAe,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IACvC,KAAK,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE;QACtB,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC,CAAC;IACH,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,QAAQ,CAC5B,GAAgB,EAChB,OAAgB,EAChB,OAAqB;IAErB,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAClC,sBAAsB,EACtB,OAAO,EACP,OAAO,CACR,CAAC;IACF,OAAO,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,SAAS,CAC7B,GAAgB,EAChB,SAA6B,EAC7B,OAAqB;IAErB,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,SAAS,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CACvC,sBAAsB,EACtB,SAAS,EACT,OAAO,CACR,CAAC;IACF,MAAM,iBAAiB,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,KAAK,EAAE,EAAE;QAC1D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,MAAM,IAAI,oBAAoB,CAAC,OAAO,EAAE,SAAS,CAAC,KAAK,CAAE,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,QAAQ,CAAC;IAClB,CAAC,CAAC,CAAC;IACH,OAAO,MAAM,CAAC,MAAM,CAClB,MAAM,OAAO,CAAC,GAAG,CACf,iBAAiB,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CACpE,CACF,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,GAAgB,EAChB,OAAgB,EAChB,OAAqB;IAErB,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,MAAM,CAAC,QAAQ,CAAC,GAAG,MAAM,GAAG,CAAC,IAAI,CAAC,QAAQ,CACxC,sBAAsB,EACtB,CAAC,OAAO,CAAC,EACT,OAAO,CACR,CAAC;IACF,OAAO,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,GAAgB,EAChB,OAAgB,EAChB,QAAmC,EACnC,OAA6B;IAE7B,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxB,OAAO,GAAG,CAAC,IAAI,CAAC,SAAS,CACvB,sBAAsB,EACtB,OAAO,EACP;QACE,GAAG,CAAC,QAAQ,CAAC,YAAY,KAAK,SAAS;YACrC,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,YAAY,EAAE,QAAQ,CAAC,YAAY,EAAE,CAAC;QAC5C,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,KAAK,CAAC,UAAU,CAAC,QAAQ;YACvB,IAAI,KAAoB,CAAC;YACzB,IAAI,CAAC;gBACH,KAAK,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAC/C,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,YAAY;oBAAE,MAAM,KAAK,CAAC;gBAC/C,MAAM,IAAI,aAAa,CACrB,2IAA2I,EAC3I,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CACzC,CAAC;YACJ,CAAC;YACD,MAAM,QAAQ,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,CAAC;KACF,EACD,OAAO,CACR,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,GAAgB,EAChB,cAAuB,EACvB,OAA+B;IAE/B,MAAM,SAAS,GAAG,MAAM,qBAAqB,CAAC,GAAG,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;IAC5E,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAE,CAAC;IACtC,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,GAAG,CAC9B,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC,CAC5D,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;AACzD,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,GAAgB,EAChB,OAA+B;IAE/B,MAAM,SAAS,GAAG,MAAM,4BAA4B,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IACnE,MAAM,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAE,CAAC;IACtC,MAAM,SAAS,GAAG,SAAS,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC;AAC5D,CAAC;AAED,OAAO,EACL,sBAAsB,EACtB,4BAA4B,GAC7B,MAAM,sBAAsB,CAAC"}
@@ -0,0 +1,21 @@
1
+ interface MovementInput {
2
+ readonly fromRaw: {
3
+ readonly x: bigint;
4
+ readonly y: bigint;
5
+ };
6
+ readonly toRaw: {
7
+ readonly x: bigint;
8
+ readonly y: bigint;
9
+ };
10
+ readonly speedRaw: bigint;
11
+ readonly fuelRateRaw: bigint;
12
+ readonly speedModifierRaw: bigint;
13
+ }
14
+ export declare const movementScale: bigint;
15
+ export declare function calculateMovement(input: MovementInput, kind: 'Subwarp' | 'Coordinate warp' | 'Warp lane'): {
16
+ distanceRaw: bigint;
17
+ durationSecondsRaw: bigint;
18
+ fuelExpenditureRaw: bigint;
19
+ };
20
+ export {};
21
+ //# sourceMappingURL=movement-arithmetic.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"movement-arithmetic.d.ts","sourceRoot":"","sources":["../../src/fleets/movement-arithmetic.ts"],"names":[],"mappings":"AAEA,UAAU,aAAa;IACrB,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED,eAAO,MAAM,aAAa,QAAY,CAAC;AA2BvC,wBAAgB,iBAAiB,CAC/B,KAAK,EAAE,aAAa,EACpB,IAAI,EAAE,SAAS,GAAG,iBAAiB,GAAG,WAAW;;;;EAmDlD"}
@@ -0,0 +1,41 @@
1
+ import { InvalidDerivationInputError } from '../client/index.js';
2
+ export const movementScale = 1n << 56n;
3
+ const signedMax = (1n << 63n) - 1n;
4
+ const unsignedMax = (1n << 32n) - 1n;
5
+ const remedy = 'Use exact current coordinates and a positive movement speed within the documented bounds. Direct movement also requires a nonnegative Fuel rate and Character modifier; simulate the intended action before signing.';
6
+ function bounded(field, value, min, max) {
7
+ if (value < min || value > max)
8
+ throw new InvalidDerivationInputError(field, value, remedy);
9
+ return value;
10
+ }
11
+ function squareRoot(value) {
12
+ if (value === 0n)
13
+ return 0n;
14
+ let root = value;
15
+ let next = (root + 1n) / 2n;
16
+ while (next < root) {
17
+ root = next;
18
+ next = (root + value / root) / 2n;
19
+ }
20
+ return root;
21
+ }
22
+ export function calculateMovement(input, kind) {
23
+ const min = -(1n << 63n);
24
+ for (const point of [input.fromRaw, input.toRaw]) {
25
+ bounded('Coordinate x raw', point.x, min, signedMax);
26
+ bounded('Coordinate y raw', point.y, min, signedMax);
27
+ }
28
+ const dx = bounded('Coordinate x difference raw', input.toRaw.x - input.fromRaw.x, -signedMax, signedMax);
29
+ const dy = bounded('Coordinate y difference raw', input.toRaw.y - input.fromRaw.y, -signedMax, signedMax);
30
+ if (dx === 0n && dy === 0n)
31
+ throw new InvalidDerivationInputError(`${kind} destination displacement`, 0n, remedy);
32
+ const speed = bounded(`${kind} speed raw`, input.speedRaw, 1n, unsignedMax);
33
+ const rate = bounded(`${kind} Fuel rate raw`, input.fuelRateRaw, 0n, unsignedMax);
34
+ const modifier = bounded(`Character ${kind} speed modifier raw`, input.speedModifierRaw, 0n, signedMax);
35
+ const distanceRaw = bounded(`${kind} distance raw`, squareRoot(((dx * dx) / movementScale + (dy * dy) / movementScale) * movementScale), 0n, signedMax);
36
+ const baseDuration = (distanceRaw * (1n << 16n)) / speed;
37
+ const durationSecondsRaw = (baseDuration * (1n << 32n)) / (modifier === 0n ? 1n << 32n : modifier);
38
+ const fuelExpenditureRaw = (distanceRaw * rate) / 64n;
39
+ return { distanceRaw, durationSecondsRaw, fuelExpenditureRaw };
40
+ }
41
+ //# sourceMappingURL=movement-arithmetic.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"movement-arithmetic.js","sourceRoot":"","sources":["../../src/fleets/movement-arithmetic.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ /** Raw inputs for an Idle Fleet's direct subwarp journey.
2
+ * Coordinates use signed I8F56, speed U16F16, Fuel rate U26F6 and the Character
3
+ * subwarp-speed modifier I32F32. Use the Fleet's exact stored locationRaw;
4
+ * reconstructing it from location display numbers loses precision.
5
+ * @example
6
+ * ```ts
7
+ * const input: FleetSubwarpEstimateInput = {
8
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
9
+ * speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,
10
+ * };
11
+ * ```
12
+ */
13
+ export interface FleetSubwarpEstimateInput {
14
+ readonly fromRaw: {
15
+ readonly x: bigint;
16
+ readonly y: bigint;
17
+ };
18
+ readonly toRaw: {
19
+ readonly x: bigint;
20
+ readonly y: bigint;
21
+ };
22
+ readonly speedRaw: bigint;
23
+ readonly fuelRateRaw: bigint;
24
+ readonly speedModifierRaw: bigint;
25
+ }
26
+ /** Prospective journey values; all three raw outputs have 56 fractional bits.
27
+ * Display numbers are approximate. fuelBudget rounds recorded expenditure up
28
+ * to whole Fuel units; it is not a measured settlement debit or travel approval.
29
+ * @example
30
+ * ```ts
31
+ * declare const estimate: FleetSubwarpEstimate;
32
+ * const budget: bigint = estimate.fuelBudget;
33
+ * console.log(estimate.durationSeconds, JSON.stringify(estimate));
34
+ * ```
35
+ */
36
+ export interface FleetSubwarpEstimate {
37
+ readonly distanceAu: number;
38
+ readonly distanceRaw: bigint;
39
+ readonly durationSeconds: number;
40
+ readonly durationSecondsRaw: bigint;
41
+ readonly fuelExpenditure: number;
42
+ readonly fuelExpenditureRaw: bigint;
43
+ readonly fuelBudget: bigint;
44
+ toJSON(): unknown;
45
+ }
46
+ /** Estimates direct subwarp duration and recorded fractional Fuel expenditure.
47
+ * Qualified against PTR deployment slot 54356023, with exact integer rounding
48
+ * within the supported model. Each squared axis truncates before the square
49
+ * root; base-speed division precedes modifier division. Modifier zero means 1.
50
+ *
51
+ * Coordinates, axis differences and distance must fit signed I8F56; endpoints
52
+ * must differ. Speed is positive u32 raw, Fuel rate u32 raw and modifier
53
+ * nonnegative i64 raw. These bounds keep intermediate arithmetic within i128.
54
+ * Distinct tiny endpoints may truncate to zero distance, as the program does.
55
+ *
56
+ * Applies to departure from Idle, not planet departure, warp or lane travel.
57
+ * Does not check Fleet state, crew, permissions, tank Fuel, readiness or region
58
+ * restrictions. Subwarp may start with insufficient Fuel; compare fuelBudget
59
+ * with the tank and simulate before signing. No planet-exit surcharge or XP is
60
+ * predicted. Requalify this model after relevant program changes.
61
+ * @example
62
+ * ```ts
63
+ * const journey = deriveFleetSubwarpEstimate({
64
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
65
+ * speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,
66
+ * }); // 1 second, budget 1 Fuel
67
+ * ```
68
+ */
69
+ export declare function deriveFleetSubwarpEstimate(input: FleetSubwarpEstimateInput): FleetSubwarpEstimate;
70
+ //# sourceMappingURL=subwarp-estimate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subwarp-estimate.d.ts","sourceRoot":"","sources":["../../src/fleets/subwarp-estimate.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;GAWG;AACH,MAAM,WAAW,yBAAyB;IACxC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC;AAED;;;;;;;;;GASG;AACH,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,kBAAkB,EAAE,MAAM,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,yBAAyB,GAC/B,oBAAoB,CActB"}
@@ -0,0 +1,38 @@
1
+ import { calculateMovement, movementScale as scale, } from './movement-arithmetic.js';
2
+ import { attachJsonSerialization } from '../internal/json.js';
3
+ /** Estimates direct subwarp duration and recorded fractional Fuel expenditure.
4
+ * Qualified against PTR deployment slot 54356023, with exact integer rounding
5
+ * within the supported model. Each squared axis truncates before the square
6
+ * root; base-speed division precedes modifier division. Modifier zero means 1.
7
+ *
8
+ * Coordinates, axis differences and distance must fit signed I8F56; endpoints
9
+ * must differ. Speed is positive u32 raw, Fuel rate u32 raw and modifier
10
+ * nonnegative i64 raw. These bounds keep intermediate arithmetic within i128.
11
+ * Distinct tiny endpoints may truncate to zero distance, as the program does.
12
+ *
13
+ * Applies to departure from Idle, not planet departure, warp or lane travel.
14
+ * Does not check Fleet state, crew, permissions, tank Fuel, readiness or region
15
+ * restrictions. Subwarp may start with insufficient Fuel; compare fuelBudget
16
+ * with the tank and simulate before signing. No planet-exit surcharge or XP is
17
+ * predicted. Requalify this model after relevant program changes.
18
+ * @example
19
+ * ```ts
20
+ * const journey = deriveFleetSubwarpEstimate({
21
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
22
+ * speedRaw: 65536n, fuelRateRaw: 64n, speedModifierRaw: 4294967296n,
23
+ * }); // 1 second, budget 1 Fuel
24
+ * ```
25
+ */
26
+ export function deriveFleetSubwarpEstimate(input) {
27
+ const { distanceRaw, durationSecondsRaw, fuelExpenditureRaw } = calculateMovement(input, 'Subwarp');
28
+ return Object.freeze(attachJsonSerialization({
29
+ distanceAu: Number(distanceRaw) / Number(scale),
30
+ distanceRaw,
31
+ durationSeconds: Number(durationSecondsRaw) / Number(scale),
32
+ durationSecondsRaw,
33
+ fuelExpenditure: Number(fuelExpenditureRaw) / Number(scale),
34
+ fuelExpenditureRaw,
35
+ fuelBudget: (fuelExpenditureRaw + scale - 1n) / scale,
36
+ }));
37
+ }
38
+ //# sourceMappingURL=subwarp-estimate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subwarp-estimate.js","sourceRoot":"","sources":["../../src/fleets/subwarp-estimate.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,iBAAiB,EACjB,aAAa,IAAI,KAAK,GACvB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AA2C9D;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,UAAU,0BAA0B,CACxC,KAAgC;IAEhC,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,GAC3D,iBAAiB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;IACtC,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QAC/C,WAAW;QACX,eAAe,EAAE,MAAM,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3D,kBAAkB;QAClB,eAAe,EAAE,MAAM,CAAC,kBAAkB,CAAC,GAAG,MAAM,CAAC,KAAK,CAAC;QAC3D,kBAAkB;QAClB,UAAU,EAAE,CAAC,kBAAkB,GAAG,KAAK,GAAG,EAAE,CAAC,GAAG,KAAK;KACtD,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,59 @@
1
+ /** Exact System coordinates (I8F56) and Fleet lane speed (U16F16).
2
+ * No Character warp-speed modifier or spool time applies to lane travel.
3
+ * @example
4
+ * ```ts
5
+ * const input: FleetWarpLaneEstimateInput = {
6
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
7
+ * speedRaw: 65536n,
8
+ * };
9
+ * ```
10
+ */
11
+ export interface FleetWarpLaneEstimateInput {
12
+ readonly fromRaw: {
13
+ readonly x: bigint;
14
+ readonly y: bigint;
15
+ };
16
+ readonly toRaw: {
17
+ readonly x: bigint;
18
+ readonly y: bigint;
19
+ };
20
+ readonly speedRaw: bigint;
21
+ }
22
+ /** Whole-second lane duration and zero Fuel debit on the qualified deployment.
23
+ * Raw distance has 56 fractional bits; AU is approximate.
24
+ * @example
25
+ * ```ts
26
+ * declare const estimate: FleetWarpLaneEstimate;
27
+ * console.log(estimate.durationSeconds, estimate.fuelDebit);
28
+ * ```
29
+ */
30
+ export interface FleetWarpLaneEstimate {
31
+ readonly distanceAu: number;
32
+ readonly distanceRaw: bigint;
33
+ readonly durationSeconds: bigint;
34
+ readonly fuelDebit: 0n;
35
+ toJSON(): unknown;
36
+ }
37
+ /** Estimates lane travel using empirically qualified deployment-54356023 arithmetic.
38
+ * Truncates each squared axis, computes distance, truncates fixed-point speed
39
+ * division and rounds duration upward to whole seconds. No Fuel is debited.
40
+ *
41
+ * Coordinates, axis differences and distance must fit signed I8F56. Speed is
42
+ * positive u32 raw. Identical and zero-quantized paths are rejected rather than
43
+ * predicting a successful zero-time lane. Unsupported overflow is rejected.
44
+ *
45
+ * Supply exact System coordinates and Fleet lane speed, not coordinate-warp
46
+ * stats. This checks no lane connection, policy, toll, affordability, cooldown,
47
+ * Fleet state, crew, XP or permissions. Use deriveFleetMovementCooldown for
48
+ * cooldown separately. Refresh and simulate the Plan before signing; requalify
49
+ * the arithmetic after relevant program changes.
50
+ * @example
51
+ * ```ts
52
+ * const estimate = deriveFleetWarpLaneEstimate({
53
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
54
+ * speedRaw: 65536n,
55
+ * }); // durationSeconds: 1n, fuelDebit: 0n
56
+ * ```
57
+ */
58
+ export declare function deriveFleetWarpLaneEstimate(input: FleetWarpLaneEstimateInput): FleetWarpLaneEstimate;
59
+ //# sourceMappingURL=warp-lane-estimate.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-estimate.d.ts","sourceRoot":"","sources":["../../src/fleets/warp-lane-estimate.ts"],"names":[],"mappings":"AAIA;;;;;;;;;GASG;AACH,MAAM,WAAW,0BAA0B;IACzC,QAAQ,CAAC,OAAO,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC7D,QAAQ,CAAC,KAAK,EAAE;QAAE,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3D,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC3B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,qBAAqB;IACpC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,SAAS,EAAE,EAAE,CAAC;IACvB,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE,0BAA0B,GAChC,qBAAqB,CAoBvB"}
@@ -0,0 +1,36 @@
1
+ import { InvalidDerivationInputError } from '../client/index.js';
2
+ import { attachJsonSerialization } from '../internal/json.js';
3
+ import { calculateMovement, movementScale } from './movement-arithmetic.js';
4
+ /** Estimates lane travel using empirically qualified deployment-54356023 arithmetic.
5
+ * Truncates each squared axis, computes distance, truncates fixed-point speed
6
+ * division and rounds duration upward to whole seconds. No Fuel is debited.
7
+ *
8
+ * Coordinates, axis differences and distance must fit signed I8F56. Speed is
9
+ * positive u32 raw. Identical and zero-quantized paths are rejected rather than
10
+ * predicting a successful zero-time lane. Unsupported overflow is rejected.
11
+ *
12
+ * Supply exact System coordinates and Fleet lane speed, not coordinate-warp
13
+ * stats. This checks no lane connection, policy, toll, affordability, cooldown,
14
+ * Fleet state, crew, XP or permissions. Use deriveFleetMovementCooldown for
15
+ * cooldown separately. Refresh and simulate the Plan before signing; requalify
16
+ * the arithmetic after relevant program changes.
17
+ * @example
18
+ * ```ts
19
+ * const estimate = deriveFleetWarpLaneEstimate({
20
+ * fromRaw: { x: 0n, y: 0n }, toRaw: { x: 1n << 56n, y: 0n },
21
+ * speedRaw: 65536n,
22
+ * }); // durationSeconds: 1n, fuelDebit: 0n
23
+ * ```
24
+ */
25
+ export function deriveFleetWarpLaneEstimate(input) {
26
+ const { distanceRaw, durationSecondsRaw } = calculateMovement({ ...input, fuelRateRaw: 0n, speedModifierRaw: 1n << 32n }, 'Warp lane');
27
+ if (durationSecondsRaw === 0n)
28
+ throw new InvalidDerivationInputError('Warp lane duration raw', durationSecondsRaw, 'Choose distinct connected Systems with a positive fixed-point travel duration; the program rejects a zero-time lane transition. Refresh the Systems and Fleet lane speed, then simulate before signing.');
29
+ return Object.freeze(attachJsonSerialization({
30
+ distanceAu: Number(distanceRaw) / Number(movementScale),
31
+ distanceRaw,
32
+ durationSeconds: (durationSecondsRaw + movementScale - 1n) / movementScale,
33
+ fuelDebit: 0n,
34
+ }));
35
+ }
36
+ //# sourceMappingURL=warp-lane-estimate.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-estimate.js","sourceRoot":"","sources":["../../src/fleets/warp-lane-estimate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAkC5E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAiC;IAEjC,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,iBAAiB,CAC3D,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,IAAI,GAAG,EAAE,EAC1D,WAAW,CACZ,CAAC;IACF,IAAI,kBAAkB,KAAK,EAAE;QAC3B,MAAM,IAAI,2BAA2B,CACnC,wBAAwB,EACxB,kBAAkB,EAClB,yMAAyM,CAC1M,CAAC;IACJ,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;QACvD,WAAW;QACX,eAAe,EACb,CAAC,kBAAkB,GAAG,aAAa,GAAG,EAAE,CAAC,GAAG,aAAa;QAC3D,SAAS,EAAE,EAAW;KACvB,CAAC,CACH,CAAC;AACJ,CAAC"}