@aephia/atlas-kit 0.6.0-next.17 → 0.6.0-next.171

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 (926) hide show
  1. package/README.md +2 -1
  2. package/dist/cargo/actions/deposit.d.ts +5 -2
  3. package/dist/cargo/actions/deposit.d.ts.map +1 -1
  4. package/dist/cargo/actions/deposit.js +60 -129
  5. package/dist/cargo/actions/deposit.js.map +1 -1
  6. package/dist/cargo/actions/index.d.ts +14 -7
  7. package/dist/cargo/actions/index.d.ts.map +1 -1
  8. package/dist/cargo/actions/index.js +108 -95
  9. package/dist/cargo/actions/index.js.map +1 -1
  10. package/dist/cargo/actions/wallet-context.d.ts +52 -3
  11. package/dist/cargo/actions/wallet-context.d.ts.map +1 -1
  12. package/dist/cargo/actions/wallet-context.js +118 -7
  13. package/dist/cargo/actions/wallet-context.js.map +1 -1
  14. package/dist/cargo/actions/wallet-token.d.ts +1 -6
  15. package/dist/cargo/actions/wallet-token.d.ts.map +1 -1
  16. package/dist/cargo/actions/wallet-token.js +0 -45
  17. package/dist/cargo/actions/wallet-token.js.map +1 -1
  18. package/dist/cargo/actions/withdrawal.d.ts +1 -1
  19. package/dist/cargo/actions/withdrawal.d.ts.map +1 -1
  20. package/dist/cargo/actions/withdrawal.js +39 -168
  21. package/dist/cargo/actions/withdrawal.js.map +1 -1
  22. package/dist/cargo/index.d.ts.map +1 -1
  23. package/dist/cargo/index.js +2 -10
  24. package/dist/cargo/index.js.map +1 -1
  25. package/dist/claim-stakes/actions/index.d.ts +93 -14
  26. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  27. package/dist/claim-stakes/actions/index.js +739 -742
  28. package/dist/claim-stakes/actions/index.js.map +1 -1
  29. package/dist/claim-stakes/index.d.ts +22 -6
  30. package/dist/claim-stakes/index.d.ts.map +1 -1
  31. package/dist/claim-stakes/index.js +34 -19
  32. package/dist/claim-stakes/index.js.map +1 -1
  33. package/dist/client/context.d.ts.map +1 -1
  34. package/dist/client/context.js +354 -38
  35. package/dist/client/context.js.map +1 -1
  36. package/dist/client/contracts.d.ts +69 -6
  37. package/dist/client/contracts.d.ts.map +1 -1
  38. package/dist/client/deployments.d.ts +17 -0
  39. package/dist/client/deployments.d.ts.map +1 -1
  40. package/dist/client/deployments.js +17 -0
  41. package/dist/client/deployments.js.map +1 -1
  42. package/dist/client/errors.d.ts +2 -2
  43. package/dist/client/errors.d.ts.map +1 -1
  44. package/dist/client/errors.js.map +1 -1
  45. package/dist/client/index.d.ts +57 -1
  46. package/dist/client/index.d.ts.map +1 -1
  47. package/dist/client/index.js +56 -0
  48. package/dist/client/index.js.map +1 -1
  49. package/dist/client/rpc-subscription-provider.d.ts +37 -0
  50. package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
  51. package/dist/client/rpc-subscription-provider.js +224 -0
  52. package/dist/client/rpc-subscription-provider.js.map +1 -0
  53. package/dist/combat/actions/index.d.ts +30 -12
  54. package/dist/combat/actions/index.d.ts.map +1 -1
  55. package/dist/combat/actions/index.js +360 -302
  56. package/dist/combat/actions/index.js.map +1 -1
  57. package/dist/combat/index.d.ts +25 -8
  58. package/dist/combat/index.d.ts.map +1 -1
  59. package/dist/combat/index.js +21 -18
  60. package/dist/combat/index.js.map +1 -1
  61. package/dist/crafting/actions/fee-rate.d.ts +47 -0
  62. package/dist/crafting/actions/fee-rate.d.ts.map +1 -0
  63. package/dist/crafting/actions/fee-rate.js +58 -0
  64. package/dist/crafting/actions/fee-rate.js.map +1 -0
  65. package/dist/crafting/actions/index.d.ts +29 -18
  66. package/dist/crafting/actions/index.d.ts.map +1 -1
  67. package/dist/crafting/actions/index.js +298 -352
  68. package/dist/crafting/actions/index.js.map +1 -1
  69. package/dist/crafting/estimate.d.ts +101 -0
  70. package/dist/crafting/estimate.d.ts.map +1 -0
  71. package/dist/crafting/estimate.js +108 -0
  72. package/dist/crafting/estimate.js.map +1 -0
  73. package/dist/crafting/index.d.ts +34 -3
  74. package/dist/crafting/index.d.ts.map +1 -1
  75. package/dist/crafting/index.js +50 -28
  76. package/dist/crafting/index.js.map +1 -1
  77. package/dist/factions/actions/index.d.ts +2 -1
  78. package/dist/factions/actions/index.d.ts.map +1 -1
  79. package/dist/factions/actions/index.js +6 -4
  80. package/dist/factions/actions/index.js.map +1 -1
  81. package/dist/factions/index.d.ts +19 -2
  82. package/dist/factions/index.d.ts.map +1 -1
  83. package/dist/factions/index.js +38 -26
  84. package/dist/factions/index.js.map +1 -1
  85. package/dist/factions/profile-faction.d.ts +20 -8
  86. package/dist/factions/profile-faction.d.ts.map +1 -1
  87. package/dist/factions/profile-faction.js +20 -8
  88. package/dist/factions/profile-faction.js.map +1 -1
  89. package/dist/fleets/actions/add-ship.d.ts +48 -0
  90. package/dist/fleets/actions/add-ship.d.ts.map +1 -0
  91. package/dist/fleets/actions/add-ship.js +136 -0
  92. package/dist/fleets/actions/add-ship.js.map +1 -0
  93. package/dist/fleets/actions/create-fleet.d.ts +36 -0
  94. package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
  95. package/dist/fleets/actions/create-fleet.js +108 -0
  96. package/dist/fleets/actions/create-fleet.js.map +1 -0
  97. package/dist/fleets/actions/crew-transfer.d.ts +45 -0
  98. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
  99. package/dist/fleets/actions/crew-transfer.js +99 -0
  100. package/dist/fleets/actions/crew-transfer.js.map +1 -0
  101. package/dist/fleets/actions/deployment-storage.d.ts +161 -0
  102. package/dist/fleets/actions/deployment-storage.d.ts.map +1 -0
  103. package/dist/fleets/actions/deployment-storage.js +297 -0
  104. package/dist/fleets/actions/deployment-storage.js.map +1 -0
  105. package/dist/fleets/actions/disband.d.ts +42 -0
  106. package/dist/fleets/actions/disband.d.ts.map +1 -0
  107. package/dist/fleets/actions/disband.js +107 -0
  108. package/dist/fleets/actions/disband.js.map +1 -0
  109. package/dist/fleets/actions/dock-bounds.d.ts +38 -0
  110. package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
  111. package/dist/fleets/actions/dock-bounds.js +46 -0
  112. package/dist/fleets/actions/dock-bounds.js.map +1 -0
  113. package/dist/fleets/actions/index.d.ts +90 -25
  114. package/dist/fleets/actions/index.d.ts.map +1 -1
  115. package/dist/fleets/actions/index.js +492 -353
  116. package/dist/fleets/actions/index.js.map +1 -1
  117. package/dist/fleets/actions/respawn.d.ts +38 -0
  118. package/dist/fleets/actions/respawn.d.ts.map +1 -0
  119. package/dist/fleets/actions/respawn.js +93 -0
  120. package/dist/fleets/actions/respawn.js.map +1 -0
  121. package/dist/fleets/actions/ship-import.d.ts +1 -1
  122. package/dist/fleets/actions/ship-import.d.ts.map +1 -1
  123. package/dist/fleets/actions/ship-import.js +61 -90
  124. package/dist/fleets/actions/ship-import.js.map +1 -1
  125. package/dist/fleets/actions/sync.d.ts +24 -0
  126. package/dist/fleets/actions/sync.d.ts.map +1 -0
  127. package/dist/fleets/actions/sync.js +55 -0
  128. package/dist/fleets/actions/sync.js.map +1 -0
  129. package/dist/fleets/composition-stats.d.ts +101 -0
  130. package/dist/fleets/composition-stats.d.ts.map +1 -0
  131. package/dist/fleets/composition-stats.js +354 -0
  132. package/dist/fleets/composition-stats.js.map +1 -0
  133. package/dist/fleets/cooldown.d.ts +47 -0
  134. package/dist/fleets/cooldown.d.ts.map +1 -0
  135. package/dist/fleets/cooldown.js +48 -0
  136. package/dist/fleets/cooldown.js.map +1 -0
  137. package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
  138. package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
  139. package/dist/fleets/coordinate-warp-estimate.js +46 -0
  140. package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
  141. package/dist/fleets/index.d.ts +36 -0
  142. package/dist/fleets/index.d.ts.map +1 -1
  143. package/dist/fleets/index.js +55 -12
  144. package/dist/fleets/index.js.map +1 -1
  145. package/dist/fleets/movement-arithmetic.d.ts +21 -0
  146. package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
  147. package/dist/fleets/movement-arithmetic.js +45 -0
  148. package/dist/fleets/movement-arithmetic.js.map +1 -0
  149. package/dist/fleets/subwarp-estimate.d.ts +72 -0
  150. package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
  151. package/dist/fleets/subwarp-estimate.js +40 -0
  152. package/dist/fleets/subwarp-estimate.js.map +1 -0
  153. package/dist/fleets/travel-profile.d.ts +102 -0
  154. package/dist/fleets/travel-profile.d.ts.map +1 -0
  155. package/dist/fleets/travel-profile.js +120 -0
  156. package/dist/fleets/travel-profile.js.map +1 -0
  157. package/dist/fleets/warp-lane-estimate.d.ts +59 -0
  158. package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
  159. package/dist/fleets/warp-lane-estimate.js +36 -0
  160. package/dist/fleets/warp-lane-estimate.js.map +1 -0
  161. package/dist/fleets/warp-lane-policy.d.ts +74 -0
  162. package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
  163. package/dist/fleets/warp-lane-policy.js +103 -0
  164. package/dist/fleets/warp-lane-policy.js.map +1 -0
  165. package/dist/fleets/warp-lane-toll.d.ts +55 -0
  166. package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
  167. package/dist/fleets/warp-lane-toll.js +79 -0
  168. package/dist/fleets/warp-lane-toll.js.map +1 -0
  169. package/dist/identity/actions/create-profile.d.ts +1 -1
  170. package/dist/identity/actions/create-profile.d.ts.map +1 -1
  171. package/dist/identity/actions/create-profile.js +2 -2
  172. package/dist/identity/actions/create-profile.js.map +1 -1
  173. package/dist/identity/actions/index.d.ts +5 -4
  174. package/dist/identity/actions/index.d.ts.map +1 -1
  175. package/dist/identity/actions/index.js +52 -29
  176. package/dist/identity/actions/index.js.map +1 -1
  177. package/dist/identity/actions/research-unlock.d.ts +61 -0
  178. package/dist/identity/actions/research-unlock.d.ts.map +1 -0
  179. package/dist/identity/actions/research-unlock.js +166 -0
  180. package/dist/identity/actions/research-unlock.js.map +1 -0
  181. package/dist/identity/index.d.ts +63 -2
  182. package/dist/identity/index.d.ts.map +1 -1
  183. package/dist/identity/index.js +64 -12
  184. package/dist/identity/index.js.map +1 -1
  185. package/dist/identity/research-state.d.ts +60 -0
  186. package/dist/identity/research-state.d.ts.map +1 -0
  187. package/dist/identity/research-state.js +68 -0
  188. package/dist/identity/research-state.js.map +1 -0
  189. package/dist/index.d.ts +26 -1
  190. package/dist/index.d.ts.map +1 -1
  191. package/dist/index.js +24 -7
  192. package/dist/index.js.map +1 -1
  193. package/dist/internal/c4/account-decoding.d.ts +49 -0
  194. package/dist/internal/c4/account-decoding.d.ts.map +1 -0
  195. package/dist/internal/c4/account-decoding.js +74 -0
  196. package/dist/internal/c4/account-decoding.js.map +1 -0
  197. package/dist/internal/c4/career-xp.d.ts +58 -0
  198. package/dist/internal/c4/career-xp.d.ts.map +1 -0
  199. package/dist/internal/c4/career-xp.js +80 -0
  200. package/dist/internal/c4/career-xp.js.map +1 -0
  201. package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
  202. package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
  203. package/dist/internal/c4/cargo-bytes-config.js +19 -0
  204. package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
  205. package/dist/internal/c4/cargo-instructions.d.ts +24 -0
  206. package/dist/internal/c4/cargo-instructions.d.ts.map +1 -0
  207. package/dist/internal/c4/cargo-instructions.js +30 -0
  208. package/dist/internal/c4/cargo-instructions.js.map +1 -0
  209. package/dist/internal/c4/cargo-pod.d.ts +15 -0
  210. package/dist/internal/c4/cargo-pod.d.ts.map +1 -0
  211. package/dist/internal/c4/cargo-pod.js +13 -0
  212. package/dist/internal/c4/cargo-pod.js.map +1 -0
  213. package/dist/internal/c4/character-modifier.d.ts +1 -1
  214. package/dist/internal/c4/character-modifier.d.ts.map +1 -1
  215. package/dist/internal/c4/character-registration.d.ts +2 -0
  216. package/dist/internal/c4/character-registration.d.ts.map +1 -1
  217. package/dist/internal/c4/character-registration.js +2 -0
  218. package/dist/internal/c4/character-registration.js.map +1 -1
  219. package/dist/internal/c4/character.d.ts +157 -0
  220. package/dist/internal/c4/character.d.ts.map +1 -0
  221. package/dist/internal/c4/character.js +64 -0
  222. package/dist/internal/c4/character.js.map +1 -0
  223. package/dist/internal/c4/claim-stake-building-definitions.d.ts.map +1 -1
  224. package/dist/internal/c4/claim-stake-building-definitions.js +2 -1
  225. package/dist/internal/c4/claim-stake-building-definitions.js.map +1 -1
  226. package/dist/internal/c4/claim-stake-configuration.d.ts.map +1 -1
  227. package/dist/internal/c4/claim-stake-configuration.js +5 -36
  228. package/dist/internal/c4/claim-stake-configuration.js.map +1 -1
  229. package/dist/internal/c4/claim-stake-definitions.d.ts +8 -4
  230. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  231. package/dist/internal/c4/claim-stake-definitions.js +6 -2
  232. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  233. package/dist/internal/c4/claim-stake-plots.d.ts +17 -0
  234. package/dist/internal/c4/claim-stake-plots.d.ts.map +1 -0
  235. package/dist/internal/c4/claim-stake-plots.js +29 -0
  236. package/dist/internal/c4/claim-stake-plots.js.map +1 -0
  237. package/dist/internal/c4/claim-stake-standing.d.ts +80 -0
  238. package/dist/internal/c4/claim-stake-standing.d.ts.map +1 -0
  239. package/dist/internal/c4/claim-stake-standing.js +61 -0
  240. package/dist/internal/c4/claim-stake-standing.js.map +1 -0
  241. package/dist/internal/c4/claim-stake-storage.d.ts +45 -0
  242. package/dist/internal/c4/claim-stake-storage.d.ts.map +1 -0
  243. package/dist/internal/c4/claim-stake-storage.js +207 -0
  244. package/dist/internal/c4/claim-stake-storage.js.map +1 -0
  245. package/dist/internal/c4/claim-stake.d.ts +13 -33
  246. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  247. package/dist/internal/c4/claim-stake.js +49 -94
  248. package/dist/internal/c4/claim-stake.js.map +1 -1
  249. package/dist/internal/c4/combat-storage.d.ts +20 -0
  250. package/dist/internal/c4/combat-storage.d.ts.map +1 -0
  251. package/dist/internal/c4/combat-storage.js +43 -0
  252. package/dist/internal/c4/combat-storage.js.map +1 -0
  253. package/dist/internal/c4/combat.d.ts +1 -82
  254. package/dist/internal/c4/combat.d.ts.map +1 -1
  255. package/dist/internal/c4/combat.js +16 -213
  256. package/dist/internal/c4/combat.js.map +1 -1
  257. package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
  258. package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
  259. package/dist/internal/c4/crafting-process-codec.js +34 -0
  260. package/dist/internal/c4/crafting-process-codec.js.map +1 -0
  261. package/dist/internal/c4/crafting-storage.d.ts +20 -0
  262. package/dist/internal/c4/crafting-storage.d.ts.map +1 -0
  263. package/dist/internal/c4/crafting-storage.js +54 -0
  264. package/dist/internal/c4/crafting-storage.js.map +1 -0
  265. package/dist/internal/c4/crafting.d.ts +33 -33
  266. package/dist/internal/c4/crafting.d.ts.map +1 -1
  267. package/dist/internal/c4/crafting.js +76 -127
  268. package/dist/internal/c4/crafting.js.map +1 -1
  269. package/dist/internal/c4/currency-cache.d.ts +6 -0
  270. package/dist/internal/c4/currency-cache.d.ts.map +1 -0
  271. package/dist/internal/c4/currency-cache.js +27 -0
  272. package/dist/internal/c4/currency-cache.js.map +1 -0
  273. package/dist/internal/c4/discriminators.d.ts +93 -0
  274. package/dist/internal/c4/discriminators.d.ts.map +1 -0
  275. package/dist/internal/c4/discriminators.js +190 -0
  276. package/dist/internal/c4/discriminators.js.map +1 -0
  277. package/dist/internal/c4/docking-funding.d.ts +4 -0
  278. package/dist/internal/c4/docking-funding.d.ts.map +1 -0
  279. package/dist/internal/c4/docking-funding.js +11 -0
  280. package/dist/internal/c4/docking-funding.js.map +1 -0
  281. package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
  282. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
  283. package/dist/internal/c4/faction-epoch-meter.js +26 -0
  284. package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
  285. package/dist/internal/c4/faction-treasury.d.ts +23 -0
  286. package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
  287. package/dist/internal/c4/faction-treasury.js +41 -0
  288. package/dist/internal/c4/faction-treasury.js.map +1 -0
  289. package/dist/internal/c4/faction.d.ts +21 -0
  290. package/dist/internal/c4/faction.d.ts.map +1 -0
  291. package/dist/internal/c4/faction.js +23 -0
  292. package/dist/internal/c4/faction.js.map +1 -0
  293. package/dist/internal/c4/factions.d.ts +40 -60
  294. package/dist/internal/c4/factions.d.ts.map +1 -1
  295. package/dist/internal/c4/factions.js +106 -225
  296. package/dist/internal/c4/factions.js.map +1 -1
  297. package/dist/internal/c4/fleet-arrival.d.ts +28 -0
  298. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
  299. package/dist/internal/c4/fleet-arrival.js +42 -0
  300. package/dist/internal/c4/fleet-arrival.js.map +1 -0
  301. package/dist/internal/c4/fleet-creation.d.ts +14 -0
  302. package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
  303. package/dist/internal/c4/fleet-creation.js +177 -0
  304. package/dist/internal/c4/fleet-creation.js.map +1 -0
  305. package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
  306. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  307. package/dist/internal/c4/fleet-crew-binding.js +31 -44
  308. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  309. package/dist/internal/c4/fleet-disband-layout.d.ts +7 -0
  310. package/dist/internal/c4/fleet-disband-layout.d.ts.map +1 -0
  311. package/dist/internal/c4/fleet-disband-layout.js +7 -0
  312. package/dist/internal/c4/fleet-disband-layout.js.map +1 -0
  313. package/dist/internal/c4/fleet-disband.d.ts +41 -0
  314. package/dist/internal/c4/fleet-disband.d.ts.map +1 -0
  315. package/dist/internal/c4/fleet-disband.js +86 -0
  316. package/dist/internal/c4/fleet-disband.js.map +1 -0
  317. package/dist/internal/c4/fleet-points.d.ts +3 -0
  318. package/dist/internal/c4/fleet-points.d.ts.map +1 -0
  319. package/dist/internal/c4/fleet-points.js +8 -0
  320. package/dist/internal/c4/fleet-points.js.map +1 -0
  321. package/dist/internal/c4/fleet-respawn.d.ts +17 -0
  322. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  323. package/dist/internal/c4/fleet-respawn.js +62 -0
  324. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  325. package/dist/internal/c4/fleet-ship-assembly.d.ts +26 -0
  326. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
  327. package/dist/internal/c4/fleet-ship-assembly.js +96 -0
  328. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
  329. package/dist/internal/c4/fleet-storage.d.ts +44 -0
  330. package/dist/internal/c4/fleet-storage.d.ts.map +1 -0
  331. package/dist/internal/c4/fleet-storage.js +108 -0
  332. package/dist/internal/c4/fleet-storage.js.map +1 -0
  333. package/dist/internal/c4/fleet-sync.d.ts +5 -0
  334. package/dist/internal/c4/fleet-sync.d.ts.map +1 -0
  335. package/dist/internal/c4/fleet-sync.js +15 -0
  336. package/dist/internal/c4/fleet-sync.js.map +1 -0
  337. package/dist/internal/c4/fleet.d.ts +65 -24
  338. package/dist/internal/c4/fleet.d.ts.map +1 -1
  339. package/dist/internal/c4/fleet.js +50 -91
  340. package/dist/internal/c4/fleet.js.map +1 -1
  341. package/dist/internal/c4/game-definition-layout.d.ts +2 -0
  342. package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
  343. package/dist/internal/c4/game-definition-layout.js +4 -0
  344. package/dist/internal/c4/game-definition-layout.js.map +1 -1
  345. package/dist/internal/c4/game.d.ts +122 -32
  346. package/dist/internal/c4/game.d.ts.map +1 -1
  347. package/dist/internal/c4/game.js +229 -130
  348. package/dist/internal/c4/game.js.map +1 -1
  349. package/dist/internal/c4/identity.d.ts +3 -152
  350. package/dist/internal/c4/identity.d.ts.map +1 -1
  351. package/dist/internal/c4/identity.js +19 -126
  352. package/dist/internal/c4/identity.js.map +1 -1
  353. package/dist/internal/c4/local-market-order.d.ts +29 -0
  354. package/dist/internal/c4/local-market-order.d.ts.map +1 -0
  355. package/dist/internal/c4/local-market-order.js +46 -0
  356. package/dist/internal/c4/local-market-order.js.map +1 -0
  357. package/dist/internal/c4/loot-layout.js +1 -1
  358. package/dist/internal/c4/loot-layout.js.map +1 -1
  359. package/dist/internal/c4/loot.d.ts +89 -0
  360. package/dist/internal/c4/loot.d.ts.map +1 -0
  361. package/dist/internal/c4/loot.js +109 -0
  362. package/dist/internal/c4/loot.js.map +1 -0
  363. package/dist/internal/c4/loyalty.d.ts +7 -30
  364. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  365. package/dist/internal/c4/loyalty.js +41 -163
  366. package/dist/internal/c4/loyalty.js.map +1 -1
  367. package/dist/internal/c4/market-storage.d.ts +25 -0
  368. package/dist/internal/c4/market-storage.d.ts.map +1 -0
  369. package/dist/internal/c4/market-storage.js +53 -0
  370. package/dist/internal/c4/market-storage.js.map +1 -0
  371. package/dist/internal/c4/market.d.ts +5 -38
  372. package/dist/internal/c4/market.d.ts.map +1 -1
  373. package/dist/internal/c4/market.js +26 -120
  374. package/dist/internal/c4/market.js.map +1 -1
  375. package/dist/internal/c4/mining-instructions.d.ts +2 -0
  376. package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
  377. package/dist/internal/c4/mining-instructions.js +3 -0
  378. package/dist/internal/c4/mining-instructions.js.map +1 -0
  379. package/dist/internal/c4/open-signal.d.ts +8 -0
  380. package/dist/internal/c4/open-signal.d.ts.map +1 -0
  381. package/dist/internal/c4/open-signal.js +37 -0
  382. package/dist/internal/c4/open-signal.js.map +1 -0
  383. package/dist/internal/c4/pda.d.ts +49 -1
  384. package/dist/internal/c4/pda.d.ts.map +1 -1
  385. package/dist/internal/c4/pda.js +122 -17
  386. package/dist/internal/c4/pda.js.map +1 -1
  387. package/dist/internal/c4/profile-faction.d.ts +2 -1
  388. package/dist/internal/c4/profile-faction.d.ts.map +1 -1
  389. package/dist/internal/c4/profile-faction.js +36 -72
  390. package/dist/internal/c4/profile-faction.js.map +1 -1
  391. package/dist/internal/c4/profile-permissions.d.ts +1 -1
  392. package/dist/internal/c4/profile-permissions.d.ts.map +1 -1
  393. package/dist/internal/c4/profile-permissions.js +17 -1
  394. package/dist/internal/c4/profile-permissions.js.map +1 -1
  395. package/dist/internal/c4/region-geometry.d.ts +8 -0
  396. package/dist/internal/c4/region-geometry.d.ts.map +1 -0
  397. package/dist/internal/c4/region-geometry.js +43 -0
  398. package/dist/internal/c4/region-geometry.js.map +1 -0
  399. package/dist/internal/c4/rewards.d.ts +1 -61
  400. package/dist/internal/c4/rewards.d.ts.map +1 -1
  401. package/dist/internal/c4/rewards.js +23 -203
  402. package/dist/internal/c4/rewards.js.map +1 -1
  403. package/dist/internal/c4/runtime-bindings.d.ts +4 -0
  404. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
  405. package/dist/internal/c4/runtime-bindings.js +4 -0
  406. package/dist/internal/c4/runtime-bindings.js.map +1 -0
  407. package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
  408. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
  409. package/dist/internal/c4/scan-detection-codecs.js +3 -0
  410. package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
  411. package/dist/internal/c4/scan-lifecycle.d.ts +324 -0
  412. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  413. package/dist/internal/c4/scan-lifecycle.js +249 -0
  414. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  415. package/dist/internal/c4/scan-storage.d.ts +7 -0
  416. package/dist/internal/c4/scan-storage.d.ts.map +1 -0
  417. package/dist/internal/c4/scan-storage.js +10 -0
  418. package/dist/internal/c4/scan-storage.js.map +1 -0
  419. package/dist/internal/c4/scanning.d.ts +4 -41
  420. package/dist/internal/c4/scanning.d.ts.map +1 -1
  421. package/dist/internal/c4/scanning.js +27 -108
  422. package/dist/internal/c4/scanning.js.map +1 -1
  423. package/dist/internal/c4/ship-import.d.ts +4 -0
  424. package/dist/internal/c4/ship-import.d.ts.map +1 -0
  425. package/dist/internal/c4/ship-import.js +13 -0
  426. package/dist/internal/c4/ship-import.js.map +1 -0
  427. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  428. package/dist/internal/c4/ship-stats.js +46 -44
  429. package/dist/internal/c4/ship-stats.js.map +1 -1
  430. package/dist/internal/c4/starbase.d.ts +0 -32
  431. package/dist/internal/c4/starbase.d.ts.map +1 -1
  432. package/dist/internal/c4/starbase.js +26 -136
  433. package/dist/internal/c4/starbase.js.map +1 -1
  434. package/dist/internal/c4/stimulant.d.ts +26 -0
  435. package/dist/internal/c4/stimulant.d.ts.map +1 -0
  436. package/dist/internal/c4/stimulant.js +36 -0
  437. package/dist/internal/c4/stimulant.js.map +1 -0
  438. package/dist/internal/c4/wallet-cargo-cache.js +2 -1
  439. package/dist/internal/c4/wallet-cargo-cache.js.map +1 -1
  440. package/dist/internal/c4/world.d.ts +40 -7
  441. package/dist/internal/c4/world.d.ts.map +1 -1
  442. package/dist/internal/c4/world.js +87 -129
  443. package/dist/internal/c4/world.js.map +1 -1
  444. package/dist/internal/cargo.d.ts +2 -0
  445. package/dist/internal/cargo.d.ts.map +1 -1
  446. package/dist/internal/cargo.js +8 -0
  447. package/dist/internal/cargo.js.map +1 -1
  448. package/dist/internal/fleet-route.d.ts +12 -0
  449. package/dist/internal/fleet-route.d.ts.map +1 -0
  450. package/dist/internal/fleet-route.js +11 -0
  451. package/dist/internal/fleet-route.js.map +1 -0
  452. package/dist/internal/fleet.d.ts +3 -2
  453. package/dist/internal/fleet.d.ts.map +1 -1
  454. package/dist/internal/fleet.js +3 -5
  455. package/dist/internal/fleet.js.map +1 -1
  456. package/dist/internal/loyalty-atlas-bank-state.d.ts +17 -0
  457. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
  458. package/dist/internal/loyalty-atlas-bank-state.js +11 -0
  459. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
  460. package/dist/internal/planning/account-state.d.ts +6 -0
  461. package/dist/internal/planning/account-state.d.ts.map +1 -1
  462. package/dist/internal/planning/account-state.js +13 -0
  463. package/dist/internal/planning/account-state.js.map +1 -1
  464. package/dist/internal/planning/action-runtime.d.ts +38 -0
  465. package/dist/internal/planning/action-runtime.d.ts.map +1 -0
  466. package/dist/internal/planning/action-runtime.js +63 -0
  467. package/dist/internal/planning/action-runtime.js.map +1 -0
  468. package/dist/internal/planning/arrival-guards.d.ts +19 -0
  469. package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
  470. package/dist/internal/planning/arrival-guards.js +172 -0
  471. package/dist/internal/planning/arrival-guards.js.map +1 -0
  472. package/dist/internal/planning/authorization-adapter.d.ts +61 -39
  473. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  474. package/dist/internal/planning/authorization-adapter.js +219 -83
  475. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  476. package/dist/internal/planning/cargo-storage-actions.d.ts +8 -0
  477. package/dist/internal/planning/cargo-storage-actions.d.ts.map +1 -0
  478. package/dist/internal/planning/cargo-storage-actions.js +97 -0
  479. package/dist/internal/planning/cargo-storage-actions.js.map +1 -0
  480. package/dist/internal/planning/character-access.d.ts +28 -0
  481. package/dist/internal/planning/character-access.d.ts.map +1 -0
  482. package/dist/internal/planning/character-access.js +41 -0
  483. package/dist/internal/planning/character-access.js.map +1 -0
  484. package/dist/internal/planning/character-registration-guard.d.ts +4 -0
  485. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
  486. package/dist/internal/planning/character-registration-guard.js +59 -0
  487. package/dist/internal/planning/character-registration-guard.js.map +1 -0
  488. package/dist/internal/planning/character-registration.d.ts +23 -0
  489. package/dist/internal/planning/character-registration.d.ts.map +1 -0
  490. package/dist/internal/planning/character-registration.js +87 -0
  491. package/dist/internal/planning/character-registration.js.map +1 -0
  492. package/dist/internal/planning/claim-stake-storage-actions.d.ts +12 -0
  493. package/dist/internal/planning/claim-stake-storage-actions.d.ts.map +1 -0
  494. package/dist/internal/planning/claim-stake-storage-actions.js +63 -0
  495. package/dist/internal/planning/claim-stake-storage-actions.js.map +1 -0
  496. package/dist/internal/planning/combat-storage-actions.d.ts +9 -0
  497. package/dist/internal/planning/combat-storage-actions.d.ts.map +1 -0
  498. package/dist/internal/planning/combat-storage-actions.js +55 -0
  499. package/dist/internal/planning/combat-storage-actions.js.map +1 -0
  500. package/dist/internal/planning/crafting-storage-actions.d.ts +7 -0
  501. package/dist/internal/planning/crafting-storage-actions.d.ts.map +1 -0
  502. package/dist/internal/planning/crafting-storage-actions.js +64 -0
  503. package/dist/internal/planning/crafting-storage-actions.js.map +1 -0
  504. package/dist/internal/planning/currency-cache-guard.d.ts +6 -0
  505. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -0
  506. package/dist/internal/planning/currency-cache-guard.js +77 -0
  507. package/dist/internal/planning/currency-cache-guard.js.map +1 -0
  508. package/dist/internal/planning/democracy-history.d.ts +50 -0
  509. package/dist/internal/planning/democracy-history.d.ts.map +1 -0
  510. package/dist/internal/planning/democracy-history.js +189 -0
  511. package/dist/internal/planning/democracy-history.js.map +1 -0
  512. package/dist/internal/planning/direct-options.d.ts +17 -0
  513. package/dist/internal/planning/direct-options.d.ts.map +1 -0
  514. package/dist/internal/planning/direct-options.js +43 -0
  515. package/dist/internal/planning/direct-options.js.map +1 -0
  516. package/dist/internal/planning/disband-storage-actions.d.ts +9 -0
  517. package/dist/internal/planning/disband-storage-actions.d.ts.map +1 -0
  518. package/dist/internal/planning/disband-storage-actions.js +24 -0
  519. package/dist/internal/planning/disband-storage-actions.js.map +1 -0
  520. package/dist/internal/planning/faction-enrollment.d.ts +0 -4
  521. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -1
  522. package/dist/internal/planning/faction-enrollment.js +1 -31
  523. package/dist/internal/planning/faction-enrollment.js.map +1 -1
  524. package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
  525. package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
  526. package/dist/internal/planning/faction-trade-guards.js +15 -0
  527. package/dist/internal/planning/faction-trade-guards.js.map +1 -0
  528. package/dist/internal/planning/faction-trade-state.d.ts +16 -0
  529. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
  530. package/dist/internal/planning/faction-trade-state.js +43 -0
  531. package/dist/internal/planning/faction-trade-state.js.map +1 -0
  532. package/dist/internal/planning/fleet-arrival.d.ts +40 -0
  533. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
  534. package/dist/internal/planning/fleet-arrival.js +107 -0
  535. package/dist/internal/planning/fleet-arrival.js.map +1 -0
  536. package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
  537. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
  538. package/dist/internal/planning/fleet-attack-xp.js +104 -0
  539. package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
  540. package/dist/internal/planning/fleet-creation.d.ts +30 -0
  541. package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
  542. package/dist/internal/planning/fleet-creation.js +89 -0
  543. package/dist/internal/planning/fleet-creation.js.map +1 -0
  544. package/dist/internal/planning/fleet-crew-guard.d.ts +29 -0
  545. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
  546. package/dist/internal/planning/fleet-crew-guard.js +48 -0
  547. package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
  548. package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
  549. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
  550. package/dist/internal/planning/fleet-crew-transfer.js +152 -0
  551. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
  552. package/dist/internal/planning/fleet-disband-guard.d.ts +12 -0
  553. package/dist/internal/planning/fleet-disband-guard.d.ts.map +1 -0
  554. package/dist/internal/planning/fleet-disband-guard.js +54 -0
  555. package/dist/internal/planning/fleet-disband-guard.js.map +1 -0
  556. package/dist/internal/planning/fleet-disband.d.ts +36 -0
  557. package/dist/internal/planning/fleet-disband.d.ts.map +1 -0
  558. package/dist/internal/planning/fleet-disband.js +82 -0
  559. package/dist/internal/planning/fleet-disband.js.map +1 -0
  560. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
  561. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
  562. package/dist/internal/planning/fleet-dock-funding-guard.js +216 -0
  563. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
  564. package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
  565. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
  566. package/dist/internal/planning/fleet-dock-funding.js +164 -0
  567. package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
  568. package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
  569. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
  570. package/dist/internal/planning/fleet-docking-guard.js +44 -0
  571. package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
  572. package/dist/internal/planning/fleet-docking.d.ts +25 -0
  573. package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
  574. package/dist/internal/planning/fleet-docking.js +106 -0
  575. package/dist/internal/planning/fleet-docking.js.map +1 -0
  576. package/dist/internal/planning/fleet-rental.d.ts +5 -0
  577. package/dist/internal/planning/fleet-rental.d.ts.map +1 -0
  578. package/dist/internal/planning/fleet-rental.js +9 -0
  579. package/dist/internal/planning/fleet-rental.js.map +1 -0
  580. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  581. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  582. package/dist/internal/planning/fleet-respawn.js +164 -0
  583. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  584. package/dist/internal/planning/fleet-ship-assembly.d.ts +38 -0
  585. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
  586. package/dist/internal/planning/fleet-ship-assembly.js +167 -0
  587. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
  588. package/dist/internal/planning/fleet-state.d.ts +25 -0
  589. package/dist/internal/planning/fleet-state.d.ts.map +1 -0
  590. package/dist/internal/planning/fleet-state.js +28 -0
  591. package/dist/internal/planning/fleet-state.js.map +1 -0
  592. package/dist/internal/planning/governance-fees.d.ts +64 -0
  593. package/dist/internal/planning/governance-fees.d.ts.map +1 -0
  594. package/dist/internal/planning/governance-fees.js +231 -0
  595. package/dist/internal/planning/governance-fees.js.map +1 -0
  596. package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
  597. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
  598. package/dist/internal/planning/local-market-order-funding.js +128 -0
  599. package/dist/internal/planning/local-market-order-funding.js.map +1 -0
  600. package/dist/internal/planning/local-market-order.d.ts +40 -0
  601. package/dist/internal/planning/local-market-order.d.ts.map +1 -0
  602. package/dist/internal/planning/local-market-order.js +139 -0
  603. package/dist/internal/planning/local-market-order.js.map +1 -0
  604. package/dist/internal/planning/market-storage-actions.d.ts +7 -0
  605. package/dist/internal/planning/market-storage-actions.d.ts.map +1 -0
  606. package/dist/internal/planning/market-storage-actions.js +71 -0
  607. package/dist/internal/planning/market-storage-actions.js.map +1 -0
  608. package/dist/internal/planning/mining-stop.d.ts +14 -0
  609. package/dist/internal/planning/mining-stop.d.ts.map +1 -0
  610. package/dist/internal/planning/mining-stop.js +42 -0
  611. package/dist/internal/planning/mining-stop.js.map +1 -0
  612. package/dist/internal/planning/mining-storage-actions.d.ts +11 -0
  613. package/dist/internal/planning/mining-storage-actions.d.ts.map +1 -0
  614. package/dist/internal/planning/mining-storage-actions.js +57 -0
  615. package/dist/internal/planning/mining-storage-actions.js.map +1 -0
  616. package/dist/internal/planning/movement-storage-actions.d.ts +7 -0
  617. package/dist/internal/planning/movement-storage-actions.d.ts.map +1 -0
  618. package/dist/internal/planning/movement-storage-actions.js +38 -0
  619. package/dist/internal/planning/movement-storage-actions.js.map +1 -0
  620. package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
  621. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
  622. package/dist/internal/planning/movement-xp-guard.js +104 -0
  623. package/dist/internal/planning/movement-xp-guard.js.map +1 -0
  624. package/dist/internal/planning/open-signal-guard.d.ts +3 -0
  625. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
  626. package/dist/internal/planning/open-signal-guard.js +32 -0
  627. package/dist/internal/planning/open-signal-guard.js.map +1 -0
  628. package/dist/internal/planning/open-signal.d.ts +31 -0
  629. package/dist/internal/planning/open-signal.d.ts.map +1 -0
  630. package/dist/internal/planning/open-signal.js +94 -0
  631. package/dist/internal/planning/open-signal.js.map +1 -0
  632. package/dist/internal/planning/original-token.d.ts +40 -0
  633. package/dist/internal/planning/original-token.d.ts.map +1 -0
  634. package/dist/internal/planning/original-token.js +112 -0
  635. package/dist/internal/planning/original-token.js.map +1 -0
  636. package/dist/internal/planning/own-starbase-facts.d.ts +37 -0
  637. package/dist/internal/planning/own-starbase-facts.d.ts.map +1 -0
  638. package/dist/internal/planning/own-starbase-facts.js +52 -0
  639. package/dist/internal/planning/own-starbase-facts.js.map +1 -0
  640. package/dist/internal/planning/plan-fields.d.ts +60 -0
  641. package/dist/internal/planning/plan-fields.d.ts.map +1 -0
  642. package/dist/internal/planning/plan-fields.js +159 -0
  643. package/dist/internal/planning/plan-fields.js.map +1 -0
  644. package/dist/internal/planning/plan-guards.d.ts +4 -0
  645. package/dist/internal/planning/plan-guards.d.ts.map +1 -0
  646. package/dist/internal/planning/plan-guards.js +184 -0
  647. package/dist/internal/planning/plan-guards.js.map +1 -0
  648. package/dist/internal/planning/profile-key.d.ts +13 -0
  649. package/dist/internal/planning/profile-key.d.ts.map +1 -0
  650. package/dist/internal/planning/profile-key.js +20 -0
  651. package/dist/internal/planning/profile-key.js.map +1 -0
  652. package/dist/internal/planning/profile-storage-funding-guard.d.ts +29 -0
  653. package/dist/internal/planning/profile-storage-funding-guard.d.ts.map +1 -0
  654. package/dist/internal/planning/profile-storage-funding-guard.js +115 -0
  655. package/dist/internal/planning/profile-storage-funding-guard.js.map +1 -0
  656. package/dist/internal/planning/profile-storage-funding.d.ts +46 -0
  657. package/dist/internal/planning/profile-storage-funding.d.ts.map +1 -0
  658. package/dist/internal/planning/profile-storage-funding.js +58 -0
  659. package/dist/internal/planning/profile-storage-funding.js.map +1 -0
  660. package/dist/internal/planning/recipe-state.d.ts +9 -0
  661. package/dist/internal/planning/recipe-state.d.ts.map +1 -0
  662. package/dist/internal/planning/recipe-state.js +23 -0
  663. package/dist/internal/planning/recipe-state.js.map +1 -0
  664. package/dist/internal/planning/region-access.d.ts +30 -0
  665. package/dist/internal/planning/region-access.d.ts.map +1 -0
  666. package/dist/internal/planning/region-access.js +94 -0
  667. package/dist/internal/planning/region-access.js.map +1 -0
  668. package/dist/internal/planning/rent-catalog.d.ts +37 -0
  669. package/dist/internal/planning/rent-catalog.d.ts.map +1 -0
  670. package/dist/internal/planning/rent-catalog.js +165 -0
  671. package/dist/internal/planning/rent-catalog.js.map +1 -0
  672. package/dist/internal/planning/rent.d.ts +19 -0
  673. package/dist/internal/planning/rent.d.ts.map +1 -0
  674. package/dist/internal/planning/rent.js +35 -0
  675. package/dist/internal/planning/rent.js.map +1 -0
  676. package/dist/internal/planning/research-unlock.d.ts +69 -0
  677. package/dist/internal/planning/research-unlock.d.ts.map +1 -0
  678. package/dist/internal/planning/research-unlock.js +287 -0
  679. package/dist/internal/planning/research-unlock.js.map +1 -0
  680. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  681. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  682. package/dist/internal/planning/respawn-guards.js +42 -0
  683. package/dist/internal/planning/respawn-guards.js.map +1 -0
  684. package/dist/internal/planning/runtime-guards.d.ts +41 -0
  685. package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
  686. package/dist/internal/planning/runtime-guards.js +658 -0
  687. package/dist/internal/planning/runtime-guards.js.map +1 -0
  688. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  689. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  690. package/dist/internal/planning/scan-completion-guard.js +95 -0
  691. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  692. package/dist/internal/planning/scan-completion.d.ts +20 -0
  693. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  694. package/dist/internal/planning/scan-completion.js +198 -0
  695. package/dist/internal/planning/scan-completion.js.map +1 -0
  696. package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
  697. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
  698. package/dist/internal/planning/scan-detect-guard.js +77 -0
  699. package/dist/internal/planning/scan-detect-guard.js.map +1 -0
  700. package/dist/internal/planning/scan-detect.d.ts +24 -0
  701. package/dist/internal/planning/scan-detect.d.ts.map +1 -0
  702. package/dist/internal/planning/scan-detect.js +246 -0
  703. package/dist/internal/planning/scan-detect.js.map +1 -0
  704. package/dist/internal/planning/scan-idle-scope.d.ts +5 -0
  705. package/dist/internal/planning/scan-idle-scope.d.ts.map +1 -0
  706. package/dist/internal/planning/scan-idle-scope.js +5 -0
  707. package/dist/internal/planning/scan-idle-scope.js.map +1 -0
  708. package/dist/internal/planning/scan-input.d.ts +9 -0
  709. package/dist/internal/planning/scan-input.d.ts.map +1 -0
  710. package/dist/internal/planning/scan-input.js +58 -0
  711. package/dist/internal/planning/scan-input.js.map +1 -0
  712. package/dist/internal/planning/scan-storage-actions.d.ts +9 -0
  713. package/dist/internal/planning/scan-storage-actions.d.ts.map +1 -0
  714. package/dist/internal/planning/scan-storage-actions.js +27 -0
  715. package/dist/internal/planning/scan-storage-actions.js.map +1 -0
  716. package/dist/internal/planning/ship-import-funding.d.ts +22 -0
  717. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
  718. package/dist/internal/planning/ship-import-funding.js +53 -0
  719. package/dist/internal/planning/ship-import-funding.js.map +1 -0
  720. package/dist/internal/planning/ship-token.d.ts +1 -6
  721. package/dist/internal/planning/ship-token.d.ts.map +1 -1
  722. package/dist/internal/planning/ship-token.js +0 -37
  723. package/dist/internal/planning/ship-token.js.map +1 -1
  724. package/dist/internal/planning/starbase-player-owner.d.ts +21 -0
  725. package/dist/internal/planning/starbase-player-owner.d.ts.map +1 -0
  726. package/dist/internal/planning/starbase-player-owner.js +17 -0
  727. package/dist/internal/planning/starbase-player-owner.js.map +1 -0
  728. package/dist/internal/planning/starbase-player-recovery-guard.d.ts +7 -0
  729. package/dist/internal/planning/starbase-player-recovery-guard.d.ts.map +1 -0
  730. package/dist/internal/planning/starbase-player-recovery-guard.js +39 -0
  731. package/dist/internal/planning/starbase-player-recovery-guard.js.map +1 -0
  732. package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
  733. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
  734. package/dist/internal/planning/starbase-system-guard.js +94 -0
  735. package/dist/internal/planning/starbase-system-guard.js.map +1 -0
  736. package/dist/internal/planning/starbase-system.d.ts +15 -0
  737. package/dist/internal/planning/starbase-system.d.ts.map +1 -0
  738. package/dist/internal/planning/starbase-system.js +25 -0
  739. package/dist/internal/planning/starbase-system.js.map +1 -0
  740. package/dist/internal/planning/storage-action-readers.d.ts +10 -0
  741. package/dist/internal/planning/storage-action-readers.d.ts.map +1 -0
  742. package/dist/internal/planning/storage-action-readers.js +58 -0
  743. package/dist/internal/planning/storage-action-readers.js.map +1 -0
  744. package/dist/internal/planning/storage-actions.d.ts +89 -0
  745. package/dist/internal/planning/storage-actions.d.ts.map +1 -0
  746. package/dist/internal/planning/storage-actions.js +183 -0
  747. package/dist/internal/planning/storage-actions.js.map +1 -0
  748. package/dist/internal/planning/token-mint.d.ts.map +1 -1
  749. package/dist/internal/planning/token-mint.js +2 -1
  750. package/dist/internal/planning/token-mint.js.map +1 -1
  751. package/dist/internal/planning/trade-faction-market.d.ts +20 -0
  752. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
  753. package/dist/internal/planning/trade-faction-market.js +56 -0
  754. package/dist/internal/planning/trade-faction-market.js.map +1 -0
  755. package/dist/internal/planning/wallet-starbase.d.ts +34 -0
  756. package/dist/internal/planning/wallet-starbase.d.ts.map +1 -0
  757. package/dist/internal/planning/wallet-starbase.js +39 -0
  758. package/dist/internal/planning/wallet-starbase.js.map +1 -0
  759. package/dist/internal/planning/xp-runtime.d.ts +36 -0
  760. package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
  761. package/dist/internal/planning/xp-runtime.js +122 -0
  762. package/dist/internal/planning/xp-runtime.js.map +1 -0
  763. package/dist/internal/read-meta.d.ts +12 -0
  764. package/dist/internal/read-meta.d.ts.map +1 -1
  765. package/dist/internal/read-meta.js +10 -0
  766. package/dist/internal/read-meta.js.map +1 -1
  767. package/dist/internal/system-program.d.ts +4 -0
  768. package/dist/internal/system-program.d.ts.map +1 -0
  769. package/dist/internal/system-program.js +3 -0
  770. package/dist/internal/system-program.js.map +1 -0
  771. package/dist/loyalty/actions/index.d.ts +1 -1
  772. package/dist/loyalty/actions/index.d.ts.map +1 -1
  773. package/dist/loyalty/actions/index.js +16 -46
  774. package/dist/loyalty/actions/index.js.map +1 -1
  775. package/dist/loyalty/index.d.ts +4 -0
  776. package/dist/loyalty/index.d.ts.map +1 -1
  777. package/dist/loyalty/index.js +21 -33
  778. package/dist/loyalty/index.js.map +1 -1
  779. package/dist/markets/actions/index.d.ts +62 -4
  780. package/dist/markets/actions/index.d.ts.map +1 -1
  781. package/dist/markets/actions/index.js +261 -187
  782. package/dist/markets/actions/index.js.map +1 -1
  783. package/dist/markets/actions/trade-faction-market.d.ts +45 -0
  784. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
  785. package/dist/markets/actions/trade-faction-market.js +311 -0
  786. package/dist/markets/actions/trade-faction-market.js.map +1 -0
  787. package/dist/markets/index.d.ts +38 -7
  788. package/dist/markets/index.d.ts.map +1 -1
  789. package/dist/markets/index.js +59 -20
  790. package/dist/markets/index.js.map +1 -1
  791. package/dist/mining/actions/index.d.ts +18 -15
  792. package/dist/mining/actions/index.d.ts.map +1 -1
  793. package/dist/mining/actions/index.js +146 -69
  794. package/dist/mining/actions/index.js.map +1 -1
  795. package/dist/mining/estimate-input.d.ts +103 -0
  796. package/dist/mining/estimate-input.d.ts.map +1 -0
  797. package/dist/mining/estimate-input.js +86 -0
  798. package/dist/mining/estimate-input.js.map +1 -0
  799. package/dist/mining/estimate.d.ts +114 -0
  800. package/dist/mining/estimate.d.ts.map +1 -0
  801. package/dist/mining/estimate.js +127 -0
  802. package/dist/mining/estimate.js.map +1 -0
  803. package/dist/mining/index.d.ts +10 -2
  804. package/dist/mining/index.d.ts.map +1 -1
  805. package/dist/mining/index.js +11 -13
  806. package/dist/mining/index.js.map +1 -1
  807. package/dist/mining/profile.d.ts +82 -0
  808. package/dist/mining/profile.d.ts.map +1 -0
  809. package/dist/mining/profile.js +109 -0
  810. package/dist/mining/profile.js.map +1 -0
  811. package/dist/planning/assembly.d.ts +6 -1
  812. package/dist/planning/assembly.d.ts.map +1 -1
  813. package/dist/planning/assembly.js +12 -8
  814. package/dist/planning/assembly.js.map +1 -1
  815. package/dist/planning/execution.d.ts +19 -3
  816. package/dist/planning/execution.d.ts.map +1 -1
  817. package/dist/planning/execution.js +623 -72
  818. package/dist/planning/execution.js.map +1 -1
  819. package/dist/planning/index.d.ts +252 -165
  820. package/dist/planning/index.d.ts.map +1 -1
  821. package/dist/planning/index.js +31 -388
  822. package/dist/planning/index.js.map +1 -1
  823. package/dist/planning/plan-construction.d.ts +25 -0
  824. package/dist/planning/plan-construction.d.ts.map +1 -0
  825. package/dist/planning/plan-construction.js +143 -0
  826. package/dist/planning/plan-construction.js.map +1 -0
  827. package/dist/planning/plan-sequence-checkpoint.d.ts +9 -0
  828. package/dist/planning/plan-sequence-checkpoint.d.ts.map +1 -1
  829. package/dist/planning/plan-sequence-checkpoint.js +16 -7
  830. package/dist/planning/plan-sequence-checkpoint.js.map +1 -1
  831. package/dist/planning/plan-sequence-execution.d.ts +5 -0
  832. package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
  833. package/dist/planning/plan-sequence-execution.js +74 -40
  834. package/dist/planning/plan-sequence-execution.js.map +1 -1
  835. package/dist/planning/plan-sequence.d.ts +2 -1
  836. package/dist/planning/plan-sequence.d.ts.map +1 -1
  837. package/dist/planning/plan-sequence.js +8 -1
  838. package/dist/planning/plan-sequence.js.map +1 -1
  839. package/dist/planning/plan-validation.d.ts +17 -0
  840. package/dist/planning/plan-validation.d.ts.map +1 -0
  841. package/dist/planning/plan-validation.js +147 -0
  842. package/dist/planning/plan-validation.js.map +1 -0
  843. package/dist/planning/simulation.d.ts +25 -1
  844. package/dist/planning/simulation.d.ts.map +1 -1
  845. package/dist/planning/simulation.js +111 -11
  846. package/dist/planning/simulation.js.map +1 -1
  847. package/dist/registry/cargo.d.ts +7 -12
  848. package/dist/registry/cargo.d.ts.map +1 -1
  849. package/dist/registry/cargo.js +19 -20
  850. package/dist/registry/cargo.js.map +1 -1
  851. package/dist/registry/definition-section-snapshot.d.ts +1 -1
  852. package/dist/registry/definition-section-snapshot.d.ts.map +1 -1
  853. package/dist/registry/definition-section-snapshot.js +10 -3
  854. package/dist/registry/definition-section-snapshot.js.map +1 -1
  855. package/dist/registry/docking.d.ts +10 -0
  856. package/dist/registry/docking.d.ts.map +1 -0
  857. package/dist/registry/docking.js +12 -0
  858. package/dist/registry/docking.js.map +1 -0
  859. package/dist/registry/index.d.ts +35 -4
  860. package/dist/registry/index.d.ts.map +1 -1
  861. package/dist/registry/index.js +226 -227
  862. package/dist/registry/index.js.map +1 -1
  863. package/dist/registry/onboarding.d.ts +10 -2
  864. package/dist/registry/onboarding.d.ts.map +1 -1
  865. package/dist/registry/onboarding.js +22 -7
  866. package/dist/registry/onboarding.js.map +1 -1
  867. package/dist/registry/scanning.d.ts +7 -0
  868. package/dist/registry/scanning.d.ts.map +1 -0
  869. package/dist/registry/scanning.js +13 -0
  870. package/dist/registry/scanning.js.map +1 -0
  871. package/dist/registry/ship-stats-snapshot.d.ts.map +1 -1
  872. package/dist/registry/ship-stats-snapshot.js +38 -24
  873. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  874. package/dist/registry/ships.d.ts +22 -2
  875. package/dist/registry/ships.d.ts.map +1 -1
  876. package/dist/registry/ships.js +31 -4
  877. package/dist/registry/ships.js.map +1 -1
  878. package/dist/registry/xp-runtime.d.ts +4 -0
  879. package/dist/registry/xp-runtime.d.ts.map +1 -0
  880. package/dist/registry/xp-runtime.js +14 -0
  881. package/dist/registry/xp-runtime.js.map +1 -0
  882. package/dist/rewards/index.d.ts +11 -5
  883. package/dist/rewards/index.d.ts.map +1 -1
  884. package/dist/rewards/index.js +10 -21
  885. package/dist/rewards/index.js.map +1 -1
  886. package/dist/scanning/actions/index.d.ts +116 -0
  887. package/dist/scanning/actions/index.d.ts.map +1 -0
  888. package/dist/scanning/actions/index.js +215 -0
  889. package/dist/scanning/actions/index.js.map +1 -0
  890. package/dist/scanning/index.d.ts +10 -12
  891. package/dist/scanning/index.d.ts.map +1 -1
  892. package/dist/scanning/index.js +19 -23
  893. package/dist/scanning/index.js.map +1 -1
  894. package/dist/scanning/lifecycle.d.ts +77 -0
  895. package/dist/scanning/lifecycle.d.ts.map +1 -0
  896. package/dist/scanning/lifecycle.js +93 -0
  897. package/dist/scanning/lifecycle.js.map +1 -0
  898. package/dist/scanning/odds.d.ts +115 -0
  899. package/dist/scanning/odds.d.ts.map +1 -0
  900. package/dist/scanning/odds.js +294 -0
  901. package/dist/scanning/odds.js.map +1 -0
  902. package/dist/scanning/signals.d.ts +126 -0
  903. package/dist/scanning/signals.d.ts.map +1 -0
  904. package/dist/scanning/signals.js +173 -0
  905. package/dist/scanning/signals.js.map +1 -0
  906. package/dist/starbases/actions/index.d.ts +49 -4
  907. package/dist/starbases/actions/index.d.ts.map +1 -1
  908. package/dist/starbases/actions/index.js +120 -69
  909. package/dist/starbases/actions/index.js.map +1 -1
  910. package/dist/starbases/index.d.ts +18 -0
  911. package/dist/starbases/index.d.ts.map +1 -1
  912. package/dist/starbases/index.js +24 -11
  913. package/dist/starbases/index.js.map +1 -1
  914. package/dist/world/index.d.ts +185 -6
  915. package/dist/world/index.d.ts.map +1 -1
  916. package/dist/world/index.js +186 -15
  917. package/dist/world/index.js.map +1 -1
  918. package/dist/world/planet-claim-stake-plots.d.ts +139 -0
  919. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
  920. package/dist/world/planet-claim-stake-plots.js +117 -0
  921. package/dist/world/planet-claim-stake-plots.js.map +1 -0
  922. package/dist/world/starbase-status.d.ts +217 -0
  923. package/dist/world/starbase-status.d.ts.map +1 -0
  924. package/dist/world/starbase-status.js +218 -0
  925. package/dist/world/starbase-status.js.map +1 -0
  926. package/package.json +6 -2
@@ -0,0 +1,61 @@
1
+ const LEVELS = [
2
+ 'level-0',
3
+ 'level-1',
4
+ 'level-2',
5
+ 'level-3',
6
+ 'level-4',
7
+ 'level-5',
8
+ 'css',
9
+ ];
10
+ /** Derives a Claim Stake's Planet registration the way the game does before a
11
+ * building change. Pass the Planet's `details.claimedPlots` and the Starbase's
12
+ * current level; a stored deactivation time of zero means active.
13
+ * @example
14
+ * ```ts
15
+ * declare const planet: { readonly details: { readonly claimedPlots: Parameters<typeof deriveClaimStakeRegistration>[1] } };
16
+ * const registration = deriveClaimStakeRegistration(
17
+ * { address: 'Stake11111111111111111111111111111111111111' as Address },
18
+ * planet.details.claimedPlots,
19
+ * 'level-2',
20
+ * );
21
+ * ```
22
+ */
23
+ export function deriveClaimStakeRegistration(stake, claimedPlots, starbaseLevel) {
24
+ const rows = [...claimedPlots].sort((a, b) => a.key - b.key);
25
+ for (const { key: plotRow, structures } of rows) {
26
+ const entry = structures.find(({ address }) => address === stake.address);
27
+ if (entry === undefined)
28
+ continue;
29
+ if (entry.deactivationTimeUnixSeconds !== 0n)
30
+ return {
31
+ evictedAtUnixSeconds: entry.deactivationTimeUnixSeconds,
32
+ kind: 'evicted-awaiting-respawn',
33
+ plotRow,
34
+ };
35
+ return plotRow > LEVELS.indexOf(starbaseLevel)
36
+ ? { kind: 'off-level', plotRow }
37
+ : { kind: 'operable', plotRow };
38
+ }
39
+ return { kind: 'unregistered' };
40
+ }
41
+ /** Derives a Claim Stake's rent standing from its state and the eviction grace
42
+ * period of its definition. A stake in design still pays rent, so it is active
43
+ * until its rent runs out.
44
+ * @example
45
+ * ```ts
46
+ * const standing = deriveClaimStakeRentStanding(
47
+ * { state: { kind: 'deactivated', deactivatedAtUnixSeconds: 100n } },
48
+ * 50n,
49
+ * );
50
+ * ```
51
+ */
52
+ export function deriveClaimStakeRentStanding(stake, evictionGracePeriodSeconds) {
53
+ return stake.state.kind === 'deactivated'
54
+ ? {
55
+ deactivatedAtUnixSeconds: stake.state.deactivatedAtUnixSeconds,
56
+ graceEndsAtUnixSeconds: stake.state.deactivatedAtUnixSeconds + evictionGracePeriodSeconds,
57
+ kind: 'delinquent',
58
+ }
59
+ : { kind: 'active' };
60
+ }
61
+ //# sourceMappingURL=claim-stake-standing.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claim-stake-standing.js","sourceRoot":"","sources":["../../../src/internal/c4/claim-stake-standing.ts"],"names":[],"mappings":"AAKA,MAAM,MAAM,GAAkC;IAC5C,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,KAAK;CACN,CAAC;AA2CF;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAAoC,EACpC,YAA6E,EAC7E,aAAiC;IAEjC,MAAM,IAAI,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC;IAC7D,KAAK,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,IAAI,IAAI,EAAE,CAAC;QAChD,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,KAAK,KAAK,CAAC,OAAO,CAAC,CAAC;QAC1E,IAAI,KAAK,KAAK,SAAS;YAAE,SAAS;QAClC,IAAI,KAAK,CAAC,2BAA2B,KAAK,EAAE;YAC1C,OAAO;gBACL,oBAAoB,EAAE,KAAK,CAAC,2BAA2B;gBACvD,IAAI,EAAE,0BAA0B;gBAChC,OAAO;aACR,CAAC;QACJ,OAAO,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC;YAC5C,CAAC,CAAC,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE;YAChC,CAAC,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,CAAC;IACpC,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,cAAc,EAAE,CAAC;AAClC,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,UAAU,4BAA4B,CAC1C,KAA8C,EAC9C,0BAAkC;IAElC,OAAO,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,aAAa;QACvC,CAAC,CAAC;YACE,wBAAwB,EAAE,KAAK,CAAC,KAAK,CAAC,wBAAwB;YAC9D,sBAAsB,EACpB,KAAK,CAAC,KAAK,CAAC,wBAAwB,GAAG,0BAA0B;YACnE,IAAI,EAAE,YAAY;SACnB;QACH,CAAC,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AACzB,CAAC"}
@@ -0,0 +1,45 @@
1
+ import type { Address, ReadonlyUint8Array } from '@solana/kit';
2
+ import type { RawAccount } from '../../client/contracts.js';
3
+ import { type FleetStateChange } from './fleet-storage.js';
4
+ /** A Claim Stake placement's key index and bundled hub. */
5
+ export declare function decodePlaceClaimStakeData(data: ReadonlyUint8Array): {
6
+ keyIndex: number;
7
+ hubBuildingId: number;
8
+ };
9
+ /** A building change's key index and the building ids it changes. */
10
+ export declare function decodeBuildingChangesData(data: ReadonlyUint8Array): {
11
+ keyIndex: number;
12
+ buildingIds: number[];
13
+ };
14
+ /** A Claim Stake Fleet transfer start's key index. */
15
+ export declare function decodeStartTransferData(data: ReadonlyUint8Array): {
16
+ keyIndex: number;
17
+ };
18
+ /** The Fleet's state change when it starts a Claim Stake transfer: an Idle
19
+ * Fleet, after any completed movement settles, enters ClaimStakeTransfer with
20
+ * the requested load and unload lines. */
21
+ export declare function startTransferState(fleet: RawAccount, data: ReadonlyUint8Array): FleetStateChange;
22
+ /** The bytes a new Claim Stake holds and those its rent floor reserves: an
23
+ * Active stake with its bundled hub and a production entry per resource the
24
+ * hub produces or, on this Planet, extracts. A resource whose rate is positive
25
+ * reserves a cargo line. */
26
+ export declare function placedStakeBytes(game: RawAccount, body: RawAccount, hubBuildingId: number): {
27
+ readonly bytes: number;
28
+ readonly reservedBytes: number;
29
+ };
30
+ /** The level of a Star System's active Starbase. */
31
+ export declare function starbaseLevel(system: RawAccount): number;
32
+ /** The bytes a Planet grows by when a stake claims a plot: the stake's entry
33
+ * in its level's claim list, plus an empty claim list for each level up to the
34
+ * Starbase level that has none yet. */
35
+ export declare function claimedPlotGrowth(body: RawAccount, stake: Address, level: number): number;
36
+ /** How a building change resizes a stake and the bytes its rent floor reserves:
37
+ * an Active stake enters Design, and every building id the design does not yet
38
+ * hold gains an entry. */
39
+ export declare function buildingChangeStake(raw: RawAccount, buildingIds: readonly number[]): {
40
+ readonly growthBytes: number;
41
+ readonly reservedBytes: number;
42
+ };
43
+ /** The bytes a stake's rent floor reserves beyond its size. */
44
+ export declare function stakeReservedBytes(raw: RawAccount): number;
45
+ //# sourceMappingURL=claim-stake-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claim-stake-storage.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/claim-stake-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAe/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAE5D,OAAO,EAEL,KAAK,gBAAgB,EACtB,MAAM,oBAAoB,CAAC;AAG5B,2DAA2D;AAC3D,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,kBAAkB;;;EAIjE;AAED,qEAAqE;AACrE,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,kBAAkB;;;EAIjE;AAED,sDAAsD;AACtD,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,kBAAkB;;EAM/D;AAED;;0CAE0C;AAC1C,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,UAAU,EACjB,IAAI,EAAE,kBAAkB,GACvB,gBAAgB,CAmBlB;AA8CD;;;4BAG4B;AAC5B,wBAAgB,gBAAgB,CAC9B,IAAI,EAAE,UAAU,EAChB,IAAI,EAAE,UAAU,EAChB,aAAa,EAAE,MAAM,GACpB;IAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAqD5D;AA0BD,oDAAoD;AACpD,wBAAgB,aAAa,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAIxD;AAED;;uCAEuC;AACvC,wBAAgB,iBAAiB,CAC/B,IAAI,EAAE,UAAU,EAChB,KAAK,EAAE,OAAO,EACd,KAAK,EAAE,MAAM,GACZ,MAAM,CAmCR;AAED;;0BAE0B;AAC1B,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,UAAU,EACf,WAAW,EAAE,SAAS,MAAM,EAAE,GAC7B;IAAE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAA;CAAE,CAmBlE;AAED,+DAA+D;AAC/D,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,UAAU,GAAG,MAAM,CAG1D"}
@@ -0,0 +1,207 @@
1
+ import { getCelestialBodyDecoder, getCelestialBodyEncoder, getClaimStakeInstanceDecoder, getClaimStakeInstanceEncoder, getFleetStateEncoder, getPlaceClaimStakeBuildingsInstructionDataDecoder, getPlaceClaimStakeInstanceWithHubInstructionDataDecoder, getStarSystemDecoder, getStartClaimStakesFleetTransferInstructionDataDecoder, } from '@staratlas/dev-sage';
2
+ import { AccountDecodeError } from '../../client/errors.js';
3
+ import { decodeCanonicalFleet, } from './fleet-storage.js';
4
+ import { decodeRegistryGame } from './game.js';
5
+ /** A Claim Stake placement's key index and bundled hub. */
6
+ export function decodePlaceClaimStakeData(data) {
7
+ const { keyIndex, hubBuildingId } = getPlaceClaimStakeInstanceWithHubInstructionDataDecoder().decode(data);
8
+ return { keyIndex, hubBuildingId };
9
+ }
10
+ /** A building change's key index and the building ids it changes. */
11
+ export function decodeBuildingChangesData(data) {
12
+ const { keyIndex, buildingChanges } = getPlaceClaimStakeBuildingsInstructionDataDecoder().decode(data);
13
+ return { keyIndex, buildingIds: buildingChanges.map(([id]) => id) };
14
+ }
15
+ /** A Claim Stake Fleet transfer start's key index. */
16
+ export function decodeStartTransferData(data) {
17
+ return {
18
+ keyIndex: getStartClaimStakesFleetTransferInstructionDataDecoder().decode(data)
19
+ .keyIndex,
20
+ };
21
+ }
22
+ /** The Fleet's state change when it starts a Claim Stake transfer: an Idle
23
+ * Fleet, after any completed movement settles, enters ClaimStakeTransfer with
24
+ * the requested load and unload lines. */
25
+ export function startTransferState(fleet, data) {
26
+ const { toLoad, toUnload } = getStartClaimStakesFleetTransferInstructionDataDecoder().decode(data);
27
+ const encoder = getFleetStateEncoder();
28
+ return {
29
+ fresh: encoder.encode(decodeCanonicalFleet(fleet).state).length,
30
+ after: encoder.encode({
31
+ __kind: 'ClaimStakeTransfer',
32
+ fields: [
33
+ {
34
+ planet: fleet.address,
35
+ claimStake: fleet.address,
36
+ end: 0,
37
+ load: new Map(toLoad),
38
+ unload: new Map(toUnload),
39
+ },
40
+ ],
41
+ }).length,
42
+ };
43
+ }
44
+ function decodeCanonicalStake(raw) {
45
+ const stake = getClaimStakeInstanceDecoder().decode(raw.data);
46
+ if (getClaimStakeInstanceEncoder().encode(stake).length !== raw.data.length)
47
+ throw new AccountDecodeError('claimStakeInstance', raw.address, new RangeError('Claim Stake decoding lost variable collection entries.'), 'The Claim Stake contains noncanonical variable collections. Refresh a valid Claim Stake before estimating its storage.');
48
+ return stake;
49
+ }
50
+ /** The bytes the program funds a stake for beyond its size: it keeps the
51
+ * stake funded to the size it can reach once Deactivated, with a cargo line for
52
+ * every resource it produces at a positive rate that has none yet. */
53
+ function reservedBytes(stake, producing) {
54
+ const amounts = new Map(stake.productionCore.cargoPod.amounts);
55
+ for (const cargoId of producing)
56
+ if (!amounts.has(cargoId))
57
+ amounts.set(cargoId, 0);
58
+ const encoder = getClaimStakeInstanceEncoder();
59
+ const bytes = encoder.encode(stake).length;
60
+ return Math.max(0, encoder.encode({
61
+ ...stake,
62
+ state: { __kind: 'Deactivated', fields: [{ deactivationTime: 0 }] },
63
+ productionCore: {
64
+ ...stake.productionCore,
65
+ cargoPod: { ...stake.productionCore.cargoPod, amounts },
66
+ },
67
+ }).length - bytes);
68
+ }
69
+ /** The resources a stored stake produces at a positive rate. */
70
+ function producing(stake) {
71
+ return [...stake.productionCore.netResourceProduction]
72
+ .filter(([, rate]) => rate.raw > 0n)
73
+ .map(([cargoId]) => cargoId);
74
+ }
75
+ /** The bytes a new Claim Stake holds and those its rent floor reserves: an
76
+ * Active stake with its bundled hub and a production entry per resource the
77
+ * hub produces or, on this Planet, extracts. A resource whose rate is positive
78
+ * reserves a cargo line. */
79
+ export function placedStakeBytes(game, body, hubBuildingId) {
80
+ // The planner checks the hub exists in the configured Game.
81
+ const hub = decodeRegistryGame(game).buildingDefinitions.buildings.unsizedList.find(({ buildingId }) => buildingId === hubBuildingId);
82
+ const resources = planetResources(body);
83
+ // Extraction is the hub's U54F10 rate times the Planet's U16F48 richness,
84
+ // truncated to I54F10 as the program does.
85
+ const rates = new Map();
86
+ for (const [cargoId, rate] of hub.netResourceProduction)
87
+ rates.set(cargoId, rate.raw);
88
+ for (const [cargoId, rate] of hub.resourceExtraction) {
89
+ const richness = resources.get(cargoId);
90
+ if (richness !== undefined)
91
+ rates.set(cargoId, (rates.get(cargoId) ?? 0n) + ((rate.raw * richness) >> 48n));
92
+ }
93
+ const stake = {
94
+ version: 0,
95
+ owner: game.address,
96
+ gameId: game.address,
97
+ celestialBodyId: body.address,
98
+ claimStakeDefinitionId: 0,
99
+ claimStakeDefinitionSeqId: 0,
100
+ buildingDefinitionSeqId: 0,
101
+ systemSeqId: 0,
102
+ lastRentClockTimestamp: 0,
103
+ constructionRemaining: 0,
104
+ constructionProgressTimestamp: 0,
105
+ rentBalance: 0,
106
+ neededCrew: 0,
107
+ buildings: new Map([[hubBuildingId, 1]]),
108
+ state: { __kind: 'Active' },
109
+ productionCore: {
110
+ lastTickTimestamp: 0,
111
+ resourceStorage: 0,
112
+ netResourceProduction: new Map([...rates].map(([cargoId, raw]) => [cargoId, raw])),
113
+ cargoPod: { seqId: 0, storageCost: 0, amounts: new Map() },
114
+ },
115
+ };
116
+ return {
117
+ bytes: getClaimStakeInstanceEncoder().encode(stake).length,
118
+ reservedBytes: reservedBytes(stake, [...rates].filter(([, raw]) => raw > 0n).map(([cargoId]) => cargoId)),
119
+ };
120
+ }
121
+ // Placement requires a Planet and a System with an active Starbase, and the
122
+ // planner guards both unchanged until signing.
123
+ function planet(body) {
124
+ const decoded = getCelestialBodyDecoder().decode(body.data);
125
+ return {
126
+ decoded,
127
+ planet: decoded.celestialBodyType.fields[0],
128
+ };
129
+ }
130
+ function planetResources(body) {
131
+ return new Map([...planet(body).planet.resources].map(([id, richness]) => [
132
+ id,
133
+ richness.raw,
134
+ ]));
135
+ }
136
+ /** The level of a Star System's active Starbase. */
137
+ export function starbaseLevel(system) {
138
+ const { starbase } = getStarSystemDecoder().decode(system.data);
139
+ return starbase.value
140
+ .level;
141
+ }
142
+ /** The bytes a Planet grows by when a stake claims a plot: the stake's entry
143
+ * in its level's claim list, plus an empty claim list for each level up to the
144
+ * Starbase level that has none yet. */
145
+ export function claimedPlotGrowth(body, stake, level) {
146
+ const { decoded, planet: current } = planet(body);
147
+ const plots = current.claimedPlots;
148
+ const present = new Set(plots.offsetList.map(({ key }) => key));
149
+ const offsetList = [...plots.offsetList];
150
+ const unsizedList = [...plots.unsizedList];
151
+ for (let key = 0; key <= level; key += 1)
152
+ if (!present.has(key)) {
153
+ offsetList.push({ offset: 0, key });
154
+ unsizedList.push({ chronoList: [], stakeMap: new Map() });
155
+ }
156
+ const [first, ...rest] = unsizedList;
157
+ const claimed = {
158
+ chronoList: [...first.chronoList, stake],
159
+ stakeMap: new Map([...first.stakeMap, [stake, { deactivationTime: 0n }]]),
160
+ };
161
+ const encoder = getCelestialBodyEncoder();
162
+ return (encoder.encode({
163
+ ...decoded,
164
+ celestialBodyType: {
165
+ __kind: 'Planet',
166
+ fields: [
167
+ {
168
+ ...current,
169
+ claimedPlots: {
170
+ ...plots,
171
+ offsetList,
172
+ unsizedList: [claimed, ...rest],
173
+ },
174
+ },
175
+ ],
176
+ },
177
+ }).length - body.data.length);
178
+ }
179
+ /** How a building change resizes a stake and the bytes its rent floor reserves:
180
+ * an Active stake enters Design, and every building id the design does not yet
181
+ * hold gains an entry. */
182
+ export function buildingChangeStake(raw, buildingIds) {
183
+ const stake = decodeCanonicalStake(raw);
184
+ const design = stake.state.__kind === 'Design'
185
+ ? new Map(stake.state.fields[0].buildings)
186
+ : new Map();
187
+ for (const id of buildingIds)
188
+ if (!design.has(id))
189
+ design.set(id, 0);
190
+ const changed = {
191
+ ...stake,
192
+ state: {
193
+ __kind: 'Design',
194
+ fields: [{ sequenceId: 0, buildings: design }],
195
+ },
196
+ };
197
+ return {
198
+ growthBytes: getClaimStakeInstanceEncoder().encode(changed).length - raw.data.length,
199
+ reservedBytes: reservedBytes(changed, producing(stake)),
200
+ };
201
+ }
202
+ /** The bytes a stake's rent floor reserves beyond its size. */
203
+ export function stakeReservedBytes(raw) {
204
+ const stake = decodeCanonicalStake(raw);
205
+ return reservedBytes(stake, producing(stake));
206
+ }
207
+ //# sourceMappingURL=claim-stake-storage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claim-stake-storage.js","sourceRoot":"","sources":["../../../src/internal/c4/claim-stake-storage.ts"],"names":[],"mappings":"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"}
@@ -7,33 +7,6 @@ export declare const CLAIM_STAKE_FILTER_OFFSETS: Readonly<{
7
7
  game: 41;
8
8
  owner: 9;
9
9
  }>;
10
- /** Audited Claim Stake relationships; ClaimStakeInstance has no PDA. */
11
- export declare const CLAIM_STAKE_RELATIONSHIPS: readonly [{
12
- readonly from: "character";
13
- readonly kind: "discovered";
14
- readonly mechanism: "targeted owner, Game, and discriminator filters";
15
- readonly to: "claimStakeInstance[]";
16
- }, {
17
- readonly from: "celestialBody";
18
- readonly kind: "discovered";
19
- readonly mechanism: "targeted celestialBodyId, Game, and discriminator filters";
20
- readonly to: "claimStakeInstance[]";
21
- }, {
22
- readonly from: "claimStakeInstance";
23
- readonly kind: "stored";
24
- readonly mechanism: "owner and celestialBodyId account fields";
25
- readonly to: "character | celestialBody";
26
- }, {
27
- readonly from: "claimStakeInstance";
28
- readonly kind: "nested";
29
- readonly mechanism: "ProductionCore CargoPod value";
30
- readonly to: "cargoPod";
31
- }, {
32
- readonly from: "claimStakeInstance";
33
- readonly kind: "instruction-only";
34
- readonly mechanism: "placement and harvesting co-accounts are not durable relations";
35
- readonly to: "starbasePlayer | currencyCache";
36
- }];
37
10
  /** One translated building quantity on a Claim Stake.
38
11
  * @example
39
12
  * ```ts
@@ -101,12 +74,12 @@ export type ClaimStakeStateData = {
101
74
  * @example
102
75
  * ```ts
103
76
  * declare const stake: ClaimStakeAccountData;
104
- * console.log(stake.ownerCharacter, stake.body);
77
+ * console.log(stake.ownerProfile, stake.body);
105
78
  * ```
106
79
  */
107
80
  export interface ClaimStakeAccountData {
108
81
  readonly version: number;
109
- readonly ownerCharacter: Address;
82
+ readonly ownerProfile: Address;
110
83
  readonly game: Address;
111
84
  readonly body: Address;
112
85
  readonly claimStakeDefinitionId: number;
@@ -117,6 +90,9 @@ export interface ClaimStakeAccountData {
117
90
  readonly constructionRemainingSeconds: bigint;
118
91
  readonly constructionProgressAtUnixSeconds: bigint;
119
92
  readonly rentBalanceRaw: bigint;
93
+ /** Crew the stake committed, on a version-1 instance. A version-0 instance
94
+ * stores an unverified nominal value instead, and cannot be finalized or
95
+ * deconstructed. */
120
96
  readonly neededCrew: number;
121
97
  readonly buildings: readonly ClaimStakeBuildingData[];
122
98
  readonly state: ClaimStakeStateData;
@@ -129,12 +105,16 @@ export interface ClaimStakeAccountData {
129
105
  }
130
106
  /** Stable ClaimStakeInstance account definition for the pinned C4 bindings. */
131
107
  export declare const claimStakeAccountDefinition: C4AccountAdapter<ClaimStakeAccountData>;
132
- /** Builds stable Claim Stake filters for one owning Character. */
133
- export declare function buildClaimStakeCharacterDiscoveryFilters(game: Address, character: Address): readonly ProgramAccountFilter[];
108
+ /** Builds stable filters for every Claim Stake in one Game. */
109
+ export declare function buildClaimStakeGameDiscoveryFilters(game: Address): readonly ProgramAccountFilter[];
110
+ /** Discovers all instance accounts scoped to the configured Game. */
111
+ export declare function discoverClaimStakeAccountsByGame(context: SageContext, options?: Omit<DiscoveryRequest, 'filters' | 'strategy'>): Promise<readonly SnapshotEnvelope<ClaimStakeAccountData>[]>;
112
+ /** Builds stable Claim Stake filters for one owning Profile. */
113
+ export declare function buildClaimStakeProfileDiscoveryFilters(game: Address, profile: Address): readonly ProgramAccountFilter[];
134
114
  /** Builds stable Claim Stake filters for one Celestial Body. */
135
115
  export declare function buildClaimStakeBodyDiscoveryFilters(game: Address, body: Address): readonly ProgramAccountFilter[];
136
- /** Discovers Claim Stakes owned by one Character. */
137
- export declare function discoverClaimStakeAccountsByCharacter(context: SageContext, character: Address, options?: Omit<DiscoveryRequest, 'filters' | 'strategy'>): Promise<readonly SnapshotEnvelope<ClaimStakeAccountData>[]>;
116
+ /** Discovers Claim Stakes owned by one Profile. */
117
+ export declare function discoverClaimStakeAccountsByProfile(context: SageContext, profile: Address, options?: Omit<DiscoveryRequest, 'filters' | 'strategy'>): Promise<readonly SnapshotEnvelope<ClaimStakeAccountData>[]>;
138
118
  /** Discovers Claim Stakes placed on one Celestial Body. */
139
119
  export declare function discoverClaimStakeAccountsByBody(context: SageContext, body: Address, options?: Omit<DiscoveryRequest, 'filters' | 'strategy'>): Promise<readonly SnapshotEnvelope<ClaimStakeAccountData>[]>;
140
120
  //# sourceMappingURL=claim-stake.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"claim-stake.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/claim-stake.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claim-stake.d.ts","sourceRoot":"","sources":["../../../src/internal/c4/claim-stake.ts"],"names":[],"mappings":"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"}
@@ -1,75 +1,17 @@
1
- import { CLAIM_STAKE_INSTANCE_DISCRIMINATOR, SAGE_PROGRAM_ADDRESS, getClaimStakeInstanceDecoder, } from '@staratlas/dev-sage';
1
+ import { SAGE_PROGRAM_ADDRESS, getClaimStakeInstanceDecoder, } from '@staratlas/dev-sage';
2
2
  import { getAddressEncoder } from '@solana/kit';
3
- import { AccountDecodeError, InvalidAccountOwnerError, InvalidDiscriminatorError, MissingGameContextError, } from '../../client/errors.js';
3
+ import { AccountDecodeError, MissingGameContextError, } from '../../client/errors.js';
4
+ import { defineAccount } from './account-decoding.js';
5
+ import { cargoAmounts } from './cargo-pod.js';
6
+ import { CLAIM_STAKE_INSTANCE_DISCRIMINATOR } from './discriminators.js';
4
7
  const CLAIM_STAKE_MINIMUM_DATA_LENGTH = 196;
5
- const CLAIM_STAKE_ACCOUNT_DISCRIMINATOR = Object.freeze(Array.from(CLAIM_STAKE_INSTANCE_DISCRIMINATOR));
6
8
  /** Stable ClaimStakeInstance filter offsets verified against the pinned codec. */
7
- export const CLAIM_STAKE_FILTER_OFFSETS = Object.freeze({
9
+ export const CLAIM_STAKE_FILTER_OFFSETS = /* @__PURE__ */ Object.freeze({
8
10
  body: 73,
9
11
  discriminator: 0,
10
12
  game: 41,
11
13
  owner: 9,
12
14
  });
13
- /** Audited Claim Stake relationships; ClaimStakeInstance has no PDA. */
14
- export const CLAIM_STAKE_RELATIONSHIPS = Object.freeze([
15
- {
16
- from: 'character',
17
- kind: 'discovered',
18
- mechanism: 'targeted owner, Game, and discriminator filters',
19
- to: 'claimStakeInstance[]',
20
- },
21
- {
22
- from: 'celestialBody',
23
- kind: 'discovered',
24
- mechanism: 'targeted celestialBodyId, Game, and discriminator filters',
25
- to: 'claimStakeInstance[]',
26
- },
27
- {
28
- from: 'claimStakeInstance',
29
- kind: 'stored',
30
- mechanism: 'owner and celestialBodyId account fields',
31
- to: 'character | celestialBody',
32
- },
33
- {
34
- from: 'claimStakeInstance',
35
- kind: 'nested',
36
- mechanism: 'ProductionCore CargoPod value',
37
- to: 'cargoPod',
38
- },
39
- {
40
- from: 'claimStakeInstance',
41
- kind: 'instruction-only',
42
- mechanism: 'placement and harvesting co-accounts are not durable relations',
43
- to: 'starbasePlayer | currencyCache',
44
- },
45
- ]);
46
- function hasDiscriminator(data) {
47
- return CLAIM_STAKE_ACCOUNT_DISCRIMINATOR.every((byte, index) => data[index] === byte);
48
- }
49
- function validateClaimStakeAccount(account) {
50
- if (account.owner !== SAGE_PROGRAM_ADDRESS) {
51
- throw new InvalidAccountOwnerError('claimStakeInstance', account.address, SAGE_PROGRAM_ADDRESS, account.owner);
52
- }
53
- if (account.data.length < CLAIM_STAKE_ACCOUNT_DISCRIMINATOR.length ||
54
- !hasDiscriminator(account.data)) {
55
- throw new InvalidDiscriminatorError('claimStakeInstance', account.address);
56
- }
57
- if (account.data.length < CLAIM_STAKE_MINIMUM_DATA_LENGTH) {
58
- throw new AccountDecodeError('claimStakeInstance', account.address, new RangeError(`Expected at least ${CLAIM_STAKE_MINIMUM_DATA_LENGTH} ClaimStakeInstance account bytes, received ${account.data.length}.`));
59
- }
60
- }
61
- function decodeExactly(account) {
62
- try {
63
- const [decoded, offset] = getClaimStakeInstanceDecoder().read(account.data, 0);
64
- if (offset !== account.data.length) {
65
- throw new RangeError(`Decoded ${offset} of ${account.data.length} ClaimStakeInstance account bytes; trailing bytes are not accepted.`);
66
- }
67
- return decoded;
68
- }
69
- catch (cause) {
70
- throw new AccountDecodeError('claimStakeInstance', account.address, cause);
71
- }
72
- }
73
15
  function buildings(values) {
74
16
  return [...values].map(([buildingId, quantity]) => ({
75
17
  buildingId,
@@ -78,10 +20,7 @@ function buildings(values) {
78
20
  }
79
21
  function cargoPod(value) {
80
22
  return {
81
- amounts: [...value.amounts].map(([cargoId, amount]) => ({
82
- amount,
83
- cargoId,
84
- })),
23
+ amounts: cargoAmounts(value.amounts),
85
24
  seqId: value.seqId,
86
25
  storageCost: value.storageCost,
87
26
  };
@@ -120,7 +59,7 @@ function translateClaimStake(value) {
120
59
  game: value.gameId,
121
60
  lastRentAtUnixSeconds: value.lastRentClockTimestamp,
122
61
  neededCrew: value.neededCrew,
123
- ownerCharacter: value.owner,
62
+ ownerProfile: value.owner,
124
63
  production: {
125
64
  cargoPod: cargoPod(value.productionCore.cargoPod),
126
65
  lastTickAtUnixSeconds: value.productionCore.lastTickTimestamp,
@@ -138,18 +77,15 @@ function translateClaimStake(value) {
138
77
  };
139
78
  }
140
79
  /** Stable ClaimStakeInstance account definition for the pinned C4 bindings. */
141
- export const claimStakeAccountDefinition = Object.freeze({
142
- decode(account) {
143
- validateClaimStakeAccount(account);
144
- return translateClaimStake(decodeExactly(account));
145
- },
146
- discriminator: CLAIM_STAKE_ACCOUNT_DISCRIMINATOR,
147
- minimumDataLength: CLAIM_STAKE_MINIMUM_DATA_LENGTH,
148
- programAddress: SAGE_PROGRAM_ADDRESS,
80
+ export const claimStakeAccountDefinition =
81
+ /* @__PURE__ */ defineAccount({
149
82
  type: 'claimStakeInstance',
150
- validate: validateClaimStakeAccount,
151
- });
152
- function discoveryFilters(game, offset, address) {
83
+ programAddress: SAGE_PROGRAM_ADDRESS,
84
+ discriminator: CLAIM_STAKE_INSTANCE_DISCRIMINATOR,
85
+ length: CLAIM_STAKE_MINIMUM_DATA_LENGTH,
86
+ }, getClaimStakeInstanceDecoder, translateClaimStake);
87
+ /** Builds stable filters for every Claim Stake in one Game. */
88
+ export function buildClaimStakeGameDiscoveryFilters(game) {
153
89
  return Object.freeze([
154
90
  {
155
91
  bytes: new Uint8Array(CLAIM_STAKE_INSTANCE_DISCRIMINATOR),
@@ -159,15 +95,34 @@ function discoveryFilters(game, offset, address) {
159
95
  bytes: new Uint8Array(getAddressEncoder().encode(game)),
160
96
  offset: CLAIM_STAKE_FILTER_OFFSETS.game,
161
97
  },
162
- {
163
- bytes: new Uint8Array(getAddressEncoder().encode(address)),
164
- offset,
165
- },
166
98
  ]);
167
99
  }
168
- /** Builds stable Claim Stake filters for one owning Character. */
169
- export function buildClaimStakeCharacterDiscoveryFilters(game, character) {
170
- return discoveryFilters(game, CLAIM_STAKE_FILTER_OFFSETS.owner, character);
100
+ function discoveryFilters(game, offset, address) {
101
+ return Object.freeze([
102
+ ...buildClaimStakeGameDiscoveryFilters(game),
103
+ { bytes: new Uint8Array(getAddressEncoder().encode(address)), offset },
104
+ ]);
105
+ }
106
+ /** Discovers all instance accounts scoped to the configured Game. */
107
+ export async function discoverClaimStakeAccountsByGame(context, options = {}) {
108
+ const game = context.game;
109
+ if (game === undefined)
110
+ throw new MissingGameContextError();
111
+ const stakes = await context.data.discover(claimStakeAccountDefinition, {
112
+ ...options,
113
+ filters: buildClaimStakeGameDiscoveryFilters(game),
114
+ strategy: 'targeted-program-accounts',
115
+ });
116
+ for (const stake of stakes) {
117
+ if (stake.data.game !== game) {
118
+ throw new AccountDecodeError('claimStakeInstance', stake.address, new RangeError('The decoded ClaimStakeInstance contradicted its Game filter.'), `A discovered Claim Stake belongs to Game ${stake.data.game}, not the requested Game ${game}. Verify the provider, configured cluster, and pinned ClaimStakeInstance filter offsets before retrying.`);
119
+ }
120
+ }
121
+ return stakes;
122
+ }
123
+ /** Builds stable Claim Stake filters for one owning Profile. */
124
+ export function buildClaimStakeProfileDiscoveryFilters(game, profile) {
125
+ return discoveryFilters(game, CLAIM_STAKE_FILTER_OFFSETS.owner, profile);
171
126
  }
172
127
  /** Builds stable Claim Stake filters for one Celestial Body. */
173
128
  export function buildClaimStakeBodyDiscoveryFilters(game, body) {
@@ -179,14 +134,14 @@ async function discoverClaimStakeAccounts(context, relatedAddress, relation, opt
179
134
  throw new MissingGameContextError();
180
135
  const stakes = await context.data.discover(claimStakeAccountDefinition, {
181
136
  ...options,
182
- filters: relation === 'character'
183
- ? buildClaimStakeCharacterDiscoveryFilters(game, relatedAddress)
137
+ filters: relation === 'profile'
138
+ ? buildClaimStakeProfileDiscoveryFilters(game, relatedAddress)
184
139
  : buildClaimStakeBodyDiscoveryFilters(game, relatedAddress),
185
140
  strategy: 'targeted-program-accounts',
186
141
  });
187
142
  for (const stake of stakes) {
188
- const matchesRelation = relation === 'character'
189
- ? stake.data.ownerCharacter === relatedAddress
143
+ const matchesRelation = relation === 'profile'
144
+ ? stake.data.ownerProfile === relatedAddress
190
145
  : stake.data.body === relatedAddress;
191
146
  if (stake.data.game !== game || !matchesRelation) {
192
147
  throw new AccountDecodeError('claimStakeInstance', stake.address, new RangeError('The decoded ClaimStakeInstance fields contradicted its discovery filters.'), `A discovered Claim Stake candidate did not match the requested Game and ${relation} after decoding. Verify the provider, configured cluster, and pinned ClaimStakeInstance filter offsets before retrying.`);
@@ -194,9 +149,9 @@ async function discoverClaimStakeAccounts(context, relatedAddress, relation, opt
194
149
  }
195
150
  return stakes;
196
151
  }
197
- /** Discovers Claim Stakes owned by one Character. */
198
- export function discoverClaimStakeAccountsByCharacter(context, character, options) {
199
- return discoverClaimStakeAccounts(context, character, 'character', options);
152
+ /** Discovers Claim Stakes owned by one Profile. */
153
+ export function discoverClaimStakeAccountsByProfile(context, profile, options) {
154
+ return discoverClaimStakeAccounts(context, profile, 'profile', options);
200
155
  }
201
156
  /** Discovers Claim Stakes placed on one Celestial Body. */
202
157
  export function discoverClaimStakeAccountsByBody(context, body, options) {