@aephia/atlas-kit 0.6.0-next.1 → 0.6.0-next.100

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 (646) hide show
  1. package/README.md +7 -3
  2. package/dist/cargo/actions/deposit.d.ts +44 -0
  3. package/dist/cargo/actions/deposit.d.ts.map +1 -0
  4. package/dist/cargo/actions/deposit.js +212 -0
  5. package/dist/cargo/actions/deposit.js.map +1 -0
  6. package/dist/cargo/actions/index.d.ts +2 -0
  7. package/dist/cargo/actions/index.d.ts.map +1 -1
  8. package/dist/cargo/actions/index.js +12 -15
  9. package/dist/cargo/actions/index.js.map +1 -1
  10. package/dist/cargo/actions/wallet-context.d.ts +14 -0
  11. package/dist/cargo/actions/wallet-context.d.ts.map +1 -0
  12. package/dist/cargo/actions/wallet-context.js +12 -0
  13. package/dist/cargo/actions/wallet-context.js.map +1 -0
  14. package/dist/cargo/actions/wallet-token.d.ts +8 -0
  15. package/dist/cargo/actions/wallet-token.d.ts.map +1 -0
  16. package/dist/cargo/actions/wallet-token.js +50 -0
  17. package/dist/cargo/actions/wallet-token.js.map +1 -0
  18. package/dist/cargo/actions/withdrawal.d.ts +46 -0
  19. package/dist/cargo/actions/withdrawal.d.ts.map +1 -0
  20. package/dist/cargo/actions/withdrawal.js +266 -0
  21. package/dist/cargo/actions/withdrawal.js.map +1 -0
  22. package/dist/claim-stakes/actions/index.d.ts +13 -0
  23. package/dist/claim-stakes/actions/index.d.ts.map +1 -1
  24. package/dist/claim-stakes/actions/index.js +137 -111
  25. package/dist/claim-stakes/actions/index.js.map +1 -1
  26. package/dist/claim-stakes/index.d.ts +14 -0
  27. package/dist/claim-stakes/index.d.ts.map +1 -1
  28. package/dist/claim-stakes/index.js +23 -2
  29. package/dist/claim-stakes/index.js.map +1 -1
  30. package/dist/client/context.d.ts.map +1 -1
  31. package/dist/client/context.js +1 -1
  32. package/dist/client/context.js.map +1 -1
  33. package/dist/client/contracts.d.ts +16 -6
  34. package/dist/client/contracts.d.ts.map +1 -1
  35. package/dist/client/errors.d.ts +6 -2
  36. package/dist/client/errors.d.ts.map +1 -1
  37. package/dist/client/errors.js +31 -1
  38. package/dist/client/errors.js.map +1 -1
  39. package/dist/client/index.d.ts +35 -0
  40. package/dist/client/index.d.ts.map +1 -1
  41. package/dist/client/index.js +35 -0
  42. package/dist/client/index.js.map +1 -1
  43. package/dist/client/rpc-subscription-provider.d.ts +35 -0
  44. package/dist/client/rpc-subscription-provider.d.ts.map +1 -0
  45. package/dist/client/rpc-subscription-provider.js +190 -0
  46. package/dist/client/rpc-subscription-provider.js.map +1 -0
  47. package/dist/combat/actions/index.d.ts.map +1 -1
  48. package/dist/combat/actions/index.js +104 -67
  49. package/dist/combat/actions/index.js.map +1 -1
  50. package/dist/crafting/actions/index.d.ts +11 -0
  51. package/dist/crafting/actions/index.d.ts.map +1 -1
  52. package/dist/crafting/actions/index.js +101 -108
  53. package/dist/crafting/actions/index.js.map +1 -1
  54. package/dist/crafting/index.d.ts +33 -3
  55. package/dist/crafting/index.d.ts.map +1 -1
  56. package/dist/crafting/index.js +44 -15
  57. package/dist/crafting/index.js.map +1 -1
  58. package/dist/factions/actions/index.d.ts +36 -0
  59. package/dist/factions/actions/index.d.ts.map +1 -0
  60. package/dist/factions/actions/index.js +137 -0
  61. package/dist/factions/actions/index.js.map +1 -0
  62. package/dist/factions/index.d.ts +1 -0
  63. package/dist/factions/index.d.ts.map +1 -1
  64. package/dist/factions/index.js +14 -7
  65. package/dist/factions/index.js.map +1 -1
  66. package/dist/factions/profile-faction.d.ts +58 -0
  67. package/dist/factions/profile-faction.d.ts.map +1 -0
  68. package/dist/factions/profile-faction.js +63 -0
  69. package/dist/factions/profile-faction.js.map +1 -0
  70. package/dist/fleets/actions/add-ship.d.ts +35 -0
  71. package/dist/fleets/actions/add-ship.d.ts.map +1 -0
  72. package/dist/fleets/actions/add-ship.js +149 -0
  73. package/dist/fleets/actions/add-ship.js.map +1 -0
  74. package/dist/fleets/actions/create-fleet.d.ts +36 -0
  75. package/dist/fleets/actions/create-fleet.d.ts.map +1 -0
  76. package/dist/fleets/actions/create-fleet.js +138 -0
  77. package/dist/fleets/actions/create-fleet.js.map +1 -0
  78. package/dist/fleets/actions/crew-transfer.d.ts +41 -0
  79. package/dist/fleets/actions/crew-transfer.d.ts.map +1 -0
  80. package/dist/fleets/actions/crew-transfer.js +114 -0
  81. package/dist/fleets/actions/crew-transfer.js.map +1 -0
  82. package/dist/fleets/actions/dock-bounds.d.ts +38 -0
  83. package/dist/fleets/actions/dock-bounds.d.ts.map +1 -0
  84. package/dist/fleets/actions/dock-bounds.js +46 -0
  85. package/dist/fleets/actions/dock-bounds.js.map +1 -0
  86. package/dist/fleets/actions/index.d.ts +38 -16
  87. package/dist/fleets/actions/index.d.ts.map +1 -1
  88. package/dist/fleets/actions/index.js +246 -153
  89. package/dist/fleets/actions/index.js.map +1 -1
  90. package/dist/fleets/actions/respawn.d.ts +38 -0
  91. package/dist/fleets/actions/respawn.d.ts.map +1 -0
  92. package/dist/fleets/actions/respawn.js +122 -0
  93. package/dist/fleets/actions/respawn.js.map +1 -0
  94. package/dist/fleets/actions/ship-import.d.ts +48 -0
  95. package/dist/fleets/actions/ship-import.d.ts.map +1 -0
  96. package/dist/fleets/actions/ship-import.js +332 -0
  97. package/dist/fleets/actions/ship-import.js.map +1 -0
  98. package/dist/fleets/cooldown.d.ts +44 -0
  99. package/dist/fleets/cooldown.d.ts.map +1 -0
  100. package/dist/fleets/cooldown.js +43 -0
  101. package/dist/fleets/cooldown.js.map +1 -0
  102. package/dist/fleets/coordinate-warp-estimate.d.ts +70 -0
  103. package/dist/fleets/coordinate-warp-estimate.d.ts.map +1 -0
  104. package/dist/fleets/coordinate-warp-estimate.js +46 -0
  105. package/dist/fleets/coordinate-warp-estimate.js.map +1 -0
  106. package/dist/fleets/index.d.ts +35 -0
  107. package/dist/fleets/index.d.ts.map +1 -1
  108. package/dist/fleets/index.js +52 -2
  109. package/dist/fleets/index.js.map +1 -1
  110. package/dist/fleets/movement-arithmetic.d.ts +21 -0
  111. package/dist/fleets/movement-arithmetic.d.ts.map +1 -0
  112. package/dist/fleets/movement-arithmetic.js +41 -0
  113. package/dist/fleets/movement-arithmetic.js.map +1 -0
  114. package/dist/fleets/subwarp-estimate.d.ts +70 -0
  115. package/dist/fleets/subwarp-estimate.d.ts.map +1 -0
  116. package/dist/fleets/subwarp-estimate.js +38 -0
  117. package/dist/fleets/subwarp-estimate.js.map +1 -0
  118. package/dist/fleets/travel-profile.d.ts +102 -0
  119. package/dist/fleets/travel-profile.d.ts.map +1 -0
  120. package/dist/fleets/travel-profile.js +120 -0
  121. package/dist/fleets/travel-profile.js.map +1 -0
  122. package/dist/fleets/warp-lane-estimate.d.ts +59 -0
  123. package/dist/fleets/warp-lane-estimate.d.ts.map +1 -0
  124. package/dist/fleets/warp-lane-estimate.js +36 -0
  125. package/dist/fleets/warp-lane-estimate.js.map +1 -0
  126. package/dist/fleets/warp-lane-policy.d.ts +68 -0
  127. package/dist/fleets/warp-lane-policy.d.ts.map +1 -0
  128. package/dist/fleets/warp-lane-policy.js +91 -0
  129. package/dist/fleets/warp-lane-policy.js.map +1 -0
  130. package/dist/fleets/warp-lane-toll.d.ts +55 -0
  131. package/dist/fleets/warp-lane-toll.d.ts.map +1 -0
  132. package/dist/fleets/warp-lane-toll.js +79 -0
  133. package/dist/fleets/warp-lane-toll.js.map +1 -0
  134. package/dist/identity/actions/create-profile.d.ts +56 -0
  135. package/dist/identity/actions/create-profile.d.ts.map +1 -0
  136. package/dist/identity/actions/create-profile.js +139 -0
  137. package/dist/identity/actions/create-profile.js.map +1 -0
  138. package/dist/identity/actions/index.d.ts +38 -0
  139. package/dist/identity/actions/index.d.ts.map +1 -0
  140. package/dist/identity/actions/index.js +130 -0
  141. package/dist/identity/actions/index.js.map +1 -0
  142. package/dist/identity/index.d.ts +16 -0
  143. package/dist/identity/index.d.ts.map +1 -1
  144. package/dist/identity/index.js +16 -0
  145. package/dist/identity/index.js.map +1 -1
  146. package/dist/identity/permissions.d.ts +124 -0
  147. package/dist/identity/permissions.d.ts.map +1 -0
  148. package/dist/identity/permissions.js +171 -0
  149. package/dist/identity/permissions.js.map +1 -0
  150. package/dist/identity/research-state.d.ts +60 -0
  151. package/dist/identity/research-state.d.ts.map +1 -0
  152. package/dist/identity/research-state.js +68 -0
  153. package/dist/identity/research-state.js.map +1 -0
  154. package/dist/index.d.ts +24 -0
  155. package/dist/index.d.ts.map +1 -1
  156. package/dist/index.js +20 -3
  157. package/dist/index.js.map +1 -1
  158. package/dist/internal/c4/cargo-bytes-config.d.ts +7 -0
  159. package/dist/internal/c4/cargo-bytes-config.d.ts.map +1 -0
  160. package/dist/internal/c4/cargo-bytes-config.js +19 -0
  161. package/dist/internal/c4/cargo-bytes-config.js.map +1 -0
  162. package/dist/internal/c4/character-registration.d.ts +11 -0
  163. package/dist/internal/c4/character-registration.d.ts.map +1 -0
  164. package/dist/internal/c4/character-registration.js +23 -0
  165. package/dist/internal/c4/character-registration.js.map +1 -0
  166. package/dist/internal/c4/claim-stake-definitions.d.ts +4 -4
  167. package/dist/internal/c4/claim-stake-definitions.d.ts.map +1 -1
  168. package/dist/internal/c4/claim-stake-definitions.js.map +1 -1
  169. package/dist/internal/c4/claim-stake.d.ts +4 -27
  170. package/dist/internal/c4/claim-stake.d.ts.map +1 -1
  171. package/dist/internal/c4/claim-stake.js +25 -38
  172. package/dist/internal/c4/claim-stake.js.map +1 -1
  173. package/dist/internal/c4/combat.d.ts +0 -27
  174. package/dist/internal/c4/combat.d.ts.map +1 -1
  175. package/dist/internal/c4/combat.js +0 -33
  176. package/dist/internal/c4/combat.js.map +1 -1
  177. package/dist/internal/c4/crafting-process-codec.d.ts +13 -0
  178. package/dist/internal/c4/crafting-process-codec.d.ts.map +1 -0
  179. package/dist/internal/c4/crafting-process-codec.js +34 -0
  180. package/dist/internal/c4/crafting-process-codec.js.map +1 -0
  181. package/dist/internal/c4/crafting.d.ts +25 -33
  182. package/dist/internal/c4/crafting.d.ts.map +1 -1
  183. package/dist/internal/c4/crafting.js +53 -44
  184. package/dist/internal/c4/crafting.js.map +1 -1
  185. package/dist/internal/c4/currency-cache.d.ts +6 -0
  186. package/dist/internal/c4/currency-cache.d.ts.map +1 -0
  187. package/dist/internal/c4/currency-cache.js +30 -0
  188. package/dist/internal/c4/currency-cache.js.map +1 -0
  189. package/dist/internal/c4/docking-funding.d.ts +4 -0
  190. package/dist/internal/c4/docking-funding.d.ts.map +1 -0
  191. package/dist/internal/c4/docking-funding.js +11 -0
  192. package/dist/internal/c4/docking-funding.js.map +1 -0
  193. package/dist/internal/c4/faction-adapter.d.ts +12 -0
  194. package/dist/internal/c4/faction-adapter.d.ts.map +1 -0
  195. package/dist/internal/c4/faction-adapter.js +52 -0
  196. package/dist/internal/c4/faction-adapter.js.map +1 -0
  197. package/dist/internal/c4/faction-enrollment.d.ts +6 -0
  198. package/dist/internal/c4/faction-enrollment.d.ts.map +1 -0
  199. package/dist/internal/c4/faction-enrollment.js +8 -0
  200. package/dist/internal/c4/faction-enrollment.js.map +1 -0
  201. package/dist/internal/c4/faction-epoch-meter.d.ts +10 -0
  202. package/dist/internal/c4/faction-epoch-meter.d.ts.map +1 -0
  203. package/dist/internal/c4/faction-epoch-meter.js +31 -0
  204. package/dist/internal/c4/faction-epoch-meter.js.map +1 -0
  205. package/dist/internal/c4/faction-treasury.d.ts +23 -0
  206. package/dist/internal/c4/faction-treasury.d.ts.map +1 -0
  207. package/dist/internal/c4/faction-treasury.js +48 -0
  208. package/dist/internal/c4/faction-treasury.js.map +1 -0
  209. package/dist/internal/c4/factions.d.ts +9 -57
  210. package/dist/internal/c4/factions.d.ts.map +1 -1
  211. package/dist/internal/c4/factions.js +21 -139
  212. package/dist/internal/c4/factions.js.map +1 -1
  213. package/dist/internal/c4/fleet-arrival.d.ts +28 -0
  214. package/dist/internal/c4/fleet-arrival.d.ts.map +1 -0
  215. package/dist/internal/c4/fleet-arrival.js +42 -0
  216. package/dist/internal/c4/fleet-arrival.js.map +1 -0
  217. package/dist/internal/c4/fleet-creation.d.ts +7 -0
  218. package/dist/internal/c4/fleet-creation.d.ts.map +1 -0
  219. package/dist/internal/c4/fleet-creation.js +180 -0
  220. package/dist/internal/c4/fleet-creation.js.map +1 -0
  221. package/dist/internal/c4/fleet-crew-binding.d.ts +9 -0
  222. package/dist/internal/c4/fleet-crew-binding.d.ts.map +1 -1
  223. package/dist/internal/c4/fleet-crew-binding.js +15 -0
  224. package/dist/internal/c4/fleet-crew-binding.js.map +1 -1
  225. package/dist/internal/c4/fleet-respawn.d.ts +17 -0
  226. package/dist/internal/c4/fleet-respawn.d.ts.map +1 -0
  227. package/dist/internal/c4/fleet-respawn.js +62 -0
  228. package/dist/internal/c4/fleet-respawn.js.map +1 -0
  229. package/dist/internal/c4/fleet-ship-assembly.d.ts +11 -0
  230. package/dist/internal/c4/fleet-ship-assembly.d.ts.map +1 -0
  231. package/dist/internal/c4/fleet-ship-assembly.js +44 -0
  232. package/dist/internal/c4/fleet-ship-assembly.js.map +1 -0
  233. package/dist/internal/c4/fleet.d.ts +45 -19
  234. package/dist/internal/c4/fleet.d.ts.map +1 -1
  235. package/dist/internal/c4/fleet.js +26 -7
  236. package/dist/internal/c4/fleet.js.map +1 -1
  237. package/dist/internal/c4/game-definition-layout.d.ts +2 -0
  238. package/dist/internal/c4/game-definition-layout.d.ts.map +1 -1
  239. package/dist/internal/c4/game-definition-layout.js +4 -0
  240. package/dist/internal/c4/game-definition-layout.js.map +1 -1
  241. package/dist/internal/c4/game.d.ts +53 -0
  242. package/dist/internal/c4/game.d.ts.map +1 -1
  243. package/dist/internal/c4/game.js +130 -5
  244. package/dist/internal/c4/game.js.map +1 -1
  245. package/dist/internal/c4/identity.d.ts +6 -9
  246. package/dist/internal/c4/identity.d.ts.map +1 -1
  247. package/dist/internal/c4/identity.js +3 -24
  248. package/dist/internal/c4/identity.js.map +1 -1
  249. package/dist/internal/c4/local-market-order.d.ts +31 -0
  250. package/dist/internal/c4/local-market-order.d.ts.map +1 -0
  251. package/dist/internal/c4/local-market-order.js +47 -0
  252. package/dist/internal/c4/local-market-order.js.map +1 -0
  253. package/dist/internal/c4/loyalty.d.ts +0 -27
  254. package/dist/internal/c4/loyalty.d.ts.map +1 -1
  255. package/dist/internal/c4/loyalty.js +0 -33
  256. package/dist/internal/c4/loyalty.js.map +1 -1
  257. package/dist/internal/c4/market.d.ts +2 -38
  258. package/dist/internal/c4/market.d.ts.map +1 -1
  259. package/dist/internal/c4/market.js +13 -51
  260. package/dist/internal/c4/market.js.map +1 -1
  261. package/dist/internal/c4/mining-instructions.d.ts +2 -0
  262. package/dist/internal/c4/mining-instructions.d.ts.map +1 -0
  263. package/dist/internal/c4/mining-instructions.js +3 -0
  264. package/dist/internal/c4/mining-instructions.js.map +1 -0
  265. package/dist/internal/c4/open-signal.d.ts +8 -0
  266. package/dist/internal/c4/open-signal.d.ts.map +1 -0
  267. package/dist/internal/c4/open-signal.js +37 -0
  268. package/dist/internal/c4/open-signal.js.map +1 -0
  269. package/dist/internal/c4/profile-creation.d.ts +17 -0
  270. package/dist/internal/c4/profile-creation.d.ts.map +1 -0
  271. package/dist/internal/c4/profile-creation.js +36 -0
  272. package/dist/internal/c4/profile-creation.js.map +1 -0
  273. package/dist/internal/c4/profile-faction.d.ts.map +1 -1
  274. package/dist/internal/c4/profile-faction.js +2 -0
  275. package/dist/internal/c4/profile-faction.js.map +1 -1
  276. package/dist/internal/c4/profile-permissions.d.ts +14 -0
  277. package/dist/internal/c4/profile-permissions.d.ts.map +1 -0
  278. package/dist/internal/c4/profile-permissions.js +81 -0
  279. package/dist/internal/c4/profile-permissions.js.map +1 -0
  280. package/dist/internal/c4/region-geometry.d.ts +8 -0
  281. package/dist/internal/c4/region-geometry.d.ts.map +1 -0
  282. package/dist/internal/c4/region-geometry.js +43 -0
  283. package/dist/internal/c4/region-geometry.js.map +1 -0
  284. package/dist/internal/c4/rewards.d.ts +0 -27
  285. package/dist/internal/c4/rewards.d.ts.map +1 -1
  286. package/dist/internal/c4/rewards.js +0 -33
  287. package/dist/internal/c4/rewards.js.map +1 -1
  288. package/dist/internal/c4/runtime-bindings.d.ts +4 -0
  289. package/dist/internal/c4/runtime-bindings.d.ts.map +1 -0
  290. package/dist/internal/c4/runtime-bindings.js +4 -0
  291. package/dist/internal/c4/runtime-bindings.js.map +1 -0
  292. package/dist/internal/c4/scan-detection-codecs.d.ts +3 -0
  293. package/dist/internal/c4/scan-detection-codecs.d.ts.map +1 -0
  294. package/dist/internal/c4/scan-detection-codecs.js +3 -0
  295. package/dist/internal/c4/scan-detection-codecs.js.map +1 -0
  296. package/dist/internal/c4/scan-lifecycle.d.ts +306 -0
  297. package/dist/internal/c4/scan-lifecycle.d.ts.map +1 -0
  298. package/dist/internal/c4/scan-lifecycle.js +258 -0
  299. package/dist/internal/c4/scan-lifecycle.js.map +1 -0
  300. package/dist/internal/c4/scanning.d.ts +1 -28
  301. package/dist/internal/c4/scanning.d.ts.map +1 -1
  302. package/dist/internal/c4/scanning.js +2 -33
  303. package/dist/internal/c4/scanning.js.map +1 -1
  304. package/dist/internal/c4/ship-import.d.ts +4 -0
  305. package/dist/internal/c4/ship-import.d.ts.map +1 -0
  306. package/dist/internal/c4/ship-import.js +13 -0
  307. package/dist/internal/c4/ship-import.js.map +1 -0
  308. package/dist/internal/c4/ship-stats.d.ts.map +1 -1
  309. package/dist/internal/c4/ship-stats.js +25 -21
  310. package/dist/internal/c4/ship-stats.js.map +1 -1
  311. package/dist/internal/c4/starbase.d.ts +0 -32
  312. package/dist/internal/c4/starbase.d.ts.map +1 -1
  313. package/dist/internal/c4/starbase.js +3 -41
  314. package/dist/internal/c4/starbase.js.map +1 -1
  315. package/dist/internal/c4/wallet-cargo-cache.d.ts +3 -0
  316. package/dist/internal/c4/wallet-cargo-cache.d.ts.map +1 -0
  317. package/dist/internal/c4/wallet-cargo-cache.js +24 -0
  318. package/dist/internal/c4/wallet-cargo-cache.js.map +1 -0
  319. package/dist/internal/c4/world.d.ts +36 -7
  320. package/dist/internal/c4/world.d.ts.map +1 -1
  321. package/dist/internal/c4/world.js +58 -25
  322. package/dist/internal/c4/world.js.map +1 -1
  323. package/dist/internal/cargo.d.ts +2 -0
  324. package/dist/internal/cargo.d.ts.map +1 -1
  325. package/dist/internal/cargo.js +8 -0
  326. package/dist/internal/cargo.js.map +1 -1
  327. package/dist/internal/fleet.d.ts +1 -0
  328. package/dist/internal/fleet.d.ts.map +1 -1
  329. package/dist/internal/fleet.js +3 -1
  330. package/dist/internal/fleet.js.map +1 -1
  331. package/dist/internal/loyalty-atlas-bank-state.d.ts +16 -0
  332. package/dist/internal/loyalty-atlas-bank-state.d.ts.map +1 -0
  333. package/dist/internal/loyalty-atlas-bank-state.js +10 -0
  334. package/dist/internal/loyalty-atlas-bank-state.js.map +1 -0
  335. package/dist/internal/planning/account-state.d.ts +4 -0
  336. package/dist/internal/planning/account-state.d.ts.map +1 -0
  337. package/dist/internal/planning/account-state.js +11 -0
  338. package/dist/internal/planning/account-state.js.map +1 -0
  339. package/dist/internal/planning/action-runtime.d.ts +38 -0
  340. package/dist/internal/planning/action-runtime.d.ts.map +1 -0
  341. package/dist/internal/planning/action-runtime.js +63 -0
  342. package/dist/internal/planning/action-runtime.js.map +1 -0
  343. package/dist/internal/planning/arrival-guards.d.ts +20 -0
  344. package/dist/internal/planning/arrival-guards.d.ts.map +1 -0
  345. package/dist/internal/planning/arrival-guards.js +187 -0
  346. package/dist/internal/planning/arrival-guards.js.map +1 -0
  347. package/dist/internal/planning/authorization-adapter.d.ts +65 -35
  348. package/dist/internal/planning/authorization-adapter.d.ts.map +1 -1
  349. package/dist/internal/planning/authorization-adapter.js +217 -70
  350. package/dist/internal/planning/authorization-adapter.js.map +1 -1
  351. package/dist/internal/planning/character-registration-guard.d.ts +4 -0
  352. package/dist/internal/planning/character-registration-guard.d.ts.map +1 -0
  353. package/dist/internal/planning/character-registration-guard.js +58 -0
  354. package/dist/internal/planning/character-registration-guard.js.map +1 -0
  355. package/dist/internal/planning/character-registration.d.ts +23 -0
  356. package/dist/internal/planning/character-registration.d.ts.map +1 -0
  357. package/dist/internal/planning/character-registration.js +86 -0
  358. package/dist/internal/planning/character-registration.js.map +1 -0
  359. package/dist/internal/planning/currency-cache-guard.d.ts +4 -0
  360. package/dist/internal/planning/currency-cache-guard.d.ts.map +1 -0
  361. package/dist/internal/planning/currency-cache-guard.js +32 -0
  362. package/dist/internal/planning/currency-cache-guard.js.map +1 -0
  363. package/dist/internal/planning/democracy-history.d.ts +50 -0
  364. package/dist/internal/planning/democracy-history.d.ts.map +1 -0
  365. package/dist/internal/planning/democracy-history.js +198 -0
  366. package/dist/internal/planning/democracy-history.js.map +1 -0
  367. package/dist/internal/planning/faction-enrollment.d.ts +10 -0
  368. package/dist/internal/planning/faction-enrollment.d.ts.map +1 -0
  369. package/dist/internal/planning/faction-enrollment.js +46 -0
  370. package/dist/internal/planning/faction-enrollment.js.map +1 -0
  371. package/dist/internal/planning/faction-trade-guards.d.ts +30 -0
  372. package/dist/internal/planning/faction-trade-guards.d.ts.map +1 -0
  373. package/dist/internal/planning/faction-trade-guards.js +15 -0
  374. package/dist/internal/planning/faction-trade-guards.js.map +1 -0
  375. package/dist/internal/planning/faction-trade-state.d.ts +16 -0
  376. package/dist/internal/planning/faction-trade-state.d.ts.map +1 -0
  377. package/dist/internal/planning/faction-trade-state.js +43 -0
  378. package/dist/internal/planning/faction-trade-state.js.map +1 -0
  379. package/dist/internal/planning/fleet-arrival.d.ts +40 -0
  380. package/dist/internal/planning/fleet-arrival.d.ts.map +1 -0
  381. package/dist/internal/planning/fleet-arrival.js +105 -0
  382. package/dist/internal/planning/fleet-arrival.js.map +1 -0
  383. package/dist/internal/planning/fleet-attack-xp.d.ts +20 -0
  384. package/dist/internal/planning/fleet-attack-xp.d.ts.map +1 -0
  385. package/dist/internal/planning/fleet-attack-xp.js +110 -0
  386. package/dist/internal/planning/fleet-attack-xp.js.map +1 -0
  387. package/dist/internal/planning/fleet-creation.d.ts +30 -0
  388. package/dist/internal/planning/fleet-creation.d.ts.map +1 -0
  389. package/dist/internal/planning/fleet-creation.js +108 -0
  390. package/dist/internal/planning/fleet-creation.js.map +1 -0
  391. package/dist/internal/planning/fleet-crew-guard.d.ts +28 -0
  392. package/dist/internal/planning/fleet-crew-guard.d.ts.map +1 -0
  393. package/dist/internal/planning/fleet-crew-guard.js +47 -0
  394. package/dist/internal/planning/fleet-crew-guard.js.map +1 -0
  395. package/dist/internal/planning/fleet-crew-transfer.d.ts +7 -0
  396. package/dist/internal/planning/fleet-crew-transfer.d.ts.map +1 -0
  397. package/dist/internal/planning/fleet-crew-transfer.js +131 -0
  398. package/dist/internal/planning/fleet-crew-transfer.js.map +1 -0
  399. package/dist/internal/planning/fleet-dock-funding-guard.d.ts +42 -0
  400. package/dist/internal/planning/fleet-dock-funding-guard.d.ts.map +1 -0
  401. package/dist/internal/planning/fleet-dock-funding-guard.js +225 -0
  402. package/dist/internal/planning/fleet-dock-funding-guard.js.map +1 -0
  403. package/dist/internal/planning/fleet-dock-funding.d.ts +9 -0
  404. package/dist/internal/planning/fleet-dock-funding.d.ts.map +1 -0
  405. package/dist/internal/planning/fleet-dock-funding.js +154 -0
  406. package/dist/internal/planning/fleet-dock-funding.js.map +1 -0
  407. package/dist/internal/planning/fleet-docking-guard.d.ts +4 -0
  408. package/dist/internal/planning/fleet-docking-guard.d.ts.map +1 -0
  409. package/dist/internal/planning/fleet-docking-guard.js +42 -0
  410. package/dist/internal/planning/fleet-docking-guard.js.map +1 -0
  411. package/dist/internal/planning/fleet-docking.d.ts +10 -0
  412. package/dist/internal/planning/fleet-docking.d.ts.map +1 -0
  413. package/dist/internal/planning/fleet-docking.js +85 -0
  414. package/dist/internal/planning/fleet-docking.js.map +1 -0
  415. package/dist/internal/planning/fleet-respawn.d.ts +28 -0
  416. package/dist/internal/planning/fleet-respawn.d.ts.map +1 -0
  417. package/dist/internal/planning/fleet-respawn.js +166 -0
  418. package/dist/internal/planning/fleet-respawn.js.map +1 -0
  419. package/dist/internal/planning/fleet-ship-assembly.d.ts +36 -0
  420. package/dist/internal/planning/fleet-ship-assembly.d.ts.map +1 -0
  421. package/dist/internal/planning/fleet-ship-assembly.js +137 -0
  422. package/dist/internal/planning/fleet-ship-assembly.js.map +1 -0
  423. package/dist/internal/planning/governance-fees.d.ts +64 -0
  424. package/dist/internal/planning/governance-fees.d.ts.map +1 -0
  425. package/dist/internal/planning/governance-fees.js +239 -0
  426. package/dist/internal/planning/governance-fees.js.map +1 -0
  427. package/dist/internal/planning/local-market-order-funding.d.ts +8 -0
  428. package/dist/internal/planning/local-market-order-funding.d.ts.map +1 -0
  429. package/dist/internal/planning/local-market-order-funding.js +126 -0
  430. package/dist/internal/planning/local-market-order-funding.js.map +1 -0
  431. package/dist/internal/planning/local-market-order.d.ts +40 -0
  432. package/dist/internal/planning/local-market-order.d.ts.map +1 -0
  433. package/dist/internal/planning/local-market-order.js +166 -0
  434. package/dist/internal/planning/local-market-order.js.map +1 -0
  435. package/dist/internal/planning/mining-stop.d.ts +14 -0
  436. package/dist/internal/planning/mining-stop.d.ts.map +1 -0
  437. package/dist/internal/planning/mining-stop.js +41 -0
  438. package/dist/internal/planning/mining-stop.js.map +1 -0
  439. package/dist/internal/planning/movement-character.d.ts +7 -0
  440. package/dist/internal/planning/movement-character.d.ts.map +1 -0
  441. package/dist/internal/planning/movement-character.js +41 -0
  442. package/dist/internal/planning/movement-character.js.map +1 -0
  443. package/dist/internal/planning/movement-xp-guard.d.ts +4 -0
  444. package/dist/internal/planning/movement-xp-guard.d.ts.map +1 -0
  445. package/dist/internal/planning/movement-xp-guard.js +103 -0
  446. package/dist/internal/planning/movement-xp-guard.js.map +1 -0
  447. package/dist/internal/planning/open-signal-guard.d.ts +3 -0
  448. package/dist/internal/planning/open-signal-guard.d.ts.map +1 -0
  449. package/dist/internal/planning/open-signal-guard.js +31 -0
  450. package/dist/internal/planning/open-signal-guard.js.map +1 -0
  451. package/dist/internal/planning/open-signal.d.ts +31 -0
  452. package/dist/internal/planning/open-signal.d.ts.map +1 -0
  453. package/dist/internal/planning/open-signal.js +85 -0
  454. package/dist/internal/planning/open-signal.js.map +1 -0
  455. package/dist/internal/planning/recipe-state.d.ts +6 -0
  456. package/dist/internal/planning/recipe-state.d.ts.map +1 -0
  457. package/dist/internal/planning/recipe-state.js +20 -0
  458. package/dist/internal/planning/recipe-state.js.map +1 -0
  459. package/dist/internal/planning/rent.d.ts +19 -0
  460. package/dist/internal/planning/rent.d.ts.map +1 -0
  461. package/dist/internal/planning/rent.js +35 -0
  462. package/dist/internal/planning/rent.js.map +1 -0
  463. package/dist/internal/planning/respawn-guards.d.ts +3 -0
  464. package/dist/internal/planning/respawn-guards.d.ts.map +1 -0
  465. package/dist/internal/planning/respawn-guards.js +41 -0
  466. package/dist/internal/planning/respawn-guards.js.map +1 -0
  467. package/dist/internal/planning/runtime-guards.d.ts +43 -0
  468. package/dist/internal/planning/runtime-guards.d.ts.map +1 -0
  469. package/dist/internal/planning/runtime-guards.js +638 -0
  470. package/dist/internal/planning/runtime-guards.js.map +1 -0
  471. package/dist/internal/planning/scan-completion-guard.d.ts +43 -0
  472. package/dist/internal/planning/scan-completion-guard.d.ts.map +1 -0
  473. package/dist/internal/planning/scan-completion-guard.js +94 -0
  474. package/dist/internal/planning/scan-completion-guard.js.map +1 -0
  475. package/dist/internal/planning/scan-completion.d.ts +20 -0
  476. package/dist/internal/planning/scan-completion.d.ts.map +1 -0
  477. package/dist/internal/planning/scan-completion.js +196 -0
  478. package/dist/internal/planning/scan-completion.js.map +1 -0
  479. package/dist/internal/planning/scan-detect-guard.d.ts +34 -0
  480. package/dist/internal/planning/scan-detect-guard.d.ts.map +1 -0
  481. package/dist/internal/planning/scan-detect-guard.js +77 -0
  482. package/dist/internal/planning/scan-detect-guard.js.map +1 -0
  483. package/dist/internal/planning/scan-detect.d.ts +24 -0
  484. package/dist/internal/planning/scan-detect.d.ts.map +1 -0
  485. package/dist/internal/planning/scan-detect.js +244 -0
  486. package/dist/internal/planning/scan-detect.js.map +1 -0
  487. package/dist/internal/planning/scan-input.d.ts +9 -0
  488. package/dist/internal/planning/scan-input.d.ts.map +1 -0
  489. package/dist/internal/planning/scan-input.js +58 -0
  490. package/dist/internal/planning/scan-input.js.map +1 -0
  491. package/dist/internal/planning/ship-import-funding.d.ts +22 -0
  492. package/dist/internal/planning/ship-import-funding.d.ts.map +1 -0
  493. package/dist/internal/planning/ship-import-funding.js +52 -0
  494. package/dist/internal/planning/ship-import-funding.js.map +1 -0
  495. package/dist/internal/planning/ship-token.d.ts +9 -0
  496. package/dist/internal/planning/ship-token.d.ts.map +1 -0
  497. package/dist/internal/planning/ship-token.js +46 -0
  498. package/dist/internal/planning/ship-token.js.map +1 -0
  499. package/dist/internal/planning/starbase-system-guard.d.ts +6 -0
  500. package/dist/internal/planning/starbase-system-guard.d.ts.map +1 -0
  501. package/dist/internal/planning/starbase-system-guard.js +93 -0
  502. package/dist/internal/planning/starbase-system-guard.js.map +1 -0
  503. package/dist/internal/planning/starbase-system.d.ts +15 -0
  504. package/dist/internal/planning/starbase-system.d.ts.map +1 -0
  505. package/dist/internal/planning/starbase-system.js +25 -0
  506. package/dist/internal/planning/starbase-system.js.map +1 -0
  507. package/dist/internal/planning/token-mint.d.ts +4 -0
  508. package/dist/internal/planning/token-mint.d.ts.map +1 -0
  509. package/dist/internal/planning/token-mint.js +15 -0
  510. package/dist/internal/planning/token-mint.js.map +1 -0
  511. package/dist/internal/planning/trade-faction-market.d.ts +20 -0
  512. package/dist/internal/planning/trade-faction-market.d.ts.map +1 -0
  513. package/dist/internal/planning/trade-faction-market.js +56 -0
  514. package/dist/internal/planning/trade-faction-market.js.map +1 -0
  515. package/dist/internal/planning/xp-runtime.d.ts +36 -0
  516. package/dist/internal/planning/xp-runtime.d.ts.map +1 -0
  517. package/dist/internal/planning/xp-runtime.js +126 -0
  518. package/dist/internal/planning/xp-runtime.js.map +1 -0
  519. package/dist/internal/system-program.d.ts +4 -0
  520. package/dist/internal/system-program.d.ts.map +1 -0
  521. package/dist/internal/system-program.js +3 -0
  522. package/dist/internal/system-program.js.map +1 -0
  523. package/dist/loyalty/actions/index.d.ts.map +1 -1
  524. package/dist/loyalty/actions/index.js +7 -20
  525. package/dist/loyalty/actions/index.js.map +1 -1
  526. package/dist/loyalty/index.d.ts.map +1 -1
  527. package/dist/loyalty/index.js +2 -6
  528. package/dist/loyalty/index.js.map +1 -1
  529. package/dist/markets/actions/index.d.ts +61 -3
  530. package/dist/markets/actions/index.d.ts.map +1 -1
  531. package/dist/markets/actions/index.js +142 -36
  532. package/dist/markets/actions/index.js.map +1 -1
  533. package/dist/markets/actions/trade-faction-market.d.ts +43 -0
  534. package/dist/markets/actions/trade-faction-market.d.ts.map +1 -0
  535. package/dist/markets/actions/trade-faction-market.js +282 -0
  536. package/dist/markets/actions/trade-faction-market.js.map +1 -0
  537. package/dist/markets/index.d.ts +38 -7
  538. package/dist/markets/index.d.ts.map +1 -1
  539. package/dist/markets/index.js +57 -10
  540. package/dist/markets/index.js.map +1 -1
  541. package/dist/mining/actions/index.d.ts +87 -0
  542. package/dist/mining/actions/index.d.ts.map +1 -0
  543. package/dist/mining/actions/index.js +332 -0
  544. package/dist/mining/actions/index.js.map +1 -0
  545. package/dist/mining/estimate.d.ts +114 -0
  546. package/dist/mining/estimate.d.ts.map +1 -0
  547. package/dist/mining/estimate.js +127 -0
  548. package/dist/mining/estimate.js.map +1 -0
  549. package/dist/mining/index.d.ts +9 -2
  550. package/dist/mining/index.d.ts.map +1 -1
  551. package/dist/mining/index.js +7 -2
  552. package/dist/mining/index.js.map +1 -1
  553. package/dist/mining/profile.d.ts +82 -0
  554. package/dist/mining/profile.d.ts.map +1 -0
  555. package/dist/mining/profile.js +109 -0
  556. package/dist/mining/profile.js.map +1 -0
  557. package/dist/planning/assembly.d.ts +5 -0
  558. package/dist/planning/assembly.d.ts.map +1 -1
  559. package/dist/planning/assembly.js +30 -2
  560. package/dist/planning/assembly.js.map +1 -1
  561. package/dist/planning/execution.d.ts +18 -3
  562. package/dist/planning/execution.d.ts.map +1 -1
  563. package/dist/planning/execution.js +580 -38
  564. package/dist/planning/execution.js.map +1 -1
  565. package/dist/planning/index.d.ts +243 -64
  566. package/dist/planning/index.d.ts.map +1 -1
  567. package/dist/planning/index.js +1012 -57
  568. package/dist/planning/index.js.map +1 -1
  569. package/dist/planning/plan-sequence-checkpoint.d.ts +9 -0
  570. package/dist/planning/plan-sequence-checkpoint.d.ts.map +1 -1
  571. package/dist/planning/plan-sequence-checkpoint.js +16 -7
  572. package/dist/planning/plan-sequence-checkpoint.js.map +1 -1
  573. package/dist/planning/plan-sequence-execution.d.ts +5 -0
  574. package/dist/planning/plan-sequence-execution.d.ts.map +1 -1
  575. package/dist/planning/plan-sequence-execution.js +74 -30
  576. package/dist/planning/plan-sequence-execution.js.map +1 -1
  577. package/dist/planning/plan-sequence.d.ts +2 -1
  578. package/dist/planning/plan-sequence.d.ts.map +1 -1
  579. package/dist/planning/plan-sequence.js +8 -1
  580. package/dist/planning/plan-sequence.js.map +1 -1
  581. package/dist/planning/simulation.d.ts +25 -1
  582. package/dist/planning/simulation.d.ts.map +1 -1
  583. package/dist/planning/simulation.js +111 -11
  584. package/dist/planning/simulation.js.map +1 -1
  585. package/dist/registry/cargo.d.ts +11 -1
  586. package/dist/registry/cargo.d.ts.map +1 -1
  587. package/dist/registry/cargo.js +42 -1
  588. package/dist/registry/cargo.js.map +1 -1
  589. package/dist/registry/docking.d.ts +10 -0
  590. package/dist/registry/docking.d.ts.map +1 -0
  591. package/dist/registry/docking.js +12 -0
  592. package/dist/registry/docking.js.map +1 -0
  593. package/dist/registry/index.d.ts +4 -0
  594. package/dist/registry/index.d.ts.map +1 -1
  595. package/dist/registry/index.js.map +1 -1
  596. package/dist/registry/onboarding.d.ts +14 -0
  597. package/dist/registry/onboarding.d.ts.map +1 -0
  598. package/dist/registry/onboarding.js +37 -0
  599. package/dist/registry/onboarding.js.map +1 -0
  600. package/dist/registry/scanning.d.ts +7 -0
  601. package/dist/registry/scanning.d.ts.map +1 -0
  602. package/dist/registry/scanning.js +13 -0
  603. package/dist/registry/scanning.js.map +1 -0
  604. package/dist/registry/ship-stats-snapshot.js +19 -19
  605. package/dist/registry/ship-stats-snapshot.js.map +1 -1
  606. package/dist/registry/ships.d.ts +30 -0
  607. package/dist/registry/ships.d.ts.map +1 -0
  608. package/dist/registry/ships.js +62 -0
  609. package/dist/registry/ships.js.map +1 -0
  610. package/dist/registry/xp-runtime.d.ts +4 -0
  611. package/dist/registry/xp-runtime.d.ts.map +1 -0
  612. package/dist/registry/xp-runtime.js +14 -0
  613. package/dist/registry/xp-runtime.js.map +1 -0
  614. package/dist/scanning/actions/index.d.ts +116 -0
  615. package/dist/scanning/actions/index.d.ts.map +1 -0
  616. package/dist/scanning/actions/index.js +185 -0
  617. package/dist/scanning/actions/index.js.map +1 -0
  618. package/dist/scanning/index.d.ts +4 -1
  619. package/dist/scanning/index.d.ts.map +1 -1
  620. package/dist/scanning/index.js +12 -8
  621. package/dist/scanning/index.js.map +1 -1
  622. package/dist/scanning/lifecycle.d.ts +77 -0
  623. package/dist/scanning/lifecycle.d.ts.map +1 -0
  624. package/dist/scanning/lifecycle.js +93 -0
  625. package/dist/scanning/lifecycle.js.map +1 -0
  626. package/dist/scanning/odds.d.ts +111 -0
  627. package/dist/scanning/odds.d.ts.map +1 -0
  628. package/dist/scanning/odds.js +294 -0
  629. package/dist/scanning/odds.js.map +1 -0
  630. package/dist/scanning/signals.d.ts +121 -0
  631. package/dist/scanning/signals.d.ts.map +1 -0
  632. package/dist/scanning/signals.js +171 -0
  633. package/dist/scanning/signals.js.map +1 -0
  634. package/dist/world/index.d.ts +110 -5
  635. package/dist/world/index.d.ts.map +1 -1
  636. package/dist/world/index.js +109 -4
  637. package/dist/world/index.js.map +1 -1
  638. package/dist/world/planet-claim-stake-plots.d.ts +130 -0
  639. package/dist/world/planet-claim-stake-plots.d.ts.map +1 -0
  640. package/dist/world/planet-claim-stake-plots.js +110 -0
  641. package/dist/world/planet-claim-stake-plots.js.map +1 -0
  642. package/dist/world/starbase-status.d.ts +176 -0
  643. package/dist/world/starbase-status.d.ts.map +1 -0
  644. package/dist/world/starbase-status.js +153 -0
  645. package/dist/world/starbase-status.js.map +1 -0
  646. package/package.json +18 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-estimate.js","sourceRoot":"","sources":["../../src/fleets/warp-lane-estimate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAkC5E;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,2BAA2B,CACzC,KAAiC;IAEjC,MAAM,EAAE,WAAW,EAAE,kBAAkB,EAAE,GAAG,iBAAiB,CAC3D,EAAE,GAAG,KAAK,EAAE,WAAW,EAAE,EAAE,EAAE,gBAAgB,EAAE,EAAE,IAAI,GAAG,EAAE,EAC1D,WAAW,CACZ,CAAC;IACF,IAAI,kBAAkB,KAAK,EAAE;QAC3B,MAAM,IAAI,2BAA2B,CACnC,wBAAwB,EACxB,kBAAkB,EAClB,yMAAyM,CAC1M,CAAC;IACJ,OAAO,MAAM,CAAC,MAAM,CAClB,uBAAuB,CAAC;QACtB,UAAU,EAAE,MAAM,CAAC,WAAW,CAAC,GAAG,MAAM,CAAC,aAAa,CAAC;QACvD,WAAW;QACX,eAAe,EACb,CAAC,kBAAkB,GAAG,aAAa,GAAG,EAAE,CAAC,GAAG,aAAa;QAC3D,SAAS,EAAE,EAAW;KACvB,CAAC,CACH,CAAC;AACJ,CAAC"}
@@ -0,0 +1,68 @@
1
+ import type { FactionRegionData } from '../internal/c4/factions.js';
2
+ import type { RiskZoneAccess } from '../internal/c4/identity.js';
3
+ import type { WorldFaction, WorldStarbaseLevel } from '../internal/c4/world.js';
4
+ /** Explicit lane policy inputs; destinationRegion must contain the destination coordinates.
5
+ * A System's stored region id alone does not establish this spatial relationship.
6
+ * @example
7
+ * ```ts
8
+ * declare const input: FleetWarpLanePolicyInput;
9
+ * console.log(input.destinationRegion.risk, input.securityZoneAccess);
10
+ * ```
11
+ */
12
+ export interface FleetWarpLanePolicyInput {
13
+ readonly fleetFaction: WorldFaction;
14
+ readonly sourceOwner: WorldFaction;
15
+ readonly destinationOwner: WorldFaction;
16
+ readonly sourceLevel: WorldStarbaseLevel;
17
+ readonly destinationLevel: WorldStarbaseLevel;
18
+ readonly crossFactionEconomicsEnabled: boolean;
19
+ readonly destinationRegion: Pick<FactionRegionData, 'owner' | 'safety' | 'risk'>;
20
+ readonly securityZoneAccess: RiskZoneAccess;
21
+ }
22
+ /** A bounded policy failure, not a simulation or transaction error.
23
+ * @example
24
+ * ```ts
25
+ * const reason: FleetWarpLanePolicyFailure = 'foreign-low-risk';
26
+ * ```
27
+ */
28
+ export type FleetWarpLanePolicyFailure = 'source-level-zero' | 'destination-level-zero' | 'cross-faction-disabled' | 'foreign-low-risk' | 'security-zone-access';
29
+ /** Policy result only: passing never proves travel eligibility or affordability.
30
+ * @example
31
+ * ```ts
32
+ * declare const assessment: FleetWarpLanePolicy;
33
+ * console.log(assessment.passesPolicy, assessment.failures);
34
+ * ```
35
+ */
36
+ export interface FleetWarpLanePolicy {
37
+ readonly passesPolicy: boolean;
38
+ readonly failures: readonly FleetWarpLanePolicyFailure[];
39
+ readonly effectiveRisk: FactionRegionData['risk'];
40
+ toJSON(): unknown;
41
+ }
42
+ /** Assesses qualified lane policy independently of Plan validation or execution.
43
+ * Both endpoint owners must equal Fleet faction when cross-faction economics is
44
+ * disabled. Both endpoint Starbases need nonzero levels. Stored low risk keeps
45
+ * its embedded faction; Safe medium/high becomes low risk of the region owner,
46
+ * while Border retains its tier. Foreign low risk rejects; higher tiers require
47
+ * sufficient Character access. Relationships and combat/territory gates do not
48
+ * block the tested lane policy.
49
+ *
50
+ * Only playable factions and known levels/tiers are supported. Resolve the
51
+ * region containing the destination coordinates before calling: this pure
52
+ * helper does not perform spatial lookup and does not trust a System region id
53
+ * on your behalf. It checks no connection, Fleet state, cooldown, crew, XP,
54
+ * permission, toll or available balance. Deployment 54356023 is the empirical
55
+ * scope; requalify on relevant game changes and simulate before signing.
56
+ * @example
57
+ * ```ts
58
+ * const result = deriveFleetWarpLanePolicy({
59
+ * fleetFaction: 'oni', sourceOwner: 'oni', destinationOwner: 'oni',
60
+ * sourceLevel: 'css', destinationLevel: 'level-1',
61
+ * crossFactionEconomicsEnabled: false, securityZoneAccess: 'low',
62
+ * destinationRegion: { owner: 'oni', safety: 'safe',
63
+ * risk: { kind: 'low', faction: 'oni' } },
64
+ * }); // passesPolicy: true; still simulate the actual Plan
65
+ * ```
66
+ */
67
+ export declare function deriveFleetWarpLanePolicy(input: FleetWarpLanePolicyInput): FleetWarpLanePolicy;
68
+ //# sourceMappingURL=warp-lane-policy.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-policy.d.ts","sourceRoot":"","sources":["../../src/fleets/warp-lane-policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AACpE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AACjE,OAAO,KAAK,EAAE,YAAY,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAGhF;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;IACnC,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC;IACxC,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;IAC9C,QAAQ,CAAC,4BAA4B,EAAE,OAAO,CAAC;IAC/C,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAC9B,iBAAiB,EACjB,OAAO,GAAG,QAAQ,GAAG,MAAM,CAC5B,CAAC;IACF,QAAQ,CAAC,kBAAkB,EAAE,cAAc,CAAC;CAC7C;AAED;;;;;GAKG;AACH,MAAM,MAAM,0BAA0B,GAClC,mBAAmB,GACnB,wBAAwB,GACxB,wBAAwB,GACxB,kBAAkB,GAClB,sBAAsB,CAAC;AAE3B;;;;;;GAMG;AACH,MAAM,WAAW,mBAAmB;IAClC,QAAQ,CAAC,YAAY,EAAE,OAAO,CAAC;IAC/B,QAAQ,CAAC,QAAQ,EAAE,SAAS,0BAA0B,EAAE,CAAC;IACzD,QAAQ,CAAC,aAAa,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAClD,MAAM,IAAI,OAAO,CAAC;CACnB;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,wBAAwB,GAC9B,mBAAmB,CA2ErB"}
@@ -0,0 +1,91 @@
1
+ import { InvalidDerivationInputError } from '../client/index.js';
2
+ import { attachJsonSerialization } from '../internal/json.js';
3
+ /** Assesses qualified lane policy independently of Plan validation or execution.
4
+ * Both endpoint owners must equal Fleet faction when cross-faction economics is
5
+ * disabled. Both endpoint Starbases need nonzero levels. Stored low risk keeps
6
+ * its embedded faction; Safe medium/high becomes low risk of the region owner,
7
+ * while Border retains its tier. Foreign low risk rejects; higher tiers require
8
+ * sufficient Character access. Relationships and combat/territory gates do not
9
+ * block the tested lane policy.
10
+ *
11
+ * Only playable factions and known levels/tiers are supported. Resolve the
12
+ * region containing the destination coordinates before calling: this pure
13
+ * helper does not perform spatial lookup and does not trust a System region id
14
+ * on your behalf. It checks no connection, Fleet state, cooldown, crew, XP,
15
+ * permission, toll or available balance. Deployment 54356023 is the empirical
16
+ * scope; requalify on relevant game changes and simulate before signing.
17
+ * @example
18
+ * ```ts
19
+ * const result = deriveFleetWarpLanePolicy({
20
+ * fleetFaction: 'oni', sourceOwner: 'oni', destinationOwner: 'oni',
21
+ * sourceLevel: 'css', destinationLevel: 'level-1',
22
+ * crossFactionEconomicsEnabled: false, securityZoneAccess: 'low',
23
+ * destinationRegion: { owner: 'oni', safety: 'safe',
24
+ * risk: { kind: 'low', faction: 'oni' } },
25
+ * }); // passesPolicy: true; still simulate the actual Plan
26
+ * ```
27
+ */
28
+ export function deriveFleetWarpLanePolicy(input) {
29
+ const invalid = (field, value) => {
30
+ throw new InvalidDerivationInputError(field, value, 'Use current playable-faction ownership, known Starbase levels and the region containing the destination coordinates, with current Character access. Unknown or NPC policy is not qualified; refresh and simulate the lane Plan.');
31
+ };
32
+ const playable = (field, faction) => {
33
+ if (faction !== 'mud' && faction !== 'oni' && faction !== 'ustur')
34
+ invalid(field, faction);
35
+ };
36
+ playable('Fleet faction', input.fleetFaction);
37
+ playable('Source owner', input.sourceOwner);
38
+ playable('Destination owner', input.destinationOwner);
39
+ playable('Destination region owner', input.destinationRegion.owner);
40
+ const levels = [
41
+ 'level-0',
42
+ 'level-1',
43
+ 'level-2',
44
+ 'level-3',
45
+ 'level-4',
46
+ 'level-5',
47
+ 'css',
48
+ ];
49
+ if (!levels.includes(input.sourceLevel))
50
+ invalid('Source Starbase level', input.sourceLevel);
51
+ if (!levels.includes(input.destinationLevel))
52
+ invalid('Destination Starbase level', input.destinationLevel);
53
+ if (typeof input.crossFactionEconomicsEnabled !== 'boolean')
54
+ invalid('Cross-faction flag type', typeof input.crossFactionEconomicsEnabled);
55
+ const { risk, safety, owner } = input.destinationRegion;
56
+ if (safety !== 'safe' && safety !== 'border')
57
+ invalid('Region safety', safety);
58
+ const kind = risk.kind;
59
+ if (kind !== 'low' && kind !== 'medium' && kind !== 'high')
60
+ invalid('Region risk', kind);
61
+ if (risk.kind === 'low')
62
+ playable('Low-risk faction', risk.faction);
63
+ const tiers = { low: 0, medium: 1, high: 2 };
64
+ if (!Object.hasOwn(tiers, input.securityZoneAccess))
65
+ invalid('Character security-zone access', input.securityZoneAccess);
66
+ const effectiveRisk = Object.freeze(risk.kind === 'low'
67
+ ? { ...risk }
68
+ : safety === 'safe'
69
+ ? { kind: 'low', faction: owner }
70
+ : { ...risk });
71
+ const failures = [];
72
+ if (input.sourceLevel === 'level-0')
73
+ failures.push('source-level-zero');
74
+ if (input.destinationLevel === 'level-0')
75
+ failures.push('destination-level-zero');
76
+ if (!input.crossFactionEconomicsEnabled &&
77
+ (input.sourceOwner !== input.fleetFaction ||
78
+ input.destinationOwner !== input.fleetFaction))
79
+ failures.push('cross-faction-disabled');
80
+ if (effectiveRisk.kind === 'low' &&
81
+ effectiveRisk.faction !== input.fleetFaction)
82
+ failures.push('foreign-low-risk');
83
+ if (tiers[effectiveRisk.kind] > tiers[input.securityZoneAccess])
84
+ failures.push('security-zone-access');
85
+ return Object.freeze(attachJsonSerialization({
86
+ passesPolicy: failures.length === 0,
87
+ failures: Object.freeze(failures),
88
+ effectiveRisk,
89
+ }));
90
+ }
91
+ //# sourceMappingURL=warp-lane-policy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-policy.js","sourceRoot":"","sources":["../../src/fleets/warp-lane-policy.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,55 @@
1
+ import type { FactionRelationship } from '../internal/c4/factions.js';
2
+ import type { WorldConnectionCosts, WorldFaction, WorldStarbaseLevel } from '../internal/c4/world.js';
3
+ /** Current source connection costs, ownership and Character fee modifier.
4
+ * destinationRelationship is Fleet-to-destination-owner, not endpoint-to-endpoint.
5
+ * @example
6
+ * ```ts
7
+ * declare const input: FleetWarpLaneTollInput;
8
+ * console.log(input.sourceLevel, input.feeModifierRaw);
9
+ * ```
10
+ */
11
+ export interface FleetWarpLaneTollInput {
12
+ readonly costs: Pick<WorldConnectionCosts, 'level1Raw' | 'level2Raw' | 'level3Raw' | 'level4Raw' | 'level5Raw' | 'cssRaw'>;
13
+ readonly sourceLevel: WorldStarbaseLevel;
14
+ readonly fleetFaction: WorldFaction;
15
+ readonly sourceOwner: WorldFaction;
16
+ readonly destinationOwner: WorldFaction;
17
+ readonly destinationRelationship: FactionRelationship;
18
+ readonly feeModifierRaw: bigint;
19
+ readonly alliedTollBps: number;
20
+ readonly neutralTollBps: number;
21
+ }
22
+ /** Character's prospective ATLAS debit, entirely in raw ATLAS units (Floyds).
23
+ * @example
24
+ * ```ts
25
+ * declare const toll: FleetWarpLaneToll;
26
+ * console.log(toll.modifiedBaseRaw, toll.surchargeRaw, toll.totalRaw);
27
+ * ```
28
+ */
29
+ export interface FleetWarpLaneToll {
30
+ readonly baseRaw: bigint;
31
+ readonly modifiedBaseRaw: bigint;
32
+ readonly surchargeRaw: bigint;
33
+ readonly totalRaw: bigint;
34
+ toJSON(): unknown;
35
+ }
36
+ /** Estimates the Character ATLAS toll using deployment-54356023 lane rules.
37
+ * Selects cost by departure level. Ceils the Character-modified base, then adds
38
+ * a separately floored surcharge on the unmodified base if either endpoint is
39
+ * foreign. Allied uses allied bps; neutral/hostile/ceasefire use neutral bps.
40
+ * A foreign source with own destination uses neutral bps. Modifier zero waives
41
+ * only the modified base. Relationship expiry does not alter the measured toll.
42
+ *
43
+ * Accepts playable factions only, usable source levels, u64 raw base cost,
44
+ * nonnegative i64 raw I32F32 modifier, and u16 bps. Rejects a result beyond u64.
45
+ * No RPC, balance, connection, region, permission or execution checks occur.
46
+ * ATLAS is paid from Character, not wallet. Requalify after program changes.
47
+ * @example
48
+ * ```ts
49
+ * declare const input: FleetWarpLaneTollInput;
50
+ * const toll = deriveFleetWarpLaneToll(input);
51
+ * console.log(toll.totalRaw);
52
+ * ```
53
+ */
54
+ export declare function deriveFleetWarpLaneToll(input: FleetWarpLaneTollInput): FleetWarpLaneToll;
55
+ //# sourceMappingURL=warp-lane-toll.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-toll.d.ts","sourceRoot":"","sources":["../../src/fleets/warp-lane-toll.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EACV,oBAAoB,EACpB,YAAY,EACZ,kBAAkB,EACnB,MAAM,yBAAyB,CAAC;AAGjC;;;;;;;GAOG;AACH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,CAAC,KAAK,EAAE,IAAI,CAClB,oBAAoB,EAClB,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,WAAW,GACX,QAAQ,CACX,CAAC;IACF,QAAQ,CAAC,WAAW,EAAE,kBAAkB,CAAC;IACzC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,WAAW,EAAE,YAAY,CAAC;IACnC,QAAQ,CAAC,gBAAgB,EAAE,YAAY,CAAC;IACxC,QAAQ,CAAC,uBAAuB,EAAE,mBAAmB,CAAC;IACtD,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;IAC/B,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,iBAAiB;IAChC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,eAAe,EAAE,MAAM,CAAC;IACjC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,MAAM,IAAI,OAAO,CAAC;CACnB;AAUD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,sBAAsB,GAC5B,iBAAiB,CAyDnB"}
@@ -0,0 +1,79 @@
1
+ import { InvalidDerivationInputError } from '../client/index.js';
2
+ import { attachJsonSerialization } from '../internal/json.js';
3
+ const amountMax = (1n << 64n) - 1n;
4
+ const modifierScale = 1n << 32n;
5
+ const remedy = 'Refresh the source connection, source Starbase level, playable Fleet/Starbase factions, Fleet-to-destination relationship, fee modifier and toll basis points. Only qualified nonnegative values and a u64 ATLAS debit are supported; simulate the lane Plan before signing.';
6
+ function invalid(field, value) {
7
+ throw new InvalidDerivationInputError(field, value, remedy);
8
+ }
9
+ /** Estimates the Character ATLAS toll using deployment-54356023 lane rules.
10
+ * Selects cost by departure level. Ceils the Character-modified base, then adds
11
+ * a separately floored surcharge on the unmodified base if either endpoint is
12
+ * foreign. Allied uses allied bps; neutral/hostile/ceasefire use neutral bps.
13
+ * A foreign source with own destination uses neutral bps. Modifier zero waives
14
+ * only the modified base. Relationship expiry does not alter the measured toll.
15
+ *
16
+ * Accepts playable factions only, usable source levels, u64 raw base cost,
17
+ * nonnegative i64 raw I32F32 modifier, and u16 bps. Rejects a result beyond u64.
18
+ * No RPC, balance, connection, region, permission or execution checks occur.
19
+ * ATLAS is paid from Character, not wallet. Requalify after program changes.
20
+ * @example
21
+ * ```ts
22
+ * declare const input: FleetWarpLaneTollInput;
23
+ * const toll = deriveFleetWarpLaneToll(input);
24
+ * console.log(toll.totalRaw);
25
+ * ```
26
+ */
27
+ export function deriveFleetWarpLaneToll(input) {
28
+ for (const [field, faction] of [
29
+ ['Fleet faction', input.fleetFaction],
30
+ ['Source owner', input.sourceOwner],
31
+ ['Destination owner', input.destinationOwner],
32
+ ])
33
+ if (faction !== 'mud' && faction !== 'oni' && faction !== 'ustur')
34
+ invalid(field, faction);
35
+ const levelKeys = {
36
+ 'level-1': 'level1Raw',
37
+ 'level-2': 'level2Raw',
38
+ 'level-3': 'level3Raw',
39
+ 'level-4': 'level4Raw',
40
+ 'level-5': 'level5Raw',
41
+ css: 'cssRaw',
42
+ };
43
+ if (!Object.hasOwn(levelKeys, input.sourceLevel))
44
+ invalid('Source Starbase level', input.sourceLevel);
45
+ const baseRaw = input.costs[levelKeys[input.sourceLevel]];
46
+ if (baseRaw < 0n || baseRaw > amountMax)
47
+ invalid('Base ATLAS toll raw', baseRaw);
48
+ if (input.feeModifierRaw < 0n || input.feeModifierRaw > (1n << 63n) - 1n)
49
+ invalid('Character lane fee modifier raw', input.feeModifierRaw);
50
+ for (const [field, bps] of [
51
+ ['Allied toll bps', input.alliedTollBps],
52
+ ['Neutral toll bps', input.neutralTollBps],
53
+ ])
54
+ if (!Number.isInteger(bps) || bps < 0 || bps > 65535)
55
+ invalid(field, bps);
56
+ const relation = input.destinationRelationship;
57
+ if (relation !== 'allied' &&
58
+ relation !== 'neutral' &&
59
+ relation !== 'hostile' &&
60
+ relation !== 'ceasefire')
61
+ invalid('Destination relationship', relation);
62
+ const crossFaction = input.sourceOwner !== input.fleetFaction ||
63
+ input.destinationOwner !== input.fleetFaction;
64
+ const bps = input.destinationOwner !== input.fleetFaction && relation === 'allied'
65
+ ? input.alliedTollBps
66
+ : input.neutralTollBps;
67
+ const modifiedBaseRaw = (baseRaw * input.feeModifierRaw + modifierScale - 1n) / modifierScale;
68
+ const surchargeRaw = crossFaction ? (baseRaw * BigInt(bps)) / 10000n : 0n;
69
+ const totalRaw = modifiedBaseRaw + surchargeRaw;
70
+ if (totalRaw > amountMax)
71
+ invalid('Total ATLAS toll raw', totalRaw);
72
+ return Object.freeze(attachJsonSerialization({
73
+ baseRaw,
74
+ modifiedBaseRaw,
75
+ surchargeRaw,
76
+ totalRaw,
77
+ }));
78
+ }
79
+ //# sourceMappingURL=warp-lane-toll.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"warp-lane-toll.js","sourceRoot":"","sources":["../../src/fleets/warp-lane-toll.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ import { type Address } from '@solana/kit';
2
+ import type { SageContext } from '../../client/contracts.js';
3
+ import { type Plan } from '../../planning/index.js';
4
+ /** One explicitly scoped key and its exact unsigned 64-bit permission mask.
5
+ * `expiresAt` is a nonnegative Unix timestamp in seconds; omission means no expiry.
6
+ * Profile AUTH keys must omit expiry and must be directly signing addresses.
7
+ * @example
8
+ * ```ts
9
+ * declare const authority: Address;
10
+ * declare const playerProfileProgram: Address;
11
+ * const key: ProfileCreationKeyInput = {address: authority, scope: playerProfileProgram, permissionsRaw: 1n};
12
+ * ```
13
+ */
14
+ export interface ProfileCreationKeyInput {
15
+ readonly address: Address;
16
+ readonly scope: Address;
17
+ readonly permissionsRaw: bigint;
18
+ readonly expiresAt?: bigint;
19
+ }
20
+ /** Explicit storage funder, ordered keys, and protected Profile update threshold.
21
+ * No permissions or threshold are selected automatically.
22
+ * @example
23
+ * ```ts
24
+ * declare const funder: Address;
25
+ * declare const keys: readonly ProfileCreationKeyInput[];
26
+ * const options: PlanCreateProfileOptions = {funder, keys, keyThreshold: 1};
27
+ * ```
28
+ */
29
+ export interface PlanCreateProfileOptions {
30
+ readonly funder: Address;
31
+ readonly keys: readonly ProfileCreationKeyInput[];
32
+ readonly keyThreshold: number;
33
+ }
34
+ /** Plans a new signer-created Profile with explicit scoped permissions.
35
+ * The new Profile, storage funder, and every Player Profile AUTH key sign creation,
36
+ * even when the editing threshold is lower. Other keys remain readonly.
37
+ * The new Profile signer is needed only for creation unless explicitly listed
38
+ * among the initial authority keys; creating the account does not grant it AUTH.
39
+ * The threshold governs protected Profile updates; it is not a gameplay-wide multisig policy.
40
+ * Existing target accounts and a Profile address equal to its funder are rejected.
41
+ * No Game load, onboarding, funding top-up, key generation or signing is implicit.
42
+ * Storage rent, balances and final creation remain chain-authoritative. Simulate
43
+ * before requesting signatures; after confirmed execution, read `getProfile` and
44
+ * verify the exact keys, scopes, permission masks and threshold.
45
+ * @example
46
+ * ```ts
47
+ * import {planCreateProfile} from '@aephia/atlas-kit/identity/actions';
48
+ * declare const ctx: SageContext;
49
+ * declare const profileAddress: Address;
50
+ * declare const options: PlanCreateProfileOptions;
51
+ * const plan = await planCreateProfile(ctx, profileAddress, options);
52
+ * console.log(plan.summary, plan.requiredSigners);
53
+ * ```
54
+ */
55
+ export declare function planCreateProfile(ctx: SageContext, profileAddress: Address, input: PlanCreateProfileOptions): Promise<Plan>;
56
+ //# sourceMappingURL=create-profile.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-profile.d.ts","sourceRoot":"","sources":["../../../src/identity/actions/create-profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAO7D,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;;;GASG;AACH,MAAM,WAAW,uBAAuB;IACtC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAClD,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;CAC/B;AAyID;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,wBAAwB,GAC9B,OAAO,CAAC,IAAI,CAAC,CA0Cf"}
@@ -0,0 +1,139 @@
1
+ import { isAddress, isOffCurveAddress } from '@solana/kit';
2
+ import { InvalidActionInputError, SageSdkError } from '../../client/errors.js';
3
+ import { readContextRawAccounts } from '../../client/reconciliation.js';
4
+ import { createProfileInstruction, isProfileCreationAuthority, } from '../../internal/c4/profile-creation.js';
5
+ import { createPlan } from '../../planning/index.js';
6
+ function invalid(field, value, remedy) {
7
+ throw new InvalidActionInputError(field, value, 'explicit valid Profile creation input', remedy);
8
+ }
9
+ function record(value, field, allowed) {
10
+ if (value === null || typeof value !== 'object' || Array.isArray(value))
11
+ invalid(field, value, 'Pass an address-only options object for Profile creation.');
12
+ const result = value;
13
+ if (Object.keys(result).some((key) => !allowed.includes(key)))
14
+ invalid(field, value, 'Remove unrecognized fields and signer objects; specify only the documented Profile creation fields.');
15
+ return result;
16
+ }
17
+ function validAddress(value, field, signer) {
18
+ if (typeof value !== 'string' ||
19
+ !isAddress(value) ||
20
+ (signer && isOffCurveAddress(value)))
21
+ invalid(field, value, signer
22
+ ? 'Supply the address of a directly signing external z.ink/Solana account.'
23
+ : 'Supply a valid z.ink/Solana account address.');
24
+ return value;
25
+ }
26
+ function options(input) {
27
+ const raw = record(input, 'options', ['funder', 'keys', 'keyThreshold']);
28
+ const funder = validAddress(raw.funder, 'options.funder', true);
29
+ if (!Array.isArray(raw.keys) || raw.keys.length === 0)
30
+ invalid('options.keys', raw.keys, 'Specify at least one non-expiring Player Profile AUTH key.');
31
+ const seen = new Set();
32
+ const keys = [];
33
+ for (const [index, value] of raw.keys.entries()) {
34
+ const path = `options.keys[${index}]`;
35
+ const key = record(value, path, [
36
+ 'address',
37
+ 'scope',
38
+ 'permissionsRaw',
39
+ 'expiresAt',
40
+ ]);
41
+ const address = validAddress(key.address, `${path}.address`, false);
42
+ const scope = validAddress(key.scope, `${path}.scope`, false);
43
+ const permissionsRaw = key.permissionsRaw;
44
+ if (typeof permissionsRaw !== 'bigint' ||
45
+ permissionsRaw < 0n ||
46
+ permissionsRaw > 0xffffffffffffffffn)
47
+ invalid(`${path}.permissionsRaw`, permissionsRaw, 'Supply an explicit bigint permission mask from 0n through 18446744073709551615n.');
48
+ const expiresAt = key.expiresAt;
49
+ if (expiresAt !== undefined &&
50
+ (typeof expiresAt !== 'bigint' ||
51
+ expiresAt < 0n ||
52
+ expiresAt > 0x7fffffffffffffffn))
53
+ invalid(`${path}.expiresAt`, expiresAt, 'Omit expiry for a permanent key, or supply nonnegative bigint Unix seconds within the signed 64-bit range.');
54
+ const captured = {
55
+ address,
56
+ scope,
57
+ permissionsRaw,
58
+ ...(expiresAt === undefined ? {} : { expiresAt }),
59
+ };
60
+ if (isProfileCreationAuthority(captured)) {
61
+ validAddress(address, `${path}.address`, true);
62
+ if (expiresAt !== undefined)
63
+ invalid(`${path}.expiresAt`, expiresAt, 'Omit expiry for every Player Profile AUTH key.');
64
+ }
65
+ const identity = `${address}:${scope}`;
66
+ if (seen.has(identity))
67
+ invalid(path, address, 'Remove duplicate address/scope pairs; distinct scopes may reuse one key address.');
68
+ seen.add(identity);
69
+ keys.push(captured);
70
+ }
71
+ const authCount = keys.filter(isProfileCreationAuthority).length;
72
+ if (authCount === 0)
73
+ invalid('options.keys', raw.keys, 'Specify at least one non-expiring Player Profile AUTH key.');
74
+ const keyThreshold = raw.keyThreshold;
75
+ if (typeof keyThreshold !== 'number' ||
76
+ !Number.isInteger(keyThreshold) ||
77
+ keyThreshold < 1 ||
78
+ keyThreshold > 255 ||
79
+ keyThreshold > authCount)
80
+ invalid('options.keyThreshold', keyThreshold, 'Set an explicit integer threshold from 1 through the number of distinct Player Profile AUTH keys, no greater than 255.');
81
+ return { funder, keys, keyThreshold };
82
+ }
83
+ /** Plans a new signer-created Profile with explicit scoped permissions.
84
+ * The new Profile, storage funder, and every Player Profile AUTH key sign creation,
85
+ * even when the editing threshold is lower. Other keys remain readonly.
86
+ * The new Profile signer is needed only for creation unless explicitly listed
87
+ * among the initial authority keys; creating the account does not grant it AUTH.
88
+ * The threshold governs protected Profile updates; it is not a gameplay-wide multisig policy.
89
+ * Existing target accounts and a Profile address equal to its funder are rejected.
90
+ * No Game load, onboarding, funding top-up, key generation or signing is implicit.
91
+ * Storage rent, balances and final creation remain chain-authoritative. Simulate
92
+ * before requesting signatures; after confirmed execution, read `getProfile` and
93
+ * verify the exact keys, scopes, permission masks and threshold.
94
+ * @example
95
+ * ```ts
96
+ * import {planCreateProfile} from '@aephia/atlas-kit/identity/actions';
97
+ * declare const ctx: SageContext;
98
+ * declare const profileAddress: Address;
99
+ * declare const options: PlanCreateProfileOptions;
100
+ * const plan = await planCreateProfile(ctx, profileAddress, options);
101
+ * console.log(plan.summary, plan.requiredSigners);
102
+ * ```
103
+ */
104
+ export async function planCreateProfile(ctx, profileAddress, input) {
105
+ const profile = validAddress(profileAddress, 'profileAddress', true);
106
+ // Capture every nested scalar before the first await; caller edits cannot change authority.
107
+ const captured = options(input);
108
+ if (profile === captured.funder)
109
+ invalid('profileAddress', profile, 'Use a fresh Profile signer address distinct from the storage funder; do not convert the funding wallet into a Profile.');
110
+ const [existing] = await readContextRawAccounts(ctx, [profile]);
111
+ if (existing)
112
+ throw new SageSdkError('ACTION_PRECONDITION_FAILED', `Profile target ${profile} already exists. Read an existing Profile with getProfile, or select a fresh signer address; creation is not idempotent.`, { address: profile });
113
+ const summary = `Create Profile ${profile} with ${captured.keys.length} explicitly scoped keys and protected Profile update threshold ${captured.keyThreshold}. ${captured.keys.map((key, index) => `Key ${index}: address ${key.address}, scope ${key.scope}, permissionsRaw ${key.permissionsRaw} (0x${key.permissionsRaw.toString(16)}), expiresAt ${key.expiresAt === undefined ? 'never' : key.expiresAt}, role ${isProfileCreationAuthority(key) ? 'Profile AUTH signer' : 'readonly key'}.`).join(' ')} Review these exact scoped permission masks; the threshold does not establish gameplay-wide multisig. Funder ${captured.funder} pays storage rent; transaction fees are separate. The Profile, funder and every Profile AUTH key sign creation. Rent, balances and final creation remain chain-authoritative: simulate before signing, then use getProfile after confirmed execution to verify keys, scopes, permissionsRaw and keyThreshold. No other onboarding or balance top-up is included.`;
114
+ return createPlan({
115
+ kind: 'identity.create-profile',
116
+ summary,
117
+ preconditions: [
118
+ {
119
+ kind: 'account-absent',
120
+ address: profile,
121
+ describes: `New Profile ${profile} remains absent; if another transaction creates it, read and inspect it before proceeding.`,
122
+ },
123
+ ],
124
+ steps: [
125
+ {
126
+ describes: summary,
127
+ signers: [
128
+ captured.funder,
129
+ profile,
130
+ ...captured.keys
131
+ .filter(isProfileCreationAuthority)
132
+ .map((key) => key.address),
133
+ ],
134
+ instruction: createProfileInstruction({ profile, ...captured }),
135
+ },
136
+ ],
137
+ });
138
+ }
139
+ //# sourceMappingURL=create-profile.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create-profile.js","sourceRoot":"","sources":["../../../src/identity/actions/create-profile.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { type Address } from '@solana/kit';
2
+ import type { SageContext } from '../../client/contracts.js';
3
+ import { type Plan } from '../../planning/index.js';
4
+ /** Address of the external signer that will fund Character account storage.
5
+ * Character registration has no Profile-authority or faction signer role.
6
+ * @example
7
+ * ```ts
8
+ * declare const funder: Address;
9
+ * const options:PlanRegisterCharacterOptions={funder};
10
+ * ```
11
+ */
12
+ export interface PlanRegisterCharacterOptions {
13
+ readonly funder: Address;
14
+ }
15
+ /** Plans creation of an existing Profile's canonical Character in the configured Game.
16
+ * Only the explicit storage funder signs. The Profile's authority and faction
17
+ * enrollment are not prerequisites for this instruction. Planning never creates
18
+ * an account, signs, submits, or retains a signer. Existing Characters are rejected;
19
+ * reuse them through `getCharacterForProfile` or `maybeGetCharacterForProfile`.
20
+ * New Plans bind the current Game-2 Character and Career XP creation intent.
21
+ * The canonical accounts, absence, storage pricing, and funder balance are
22
+ * revalidated before signing. Final creation remains chain-authoritative. Simulate
23
+ * before signing and read the Character after confirmed execution to verify its
24
+ * exact Profile/Game identity. Submission alone does not prove creation.
25
+ * @example
26
+ * ```ts
27
+ * import {planRegisterCharacter} from '@aephia/atlas-kit/identity/actions';
28
+ * import type {SageContext,Address} from '@aephia/atlas-kit/client';
29
+ * declare const ctx:SageContext;
30
+ * declare const profileAddress:Address;
31
+ * declare const funder:Address;
32
+ * const plan=await planRegisterCharacter(ctx,profileAddress,{funder});
33
+ * console.log(plan.summary,plan.requiredSigners);
34
+ * ```
35
+ */
36
+ export declare function planRegisterCharacter(ctx: SageContext, profileAddress: Address, input: PlanRegisterCharacterOptions): Promise<Plan>;
37
+ export { planCreateProfile, type PlanCreateProfileOptions, type ProfileCreationKeyInput, } from './create-profile.js';
38
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/identity/actions/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAgC,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEzE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAY7D,OAAO,EAAc,KAAK,IAAI,EAAE,MAAM,yBAAyB,CAAC;AAEhE;;;;;;;GAOG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,MAAM,EAAE,OAAO,CAAC;CAC1B;AA+BD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,qBAAqB,CACzC,GAAG,EAAE,WAAW,EAChB,cAAc,EAAE,OAAO,EACvB,KAAK,EAAE,4BAA4B,GAClC,OAAO,CAAC,IAAI,CAAC,CAsHf;AAED,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,GAC7B,MAAM,qBAAqB,CAAC"}