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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (761) hide show
  1. package/dist/cargo/actions/deposit.d.ts +4 -1
  2. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  3. package/dist/cargo/actions/deposit.js +56 -133
  4. package/dist/cargo/actions/deposit.js.map +1 -1
  5. package/dist/cargo/actions/index.d.ts +14 -7
  6. package/dist/cargo/actions/index.d.ts.map +1 -1
  7. package/dist/cargo/actions/index.js +101 -89
  8. package/dist/cargo/actions/index.js.map +1 -1
  9. package/dist/cargo/actions/wallet-context.d.ts +52 -3
  10. package/dist/cargo/actions/wallet-context.d.ts.map +1 -1
  11. package/dist/cargo/actions/wallet-context.js +118 -7
  12. package/dist/cargo/actions/wallet-context.js.map +1 -1
  13. package/dist/cargo/actions/wallet-token.d.ts +1 -6
  14. package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
  15. package/dist/cargo/actions/wallet-token.js +0 -45
  16. package/dist/cargo/actions/wallet-token.js.map +1 -1
  17. package/dist/cargo/actions/withdrawal.d.ts +1 -1
  18. package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
  19. package/dist/cargo/actions/withdrawal.js +37 -163
  20. package/dist/cargo/actions/withdrawal.js.map +1 -1
  21. package/dist/cargo/index.d.ts.map +1 -1
  22. package/dist/cargo/index.js +2 -10
  23. package/dist/cargo/index.js.map +1 -1
  24. package/dist/claim-stakes/actions/index.d.ts +80 -14
  25. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  26. package/dist/claim-stakes/actions/index.js +660 -709
  27. package/dist/claim-stakes/actions/index.js.map +1 -1
  28. package/dist/claim-stakes/index.d.ts +8 -6
  29. package/dist/claim-stakes/index.d.ts.map +1 -1
  30. package/dist/claim-stakes/index.js +12 -18
  31. package/dist/claim-stakes/index.js.map +1 -1
  32. package/dist/client/context.d.ts.map +1 -1
  33. package/dist/client/context.js +353 -37
  34. package/dist/client/context.js.map +1 -1
  35. package/dist/client/contracts.d.ts +54 -1
  36. package/dist/client/contracts.d.ts.map +1 -1
  37. package/dist/client/deployments.d.ts +17 -0
  38. package/dist/client/deployments.d.ts.map +1 -1
  39. package/dist/client/deployments.js +17 -0
  40. package/dist/client/deployments.js.map +1 -1
  41. package/dist/client/index.d.ts +22 -1
  42. package/dist/client/index.d.ts.map +1 -1
  43. package/dist/client/index.js +21 -0
  44. package/dist/client/index.js.map +1 -1
  45. package/dist/client/rpc-subscription-provider.d.ts +2 -0
  46. package/dist/client/rpc-subscription-provider.d.ts.map +1 -1
  47. package/dist/client/rpc-subscription-provider.js +135 -101
  48. package/dist/client/rpc-subscription-provider.js.map +1 -1
  49. package/dist/combat/actions/index.d.ts +30 -12
  50. package/dist/combat/actions/index.d.ts.map +1 -1
  51. package/dist/combat/actions/index.js +264 -252
  52. package/dist/combat/actions/index.js.map +1 -1
  53. package/dist/combat/index.d.ts +25 -8
  54. package/dist/combat/index.d.ts.map +1 -1
  55. package/dist/combat/index.js +21 -18
  56. package/dist/combat/index.js.map +1 -1
  57. package/dist/crafting/actions/fee-rate.d.ts +47 -0
  58. package/dist/crafting/actions/fee-rate.d.ts.map +1 -0
  59. package/dist/crafting/actions/fee-rate.js +58 -0
  60. package/dist/crafting/actions/fee-rate.js.map +1 -0
  61. package/dist/crafting/actions/index.d.ts +28 -28
  62. package/dist/crafting/actions/index.d.ts.map +1 -1
  63. package/dist/crafting/actions/index.js +243 -314
  64. package/dist/crafting/actions/index.js.map +1 -1
  65. package/dist/crafting/estimate.d.ts +101 -0
  66. package/dist/crafting/estimate.d.ts.map +1 -0
  67. package/dist/crafting/estimate.js +108 -0
  68. package/dist/crafting/estimate.js.map +1 -0
  69. package/dist/crafting/index.d.ts +6 -5
  70. package/dist/crafting/index.d.ts.map +1 -1
  71. package/dist/crafting/index.js +6 -13
  72. package/dist/crafting/index.js.map +1 -1
  73. package/dist/factions/actions/index.d.ts +1 -1
  74. package/dist/factions/actions/index.d.ts.map +1 -1
  75. package/dist/factions/actions/index.js +5 -4
  76. package/dist/factions/actions/index.js.map +1 -1
  77. package/dist/factions/index.d.ts +18 -1
  78. package/dist/factions/index.d.ts.map +1 -1
  79. package/dist/factions/index.js +24 -18
  80. package/dist/factions/index.js.map +1 -1
  81. package/dist/fleets/actions/add-ship.d.ts +18 -5
  82. package/dist/fleets/actions/add-ship.d.ts.map +1 -1
  83. package/dist/fleets/actions/add-ship.js +35 -48
  84. package/dist/fleets/actions/add-ship.js.map +1 -1
  85. package/dist/fleets/actions/create-fleet.d.ts +1 -1
  86. package/dist/fleets/actions/create-fleet.d.ts.map +1 -1
  87. package/dist/fleets/actions/create-fleet.js +8 -38
  88. package/dist/fleets/actions/create-fleet.js.map +1 -1
  89. package/dist/fleets/actions/crew-transfer.d.ts +8 -4
  90. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -1
  91. package/dist/fleets/actions/crew-transfer.js +27 -42
  92. package/dist/fleets/actions/crew-transfer.js.map +1 -1
  93. package/dist/fleets/actions/deployment-storage.d.ts +161 -0
  94. package/dist/fleets/actions/deployment-storage.d.ts.map +1 -0
  95. package/dist/fleets/actions/deployment-storage.js +297 -0
  96. package/dist/fleets/actions/deployment-storage.js.map +1 -0
  97. package/dist/fleets/actions/disband.d.ts +42 -0
  98. package/dist/fleets/actions/disband.d.ts.map +1 -0
  99. package/dist/fleets/actions/disband.js +107 -0
  100. package/dist/fleets/actions/disband.js.map +1 -0
  101. package/dist/fleets/actions/index.d.ts +55 -11
  102. package/dist/fleets/actions/index.d.ts.map +1 -1
  103. package/dist/fleets/actions/index.js +282 -235
  104. package/dist/fleets/actions/index.js.map +1 -1
  105. package/dist/fleets/actions/respawn.d.ts +1 -1
  106. package/dist/fleets/actions/respawn.d.ts.map +1 -1
  107. package/dist/fleets/actions/respawn.js +8 -37
  108. package/dist/fleets/actions/respawn.js.map +1 -1
  109. package/dist/fleets/actions/ship-import.d.ts +1 -1
  110. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  111. package/dist/fleets/actions/ship-import.js +39 -91
  112. package/dist/fleets/actions/ship-import.js.map +1 -1
  113. package/dist/fleets/actions/sync.d.ts +24 -0
  114. package/dist/fleets/actions/sync.d.ts.map +1 -0
  115. package/dist/fleets/actions/sync.js +55 -0
  116. package/dist/fleets/actions/sync.js.map +1 -0
  117. package/dist/fleets/composition-stats.d.ts +101 -0
  118. package/dist/fleets/composition-stats.d.ts.map +1 -0
  119. package/dist/fleets/composition-stats.js +354 -0
  120. package/dist/fleets/composition-stats.js.map +1 -0
  121. package/dist/fleets/cooldown.d.ts +7 -4
  122. package/dist/fleets/cooldown.d.ts.map +1 -1
  123. package/dist/fleets/cooldown.js +11 -6
  124. package/dist/fleets/cooldown.js.map +1 -1
  125. package/dist/fleets/index.d.ts +1 -0
  126. package/dist/fleets/index.d.ts.map +1 -1
  127. package/dist/fleets/index.js +3 -10
  128. package/dist/fleets/index.js.map +1 -1
  129. package/dist/fleets/movement-arithmetic.d.ts.map +1 -1
  130. package/dist/fleets/movement-arithmetic.js +4 -0
  131. package/dist/fleets/movement-arithmetic.js.map +1 -1
  132. package/dist/fleets/subwarp-estimate.d.ts +3 -1
  133. package/dist/fleets/subwarp-estimate.d.ts.map +1 -1
  134. package/dist/fleets/subwarp-estimate.js +3 -1
  135. package/dist/fleets/subwarp-estimate.js.map +1 -1
  136. package/dist/fleets/warp-lane-policy.d.ts +13 -7
  137. package/dist/fleets/warp-lane-policy.d.ts.map +1 -1
  138. package/dist/fleets/warp-lane-policy.js +19 -7
  139. package/dist/fleets/warp-lane-policy.js.map +1 -1
  140. package/dist/identity/actions/create-profile.d.ts +1 -1
  141. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  142. package/dist/identity/actions/create-profile.js +2 -2
  143. package/dist/identity/actions/create-profile.js.map +1 -1
  144. package/dist/identity/actions/index.d.ts +2 -1
  145. package/dist/identity/actions/index.d.ts.map +1 -1
  146. package/dist/identity/actions/index.js +6 -4
  147. package/dist/identity/actions/index.js.map +1 -1
  148. package/dist/identity/actions/research-unlock.d.ts +61 -0
  149. package/dist/identity/actions/research-unlock.d.ts.map +1 -0
  150. package/dist/identity/actions/research-unlock.js +166 -0
  151. package/dist/identity/actions/research-unlock.js.map +1 -0
  152. package/dist/identity/index.d.ts +62 -2
  153. package/dist/identity/index.d.ts.map +1 -1
  154. package/dist/identity/index.js +63 -12
  155. package/dist/identity/index.js.map +1 -1
  156. package/dist/index.d.ts +2 -1
  157. package/dist/index.d.ts.map +1 -1
  158. package/dist/index.js +4 -4
  159. package/dist/index.js.map +1 -1
  160. package/dist/internal/c4/account-decoding.d.ts +49 -0
  161. package/dist/internal/c4/account-decoding.d.ts.map +1 -0
  162. package/dist/internal/c4/account-decoding.js +74 -0
  163. package/dist/internal/c4/account-decoding.js.map +1 -0
  164. package/dist/internal/c4/career-xp.d.ts +58 -0
  165. package/dist/internal/c4/career-xp.d.ts.map +1 -0
  166. package/dist/internal/c4/career-xp.js +80 -0
  167. package/dist/internal/c4/career-xp.js.map +1 -0
  168. package/dist/internal/c4/cargo-instructions.d.ts +24 -0
  169. package/dist/internal/c4/cargo-instructions.d.ts.map +1 -0
  170. package/dist/internal/c4/cargo-instructions.js +30 -0
  171. package/dist/internal/c4/cargo-instructions.js.map +1 -0
  172. package/dist/internal/c4/cargo-pod.d.ts +15 -0
  173. package/dist/internal/c4/cargo-pod.d.ts.map +1 -0
  174. package/dist/internal/c4/cargo-pod.js +13 -0
  175. package/dist/internal/c4/cargo-pod.js.map +1 -0
  176. package/dist/internal/c4/character-modifier.d.ts +1 -1
  177. package/dist/internal/c4/character-modifier.d.ts.map +1 -1
  178. package/dist/internal/c4/character.d.ts +157 -0
  179. package/dist/internal/c4/character.d.ts.map +1 -0
  180. package/dist/internal/c4/character.js +64 -0
  181. package/dist/internal/c4/character.js.map +1 -0
  182. package/dist/internal/c4/claim-stake-building-definitions.d.ts.map +1 -1
  183. package/dist/internal/c4/claim-stake-building-definitions.js +2 -1
  184. package/dist/internal/c4/claim-stake-building-definitions.js.map +1 -1
  185. package/dist/internal/c4/claim-stake-configuration.d.ts.map +1 -1
  186. package/dist/internal/c4/claim-stake-configuration.js +5 -36
  187. package/dist/internal/c4/claim-stake-configuration.js.map +1 -1
  188. package/dist/internal/c4/claim-stake-definitions.d.ts +4 -0
  189. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  190. package/dist/internal/c4/claim-stake-definitions.js +6 -2
  191. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  192. package/dist/internal/c4/claim-stake-plots.d.ts +17 -0
  193. package/dist/internal/c4/claim-stake-plots.d.ts.map +1 -0
  194. package/dist/internal/c4/claim-stake-plots.js +29 -0
  195. package/dist/internal/c4/claim-stake-plots.js.map +1 -0
  196. package/dist/internal/c4/claim-stake-standing.d.ts +80 -0
  197. package/dist/internal/c4/claim-stake-standing.d.ts.map +1 -0
  198. package/dist/internal/c4/claim-stake-standing.js +61 -0
  199. package/dist/internal/c4/claim-stake-standing.js.map +1 -0
  200. package/dist/internal/c4/claim-stake-storage.d.ts +45 -0
  201. package/dist/internal/c4/claim-stake-storage.d.ts.map +1 -0
  202. package/dist/internal/c4/claim-stake-storage.js +207 -0
  203. package/dist/internal/c4/claim-stake-storage.js.map +1 -0
  204. package/dist/internal/c4/claim-stake.d.ts +9 -6
  205. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  206. package/dist/internal/c4/claim-stake.js +24 -56
  207. package/dist/internal/c4/claim-stake.js.map +1 -1
  208. package/dist/internal/c4/combat-storage.d.ts +20 -0
  209. package/dist/internal/c4/combat-storage.d.ts.map +1 -0
  210. package/dist/internal/c4/combat-storage.js +43 -0
  211. package/dist/internal/c4/combat-storage.js.map +1 -0
  212. package/dist/internal/c4/combat.d.ts +1 -55
  213. package/dist/internal/c4/combat.d.ts.map +1 -1
  214. package/dist/internal/c4/combat.js +16 -180
  215. package/dist/internal/c4/combat.js.map +1 -1
  216. package/dist/internal/c4/crafting-storage.d.ts +20 -0
  217. package/dist/internal/c4/crafting-storage.d.ts.map +1 -0
  218. package/dist/internal/c4/crafting-storage.js +54 -0
  219. package/dist/internal/c4/crafting-storage.js.map +1 -0
  220. package/dist/internal/c4/crafting.d.ts +9 -1
  221. package/dist/internal/c4/crafting.d.ts.map +1 -1
  222. package/dist/internal/c4/crafting.js +38 -98
  223. package/dist/internal/c4/crafting.js.map +1 -1
  224. package/dist/internal/c4/currency-cache.d.ts +1 -1
  225. package/dist/internal/c4/currency-cache.d.ts.map +1 -1
  226. package/dist/internal/c4/currency-cache.js +6 -9
  227. package/dist/internal/c4/currency-cache.js.map +1 -1
  228. package/dist/internal/c4/discriminators.d.ts +93 -0
  229. package/dist/internal/c4/discriminators.d.ts.map +1 -0
  230. package/dist/internal/c4/discriminators.js +190 -0
  231. package/dist/internal/c4/discriminators.js.map +1 -0
  232. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -1
  233. package/dist/internal/c4/faction-epoch-meter.js +5 -10
  234. package/dist/internal/c4/faction-epoch-meter.js.map +1 -1
  235. package/dist/internal/c4/faction-treasury.d.ts.map +1 -1
  236. package/dist/internal/c4/faction-treasury.js +11 -18
  237. package/dist/internal/c4/faction-treasury.js.map +1 -1
  238. package/dist/internal/c4/faction.d.ts +21 -0
  239. package/dist/internal/c4/faction.d.ts.map +1 -0
  240. package/dist/internal/c4/faction.js +23 -0
  241. package/dist/internal/c4/faction.js.map +1 -0
  242. package/dist/internal/c4/factions.d.ts +31 -3
  243. package/dist/internal/c4/factions.d.ts.map +1 -1
  244. package/dist/internal/c4/factions.js +103 -104
  245. package/dist/internal/c4/factions.js.map +1 -1
  246. package/dist/internal/c4/fleet-creation.d.ts +9 -2
  247. package/dist/internal/c4/fleet-creation.d.ts.map +1 -1
  248. package/dist/internal/c4/fleet-creation.js +15 -18
  249. package/dist/internal/c4/fleet-creation.js.map +1 -1
  250. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  251. package/dist/internal/c4/fleet-crew-binding.js +21 -49
  252. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  253. package/dist/internal/c4/fleet-disband-layout.d.ts +7 -0
  254. package/dist/internal/c4/fleet-disband-layout.d.ts.map +1 -0
  255. package/dist/internal/c4/fleet-disband-layout.js +7 -0
  256. package/dist/internal/c4/fleet-disband-layout.js.map +1 -0
  257. package/dist/internal/c4/fleet-disband.d.ts +41 -0
  258. package/dist/internal/c4/fleet-disband.d.ts.map +1 -0
  259. package/dist/internal/c4/fleet-disband.js +86 -0
  260. package/dist/internal/c4/fleet-disband.js.map +1 -0
  261. package/dist/internal/c4/fleet-points.d.ts +3 -0
  262. package/dist/internal/c4/fleet-points.d.ts.map +1 -0
  263. package/dist/internal/c4/fleet-points.js +8 -0
  264. package/dist/internal/c4/fleet-points.js.map +1 -0
  265. package/dist/internal/c4/fleet-ship-assembly.d.ts +20 -5
  266. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -1
  267. package/dist/internal/c4/fleet-ship-assembly.js +62 -10
  268. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -1
  269. package/dist/internal/c4/fleet-storage.d.ts +44 -0
  270. package/dist/internal/c4/fleet-storage.d.ts.map +1 -0
  271. package/dist/internal/c4/fleet-storage.js +108 -0
  272. package/dist/internal/c4/fleet-storage.js.map +1 -0
  273. package/dist/internal/c4/fleet-sync.d.ts +5 -0
  274. package/dist/internal/c4/fleet-sync.d.ts.map +1 -0
  275. package/dist/internal/c4/fleet-sync.js +15 -0
  276. package/dist/internal/c4/fleet-sync.js.map +1 -0
  277. package/dist/internal/c4/fleet.d.ts +20 -5
  278. package/dist/internal/c4/fleet.d.ts.map +1 -1
  279. package/dist/internal/c4/fleet.js +24 -84
  280. package/dist/internal/c4/fleet.js.map +1 -1
  281. package/dist/internal/c4/game.d.ts +76 -21
  282. package/dist/internal/c4/game.d.ts.map +1 -1
  283. package/dist/internal/c4/game.js +127 -116
  284. package/dist/internal/c4/game.js.map +1 -1
  285. package/dist/internal/c4/identity.d.ts +2 -153
  286. package/dist/internal/c4/identity.d.ts.map +1 -1
  287. package/dist/internal/c4/identity.js +19 -126
  288. package/dist/internal/c4/identity.js.map +1 -1
  289. package/dist/internal/c4/local-market-order.d.ts +4 -6
  290. package/dist/internal/c4/local-market-order.d.ts.map +1 -1
  291. package/dist/internal/c4/local-market-order.js +5 -6
  292. package/dist/internal/c4/local-market-order.js.map +1 -1
  293. package/dist/internal/c4/loot-layout.js +1 -1
  294. package/dist/internal/c4/loot-layout.js.map +1 -1
  295. package/dist/internal/c4/loot.d.ts +89 -0
  296. package/dist/internal/c4/loot.d.ts.map +1 -0
  297. package/dist/internal/c4/loot.js +109 -0
  298. package/dist/internal/c4/loot.js.map +1 -0
  299. package/dist/internal/c4/loyalty.d.ts +7 -3
  300. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  301. package/dist/internal/c4/loyalty.js +41 -130
  302. package/dist/internal/c4/loyalty.js.map +1 -1
  303. package/dist/internal/c4/market-storage.d.ts +25 -0
  304. package/dist/internal/c4/market-storage.d.ts.map +1 -0
  305. package/dist/internal/c4/market-storage.js +53 -0
  306. package/dist/internal/c4/market-storage.js.map +1 -0
  307. package/dist/internal/c4/market.d.ts +3 -0
  308. package/dist/internal/c4/market.d.ts.map +1 -1
  309. package/dist/internal/c4/market.js +20 -76
  310. package/dist/internal/c4/market.js.map +1 -1
  311. package/dist/internal/c4/mining-instructions.d.ts +1 -1
  312. package/dist/internal/c4/mining-instructions.d.ts.map +1 -1
  313. package/dist/internal/c4/mining-instructions.js +1 -1
  314. package/dist/internal/c4/mining-instructions.js.map +1 -1
  315. package/dist/internal/c4/open-signal.d.ts +1 -1
  316. package/dist/internal/c4/open-signal.d.ts.map +1 -1
  317. package/dist/internal/c4/open-signal.js +1 -1
  318. package/dist/internal/c4/open-signal.js.map +1 -1
  319. package/dist/internal/c4/pda.d.ts +49 -1
  320. package/dist/internal/c4/pda.d.ts.map +1 -1
  321. package/dist/internal/c4/pda.js +122 -17
  322. package/dist/internal/c4/pda.js.map +1 -1
  323. package/dist/internal/c4/profile-faction.d.ts +2 -1
  324. package/dist/internal/c4/profile-faction.d.ts.map +1 -1
  325. package/dist/internal/c4/profile-faction.js +36 -72
  326. package/dist/internal/c4/profile-faction.js.map +1 -1
  327. package/dist/internal/c4/profile-permissions.d.ts +1 -1
  328. package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
  329. package/dist/internal/c4/profile-permissions.js +16 -1
  330. package/dist/internal/c4/profile-permissions.js.map +1 -1
  331. package/dist/internal/c4/rewards.d.ts +1 -34
  332. package/dist/internal/c4/rewards.d.ts.map +1 -1
  333. package/dist/internal/c4/rewards.js +23 -170
  334. package/dist/internal/c4/rewards.js.map +1 -1
  335. package/dist/internal/c4/runtime-bindings.d.ts +1 -1
  336. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -1
  337. package/dist/internal/c4/runtime-bindings.js +1 -1
  338. package/dist/internal/c4/runtime-bindings.js.map +1 -1
  339. package/dist/internal/c4/scan-lifecycle.d.ts +21 -3
  340. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -1
  341. package/dist/internal/c4/scan-lifecycle.js +35 -44
  342. package/dist/internal/c4/scan-lifecycle.js.map +1 -1
  343. package/dist/internal/c4/scan-storage.d.ts +7 -0
  344. package/dist/internal/c4/scan-storage.d.ts.map +1 -0
  345. package/dist/internal/c4/scan-storage.js +10 -0
  346. package/dist/internal/c4/scan-storage.js.map +1 -0
  347. package/dist/internal/c4/scanning.d.ts +3 -13
  348. package/dist/internal/c4/scanning.d.ts.map +1 -1
  349. package/dist/internal/c4/scanning.js +25 -75
  350. package/dist/internal/c4/scanning.js.map +1 -1
  351. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  352. package/dist/internal/c4/ship-stats.js +24 -26
  353. package/dist/internal/c4/ship-stats.js.map +1 -1
  354. package/dist/internal/c4/starbase.d.ts.map +1 -1
  355. package/dist/internal/c4/starbase.js +24 -96
  356. package/dist/internal/c4/starbase.js.map +1 -1
  357. package/dist/internal/c4/stimulant.d.ts +26 -0
  358. package/dist/internal/c4/stimulant.d.ts.map +1 -0
  359. package/dist/internal/c4/stimulant.js +36 -0
  360. package/dist/internal/c4/stimulant.js.map +1 -0
  361. package/dist/internal/c4/wallet-cargo-cache.js +2 -1
  362. package/dist/internal/c4/wallet-cargo-cache.js.map +1 -1
  363. package/dist/internal/c4/world.d.ts +6 -2
  364. package/dist/internal/c4/world.d.ts.map +1 -1
  365. package/dist/internal/c4/world.js +32 -107
  366. package/dist/internal/c4/world.js.map +1 -1
  367. package/dist/internal/fleet-route.d.ts +12 -0
  368. package/dist/internal/fleet-route.d.ts.map +1 -0
  369. package/dist/internal/fleet-route.js +11 -0
  370. package/dist/internal/fleet-route.js.map +1 -0
  371. package/dist/internal/fleet.d.ts +3 -3
  372. package/dist/internal/fleet.d.ts.map +1 -1
  373. package/dist/internal/fleet.js +1 -5
  374. package/dist/internal/fleet.js.map +1 -1
  375. package/dist/internal/loyalty-atlas-bank-state.d.ts +3 -2
  376. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -1
  377. package/dist/internal/loyalty-atlas-bank-state.js +4 -3
  378. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -1
  379. package/dist/internal/planning/account-state.d.ts +6 -0
  380. package/dist/internal/planning/account-state.d.ts.map +1 -1
  381. package/dist/internal/planning/account-state.js +13 -0
  382. package/dist/internal/planning/account-state.js.map +1 -1
  383. package/dist/internal/planning/arrival-guards.d.ts +0 -1
  384. package/dist/internal/planning/arrival-guards.d.ts.map +1 -1
  385. package/dist/internal/planning/arrival-guards.js +3 -18
  386. package/dist/internal/planning/arrival-guards.js.map +1 -1
  387. package/dist/internal/planning/authorization-adapter.d.ts +34 -11
  388. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  389. package/dist/internal/planning/authorization-adapter.js +116 -12
  390. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  391. package/dist/internal/planning/cargo-storage-actions.d.ts +8 -0
  392. package/dist/internal/planning/cargo-storage-actions.d.ts.map +1 -0
  393. package/dist/internal/planning/cargo-storage-actions.js +97 -0
  394. package/dist/internal/planning/cargo-storage-actions.js.map +1 -0
  395. package/dist/internal/planning/character-access.d.ts +28 -0
  396. package/dist/internal/planning/character-access.d.ts.map +1 -0
  397. package/dist/internal/planning/character-access.js +41 -0
  398. package/dist/internal/planning/character-access.js.map +1 -0
  399. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -1
  400. package/dist/internal/planning/character-registration-guard.js +2 -1
  401. package/dist/internal/planning/character-registration-guard.js.map +1 -1
  402. package/dist/internal/planning/character-registration.d.ts.map +1 -1
  403. package/dist/internal/planning/character-registration.js +2 -1
  404. package/dist/internal/planning/character-registration.js.map +1 -1
  405. package/dist/internal/planning/claim-stake-storage-actions.d.ts +12 -0
  406. package/dist/internal/planning/claim-stake-storage-actions.d.ts.map +1 -0
  407. package/dist/internal/planning/claim-stake-storage-actions.js +63 -0
  408. package/dist/internal/planning/claim-stake-storage-actions.js.map +1 -0
  409. package/dist/internal/planning/combat-storage-actions.d.ts +9 -0
  410. package/dist/internal/planning/combat-storage-actions.d.ts.map +1 -0
  411. package/dist/internal/planning/combat-storage-actions.js +55 -0
  412. package/dist/internal/planning/combat-storage-actions.js.map +1 -0
  413. package/dist/internal/planning/crafting-storage-actions.d.ts +7 -0
  414. package/dist/internal/planning/crafting-storage-actions.d.ts.map +1 -0
  415. package/dist/internal/planning/crafting-storage-actions.js +64 -0
  416. package/dist/internal/planning/crafting-storage-actions.js.map +1 -0
  417. package/dist/internal/planning/currency-cache-guard.d.ts +3 -1
  418. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -1
  419. package/dist/internal/planning/currency-cache-guard.js +47 -2
  420. package/dist/internal/planning/currency-cache-guard.js.map +1 -1
  421. package/dist/internal/planning/democracy-history.d.ts.map +1 -1
  422. package/dist/internal/planning/democracy-history.js +6 -15
  423. package/dist/internal/planning/democracy-history.js.map +1 -1
  424. package/dist/internal/planning/direct-options.d.ts +17 -0
  425. package/dist/internal/planning/direct-options.d.ts.map +1 -0
  426. package/dist/internal/planning/direct-options.js +43 -0
  427. package/dist/internal/planning/direct-options.js.map +1 -0
  428. package/dist/internal/planning/disband-storage-actions.d.ts +9 -0
  429. package/dist/internal/planning/disband-storage-actions.d.ts.map +1 -0
  430. package/dist/internal/planning/disband-storage-actions.js +24 -0
  431. package/dist/internal/planning/disband-storage-actions.js.map +1 -0
  432. package/dist/internal/planning/faction-enrollment.d.ts +0 -2
  433. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  434. package/dist/internal/planning/faction-enrollment.js +0 -9
  435. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  436. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -1
  437. package/dist/internal/planning/fleet-arrival.js +10 -8
  438. package/dist/internal/planning/fleet-arrival.js.map +1 -1
  439. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -1
  440. package/dist/internal/planning/fleet-attack-xp.js +5 -11
  441. package/dist/internal/planning/fleet-attack-xp.js.map +1 -1
  442. package/dist/internal/planning/fleet-creation.d.ts.map +1 -1
  443. package/dist/internal/planning/fleet-creation.js +17 -36
  444. package/dist/internal/planning/fleet-creation.js.map +1 -1
  445. package/dist/internal/planning/fleet-crew-guard.d.ts +2 -1
  446. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -1
  447. package/dist/internal/planning/fleet-crew-guard.js +2 -1
  448. package/dist/internal/planning/fleet-crew-guard.js.map +1 -1
  449. package/dist/internal/planning/fleet-crew-transfer.d.ts +1 -1
  450. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -1
  451. package/dist/internal/planning/fleet-crew-transfer.js +45 -24
  452. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -1
  453. package/dist/internal/planning/fleet-disband-guard.d.ts +12 -0
  454. package/dist/internal/planning/fleet-disband-guard.d.ts.map +1 -0
  455. package/dist/internal/planning/fleet-disband-guard.js +54 -0
  456. package/dist/internal/planning/fleet-disband-guard.js.map +1 -0
  457. package/dist/internal/planning/fleet-disband.d.ts +36 -0
  458. package/dist/internal/planning/fleet-disband.d.ts.map +1 -0
  459. package/dist/internal/planning/fleet-disband.js +82 -0
  460. package/dist/internal/planning/fleet-disband.js.map +1 -0
  461. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +3 -3
  462. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -1
  463. package/dist/internal/planning/fleet-dock-funding-guard.js +87 -96
  464. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -1
  465. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -1
  466. package/dist/internal/planning/fleet-dock-funding.js +10 -0
  467. package/dist/internal/planning/fleet-dock-funding.js.map +1 -1
  468. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -1
  469. package/dist/internal/planning/fleet-docking-guard.js +3 -1
  470. package/dist/internal/planning/fleet-docking-guard.js.map +1 -1
  471. package/dist/internal/planning/fleet-docking.d.ts +17 -2
  472. package/dist/internal/planning/fleet-docking.d.ts.map +1 -1
  473. package/dist/internal/planning/fleet-docking.js +83 -62
  474. package/dist/internal/planning/fleet-docking.js.map +1 -1
  475. package/dist/internal/planning/fleet-rental.d.ts +5 -0
  476. package/dist/internal/planning/fleet-rental.d.ts.map +1 -0
  477. package/dist/internal/planning/fleet-rental.js +9 -0
  478. package/dist/internal/planning/fleet-rental.js.map +1 -0
  479. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -1
  480. package/dist/internal/planning/fleet-respawn.js +10 -12
  481. package/dist/internal/planning/fleet-respawn.js.map +1 -1
  482. package/dist/internal/planning/fleet-ship-assembly.d.ts +2 -0
  483. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -1
  484. package/dist/internal/planning/fleet-ship-assembly.js +94 -64
  485. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -1
  486. package/dist/internal/planning/fleet-state.d.ts +25 -0
  487. package/dist/internal/planning/fleet-state.d.ts.map +1 -0
  488. package/dist/internal/planning/fleet-state.js +28 -0
  489. package/dist/internal/planning/fleet-state.js.map +1 -0
  490. package/dist/internal/planning/governance-fees.d.ts.map +1 -1
  491. package/dist/internal/planning/governance-fees.js +7 -15
  492. package/dist/internal/planning/governance-fees.js.map +1 -1
  493. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -1
  494. package/dist/internal/planning/local-market-order-funding.js +4 -2
  495. package/dist/internal/planning/local-market-order-funding.js.map +1 -1
  496. package/dist/internal/planning/local-market-order.d.ts +4 -4
  497. package/dist/internal/planning/local-market-order.d.ts.map +1 -1
  498. package/dist/internal/planning/local-market-order.js +82 -109
  499. package/dist/internal/planning/local-market-order.js.map +1 -1
  500. package/dist/internal/planning/market-storage-actions.d.ts +7 -0
  501. package/dist/internal/planning/market-storage-actions.d.ts.map +1 -0
  502. package/dist/internal/planning/market-storage-actions.js +71 -0
  503. package/dist/internal/planning/market-storage-actions.js.map +1 -0
  504. package/dist/internal/planning/mining-stop.d.ts.map +1 -1
  505. package/dist/internal/planning/mining-stop.js +2 -1
  506. package/dist/internal/planning/mining-stop.js.map +1 -1
  507. package/dist/internal/planning/mining-storage-actions.d.ts +11 -0
  508. package/dist/internal/planning/mining-storage-actions.d.ts.map +1 -0
  509. package/dist/internal/planning/mining-storage-actions.js +57 -0
  510. package/dist/internal/planning/mining-storage-actions.js.map +1 -0
  511. package/dist/internal/planning/movement-storage-actions.d.ts +7 -0
  512. package/dist/internal/planning/movement-storage-actions.d.ts.map +1 -0
  513. package/dist/internal/planning/movement-storage-actions.js +38 -0
  514. package/dist/internal/planning/movement-storage-actions.js.map +1 -0
  515. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -1
  516. package/dist/internal/planning/movement-xp-guard.js +3 -2
  517. package/dist/internal/planning/movement-xp-guard.js.map +1 -1
  518. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -1
  519. package/dist/internal/planning/open-signal-guard.js +2 -1
  520. package/dist/internal/planning/open-signal-guard.js.map +1 -1
  521. package/dist/internal/planning/open-signal.d.ts.map +1 -1
  522. package/dist/internal/planning/open-signal.js +16 -7
  523. package/dist/internal/planning/open-signal.js.map +1 -1
  524. package/dist/internal/planning/original-token.d.ts +40 -0
  525. package/dist/internal/planning/original-token.d.ts.map +1 -0
  526. package/dist/internal/planning/original-token.js +112 -0
  527. package/dist/internal/planning/original-token.js.map +1 -0
  528. package/dist/internal/planning/own-starbase-facts.d.ts +37 -0
  529. package/dist/internal/planning/own-starbase-facts.d.ts.map +1 -0
  530. package/dist/internal/planning/own-starbase-facts.js +52 -0
  531. package/dist/internal/planning/own-starbase-facts.js.map +1 -0
  532. package/dist/internal/planning/plan-fields.d.ts +60 -0
  533. package/dist/internal/planning/plan-fields.d.ts.map +1 -0
  534. package/dist/internal/planning/plan-fields.js +159 -0
  535. package/dist/internal/planning/plan-fields.js.map +1 -0
  536. package/dist/internal/planning/plan-guards.d.ts +4 -0
  537. package/dist/internal/planning/plan-guards.d.ts.map +1 -0
  538. package/dist/internal/planning/plan-guards.js +184 -0
  539. package/dist/internal/planning/plan-guards.js.map +1 -0
  540. package/dist/internal/planning/profile-key.d.ts +13 -0
  541. package/dist/internal/planning/profile-key.d.ts.map +1 -0
  542. package/dist/internal/planning/profile-key.js +20 -0
  543. package/dist/internal/planning/profile-key.js.map +1 -0
  544. package/dist/internal/planning/profile-storage-funding-guard.d.ts +29 -0
  545. package/dist/internal/planning/profile-storage-funding-guard.d.ts.map +1 -0
  546. package/dist/internal/planning/profile-storage-funding-guard.js +115 -0
  547. package/dist/internal/planning/profile-storage-funding-guard.js.map +1 -0
  548. package/dist/internal/planning/profile-storage-funding.d.ts +46 -0
  549. package/dist/internal/planning/profile-storage-funding.d.ts.map +1 -0
  550. package/dist/internal/planning/profile-storage-funding.js +58 -0
  551. package/dist/internal/planning/profile-storage-funding.js.map +1 -0
  552. package/dist/internal/planning/recipe-state.d.ts +4 -1
  553. package/dist/internal/planning/recipe-state.d.ts.map +1 -1
  554. package/dist/internal/planning/recipe-state.js +7 -4
  555. package/dist/internal/planning/recipe-state.js.map +1 -1
  556. package/dist/internal/planning/region-access.d.ts +30 -0
  557. package/dist/internal/planning/region-access.d.ts.map +1 -0
  558. package/dist/internal/planning/region-access.js +94 -0
  559. package/dist/internal/planning/region-access.js.map +1 -0
  560. package/dist/internal/planning/rent-catalog.d.ts +37 -0
  561. package/dist/internal/planning/rent-catalog.d.ts.map +1 -0
  562. package/dist/internal/planning/rent-catalog.js +165 -0
  563. package/dist/internal/planning/rent-catalog.js.map +1 -0
  564. package/dist/internal/planning/research-unlock.d.ts +69 -0
  565. package/dist/internal/planning/research-unlock.d.ts.map +1 -0
  566. package/dist/internal/planning/research-unlock.js +287 -0
  567. package/dist/internal/planning/research-unlock.js.map +1 -0
  568. package/dist/internal/planning/respawn-guards.js +2 -1
  569. package/dist/internal/planning/respawn-guards.js.map +1 -1
  570. package/dist/internal/planning/runtime-guards.d.ts +0 -2
  571. package/dist/internal/planning/runtime-guards.d.ts.map +1 -1
  572. package/dist/internal/planning/runtime-guards.js +49 -29
  573. package/dist/internal/planning/runtime-guards.js.map +1 -1
  574. package/dist/internal/planning/scan-completion-guard.d.ts +6 -6
  575. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -1
  576. package/dist/internal/planning/scan-completion-guard.js +8 -7
  577. package/dist/internal/planning/scan-completion-guard.js.map +1 -1
  578. package/dist/internal/planning/scan-completion.d.ts.map +1 -1
  579. package/dist/internal/planning/scan-completion.js +9 -7
  580. package/dist/internal/planning/scan-completion.js.map +1 -1
  581. package/dist/internal/planning/scan-detect-guard.d.ts +1 -1
  582. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -1
  583. package/dist/internal/planning/scan-detect-guard.js +2 -2
  584. package/dist/internal/planning/scan-detect-guard.js.map +1 -1
  585. package/dist/internal/planning/scan-detect.d.ts +1 -1
  586. package/dist/internal/planning/scan-detect.d.ts.map +1 -1
  587. package/dist/internal/planning/scan-detect.js +10 -8
  588. package/dist/internal/planning/scan-detect.js.map +1 -1
  589. package/dist/internal/planning/scan-idle-scope.d.ts +5 -0
  590. package/dist/internal/planning/scan-idle-scope.d.ts.map +1 -0
  591. package/dist/internal/planning/scan-idle-scope.js +5 -0
  592. package/dist/internal/planning/scan-idle-scope.js.map +1 -0
  593. package/dist/internal/planning/scan-storage-actions.d.ts +9 -0
  594. package/dist/internal/planning/scan-storage-actions.d.ts.map +1 -0
  595. package/dist/internal/planning/scan-storage-actions.js +27 -0
  596. package/dist/internal/planning/scan-storage-actions.js.map +1 -0
  597. package/dist/internal/planning/ship-import-funding.js +3 -2
  598. package/dist/internal/planning/ship-import-funding.js.map +1 -1
  599. package/dist/internal/planning/ship-token.d.ts +1 -5
  600. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  601. package/dist/internal/planning/ship-token.js +0 -36
  602. package/dist/internal/planning/ship-token.js.map +1 -1
  603. package/dist/internal/planning/starbase-player-owner.d.ts +21 -0
  604. package/dist/internal/planning/starbase-player-owner.d.ts.map +1 -0
  605. package/dist/internal/planning/starbase-player-owner.js +17 -0
  606. package/dist/internal/planning/starbase-player-owner.js.map +1 -0
  607. package/dist/internal/planning/starbase-player-recovery-guard.d.ts +7 -0
  608. package/dist/internal/planning/starbase-player-recovery-guard.d.ts.map +1 -0
  609. package/dist/internal/planning/starbase-player-recovery-guard.js +39 -0
  610. package/dist/internal/planning/starbase-player-recovery-guard.js.map +1 -0
  611. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -1
  612. package/dist/internal/planning/starbase-system-guard.js +2 -1
  613. package/dist/internal/planning/starbase-system-guard.js.map +1 -1
  614. package/dist/internal/planning/starbase-system.d.ts +5 -2
  615. package/dist/internal/planning/starbase-system.d.ts.map +1 -1
  616. package/dist/internal/planning/starbase-system.js +6 -3
  617. package/dist/internal/planning/starbase-system.js.map +1 -1
  618. package/dist/internal/planning/storage-action-readers.d.ts +10 -0
  619. package/dist/internal/planning/storage-action-readers.d.ts.map +1 -0
  620. package/dist/internal/planning/storage-action-readers.js +58 -0
  621. package/dist/internal/planning/storage-action-readers.js.map +1 -0
  622. package/dist/internal/planning/storage-actions.d.ts +89 -0
  623. package/dist/internal/planning/storage-actions.d.ts.map +1 -0
  624. package/dist/internal/planning/storage-actions.js +183 -0
  625. package/dist/internal/planning/storage-actions.js.map +1 -0
  626. package/dist/internal/planning/token-mint.d.ts.map +1 -1
  627. package/dist/internal/planning/token-mint.js +2 -1
  628. package/dist/internal/planning/token-mint.js.map +1 -1
  629. package/dist/internal/planning/wallet-starbase.d.ts +34 -0
  630. package/dist/internal/planning/wallet-starbase.d.ts.map +1 -0
  631. package/dist/internal/planning/wallet-starbase.js +39 -0
  632. package/dist/internal/planning/wallet-starbase.js.map +1 -0
  633. package/dist/internal/planning/xp-runtime.d.ts.map +1 -1
  634. package/dist/internal/planning/xp-runtime.js +16 -20
  635. package/dist/internal/planning/xp-runtime.js.map +1 -1
  636. package/dist/internal/read-meta.d.ts +12 -0
  637. package/dist/internal/read-meta.d.ts.map +1 -1
  638. package/dist/internal/read-meta.js +10 -0
  639. package/dist/internal/read-meta.js.map +1 -1
  640. package/dist/loyalty/actions/index.d.ts +1 -1
  641. package/dist/loyalty/actions/index.d.ts.map +1 -1
  642. package/dist/loyalty/actions/index.js +12 -43
  643. package/dist/loyalty/actions/index.js.map +1 -1
  644. package/dist/loyalty/index.d.ts +4 -0
  645. package/dist/loyalty/index.d.ts.map +1 -1
  646. package/dist/loyalty/index.js +19 -27
  647. package/dist/loyalty/index.js.map +1 -1
  648. package/dist/markets/actions/index.d.ts +1 -1
  649. package/dist/markets/actions/index.d.ts.map +1 -1
  650. package/dist/markets/actions/index.js +138 -176
  651. package/dist/markets/actions/index.js.map +1 -1
  652. package/dist/markets/actions/trade-faction-market.d.ts +4 -2
  653. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -1
  654. package/dist/markets/actions/trade-faction-market.js +59 -39
  655. package/dist/markets/actions/trade-faction-market.js.map +1 -1
  656. package/dist/markets/index.d.ts.map +1 -1
  657. package/dist/markets/index.js +3 -11
  658. package/dist/markets/index.js.map +1 -1
  659. package/dist/mining/actions/index.d.ts +1 -1
  660. package/dist/mining/actions/index.d.ts.map +1 -1
  661. package/dist/mining/actions/index.js +81 -44
  662. package/dist/mining/actions/index.js.map +1 -1
  663. package/dist/mining/estimate-input.d.ts +103 -0
  664. package/dist/mining/estimate-input.d.ts.map +1 -0
  665. package/dist/mining/estimate-input.js +86 -0
  666. package/dist/mining/estimate-input.js.map +1 -0
  667. package/dist/mining/index.d.ts +1 -0
  668. package/dist/mining/index.d.ts.map +1 -1
  669. package/dist/mining/index.js +4 -11
  670. package/dist/mining/index.js.map +1 -1
  671. package/dist/planning/assembly.d.ts +1 -1
  672. package/dist/planning/assembly.d.ts.map +1 -1
  673. package/dist/planning/assembly.js +6 -30
  674. package/dist/planning/assembly.js.map +1 -1
  675. package/dist/planning/execution.d.ts +1 -0
  676. package/dist/planning/execution.d.ts.map +1 -1
  677. package/dist/planning/execution.js +149 -45
  678. package/dist/planning/execution.js.map +1 -1
  679. package/dist/planning/index.d.ts +70 -7
  680. package/dist/planning/index.d.ts.map +1 -1
  681. package/dist/planning/index.js +28 -1141
  682. package/dist/planning/index.js.map +1 -1
  683. package/dist/planning/plan-construction.d.ts +25 -0
  684. package/dist/planning/plan-construction.d.ts.map +1 -0
  685. package/dist/planning/plan-construction.js +143 -0
  686. package/dist/planning/plan-construction.js.map +1 -0
  687. package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
  688. package/dist/planning/plan-sequence-execution.js +1 -11
  689. package/dist/planning/plan-sequence-execution.js.map +1 -1
  690. package/dist/planning/plan-validation.d.ts +17 -0
  691. package/dist/planning/plan-validation.d.ts.map +1 -0
  692. package/dist/planning/plan-validation.js +147 -0
  693. package/dist/planning/plan-validation.js.map +1 -0
  694. package/dist/registry/cargo.d.ts +2 -2
  695. package/dist/registry/cargo.d.ts.map +1 -1
  696. package/dist/registry/cargo.js +3 -4
  697. package/dist/registry/cargo.js.map +1 -1
  698. package/dist/registry/definition-section-snapshot.d.ts +1 -1
  699. package/dist/registry/definition-section-snapshot.d.ts.map +1 -1
  700. package/dist/registry/definition-section-snapshot.js +10 -3
  701. package/dist/registry/definition-section-snapshot.js.map +1 -1
  702. package/dist/registry/index.d.ts +31 -4
  703. package/dist/registry/index.d.ts.map +1 -1
  704. package/dist/registry/index.js +226 -227
  705. package/dist/registry/index.js.map +1 -1
  706. package/dist/registry/onboarding.d.ts.map +1 -1
  707. package/dist/registry/onboarding.js +4 -2
  708. package/dist/registry/onboarding.js.map +1 -1
  709. package/dist/registry/ship-stats-snapshot.d.ts.map +1 -1
  710. package/dist/registry/ship-stats-snapshot.js +19 -5
  711. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  712. package/dist/registry/ships.js +1 -1
  713. package/dist/registry/ships.js.map +1 -1
  714. package/dist/rewards/index.d.ts +11 -5
  715. package/dist/rewards/index.d.ts.map +1 -1
  716. package/dist/rewards/index.js +10 -21
  717. package/dist/rewards/index.js.map +1 -1
  718. package/dist/scanning/actions/index.d.ts +1 -1
  719. package/dist/scanning/actions/index.d.ts.map +1 -1
  720. package/dist/scanning/actions/index.js +38 -8
  721. package/dist/scanning/actions/index.js.map +1 -1
  722. package/dist/scanning/index.d.ts +6 -11
  723. package/dist/scanning/index.d.ts.map +1 -1
  724. package/dist/scanning/index.js +7 -15
  725. package/dist/scanning/index.js.map +1 -1
  726. package/dist/scanning/odds.d.ts +5 -1
  727. package/dist/scanning/odds.d.ts.map +1 -1
  728. package/dist/scanning/odds.js.map +1 -1
  729. package/dist/scanning/signals.d.ts +6 -1
  730. package/dist/scanning/signals.d.ts.map +1 -1
  731. package/dist/scanning/signals.js +3 -1
  732. package/dist/scanning/signals.js.map +1 -1
  733. package/dist/starbases/actions/index.d.ts +49 -4
  734. package/dist/starbases/actions/index.d.ts.map +1 -1
  735. package/dist/starbases/actions/index.js +120 -69
  736. package/dist/starbases/actions/index.js.map +1 -1
  737. package/dist/starbases/index.d.ts +18 -0
  738. package/dist/starbases/index.d.ts.map +1 -1
  739. package/dist/starbases/index.js +24 -11
  740. package/dist/starbases/index.js.map +1 -1
  741. package/dist/world/index.d.ts +87 -13
  742. package/dist/world/index.d.ts.map +1 -1
  743. package/dist/world/index.js +88 -22
  744. package/dist/world/index.js.map +1 -1
  745. package/dist/world/planet-claim-stake-plots.d.ts +49 -40
  746. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -1
  747. package/dist/world/planet-claim-stake-plots.js +47 -40
  748. package/dist/world/planet-claim-stake-plots.js.map +1 -1
  749. package/dist/world/starbase-status.d.ts +54 -13
  750. package/dist/world/starbase-status.d.ts.map +1 -1
  751. package/dist/world/starbase-status.js +65 -0
  752. package/dist/world/starbase-status.js.map +1 -1
  753. package/package.json +2 -2
  754. package/dist/internal/c4/faction-adapter.d.ts +0 -12
  755. package/dist/internal/c4/faction-adapter.d.ts.map +0 -1
  756. package/dist/internal/c4/faction-adapter.js +0 -52
  757. package/dist/internal/c4/faction-adapter.js.map +0 -1
  758. package/dist/internal/planning/movement-character.d.ts +0 -7
  759. package/dist/internal/planning/movement-character.d.ts.map +0 -1
  760. package/dist/internal/planning/movement-character.js +0 -41
  761. package/dist/internal/planning/movement-character.js.map +0 -1
@@ -10,9 +10,10 @@ import { resolveFleetRespawn } from '../internal/planning/fleet-respawn.js';
10
10
  import { validateFleetAttackActors } from '../internal/planning/fleet-attack-xp.js';
11
11
  import { RENT_ADDRESS, readRent } from '../internal/planning/rent.js';
12
12
  import { getBase64Decoder, } from '@solana/kit';
13
- import { hashMovementCharacter } from '../internal/planning/movement-character.js';
13
+ import { hashCharacterAccess } from '../internal/planning/character-access.js';
14
14
  import { validateFleetDockingPolicy } from '../internal/planning/fleet-docking.js';
15
15
  import { validateStarbaseSystem } from '../internal/planning/starbase-system.js';
16
+ import { fleetActionCoordinate, hashRegionAccess, hashRegionPath, } from '../internal/planning/region-access.js';
16
17
  import { revalidateCharacterRegistration, isEmptySystemAccount, } from '../internal/planning/character-registration.js';
17
18
  import { validateFleetArrivalIntent } from '../internal/planning/fleet-arrival.js';
18
19
  import { isRuntimeGuard, revalidateRuntimeGuards, } from '../internal/planning/runtime-guards.js';
@@ -24,16 +25,24 @@ import { matchesFactionTradeState } from '../internal/planning/faction-trade-sta
24
25
  import { resolveFleetShipAssembly, validateFleetShipAssembly, } from '../internal/planning/fleet-ship-assembly.js';
25
26
  import { resolveFleetCreation, validateFleetCreation, } from '../internal/planning/fleet-creation.js';
26
27
  import { validateTokenMint } from '../internal/planning/token-mint.js';
28
+ import { resolveResearchUnlock, validateResearchUnlock, } from '../internal/planning/research-unlock.js';
29
+ import { storageSteps, validateStorageFunding, } from '../internal/planning/storage-actions.js';
30
+ import { readStorageAction, storageActionAccounts, } from '../internal/planning/storage-action-readers.js';
31
+ import { decodeGameCargoConfigurationRows } from '../internal/c4/game.js';
32
+ import { CLOCK_ADDRESS } from '../internal/planning/faction-enrollment.js';
33
+ import { decodeGameResearchUnlockRules } from '../internal/c4/game.js';
27
34
  import { hashGameShipConfigurations, decodeGameShipAssemblyCatalog, } from '../registry/ships.js';
28
35
  import { validateGameForCharacterRegistration } from '../registry/onboarding.js';
29
36
  import { hashAccountState } from '../internal/planning/account-state.js';
30
37
  import { hashGameCargoConfigurationGuards } from '../registry/cargo.js';
31
38
  import { validateWalletCargoCache } from '../internal/c4/wallet-cargo-cache.js';
32
- import { getAddressEncoder, getProgramDerivedAddress, getAddressDecoder, getBase58Decoder, getBase64EncodedWireTransaction, getSignatureFromTransaction, isAddress, isTransactionModifyingSigner, isTransactionPartialSigner, isTransactionSendingSigner, signAndSendTransactionWithSigners, signTransactionWithSigners, } from '@solana/kit';
39
+ import { deriveCargoDefinitionsCacheAddress } from '../internal/c4/pda.js';
40
+ import { getBase58Decoder, getBase64EncodedWireTransaction, getSignatureFromTransaction, isAddress, isTransactionModifyingSigner, isTransactionPartialSigner, isTransactionSendingSigner, signAndSendTransactionWithSigners, signTransactionWithSigners, } from '@solana/kit';
33
41
  import { InvalidActionInputError, SageSdkError } from '../client/errors.js';
34
42
  import { invalidateContextAddresses, readContextRawAccounts, } from '../client/reconciliation.js';
35
- import { assembleValidatedPlanWithContext, validateAssemblyPolicy, validatePlanAssemblyPolicy, validatePlan, } from './assembly.js';
43
+ import { assembleValidatedPlanWithContext, requireWriteRpc, validateAssemblyPolicy, validatePlanAssemblyPolicy, validatePlan, } from './assembly.js';
36
44
  import { hashRecipeConfiguration, validateRecipeUsage, } from '../internal/planning/recipe-state.js';
45
+ import { originalTokenBalance } from '../internal/planning/original-token.js';
37
46
  const DEFAULT_TIMEOUT_MS = 60_000;
38
47
  const DEFAULT_POLL_INTERVAL_MS = 500;
39
48
  const MAX_HOST_TIMER_MS = 2_147_483_647;
@@ -55,11 +64,6 @@ class SignerMismatchError extends InvalidActionInputError {
55
64
  this.unexpected = unexpected;
56
65
  }
57
66
  }
58
- class MissingWriteTransportError extends SageSdkError {
59
- constructor() {
60
- super('MISSING_WRITE_TRANSPORT', 'This SAGE context has no writeRpc transport, so it cannot execute a Plan. Pass the optional writeRpc transport when creating the context, then retry.');
61
- }
62
- }
63
67
  export class ActionPreconditionFailedError extends SageSdkError {
64
68
  describes;
65
69
  observedSlot;
@@ -305,22 +309,12 @@ function assertPlanTransactionMessage(expected, actual) {
305
309
  invalid('signers', 'modified compiled transaction message', 'signers that preserve the assembled fee payer, instructions, programs, and account roles while optionally replacing only the transaction lifetime', 'Use a signer that signs the assembled Plan without changing its message, or reassemble a new Plan for the intended transaction before retrying.');
306
310
  }
307
311
  }
308
- // Original Token Account layout: mint/authority at 0/32, initialized state at
309
- // 108, and u32 COption tags at 72/109/129. No capability decoder is imported.
312
+ /** Whether the account still is the guarded original Token account, with at
313
+ * least the guarded balance for a `token-account` guard. */
310
314
  function matchesTokenAccount(account, expected) {
311
- if (account.executable ||
312
- account.owner !== 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA' ||
313
- account.data.length !== 165)
314
- return false;
315
- const bytes = new DataView(account.data.buffer, account.data.byteOffset, account.data.byteLength);
316
- if ((expected.kind === 'token-account' &&
317
- bytes.getBigUint64(64, true) < expected.minimumBalance) ||
318
- bytes.getUint8(108) !== 1 ||
319
- [72, 109, 129].some((offset) => bytes.getUint32(offset, true) > 1))
320
- return false;
321
- const decoder = getAddressDecoder();
322
- return (decoder.decode(account.data.subarray(0, 32)) === expected.mint &&
323
- decoder.decode(account.data.subarray(32, 64)) === expected.owner);
315
+ const balance = originalTokenBalance(account, expected.mint, expected.owner);
316
+ return (typeof balance === 'bigint' &&
317
+ (expected.kind !== 'token-account' || balance >= expected.minimumBalance));
324
318
  }
325
319
  function checkRegistrationFunding(registrations, fee) {
326
320
  const balances = new Map();
@@ -456,8 +450,17 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
456
450
  ])
457
451
  requiredAddresses.add(address);
458
452
  }
453
+ if (guard.kind === 'region-access')
454
+ requiredAddresses.add(guard.system);
455
+ if (guard.kind === 'region-path')
456
+ requiredAddresses.add(guard.fleet);
459
457
  if (guard.kind === 'fleet-docking-policy')
460
- requiredAddresses.add(guard.ownership);
458
+ for (const address of [
459
+ guard.ownership,
460
+ guard.system,
461
+ guard.starbasePlayer,
462
+ ])
463
+ requiredAddresses.add(address);
461
464
  if (guard.kind === 'local-market-order' && guard.status === 'available') {
462
465
  for (const address of [
463
466
  guard.character,
@@ -508,6 +511,33 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
508
511
  ])
509
512
  requiredAddresses.add(address);
510
513
  }
514
+ for (const guard of preconditions) {
515
+ if (guard.kind !== 'research-unlock')
516
+ continue;
517
+ for (const address of [
518
+ guard.game,
519
+ guard.profile,
520
+ guard.system,
521
+ guard.starbasePlayer,
522
+ guard.currencyCache,
523
+ CLOCK_ADDRESS,
524
+ RENT_ADDRESS,
525
+ ])
526
+ requiredAddresses.add(address);
527
+ }
528
+ // Profile storage funding is rederived from each instruction and the fresh
529
+ // accounts it resizes; a deposit's cargo id comes from its source mint.
530
+ const storageActionSteps = storageSteps(steps);
531
+ for (const step of storageActionSteps) {
532
+ for (const address of [
533
+ step.instruction.accounts[step.signer + 1].address,
534
+ ...storageActionAccounts(step.kind, step.instruction),
535
+ RENT_ADDRESS,
536
+ ])
537
+ requiredAddresses.add(address);
538
+ if (step.kind === 'deposit')
539
+ requiredAddresses.add(requireGameAddress(context));
540
+ }
511
541
  for (const guard of preconditions) {
512
542
  if (guard.kind !== 'ship-import-funding')
513
543
  continue;
@@ -556,10 +586,21 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
556
586
  const gameDecodes = new Map();
557
587
  const profileFunding = new Map();
558
588
  const fundedTargets = new Set();
559
- const recordFunding = (guard, funding) => {
589
+ let storageResults;
590
+ // One decoded cargo row set per Game, shared by cargo-definition guards and
591
+ // a deposit's cargo lookup.
592
+ const cargoRowsByGame = new Map();
593
+ const cargoRows = (game) => {
594
+ let rows = cargoRowsByGame.get(game.address);
595
+ if (!rows) {
596
+ rows = decodeGameCargoConfigurationRows(game, gameDecodes);
597
+ cargoRowsByGame.set(game.address, rows);
598
+ }
599
+ return rows;
600
+ };
601
+ const recordFunding = (guard, funding, target = `${guard.kind}:${guard.address}`) => {
560
602
  // Repeated guards for one action are assertions, not additional debits.
561
603
  // Every guard still validates its own ceiling before reaching here.
562
- const target = `${guard.kind}:${guard.address}`;
563
604
  if (fundedTargets.has(target))
564
605
  return;
565
606
  fundedTargets.add(target);
@@ -588,11 +629,14 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
588
629
  throw fleetFailure(precondition, new SageSdkError('ACTION_PRECONDITION_FAILED', precondition.kind === 'fleet-dock-funding'
589
630
  ? `The docking Plan belongs to Game ${precondition.game}, but the context uses Game ${requireGameAddress(context)}. Recreate it with the intended Game context.`
590
631
  : 'The docking faction policy belongs to another Game. Recreate the Plan with the intended Game context.', { address: precondition.address }));
591
- // Dependent docking estimates run after every other freshness guard, so an
592
- // exact account-state or policy diagnostic wins whatever the saved order.
632
+ // Dependent docking and cargo storage estimates run after every other
633
+ // freshness guard, so an exact account-state, cargo-definition or policy
634
+ // diagnostic wins whatever the saved order.
635
+ const estimate = (g) => g.kind === 'fleet-dock-funding' || g.kind === 'profile-storage-funding';
593
636
  const ordered = [
594
- ...preconditions.filter((g) => g.kind !== 'fleet-dock-funding'),
637
+ ...preconditions.filter((g) => !estimate(g)),
595
638
  ...preconditions.filter((g) => g.kind === 'fleet-dock-funding'),
639
+ ...preconditions.filter((g) => g.kind === 'profile-storage-funding'),
596
640
  ];
597
641
  for (const precondition of ordered) {
598
642
  const account = byAddress.get(precondition.address);
@@ -644,6 +688,53 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
644
688
  }
645
689
  continue;
646
690
  }
691
+ if (precondition.kind === 'profile-storage-funding') {
692
+ try {
693
+ storageResults ??= validateStorageFunding(steps, preconditions.filter((guard) => guard.kind === 'profile-storage-funding'), byAddress, (instruction) => readStorageAction(instruction, byAddress,
694
+ // A deposit Plan's cargo-definition guards already required the
695
+ // Game in this batch.
696
+ (mint) => cargoRows(byAddress.get(requireGameAddress(context))).rows.find((row) => row.mint === mint)?.id));
697
+ const result = storageResults.get(precondition);
698
+ if ('error' in result)
699
+ throw result.error;
700
+ const { funding } = result;
701
+ // Each guard is one action, and several may resize one account, so
702
+ // every guard adds its own debit. A zero debit withdraws nothing and
703
+ // imposes no Profile reserve on the combined check.
704
+ if (funding.profileDebit > 0n)
705
+ recordFunding(precondition, funding, `${precondition.kind}:${String(ordered.indexOf(precondition))}`);
706
+ }
707
+ catch (error) {
708
+ // Every storage check failure names the Profile, a resized account
709
+ // or the Rent sysvar, all read in this batch.
710
+ throw fleetFailure(precondition, error);
711
+ }
712
+ continue;
713
+ }
714
+ if (precondition.kind === 'research-unlock') {
715
+ try {
716
+ const game = byAddress.get(precondition.game);
717
+ if (precondition.game !== requireGameAddress(context) || !game)
718
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'The research unlock belongs to another or missing Game. Recreate it with the intended Game context.', { address: precondition.game });
719
+ const resolved = await resolveResearchUnlock(precondition);
720
+ if (resolved.character !== precondition.address ||
721
+ resolved.starbasePlayer !== precondition.starbasePlayer ||
722
+ resolved.currencyCache !== precondition.currencyCache)
723
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', 'The research unlock accounts are not canonical for this Game, Profile and System. Recreate the Plan with planUnlockResearchNode.');
724
+ const funding = await validateResearchUnlock(precondition, resolved, byAddress, decodeGameResearchUnlockRules(game, gameDecodes));
725
+ // A zero storage debit withdraws nothing, so it imposes no Profile
726
+ // reserve on the combined check.
727
+ if (funding.profileDebit > 0n)
728
+ recordFunding(precondition, funding);
729
+ }
730
+ catch (error) {
731
+ const failed = error instanceof SageSdkError ? error.address : undefined;
732
+ throw new ActionPreconditionFailedError(precondition, byAddress.get(failed ?? precondition.address)?.slot, error instanceof SageSdkError
733
+ ? error.message
734
+ : 'Research prerequisites could not be validated. Refresh the Character, Starbase Player and Game definitions, then recreate the unlock Plan.', failed);
735
+ }
736
+ continue;
737
+ }
647
738
  if (precondition.kind === 'fleet-add-ship') {
648
739
  try {
649
740
  const game = byAddress.get(precondition.game);
@@ -672,7 +763,12 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
672
763
  }
673
764
  if (precondition.kind === 'fleet-docking-policy') {
674
765
  try {
675
- await validateFleetDockingPolicy(account, byAddress.get(precondition.ownership), precondition);
766
+ await validateFleetDockingPolicy({
767
+ tracker: account,
768
+ ownership: byAddress.get(precondition.ownership),
769
+ system: byAddress.get(precondition.system),
770
+ starbasePlayer: byAddress.get(precondition.starbasePlayer),
771
+ }, precondition);
676
772
  }
677
773
  catch (error) {
678
774
  throw fleetFailure(precondition, error);
@@ -685,7 +781,9 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
685
781
  narrowed =
686
782
  account !== undefined && matchesTokenAccount(account, precondition);
687
783
  if (precondition.kind === 'currency-cache' ||
688
- precondition.kind === 'movement-character' ||
784
+ precondition.kind === 'region-access' ||
785
+ precondition.kind === 'region-path' ||
786
+ precondition.kind === 'character-access' ||
689
787
  precondition.kind === 'starbase-system' ||
690
788
  precondition.kind === 'fleet-mining' ||
691
789
  isFactionTradeGuard(precondition) ||
@@ -703,10 +801,23 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
703
801
  if (narrowed)
704
802
  await validateCurrencyCache(account, precondition.game);
705
803
  }
706
- else if (precondition.kind === 'movement-character') {
804
+ else if (precondition.kind === 'region-access') {
805
+ narrowed =
806
+ precondition.game === requireGameAddress(context) &&
807
+ (await hashRegionAccess(account, byAddress.get(precondition.system), precondition.game)) === precondition.accessHash;
808
+ }
809
+ else if (precondition.kind === 'region-path') {
810
+ const origin = fleetActionCoordinate(byAddress.get(precondition.fleet), precondition.game);
811
+ narrowed =
812
+ precondition.game === requireGameAddress(context) &&
813
+ origin?.x === precondition.fromX &&
814
+ origin.y === precondition.fromY &&
815
+ (await hashRegionPath(account, precondition.game, { x: precondition.fromX, y: precondition.fromY }, { x: precondition.toX, y: precondition.toY })) === precondition.pathHash;
816
+ }
817
+ else if (precondition.kind === 'character-access') {
707
818
  narrowed =
708
819
  precondition.game === requireGameAddress(context) &&
709
- (await hashMovementCharacter(account, precondition)) ===
820
+ (await hashCharacterAccess(account, precondition)) ===
710
821
  precondition.stateHash;
711
822
  }
712
823
  else if (precondition.kind === 'starbase-system') {
@@ -761,7 +872,7 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
761
872
  let hashes = cargoHashesByGame.get(precondition.address);
762
873
  if (!hashes) {
763
874
  const ids = cargoIdsByGame.get(precondition.address);
764
- hashes = await hashGameCargoConfigurationGuards(account, ids, gameDecodes);
875
+ hashes = await hashGameCargoConfigurationGuards(account, ids, cargoRows(account));
765
876
  cargoHashesByGame.set(precondition.address, hashes);
766
877
  }
767
878
  narrowed =
@@ -769,13 +880,8 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
769
880
  }
770
881
  else {
771
882
  validateWalletCargoCache(account, precondition.game, precondition.bump);
772
- const [canonical, bump] = await getProgramDerivedAddress({
773
- programAddress: account.owner,
774
- seeds: [
775
- new TextEncoder().encode('CargoDefinitionsCache'),
776
- getAddressEncoder().encode(precondition.game),
777
- ],
778
- });
883
+ // validateWalletCargoCache requires the SAGE owner.
884
+ const [canonical, bump] = await deriveCargoDefinitionsCacheAddress(precondition.game);
779
885
  narrowed =
780
886
  canonical === account.address && bump === precondition.bump;
781
887
  }
@@ -810,7 +916,7 @@ async function checkPreconditions(context, allPreconditions, steps, commitment)
810
916
  }
811
917
  return registrationFunding;
812
918
  }
813
- function commitmentReached(actual, requested) {
919
+ export function commitmentReached(actual, requested) {
814
920
  if (actual === null)
815
921
  return false;
816
922
  const strength = {
@@ -1038,9 +1144,7 @@ export async function executePlanWithLifecycle(context, plan, options, lifecycle
1038
1144
  validatePlanAssemblyPolicy(plan, validated);
1039
1145
  const signers = matchSigners(plan, validated);
1040
1146
  const sendingSigner = resolveSendingSigner(signers);
1041
- const writeRpc = context.writeRpc;
1042
- if (writeRpc === undefined)
1043
- throw new MissingWriteTransportError();
1147
+ const writeRpc = requireWriteRpc(context, 'execute');
1044
1148
  // Guard order is not trusted: funding follows instruction order, including hydrated Plans.
1045
1149
  const ordered = [...plan.preconditions].sort((a, b) => {
1046
1150
  const index = (guard) => guard.kind === 'character-registration'
@@ -1 +1 @@
1
- {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"execution.js","sourceRoot":"","sources":["../../src/planning/execution.ts"],"names":[],"mappings":"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"}