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

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 (578) 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 +63 -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.d.ts +4 -27
  152. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  153. package/dist/internal/c4/claim-stake.js +25 -38
  154. package/dist/internal/c4/claim-stake.js.map +1 -1
  155. package/dist/internal/c4/combat.d.ts +0 -27
  156. package/dist/internal/c4/combat.d.ts.map +1 -1
  157. package/dist/internal/c4/combat.js +0 -33
  158. package/dist/internal/c4/combat.js.map +1 -1
  159. package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
  160. package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
  161. package/dist/internal/c4/crafting-process-codec.js +34 -0
  162. package/dist/internal/c4/crafting-process-codec.js.map +1 -0
  163. package/dist/internal/c4/crafting.d.ts +12 -32
  164. package/dist/internal/c4/crafting.d.ts.map +1 -1
  165. package/dist/internal/c4/crafting.js +31 -44
  166. package/dist/internal/c4/crafting.js.map +1 -1
  167. package/dist/internal/c4/docking-funding.d.ts +4 -0
  168. package/dist/internal/c4/docking-funding.d.ts.map +1 -0
  169. package/dist/internal/c4/docking-funding.js +11 -0
  170. package/dist/internal/c4/docking-funding.js.map +1 -0
  171. package/dist/internal/c4/faction-adapter.d.ts +12 -0
  172. package/dist/internal/c4/faction-adapter.d.ts.map +1 -0
  173. package/dist/internal/c4/faction-adapter.js +52 -0
  174. package/dist/internal/c4/faction-adapter.js.map +1 -0
  175. package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
  176. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
  177. package/dist/internal/c4/faction-epoch-meter.js +31 -0
  178. package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
  179. package/dist/internal/c4/faction-treasury.d.ts +23 -0
  180. package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
  181. package/dist/internal/c4/faction-treasury.js +48 -0
  182. package/dist/internal/c4/faction-treasury.js.map +1 -0
  183. package/dist/internal/c4/factions.d.ts +9 -57
  184. package/dist/internal/c4/factions.d.ts.map +1 -1
  185. package/dist/internal/c4/factions.js +21 -139
  186. package/dist/internal/c4/factions.js.map +1 -1
  187. package/dist/internal/c4/fleet-arrival.d.ts +28 -0
  188. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
  189. package/dist/internal/c4/fleet-arrival.js +42 -0
  190. package/dist/internal/c4/fleet-arrival.js.map +1 -0
  191. package/dist/internal/c4/fleet-creation.d.ts +7 -0
  192. package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
  193. package/dist/internal/c4/fleet-creation.js +180 -0
  194. package/dist/internal/c4/fleet-creation.js.map +1 -0
  195. package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
  196. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  197. package/dist/internal/c4/fleet-crew-binding.js +15 -0
  198. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  199. package/dist/internal/c4/fleet-respawn.d.ts +19 -0
  200. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  201. package/dist/internal/c4/fleet-respawn.js +91 -0
  202. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  203. package/dist/internal/c4/fleet-ship-assembly.d.ts +11 -0
  204. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
  205. package/dist/internal/c4/fleet-ship-assembly.js +44 -0
  206. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
  207. package/dist/internal/c4/fleet.d.ts +45 -19
  208. package/dist/internal/c4/fleet.d.ts.map +1 -1
  209. package/dist/internal/c4/fleet.js +26 -7
  210. package/dist/internal/c4/fleet.js.map +1 -1
  211. package/dist/internal/c4/game.d.ts +36 -9
  212. package/dist/internal/c4/game.d.ts.map +1 -1
  213. package/dist/internal/c4/game.js +147 -14
  214. package/dist/internal/c4/game.js.map +1 -1
  215. package/dist/internal/c4/identity.d.ts +4 -8
  216. package/dist/internal/c4/identity.d.ts.map +1 -1
  217. package/dist/internal/c4/identity.js +3 -24
  218. package/dist/internal/c4/identity.js.map +1 -1
  219. package/dist/internal/c4/local-market-order.d.ts +31 -0
  220. package/dist/internal/c4/local-market-order.d.ts.map +1 -0
  221. package/dist/internal/c4/local-market-order.js +47 -0
  222. package/dist/internal/c4/local-market-order.js.map +1 -0
  223. package/dist/internal/c4/loyalty.d.ts +0 -27
  224. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  225. package/dist/internal/c4/loyalty.js +0 -33
  226. package/dist/internal/c4/loyalty.js.map +1 -1
  227. package/dist/internal/c4/market.d.ts +2 -38
  228. package/dist/internal/c4/market.d.ts.map +1 -1
  229. package/dist/internal/c4/market.js +13 -51
  230. package/dist/internal/c4/market.js.map +1 -1
  231. package/dist/internal/c4/mining-instructions.d.ts +2 -0
  232. package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
  233. package/dist/internal/c4/mining-instructions.js +3 -0
  234. package/dist/internal/c4/mining-instructions.js.map +1 -0
  235. package/dist/internal/c4/open-signal.d.ts +8 -0
  236. package/dist/internal/c4/open-signal.d.ts.map +1 -0
  237. package/dist/internal/c4/open-signal.js +37 -0
  238. package/dist/internal/c4/open-signal.js.map +1 -0
  239. package/dist/internal/c4/profile-permissions.d.ts +14 -0
  240. package/dist/internal/c4/profile-permissions.d.ts.map +1 -0
  241. package/dist/internal/c4/profile-permissions.js +81 -0
  242. package/dist/internal/c4/profile-permissions.js.map +1 -0
  243. package/dist/internal/c4/region-geometry.d.ts +8 -0
  244. package/dist/internal/c4/region-geometry.d.ts.map +1 -0
  245. package/dist/internal/c4/region-geometry.js +43 -0
  246. package/dist/internal/c4/region-geometry.js.map +1 -0
  247. package/dist/internal/c4/rewards.d.ts +0 -27
  248. package/dist/internal/c4/rewards.d.ts.map +1 -1
  249. package/dist/internal/c4/rewards.js +0 -33
  250. package/dist/internal/c4/rewards.js.map +1 -1
  251. package/dist/internal/c4/runtime-bindings.d.ts +3 -0
  252. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
  253. package/dist/internal/c4/runtime-bindings.js +4 -0
  254. package/dist/internal/c4/runtime-bindings.js.map +1 -0
  255. package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
  256. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
  257. package/dist/internal/c4/scan-detection-codecs.js +3 -0
  258. package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
  259. package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
  260. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  261. package/dist/internal/c4/scan-lifecycle.js +258 -0
  262. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  263. package/dist/internal/c4/scanning.d.ts +1 -28
  264. package/dist/internal/c4/scanning.d.ts.map +1 -1
  265. package/dist/internal/c4/scanning.js +2 -33
  266. package/dist/internal/c4/scanning.js.map +1 -1
  267. package/dist/internal/c4/ship-import.d.ts +4 -0
  268. package/dist/internal/c4/ship-import.d.ts.map +1 -0
  269. package/dist/internal/c4/ship-import.js +13 -0
  270. package/dist/internal/c4/ship-import.js.map +1 -0
  271. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  272. package/dist/internal/c4/ship-stats.js +25 -21
  273. package/dist/internal/c4/ship-stats.js.map +1 -1
  274. package/dist/internal/c4/starbase.d.ts +0 -32
  275. package/dist/internal/c4/starbase.d.ts.map +1 -1
  276. package/dist/internal/c4/starbase.js +3 -41
  277. package/dist/internal/c4/starbase.js.map +1 -1
  278. package/dist/internal/c4/world.d.ts +36 -7
  279. package/dist/internal/c4/world.d.ts.map +1 -1
  280. package/dist/internal/c4/world.js +58 -25
  281. package/dist/internal/c4/world.js.map +1 -1
  282. package/dist/internal/cargo.d.ts +2 -0
  283. package/dist/internal/cargo.d.ts.map +1 -1
  284. package/dist/internal/cargo.js +8 -0
  285. package/dist/internal/cargo.js.map +1 -1
  286. package/dist/internal/fleet.d.ts +1 -0
  287. package/dist/internal/fleet.d.ts.map +1 -1
  288. package/dist/internal/fleet.js +3 -1
  289. package/dist/internal/fleet.js.map +1 -1
  290. package/dist/internal/loyalty-atlas-bank-state.d.ts +16 -0
  291. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
  292. package/dist/internal/loyalty-atlas-bank-state.js +10 -0
  293. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
  294. package/dist/internal/planning/action-runtime.d.ts +38 -0
  295. package/dist/internal/planning/action-runtime.d.ts.map +1 -0
  296. package/dist/internal/planning/action-runtime.js +63 -0
  297. package/dist/internal/planning/action-runtime.js.map +1 -0
  298. package/dist/internal/planning/arrival-guards.d.ts +20 -0
  299. package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
  300. package/dist/internal/planning/arrival-guards.js +187 -0
  301. package/dist/internal/planning/arrival-guards.js.map +1 -0
  302. package/dist/internal/planning/authorization-adapter.d.ts +10 -7
  303. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  304. package/dist/internal/planning/authorization-adapter.js +87 -16
  305. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  306. package/dist/internal/planning/character-registration-guard.d.ts +4 -0
  307. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
  308. package/dist/internal/planning/character-registration-guard.js +58 -0
  309. package/dist/internal/planning/character-registration-guard.js.map +1 -0
  310. package/dist/internal/planning/character-registration.d.ts +23 -0
  311. package/dist/internal/planning/character-registration.d.ts.map +1 -0
  312. package/dist/internal/planning/character-registration.js +86 -0
  313. package/dist/internal/planning/character-registration.js.map +1 -0
  314. package/dist/internal/planning/democracy-history.d.ts +50 -0
  315. package/dist/internal/planning/democracy-history.d.ts.map +1 -0
  316. package/dist/internal/planning/democracy-history.js +198 -0
  317. package/dist/internal/planning/democracy-history.js.map +1 -0
  318. package/dist/internal/planning/faction-enrollment.d.ts +0 -2
  319. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  320. package/dist/internal/planning/faction-enrollment.js +1 -22
  321. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  322. package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
  323. package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
  324. package/dist/internal/planning/faction-trade-guards.js +15 -0
  325. package/dist/internal/planning/faction-trade-guards.js.map +1 -0
  326. package/dist/internal/planning/faction-trade-state.d.ts +16 -0
  327. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
  328. package/dist/internal/planning/faction-trade-state.js +43 -0
  329. package/dist/internal/planning/faction-trade-state.js.map +1 -0
  330. package/dist/internal/planning/fleet-arrival.d.ts +40 -0
  331. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
  332. package/dist/internal/planning/fleet-arrival.js +105 -0
  333. package/dist/internal/planning/fleet-arrival.js.map +1 -0
  334. package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
  335. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
  336. package/dist/internal/planning/fleet-attack-xp.js +110 -0
  337. package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
  338. package/dist/internal/planning/fleet-creation.d.ts +30 -0
  339. package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
  340. package/dist/internal/planning/fleet-creation.js +108 -0
  341. package/dist/internal/planning/fleet-creation.js.map +1 -0
  342. package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
  343. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
  344. package/dist/internal/planning/fleet-crew-guard.js +47 -0
  345. package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
  346. package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
  347. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
  348. package/dist/internal/planning/fleet-crew-transfer.js +131 -0
  349. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
  350. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
  351. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
  352. package/dist/internal/planning/fleet-dock-funding-guard.js +225 -0
  353. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
  354. package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
  355. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
  356. package/dist/internal/planning/fleet-dock-funding.js +153 -0
  357. package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
  358. package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
  359. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
  360. package/dist/internal/planning/fleet-docking-guard.js +42 -0
  361. package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
  362. package/dist/internal/planning/fleet-docking.d.ts +10 -0
  363. package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
  364. package/dist/internal/planning/fleet-docking.js +85 -0
  365. package/dist/internal/planning/fleet-docking.js.map +1 -0
  366. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  367. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  368. package/dist/internal/planning/fleet-respawn.js +165 -0
  369. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  370. package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
  371. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
  372. package/dist/internal/planning/fleet-ship-assembly.js +137 -0
  373. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
  374. package/dist/internal/planning/governance-fees.d.ts +64 -0
  375. package/dist/internal/planning/governance-fees.d.ts.map +1 -0
  376. package/dist/internal/planning/governance-fees.js +239 -0
  377. package/dist/internal/planning/governance-fees.js.map +1 -0
  378. package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
  379. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
  380. package/dist/internal/planning/local-market-order-funding.js +126 -0
  381. package/dist/internal/planning/local-market-order-funding.js.map +1 -0
  382. package/dist/internal/planning/local-market-order.d.ts +40 -0
  383. package/dist/internal/planning/local-market-order.d.ts.map +1 -0
  384. package/dist/internal/planning/local-market-order.js +166 -0
  385. package/dist/internal/planning/local-market-order.js.map +1 -0
  386. package/dist/internal/planning/mining-stop.d.ts +14 -0
  387. package/dist/internal/planning/mining-stop.d.ts.map +1 -0
  388. package/dist/internal/planning/mining-stop.js +41 -0
  389. package/dist/internal/planning/mining-stop.js.map +1 -0
  390. package/dist/internal/planning/movement-character.d.ts +7 -0
  391. package/dist/internal/planning/movement-character.d.ts.map +1 -0
  392. package/dist/internal/planning/movement-character.js +41 -0
  393. package/dist/internal/planning/movement-character.js.map +1 -0
  394. package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
  395. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
  396. package/dist/internal/planning/movement-xp-guard.js +103 -0
  397. package/dist/internal/planning/movement-xp-guard.js.map +1 -0
  398. package/dist/internal/planning/open-signal-guard.d.ts +3 -0
  399. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
  400. package/dist/internal/planning/open-signal-guard.js +31 -0
  401. package/dist/internal/planning/open-signal-guard.js.map +1 -0
  402. package/dist/internal/planning/open-signal.d.ts +31 -0
  403. package/dist/internal/planning/open-signal.d.ts.map +1 -0
  404. package/dist/internal/planning/open-signal.js +85 -0
  405. package/dist/internal/planning/open-signal.js.map +1 -0
  406. package/dist/internal/planning/rent.d.ts +19 -0
  407. package/dist/internal/planning/rent.d.ts.map +1 -0
  408. package/dist/internal/planning/rent.js +35 -0
  409. package/dist/internal/planning/rent.js.map +1 -0
  410. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  411. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  412. package/dist/internal/planning/respawn-guards.js +41 -0
  413. package/dist/internal/planning/respawn-guards.js.map +1 -0
  414. package/dist/internal/planning/runtime-guards.d.ts +43 -0
  415. package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
  416. package/dist/internal/planning/runtime-guards.js +636 -0
  417. package/dist/internal/planning/runtime-guards.js.map +1 -0
  418. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  419. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  420. package/dist/internal/planning/scan-completion-guard.js +94 -0
  421. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  422. package/dist/internal/planning/scan-completion.d.ts +20 -0
  423. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  424. package/dist/internal/planning/scan-completion.js +196 -0
  425. package/dist/internal/planning/scan-completion.js.map +1 -0
  426. package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
  427. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
  428. package/dist/internal/planning/scan-detect-guard.js +77 -0
  429. package/dist/internal/planning/scan-detect-guard.js.map +1 -0
  430. package/dist/internal/planning/scan-detect.d.ts +24 -0
  431. package/dist/internal/planning/scan-detect.d.ts.map +1 -0
  432. package/dist/internal/planning/scan-detect.js +244 -0
  433. package/dist/internal/planning/scan-detect.js.map +1 -0
  434. package/dist/internal/planning/scan-input.d.ts +9 -0
  435. package/dist/internal/planning/scan-input.d.ts.map +1 -0
  436. package/dist/internal/planning/scan-input.js +58 -0
  437. package/dist/internal/planning/scan-input.js.map +1 -0
  438. package/dist/internal/planning/ship-import-funding.d.ts +22 -0
  439. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
  440. package/dist/internal/planning/ship-import-funding.js +52 -0
  441. package/dist/internal/planning/ship-import-funding.js.map +1 -0
  442. package/dist/internal/planning/ship-token.d.ts +0 -1
  443. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  444. package/dist/internal/planning/ship-token.js +2 -5
  445. package/dist/internal/planning/ship-token.js.map +1 -1
  446. package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
  447. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
  448. package/dist/internal/planning/starbase-system-guard.js +93 -0
  449. package/dist/internal/planning/starbase-system-guard.js.map +1 -0
  450. package/dist/internal/planning/starbase-system.d.ts +12 -0
  451. package/dist/internal/planning/starbase-system.d.ts.map +1 -0
  452. package/dist/internal/planning/starbase-system.js +22 -0
  453. package/dist/internal/planning/starbase-system.js.map +1 -0
  454. package/dist/internal/planning/token-mint.d.ts +4 -0
  455. package/dist/internal/planning/token-mint.d.ts.map +1 -0
  456. package/dist/internal/planning/token-mint.js +15 -0
  457. package/dist/internal/planning/token-mint.js.map +1 -0
  458. package/dist/internal/planning/trade-faction-market.d.ts +20 -0
  459. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
  460. package/dist/internal/planning/trade-faction-market.js +56 -0
  461. package/dist/internal/planning/trade-faction-market.js.map +1 -0
  462. package/dist/internal/planning/xp-runtime.d.ts +36 -0
  463. package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
  464. package/dist/internal/planning/xp-runtime.js +126 -0
  465. package/dist/internal/planning/xp-runtime.js.map +1 -0
  466. package/dist/internal/system-program.d.ts +4 -0
  467. package/dist/internal/system-program.d.ts.map +1 -0
  468. package/dist/internal/system-program.js +3 -0
  469. package/dist/internal/system-program.js.map +1 -0
  470. package/dist/loyalty/actions/index.d.ts.map +1 -1
  471. package/dist/loyalty/actions/index.js +4 -3
  472. package/dist/loyalty/actions/index.js.map +1 -1
  473. package/dist/loyalty/index.d.ts.map +1 -1
  474. package/dist/loyalty/index.js +2 -6
  475. package/dist/loyalty/index.js.map +1 -1
  476. package/dist/markets/actions/index.d.ts +61 -3
  477. package/dist/markets/actions/index.d.ts.map +1 -1
  478. package/dist/markets/actions/index.js +137 -25
  479. package/dist/markets/actions/index.js.map +1 -1
  480. package/dist/markets/actions/trade-faction-market.d.ts +43 -0
  481. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
  482. package/dist/markets/actions/trade-faction-market.js +291 -0
  483. package/dist/markets/actions/trade-faction-market.js.map +1 -0
  484. package/dist/markets/index.d.ts +38 -7
  485. package/dist/markets/index.d.ts.map +1 -1
  486. package/dist/markets/index.js +57 -10
  487. package/dist/markets/index.js.map +1 -1
  488. package/dist/mining/actions/index.d.ts +84 -0
  489. package/dist/mining/actions/index.d.ts.map +1 -0
  490. package/dist/mining/actions/index.js +328 -0
  491. package/dist/mining/actions/index.js.map +1 -0
  492. package/dist/mining/estimate.d.ts +114 -0
  493. package/dist/mining/estimate.d.ts.map +1 -0
  494. package/dist/mining/estimate.js +127 -0
  495. package/dist/mining/estimate.js.map +1 -0
  496. package/dist/mining/index.d.ts +8 -2
  497. package/dist/mining/index.d.ts.map +1 -1
  498. package/dist/mining/index.js +6 -2
  499. package/dist/mining/index.js.map +1 -1
  500. package/dist/planning/assembly.d.ts.map +1 -1
  501. package/dist/planning/assembly.js +24 -0
  502. package/dist/planning/assembly.js.map +1 -1
  503. package/dist/planning/execution.d.ts.map +1 -1
  504. package/dist/planning/execution.js +459 -17
  505. package/dist/planning/execution.js.map +1 -1
  506. package/dist/planning/index.d.ts +181 -149
  507. package/dist/planning/index.d.ts.map +1 -1
  508. package/dist/planning/index.js +869 -121
  509. package/dist/planning/index.js.map +1 -1
  510. package/dist/planning/plan-sequence.d.ts.map +1 -1
  511. package/dist/planning/plan-sequence.js +8 -1
  512. package/dist/planning/plan-sequence.js.map +1 -1
  513. package/dist/planning/simulation.d.ts +25 -1
  514. package/dist/planning/simulation.d.ts.map +1 -1
  515. package/dist/planning/simulation.js +111 -11
  516. package/dist/planning/simulation.js.map +1 -1
  517. package/dist/registry/cargo.d.ts +6 -11
  518. package/dist/registry/cargo.d.ts.map +1 -1
  519. package/dist/registry/cargo.js +19 -19
  520. package/dist/registry/cargo.js.map +1 -1
  521. package/dist/registry/docking.d.ts +13 -0
  522. package/dist/registry/docking.d.ts.map +1 -0
  523. package/dist/registry/docking.js +19 -0
  524. package/dist/registry/docking.js.map +1 -0
  525. package/dist/registry/index.d.ts +4 -0
  526. package/dist/registry/index.d.ts.map +1 -1
  527. package/dist/registry/index.js.map +1 -1
  528. package/dist/registry/onboarding.d.ts +8 -1
  529. package/dist/registry/onboarding.d.ts.map +1 -1
  530. package/dist/registry/onboarding.js +18 -5
  531. package/dist/registry/onboarding.js.map +1 -1
  532. package/dist/registry/scanning.d.ts +7 -0
  533. package/dist/registry/scanning.d.ts.map +1 -0
  534. package/dist/registry/scanning.js +13 -0
  535. package/dist/registry/scanning.js.map +1 -0
  536. package/dist/registry/ship-stats-snapshot.js +19 -19
  537. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  538. package/dist/registry/ships.d.ts +22 -2
  539. package/dist/registry/ships.d.ts.map +1 -1
  540. package/dist/registry/ships.js +28 -4
  541. package/dist/registry/ships.js.map +1 -1
  542. package/dist/registry/xp-runtime.d.ts +4 -0
  543. package/dist/registry/xp-runtime.d.ts.map +1 -0
  544. package/dist/registry/xp-runtime.js +14 -0
  545. package/dist/registry/xp-runtime.js.map +1 -0
  546. package/dist/scanning/actions/index.d.ts +116 -0
  547. package/dist/scanning/actions/index.d.ts.map +1 -0
  548. package/dist/scanning/actions/index.js +185 -0
  549. package/dist/scanning/actions/index.js.map +1 -0
  550. package/dist/scanning/index.d.ts +4 -1
  551. package/dist/scanning/index.d.ts.map +1 -1
  552. package/dist/scanning/index.js +12 -8
  553. package/dist/scanning/index.js.map +1 -1
  554. package/dist/scanning/lifecycle.d.ts +77 -0
  555. package/dist/scanning/lifecycle.d.ts.map +1 -0
  556. package/dist/scanning/lifecycle.js +93 -0
  557. package/dist/scanning/lifecycle.js.map +1 -0
  558. package/dist/scanning/odds.d.ts +111 -0
  559. package/dist/scanning/odds.d.ts.map +1 -0
  560. package/dist/scanning/odds.js +294 -0
  561. package/dist/scanning/odds.js.map +1 -0
  562. package/dist/scanning/signals.d.ts +121 -0
  563. package/dist/scanning/signals.d.ts.map +1 -0
  564. package/dist/scanning/signals.js +171 -0
  565. package/dist/scanning/signals.js.map +1 -0
  566. package/dist/world/index.d.ts +110 -5
  567. package/dist/world/index.d.ts.map +1 -1
  568. package/dist/world/index.js +109 -4
  569. package/dist/world/index.js.map +1 -1
  570. package/dist/world/planet-claim-stake-plots.d.ts +130 -0
  571. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
  572. package/dist/world/planet-claim-stake-plots.js +110 -0
  573. package/dist/world/planet-claim-stake-plots.js.map +1 -0
  574. package/dist/world/starbase-status.d.ts +176 -0
  575. package/dist/world/starbase-status.d.ts.map +1 -0
  576. package/dist/world/starbase-status.js +153 -0
  577. package/dist/world/starbase-status.js.map +1 -0
  578. package/package.json +10 -2
@@ -0,0 +1,171 @@
1
+ import { entityRef, AccountDecodeError, } from '../client/index.js';
2
+ import { scanSignalAccountDefinition, scanPatternPolicyAccountDefinition, scanLootProfileAccountDefinition, deriveScanLifecycleAddress, } from '../internal/c4/scan-lifecycle.js';
3
+ import { waitForRegistry } from '../client/lifecycle.js';
4
+ import { requireGameAddress } from '../internal/game-context.js';
5
+ import { attachJsonSerialization } from '../internal/json.js';
6
+ import { attachReadMeta } from '../internal/read-meta.js';
7
+ import { freezeResolvedSnapshot } from '../internal/resolved-snapshot.js';
8
+ import { resolveCargo, } from '../registry/index.js';
9
+ function finish(envelope, value) {
10
+ return freezeResolvedSnapshot(attachReadMeta(attachJsonSerialization(value), {
11
+ commitment: envelope.commitment,
12
+ slot: envelope.slot,
13
+ source: envelope.source,
14
+ strategy: 'derived',
15
+ }));
16
+ }
17
+ async function read(context, definition, key, optional, options) {
18
+ const game = requireGameAddress(context);
19
+ const [address, bump] = await deriveScanLifecycleAddress(definition.type, game, key);
20
+ const envelope = optional
21
+ ? (await context.data.readMany(definition, [address], options))[0]
22
+ : await context.data.read(definition, address, options);
23
+ if (envelope === undefined)
24
+ return undefined;
25
+ const data = envelope.data;
26
+ const storedKey = 'fleet' in data
27
+ ? data.fleet
28
+ : 'patternId' in data
29
+ ? data.patternId
30
+ : data.regionId;
31
+ if (data.game !== game || data.bump !== bump || storedKey !== key)
32
+ throw new AccountDecodeError(definition.type, address, new RangeError('Stored Game, seed or bump contradicts the canonical PDA.'), `${definition.type} ${address} does not match the configured Game and requested identity. Verify the Fleet or ID and cluster, then refresh before retrying.`);
33
+ return envelope;
34
+ }
35
+ const signals = new WeakMap();
36
+ const policies = new WeakMap();
37
+ const lootProfiles = new WeakMap();
38
+ async function cargo(context, row) {
39
+ const { cargoId, ...rest } = row;
40
+ return { ...rest, cargo: await resolveCargo(context, cargoId) };
41
+ }
42
+ function signalSnapshot(context, envelope) {
43
+ const existing = signals.get(envelope);
44
+ if (existing)
45
+ return existing;
46
+ const pending = (async () => {
47
+ const { game, bump: _bump, fleet, ownerProfile, ownerCharacter, contact, receipt, attempt, noContact, ended, ...data } = envelope.data;
48
+ return finish(envelope, {
49
+ ...data,
50
+ attempt: attempt ?? undefined,
51
+ noContact: noContact ?? undefined,
52
+ ended: ended ?? undefined,
53
+ kind: 'scanSignal',
54
+ address: envelope.address,
55
+ game: entityRef('game', game),
56
+ fleet: entityRef('fleet', fleet),
57
+ ownerProfile: entityRef('profile', ownerProfile),
58
+ ownerCharacter: entityRef('character', ownerCharacter),
59
+ contact: contact ? await cargo(context, contact) : undefined,
60
+ receipt: receipt ? await cargo(context, receipt) : undefined,
61
+ });
62
+ })();
63
+ signals.set(envelope, pending);
64
+ void pending.catch(() => signals.delete(envelope));
65
+ return pending;
66
+ }
67
+ function policySnapshot(envelope) {
68
+ const existing = policies.get(envelope);
69
+ if (existing)
70
+ return existing;
71
+ const { game, bump: _bump, ...data } = envelope.data;
72
+ const snapshot = finish(envelope, {
73
+ ...data,
74
+ kind: 'scanPatternPolicy',
75
+ address: envelope.address,
76
+ game: entityRef('game', game),
77
+ });
78
+ policies.set(envelope, snapshot);
79
+ return snapshot;
80
+ }
81
+ function lootSnapshot(context, envelope) {
82
+ const existing = lootProfiles.get(envelope);
83
+ if (existing)
84
+ return existing;
85
+ const pending = (async () => {
86
+ const { game, bump: _bump, loot, ...data } = envelope.data;
87
+ return finish(envelope, {
88
+ ...data,
89
+ kind: 'scanLootProfile',
90
+ address: envelope.address,
91
+ game: entityRef('game', game),
92
+ loot: await Promise.all(loot.map((row) => cargo(context, row))),
93
+ });
94
+ })();
95
+ lootProfiles.set(envelope, pending);
96
+ void pending.catch(() => lootProfiles.delete(envelope));
97
+ return pending;
98
+ }
99
+ /** Derives and reads a required ScanSignal for the configured Game. Absence throws AccountNotFoundError.
100
+ * @example
101
+ * ```ts
102
+ * declare const ctx: SageContext, fleet: Address;
103
+ * const snapshot = await getScanSignalForFleet(ctx, fleet, { refresh: true });
104
+ * ```
105
+ */
106
+ export async function getScanSignalForFleet(context, fleet, options) {
107
+ const envelope = await read(context, scanSignalAccountDefinition, fleet, false, options);
108
+ return waitForRegistry(context, signalSnapshot(context, envelope), options?.signal);
109
+ }
110
+ /** Derives and reads an optional ScanSignal for the configured Game. Absence returns undefined; malformed accounts still throw.
111
+ * @example
112
+ * ```ts
113
+ * declare const ctx: SageContext, fleet: Address;
114
+ * const snapshot = await maybeGetScanSignalForFleet(ctx, fleet, { refresh: true });
115
+ * ```
116
+ */
117
+ export async function maybeGetScanSignalForFleet(context, fleet, options) {
118
+ const envelope = await read(context, scanSignalAccountDefinition, fleet, true, options);
119
+ if (envelope === undefined)
120
+ return undefined;
121
+ return waitForRegistry(context, signalSnapshot(context, envelope), options?.signal);
122
+ }
123
+ /** Derives and reads a required ScanPatternPolicy for the configured Game. Absence throws AccountNotFoundError.
124
+ * @example
125
+ * ```ts
126
+ * declare const ctx: SageContext, patternId: number;
127
+ * const snapshot = await getScanPatternPolicy(ctx, patternId, { refresh: true });
128
+ * ```
129
+ */
130
+ export async function getScanPatternPolicy(context, patternId, options) {
131
+ const envelope = await read(context, scanPatternPolicyAccountDefinition, patternId, false, options);
132
+ return policySnapshot(envelope);
133
+ }
134
+ /** Derives and reads an optional ScanPatternPolicy for the configured Game. Absence returns undefined; malformed accounts still throw.
135
+ * @example
136
+ * ```ts
137
+ * declare const ctx: SageContext, patternId: number;
138
+ * const snapshot = await maybeGetScanPatternPolicy(ctx, patternId, { refresh: true });
139
+ * ```
140
+ */
141
+ export async function maybeGetScanPatternPolicy(context, patternId, options) {
142
+ const envelope = await read(context, scanPatternPolicyAccountDefinition, patternId, true, options);
143
+ if (envelope === undefined)
144
+ return undefined;
145
+ return policySnapshot(envelope);
146
+ }
147
+ /** Derives and reads a required ScanLootProfile for the configured Game. Absence throws AccountNotFoundError.
148
+ * @example
149
+ * ```ts
150
+ * declare const ctx: SageContext, regionId: number;
151
+ * const snapshot = await getScanLootProfile(ctx, regionId, { refresh: true });
152
+ * ```
153
+ */
154
+ export async function getScanLootProfile(context, regionId, options) {
155
+ const envelope = await read(context, scanLootProfileAccountDefinition, regionId, false, options);
156
+ return waitForRegistry(context, lootSnapshot(context, envelope), options?.signal);
157
+ }
158
+ /** Derives and reads an optional ScanLootProfile for the configured Game. Absence returns undefined; malformed accounts still throw.
159
+ * @example
160
+ * ```ts
161
+ * declare const ctx: SageContext, regionId: number;
162
+ * const snapshot = await maybeGetScanLootProfile(ctx, regionId, { refresh: true });
163
+ * ```
164
+ */
165
+ export async function maybeGetScanLootProfile(context, regionId, options) {
166
+ const envelope = await read(context, scanLootProfileAccountDefinition, regionId, true, options);
167
+ if (envelope === undefined)
168
+ return undefined;
169
+ return waitForRegistry(context, lootSnapshot(context, envelope), options?.signal);
170
+ }
171
+ //# sourceMappingURL=signals.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"signals.js","sourceRoot":"","sources":["../../src/scanning/signals.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,26 @@
1
1
  import { type Address, type DiscoveryRequest, type EntityRef, type ReadOptions, type SageContext } from '../client/index.js';
2
- import { type CelestialBodyAccountData, type StarSystemAccountData, type WorldCoordinates } from '../internal/c4/world.js';
2
+ import { type CelestialBodyAccountData, type StarSystemAccountData, type WorldCoordinates, type WorldFixedValue } from '../internal/c4/world.js';
3
+ import { type CargoDefinitionSummary } from '../registry/index.js';
4
+ import { type PlanetClaimStakePlotsSnapshot } from './planet-claim-stake-plots.js';
5
+ import { type StarbaseStatusSnapshot } from './starbase-status.js';
6
+ export { claimStakeTierIndex } from './planet-claim-stake-plots.js';
7
+ export type { ClaimStakeTier, PlanetClaimStakePlotDefinition, PlanetClaimStakePlotStructure, PlanetClaimStakePlotTier, PlanetClaimStakePlotsSnapshot, } from './planet-claim-stake-plots.js';
8
+ export { deriveStarbaseStatus, starbaseLevelIndex } from './starbase-status.js';
9
+ export type { ResolvedStarbaseUpgradeMaterial, ResolvedStarbaseUpgradeProgress, StarbaseServiceAvailability, StarbaseStatus, StarbaseStatusSnapshot, StarbaseUpgradeMaterial, StarbaseUpgradeProgress, } from './starbase-status.js';
3
10
  export type { StarSystemAccountData, WorldAsteroidData, WorldAsteroidResourceData, WorldClaimStakeGroupData, WorldConnectionCosts, WorldConnectionData, WorldCoordinates, WorldCraftingHabData, WorldFaction, WorldFixedValue, WorldPlanetData, WorldPlanetSubtype, WorldPlanetResourceData, WorldStarbaseData, WorldStarbaseLevel, WorldStarbaseLevelData, WorldStarbaseLevelInfoData, WorldStarbaseMaxLevelData, WorldStarbaseUpgradeData, WorldStructureData, } from '../internal/c4/world.js';
4
11
  /** Options supported by galaxy-scale StarSystem discovery.
5
12
  * @example
6
13
  * ```ts
7
- * const options: StarSystemDiscoveryOptions = { commitment: 'confirmed' };
14
+ * const options: StarSystemDiscoveryOptions = {
15
+ * commitment: 'confirmed',
16
+ * regionId: 3,
17
+ * };
8
18
  * ```
9
19
  */
10
- export type StarSystemDiscoveryOptions = Omit<DiscoveryRequest, 'filters' | 'strategy'>;
20
+ export type StarSystemDiscoveryOptions = Omit<DiscoveryRequest, 'filters' | 'strategy'> & {
21
+ /** Limits discovery to StarSystems whose fixed-width region field contains this unsigned 16-bit id. */
22
+ readonly regionId?: number;
23
+ };
11
24
  /** Options for discovering Celestial Bodies across the configured Game.
12
25
  * @example
13
26
  * ```ts
@@ -34,6 +47,13 @@ type AsteroidAccountData = Extract<CelestialBodyAccountData, {
34
47
  kind: 'asteroid';
35
48
  }>;
36
49
  /** Immutable Planet projection over a CelestialBody account.
50
+ *
51
+ * Planet richness gameplay use: unverified. Version-matched program evidence
52
+ * does not establish a consuming activity or formula for the decoded richness
53
+ * values in `details.resources`. They are distinct from Asteroid richness used
54
+ * by Fleet mining and from separately decoded Claim Stake building
55
+ * `resourceExtraction` rates.
56
+ *
37
57
  * @example
38
58
  * ```ts
39
59
  * declare const planet: PlanetSnapshot;
@@ -45,6 +65,36 @@ export interface PlanetSnapshot extends Omit<PlanetAccountData, 'system'> {
45
65
  readonly system: EntityRef<'starSystem'>;
46
66
  toJSON(): unknown;
47
67
  }
68
+ /** One registry-resolved resource row observed in a Planet account.
69
+ * @example
70
+ * ```ts
71
+ * declare const resource: PlanetResourceItem;
72
+ * console.log(resource.cargo.name, resource.richness.value);
73
+ * ```
74
+ */
75
+ export interface PlanetResourceItem {
76
+ readonly cargo: CargoDefinitionSummary;
77
+ readonly richness: WorldFixedValue;
78
+ }
79
+ /** Immutable Planet resource observation with registry-resolved cargo definitions.
80
+ * @example
81
+ * ```ts
82
+ * declare const resources: PlanetResourcesSnapshot;
83
+ * console.log(resources.name, resources.resources);
84
+ * ```
85
+ */
86
+ export interface PlanetResourcesSnapshot {
87
+ readonly kind: 'planetResources';
88
+ readonly address: Address;
89
+ readonly bodyId: number;
90
+ readonly name: string;
91
+ readonly game: Address;
92
+ readonly system: EntityRef<'starSystem'>;
93
+ readonly systemSequenceId: bigint;
94
+ readonly lastSyncedAtUnixSeconds: bigint;
95
+ readonly resources: readonly PlanetResourceItem[];
96
+ toJSON(): unknown;
97
+ }
48
98
  /** Immutable Asteroid projection over a CelestialBody account.
49
99
  * @example
50
100
  * ```ts
@@ -90,6 +140,22 @@ export declare function findCelestialBodyPda(game: Address, bodyId: number): Pro
90
140
  * ```
91
141
  */
92
142
  export declare function getStarSystem(ctx: SageContext, address: Address, options?: ReadOptions): Promise<StarSystemSnapshot>;
143
+ /** Reads one StarSystem and derives the status of its shared Starbase.
144
+ *
145
+ * Returns `undefined` when the System exists but has no Starbase; a missing
146
+ * System account still throws. The StarSystem stays on the shared account
147
+ * cache. Upgrade materials resolve lazily through the definitions registry,
148
+ * so a Starbase at its maximum level never loads the Game definitions.
149
+ *
150
+ * @example
151
+ * ```ts
152
+ * declare const ctx: SageContext;
153
+ * declare const system: Address;
154
+ * const status = await getStarbaseStatus(ctx, system);
155
+ * console.log(status?.level, status?.current.hullPoints);
156
+ * ```
157
+ */
158
+ export declare function getStarbaseStatus(ctx: SageContext, system: Address, options?: ReadOptions): Promise<StarbaseStatusSnapshot | undefined>;
93
159
  /** Reads an optional StarSystem by account address.
94
160
  * @example
95
161
  * ```ts
@@ -107,11 +173,11 @@ export declare function maybeGetStarSystem(ctx: SageContext, address: Address, o
107
173
  * ```
108
174
  */
109
175
  export declare function getStarSystemById(ctx: SageContext, systemId: number, options?: ReadOptions): Promise<StarSystemSnapshot>;
110
- /** Discovers all StarSystems for the configured Game with stable targeted filters.
176
+ /** Discovers StarSystems for the configured Game with stable targeted filters.
111
177
  * @example
112
178
  * ```ts
113
179
  * declare const ctx: SageContext;
114
- * const systems = await getStarSystems(ctx);
180
+ * const systems = await getStarSystems(ctx, { regionId: 3 });
115
181
  * ```
116
182
  */
117
183
  export declare function getStarSystems(ctx: SageContext, options?: StarSystemDiscoveryOptions): Promise<readonly StarSystemSnapshot[]>;
@@ -124,6 +190,45 @@ export declare function getStarSystems(ctx: SageContext, options?: StarSystemDis
124
190
  * ```
125
191
  */
126
192
  export declare function getCelestialBody(ctx: SageContext, address: Address, options?: ReadOptions): Promise<CelestialBodySnapshot>;
193
+ /** Reads one Planet resource observation and resolves every cargo definition.
194
+ *
195
+ * The Planet stays on the shared CelestialBody account cache. Cargo definitions
196
+ * load lazily through the registry and do not imply that the body and catalog
197
+ * were observed atomically. Unknown cargo ids reject the whole read.
198
+ *
199
+ * @example
200
+ * ```ts
201
+ * declare const ctx: SageContext;
202
+ * declare const planet: Address;
203
+ * const snapshot = await getPlanetResources(ctx, planet);
204
+ * console.log(snapshot.resources[0]?.cargo.name);
205
+ * ```
206
+ */
207
+ export declare function getPlanetResources(context: SageContext, planet: Address, options?: ReadOptions): Promise<PlanetResourcesSnapshot>;
208
+ /** Reads one Planet and its StarSystem, then summarizes Claim Stake plot
209
+ * availability for every tier.
210
+ *
211
+ * The Planet and System stay on the shared account cache; Claim Stake
212
+ * definitions load lazily through the registry so each occupying structure can
213
+ * be grouped under its definition and tier. Availability is per definition,
214
+ * matching the placement planner's check. A Planet whose System has no
215
+ * Starbase still lists plot limits by level and occupied plots, but no current
216
+ * limit or availability. An Asteroid address is rejected: only Planets carry
217
+ * Claim Stake plots.
218
+ *
219
+ * @example
220
+ * ```ts
221
+ * declare const ctx: SageContext;
222
+ * declare const planet: Address;
223
+ * const plots = await getPlanetClaimStakePlots(ctx, planet);
224
+ * for (const tier of plots.tiers) {
225
+ * for (const entry of tier.definitions) {
226
+ * console.log(entry.definition.name, tier.plotLimit, entry.available);
227
+ * }
228
+ * }
229
+ * ```
230
+ */
231
+ export declare function getPlanetClaimStakePlots(ctx: SageContext, planet: Address, options?: ReadOptions): Promise<PlanetClaimStakePlotsSnapshot>;
127
232
  /** Reads an optional CelestialBody by account address.
128
233
  * @example
129
234
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/world/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/world/index.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,11 @@ import { attachJsonSerialization } from '../internal/json.js';
4
4
  import { requireGameAddress } from '../internal/game-context.js';
5
5
  import { attachReadMeta, readMeta } from '../internal/read-meta.js';
6
6
  import { freezeResolvedSnapshot } from '../internal/resolved-snapshot.js';
7
+ import { resolveCargo, } from '../registry/index.js';
8
+ import { createPlanetClaimStakePlotsSnapshot, } from './planet-claim-stake-plots.js';
9
+ import { createStarbaseStatusSnapshot, } from './starbase-status.js';
10
+ export { claimStakeTierIndex } from './planet-claim-stake-plots.js';
11
+ export { deriveStarbaseStatus, starbaseLevelIndex } from './starbase-status.js';
7
12
  const STAR_SYSTEM_SNAPSHOTS = new WeakMap();
8
13
  const CELESTIAL_BODY_SNAPSHOTS = new WeakMap();
9
14
  function directMetadata(envelope) {
@@ -63,6 +68,35 @@ function toCelestialBodySnapshot(context, envelope) {
63
68
  CELESTIAL_BODY_SNAPSHOTS.set(envelope, snapshot);
64
69
  return snapshot;
65
70
  }
71
+ async function createPlanetResourcesSnapshot(context, envelope) {
72
+ const game = requireGameAddress(context);
73
+ if (envelope.data.game !== game) {
74
+ throw new AccountDecodeError('celestialBody', envelope.address, new RangeError('The decoded CelestialBody references a different Game.'), `The CelestialBody at ${envelope.address} belongs to Game ${envelope.data.game}, not configured Game ${game}. Verify the Planet address, configured cluster, and pinned binding version before retrying.`);
75
+ }
76
+ if (envelope.data.kind !== 'planet') {
77
+ throw new AccountDecodeError('celestialBody', envelope.address, new RangeError('The decoded CelestialBody is not a Planet.'), `CelestialBody ${envelope.address} is not a Planet and has no Planet resource snapshot. Supply a Planet address before retrying.`);
78
+ }
79
+ const planet = envelope.data;
80
+ const canonicalAddress = await deriveCelestialBodyAddress(planet.game, planet.id);
81
+ if (envelope.address !== canonicalAddress) {
82
+ throw new AccountDecodeError('celestialBody', envelope.address, new RangeError('The decoded Planet is stored at a noncanonical CelestialBody address.'), `CelestialBody ${envelope.address} decoded id ${planet.id}, whose canonical CelestialBody address is ${canonicalAddress}. Refresh the Planet pointer and verify the configured cluster and pinned binding version before retrying.`);
83
+ }
84
+ const resources = await Promise.all(planet.details.resources.map(async (resource) => ({
85
+ cargo: await resolveCargo(context, resource.cargoId),
86
+ richness: resource.richness,
87
+ })));
88
+ return freezeResolvedSnapshot(attachReadMeta(attachJsonSerialization({
89
+ address: envelope.address,
90
+ bodyId: planet.id,
91
+ game: planet.game,
92
+ kind: 'planetResources',
93
+ lastSyncedAtUnixSeconds: planet.lastSyncAtUnixSeconds,
94
+ name: planet.name,
95
+ resources,
96
+ system: entityRef('starSystem', planet.system),
97
+ systemSequenceId: planet.systemSequenceId,
98
+ }), directMetadata(envelope)));
99
+ }
66
100
  function assertCelestialBodyMembership(body, system) {
67
101
  if (body.system.address !== system.address) {
68
102
  throw new AccountDecodeError('celestialBody', body.address, new RangeError('The decoded CelestialBody contradicted its StarSystem relationship.'), `CelestialBody ${body.address} references StarSystem ${body.system.address}, not requested StarSystem ${system.address}. Refresh both accounts and verify the configured cluster before retrying.`);
@@ -103,6 +137,27 @@ export async function getStarSystem(ctx, address, options) {
103
137
  requireGameAddress(ctx);
104
138
  return toStarSystemSnapshot(ctx, await ctx.data.read(starSystemAccountDefinition, address, options));
105
139
  }
140
+ /** Reads one StarSystem and derives the status of its shared Starbase.
141
+ *
142
+ * Returns `undefined` when the System exists but has no Starbase; a missing
143
+ * System account still throws. The StarSystem stays on the shared account
144
+ * cache. Upgrade materials resolve lazily through the definitions registry,
145
+ * so a Starbase at its maximum level never loads the Game definitions.
146
+ *
147
+ * @example
148
+ * ```ts
149
+ * declare const ctx: SageContext;
150
+ * declare const system: Address;
151
+ * const status = await getStarbaseStatus(ctx, system);
152
+ * console.log(status?.level, status?.current.hullPoints);
153
+ * ```
154
+ */
155
+ export async function getStarbaseStatus(ctx, system, options) {
156
+ const snapshot = await getStarSystem(ctx, system, options);
157
+ return snapshot.starbase === undefined
158
+ ? undefined
159
+ : createStarbaseStatusSnapshot(ctx, snapshot, snapshot.starbase);
160
+ }
106
161
  /** Reads an optional StarSystem by account address.
107
162
  * @example
108
163
  * ```ts
@@ -131,18 +186,19 @@ export async function getStarSystemById(ctx, systemId, options) {
131
186
  return system;
132
187
  throw new AccountDecodeError('starSystem', system.address, new RangeError('The decoded StarSystem id contradicted the requested id.'), `StarSystem ${system.address} requested id ${systemId} but decoded id ${system.systemId}. Refresh the account and verify the configured cluster and pinned binding version before retrying.`);
133
188
  }
134
- /** Discovers all StarSystems for the configured Game with stable targeted filters.
189
+ /** Discovers StarSystems for the configured Game with stable targeted filters.
135
190
  * @example
136
191
  * ```ts
137
192
  * declare const ctx: SageContext;
138
- * const systems = await getStarSystems(ctx);
193
+ * const systems = await getStarSystems(ctx, { regionId: 3 });
139
194
  * ```
140
195
  */
141
196
  export async function getStarSystems(ctx, options = {}) {
142
197
  const game = requireGameAddress(ctx);
198
+ const { regionId, ...discoveryOptions } = options;
143
199
  const envelopes = await ctx.data.discover(starSystemAccountDefinition, {
144
- ...options,
145
- filters: buildStarSystemDiscoveryFilters(game),
200
+ ...discoveryOptions,
201
+ filters: buildStarSystemDiscoveryFilters(game, regionId),
146
202
  strategy: 'targeted-program-accounts',
147
203
  });
148
204
  const metadata = readMeta(envelopes);
@@ -161,6 +217,55 @@ export async function getCelestialBody(ctx, address, options) {
161
217
  requireGameAddress(ctx);
162
218
  return toCelestialBodySnapshot(ctx, await ctx.data.read(celestialBodyAccountDefinition, address, options));
163
219
  }
220
+ /** Reads one Planet resource observation and resolves every cargo definition.
221
+ *
222
+ * The Planet stays on the shared CelestialBody account cache. Cargo definitions
223
+ * load lazily through the registry and do not imply that the body and catalog
224
+ * were observed atomically. Unknown cargo ids reject the whole read.
225
+ *
226
+ * @example
227
+ * ```ts
228
+ * declare const ctx: SageContext;
229
+ * declare const planet: Address;
230
+ * const snapshot = await getPlanetResources(ctx, planet);
231
+ * console.log(snapshot.resources[0]?.cargo.name);
232
+ * ```
233
+ */
234
+ export async function getPlanetResources(context, planet, options) {
235
+ requireGameAddress(context);
236
+ return createPlanetResourcesSnapshot(context, await context.data.read(celestialBodyAccountDefinition, planet, options));
237
+ }
238
+ /** Reads one Planet and its StarSystem, then summarizes Claim Stake plot
239
+ * availability for every tier.
240
+ *
241
+ * The Planet and System stay on the shared account cache; Claim Stake
242
+ * definitions load lazily through the registry so each occupying structure can
243
+ * be grouped under its definition and tier. Availability is per definition,
244
+ * matching the placement planner's check. A Planet whose System has no
245
+ * Starbase still lists plot limits by level and occupied plots, but no current
246
+ * limit or availability. An Asteroid address is rejected: only Planets carry
247
+ * Claim Stake plots.
248
+ *
249
+ * @example
250
+ * ```ts
251
+ * declare const ctx: SageContext;
252
+ * declare const planet: Address;
253
+ * const plots = await getPlanetClaimStakePlots(ctx, planet);
254
+ * for (const tier of plots.tiers) {
255
+ * for (const entry of tier.definitions) {
256
+ * console.log(entry.definition.name, tier.plotLimit, entry.available);
257
+ * }
258
+ * }
259
+ * ```
260
+ */
261
+ export async function getPlanetClaimStakePlots(ctx, planet, options) {
262
+ const body = await getCelestialBody(ctx, planet, options);
263
+ if (body.kind !== 'planet') {
264
+ throw new AccountDecodeError('celestialBody', body.address, new RangeError('The decoded CelestialBody is not a Planet.'), `CelestialBody ${body.address} is an Asteroid and has no Claim Stake plots. Supply a Planet address before retrying.`);
265
+ }
266
+ const system = await getStarSystem(ctx, body.system.address, options);
267
+ return createPlanetClaimStakePlotsSnapshot(ctx, body, system);
268
+ }
164
269
  /** Reads an optional CelestialBody by account address.
165
270
  * @example
166
271
  * ```ts
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/world/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/world/index.ts"],"names":[],"mappings":"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"}