@wuwei-labs/srsly 2.0.0-beta.6 → 2.0.0-beta.9

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 (290) hide show
  1. package/README.md +43 -0
  2. package/dist/cjs/codama/devnet/constants.js +1 -1
  3. package/dist/cjs/codama/mainnet/constants.js +1 -1
  4. package/dist/cjs/package.json +64 -0
  5. package/dist/esm/codama/devnet/accounts/contractState.js +75 -0
  6. package/dist/esm/codama/devnet/accounts/contractState.js.map +1 -0
  7. package/dist/esm/codama/devnet/accounts/fleet.js +64 -0
  8. package/dist/esm/codama/devnet/accounts/fleet.js.map +1 -0
  9. package/dist/esm/codama/devnet/accounts/index.js +12 -0
  10. package/dist/esm/codama/devnet/accounts/index.js.map +1 -0
  11. package/dist/esm/codama/devnet/accounts/rentalState.js +74 -0
  12. package/dist/esm/codama/devnet/accounts/rentalState.js.map +1 -0
  13. package/dist/esm/codama/devnet/accounts/thread.js +77 -0
  14. package/dist/esm/codama/devnet/accounts/thread.js.map +1 -0
  15. package/dist/esm/codama/devnet/constants.js +29 -0
  16. package/dist/esm/codama/devnet/constants.js.map +1 -0
  17. package/dist/esm/codama/devnet/errors/index.js +9 -0
  18. package/dist/esm/codama/devnet/errors/index.js.map +1 -0
  19. package/dist/esm/codama/devnet/errors/srsly.js +69 -0
  20. package/dist/esm/codama/devnet/errors/srsly.js.map +1 -0
  21. package/dist/esm/codama/devnet/index.js +13 -0
  22. package/dist/esm/codama/devnet/index.js.map +1 -0
  23. package/dist/esm/codama/devnet/instructions/acceptRental.js +347 -0
  24. package/dist/esm/codama/devnet/instructions/acceptRental.js.map +1 -0
  25. package/dist/esm/codama/devnet/instructions/cancelRental.js +215 -0
  26. package/dist/esm/codama/devnet/instructions/cancelRental.js.map +1 -0
  27. package/dist/esm/codama/devnet/instructions/closeContract.js +236 -0
  28. package/dist/esm/codama/devnet/instructions/closeContract.js.map +1 -0
  29. package/dist/esm/codama/devnet/instructions/closeRental.js +250 -0
  30. package/dist/esm/codama/devnet/instructions/closeRental.js.map +1 -0
  31. package/dist/esm/codama/devnet/instructions/createContract.js +251 -0
  32. package/dist/esm/codama/devnet/instructions/createContract.js.map +1 -0
  33. package/dist/esm/codama/devnet/instructions/index.js +15 -0
  34. package/dist/esm/codama/devnet/instructions/index.js.map +1 -0
  35. package/dist/esm/codama/devnet/instructions/payRental.js +270 -0
  36. package/dist/esm/codama/devnet/instructions/payRental.js.map +1 -0
  37. package/dist/esm/codama/devnet/instructions/resetRental.js +145 -0
  38. package/dist/esm/codama/devnet/instructions/resetRental.js.map +1 -0
  39. package/dist/esm/codama/devnet/programs/index.js +9 -0
  40. package/dist/esm/codama/devnet/programs/index.js.map +1 -0
  41. package/dist/esm/codama/devnet/programs/srsly.js +68 -0
  42. package/dist/esm/codama/devnet/programs/srsly.js.map +1 -0
  43. package/dist/esm/codama/devnet/shared/index.js +87 -0
  44. package/dist/esm/codama/devnet/shared/index.js.map +1 -0
  45. package/dist/esm/codama/devnet/types/clockData.js +26 -0
  46. package/dist/esm/codama/devnet/types/clockData.js.map +1 -0
  47. package/dist/esm/codama/devnet/types/equality.js +24 -0
  48. package/dist/esm/codama/devnet/types/equality.js.map +1 -0
  49. package/dist/esm/codama/devnet/types/execContext.js +33 -0
  50. package/dist/esm/codama/devnet/types/execContext.js.map +1 -0
  51. package/dist/esm/codama/devnet/types/index.js +16 -0
  52. package/dist/esm/codama/devnet/types/index.js.map +1 -0
  53. package/dist/esm/codama/devnet/types/serializableAccount.js +26 -0
  54. package/dist/esm/codama/devnet/types/serializableAccount.js.map +1 -0
  55. package/dist/esm/codama/devnet/types/serializableInstruction.js +27 -0
  56. package/dist/esm/codama/devnet/types/serializableInstruction.js.map +1 -0
  57. package/dist/esm/codama/devnet/types/threadResponse.js +33 -0
  58. package/dist/esm/codama/devnet/types/threadResponse.js.map +1 -0
  59. package/dist/esm/codama/devnet/types/trigger.js +83 -0
  60. package/dist/esm/codama/devnet/types/trigger.js.map +1 -0
  61. package/dist/esm/codama/devnet/types/triggerContext.js +42 -0
  62. package/dist/esm/codama/devnet/types/triggerContext.js.map +1 -0
  63. package/dist/esm/codama/mainnet/accounts/contractState.js +75 -0
  64. package/dist/esm/codama/mainnet/accounts/contractState.js.map +1 -0
  65. package/dist/esm/codama/mainnet/accounts/fleet.js +64 -0
  66. package/dist/esm/codama/mainnet/accounts/fleet.js.map +1 -0
  67. package/dist/esm/codama/mainnet/accounts/index.js +12 -0
  68. package/dist/esm/codama/mainnet/accounts/index.js.map +1 -0
  69. package/dist/esm/codama/mainnet/accounts/rentalState.js +74 -0
  70. package/dist/esm/codama/mainnet/accounts/rentalState.js.map +1 -0
  71. package/dist/esm/codama/mainnet/accounts/thread.js +77 -0
  72. package/dist/esm/codama/mainnet/accounts/thread.js.map +1 -0
  73. package/dist/esm/codama/mainnet/constants.js +29 -0
  74. package/dist/esm/codama/mainnet/constants.js.map +1 -0
  75. package/dist/esm/codama/mainnet/errors/index.js +9 -0
  76. package/dist/esm/codama/mainnet/errors/index.js.map +1 -0
  77. package/dist/esm/codama/mainnet/errors/srsly.js +69 -0
  78. package/dist/esm/codama/mainnet/errors/srsly.js.map +1 -0
  79. package/dist/esm/codama/mainnet/index.js +13 -0
  80. package/dist/esm/codama/mainnet/index.js.map +1 -0
  81. package/dist/esm/codama/mainnet/instructions/acceptRental.js +347 -0
  82. package/dist/esm/codama/mainnet/instructions/acceptRental.js.map +1 -0
  83. package/dist/esm/codama/mainnet/instructions/cancelRental.js +215 -0
  84. package/dist/esm/codama/mainnet/instructions/cancelRental.js.map +1 -0
  85. package/dist/esm/codama/mainnet/instructions/closeContract.js +236 -0
  86. package/dist/esm/codama/mainnet/instructions/closeContract.js.map +1 -0
  87. package/dist/esm/codama/mainnet/instructions/closeRental.js +250 -0
  88. package/dist/esm/codama/mainnet/instructions/closeRental.js.map +1 -0
  89. package/dist/esm/codama/mainnet/instructions/createContract.js +251 -0
  90. package/dist/esm/codama/mainnet/instructions/createContract.js.map +1 -0
  91. package/dist/esm/codama/mainnet/instructions/index.js +15 -0
  92. package/dist/esm/codama/mainnet/instructions/index.js.map +1 -0
  93. package/dist/esm/codama/mainnet/instructions/payRental.js +270 -0
  94. package/dist/esm/codama/mainnet/instructions/payRental.js.map +1 -0
  95. package/dist/esm/codama/mainnet/instructions/resetRental.js +145 -0
  96. package/dist/esm/codama/mainnet/instructions/resetRental.js.map +1 -0
  97. package/dist/esm/codama/mainnet/programs/index.js +9 -0
  98. package/dist/esm/codama/mainnet/programs/index.js.map +1 -0
  99. package/dist/esm/codama/mainnet/programs/srsly.js +68 -0
  100. package/dist/esm/codama/mainnet/programs/srsly.js.map +1 -0
  101. package/dist/esm/codama/mainnet/shared/index.js +87 -0
  102. package/dist/esm/codama/mainnet/shared/index.js.map +1 -0
  103. package/dist/esm/codama/mainnet/types/clockData.js +26 -0
  104. package/dist/esm/codama/mainnet/types/clockData.js.map +1 -0
  105. package/dist/esm/codama/mainnet/types/equality.js +24 -0
  106. package/dist/esm/codama/mainnet/types/equality.js.map +1 -0
  107. package/dist/esm/codama/mainnet/types/execContext.js +33 -0
  108. package/dist/esm/codama/mainnet/types/execContext.js.map +1 -0
  109. package/dist/esm/codama/mainnet/types/index.js +16 -0
  110. package/dist/esm/codama/mainnet/types/index.js.map +1 -0
  111. package/dist/esm/codama/mainnet/types/serializableAccount.js +26 -0
  112. package/dist/esm/codama/mainnet/types/serializableAccount.js.map +1 -0
  113. package/dist/esm/codama/mainnet/types/serializableInstruction.js +27 -0
  114. package/dist/esm/codama/mainnet/types/serializableInstruction.js.map +1 -0
  115. package/dist/esm/codama/mainnet/types/threadResponse.js +33 -0
  116. package/dist/esm/codama/mainnet/types/threadResponse.js.map +1 -0
  117. package/dist/esm/codama/mainnet/types/trigger.js +83 -0
  118. package/dist/esm/codama/mainnet/types/trigger.js.map +1 -0
  119. package/dist/esm/codama/mainnet/types/triggerContext.js +42 -0
  120. package/dist/esm/codama/mainnet/types/triggerContext.js.map +1 -0
  121. package/dist/esm/contract/close.js +94 -0
  122. package/dist/esm/contract/close.js.map +1 -0
  123. package/dist/esm/contract/create.js +66 -0
  124. package/dist/esm/contract/create.js.map +1 -0
  125. package/dist/esm/contract/index.js +3 -0
  126. package/dist/esm/contract/index.js.map +1 -0
  127. package/dist/esm/index.js +7 -0
  128. package/dist/esm/index.js.map +1 -0
  129. package/dist/esm/package.json +64 -0
  130. package/dist/esm/rental/accept.js +86 -0
  131. package/dist/esm/rental/accept.js.map +1 -0
  132. package/dist/esm/rental/cancel.js +50 -0
  133. package/dist/esm/rental/cancel.js.map +1 -0
  134. package/dist/esm/rental/close.js +52 -0
  135. package/dist/esm/rental/close.js.map +1 -0
  136. package/dist/esm/rental/index.js +5 -0
  137. package/dist/esm/rental/index.js.map +1 -0
  138. package/dist/esm/rental/reset.js +65 -0
  139. package/dist/esm/rental/reset.js.map +1 -0
  140. package/dist/esm/utils/config.js +161 -0
  141. package/dist/esm/utils/config.js.map +1 -0
  142. package/dist/esm/utils/constants.js +104 -0
  143. package/dist/esm/utils/constants.js.map +1 -0
  144. package/dist/esm/utils/index.js +4 -0
  145. package/dist/esm/utils/index.js.map +1 -0
  146. package/dist/esm/utils/profiles.js +152 -0
  147. package/dist/esm/utils/profiles.js.map +1 -0
  148. package/dist/types/codama/devnet/accounts/contractState.d.ts +51 -0
  149. package/dist/types/codama/devnet/accounts/contractState.d.ts.map +1 -0
  150. package/dist/types/codama/devnet/accounts/fleet.d.ts +38 -0
  151. package/dist/types/codama/devnet/accounts/fleet.d.ts.map +1 -0
  152. package/dist/types/codama/devnet/accounts/index.d.ts +12 -0
  153. package/dist/types/codama/devnet/accounts/index.d.ts.map +1 -0
  154. package/dist/types/codama/devnet/accounts/rentalState.d.ts +48 -0
  155. package/dist/types/codama/devnet/accounts/rentalState.d.ts.map +1 -0
  156. package/dist/types/codama/devnet/accounts/thread.d.ts +74 -0
  157. package/dist/types/codama/devnet/accounts/thread.d.ts.map +1 -0
  158. package/dist/types/codama/devnet/constants.d.ts +33 -0
  159. package/dist/types/codama/devnet/constants.d.ts.map +1 -0
  160. package/dist/types/codama/devnet/errors/index.d.ts +9 -0
  161. package/dist/types/codama/devnet/errors/index.d.ts.map +1 -0
  162. package/dist/types/codama/devnet/errors/srsly.d.ts +50 -0
  163. package/dist/types/codama/devnet/errors/srsly.d.ts.map +1 -0
  164. package/dist/types/codama/devnet/index.d.ts +13 -0
  165. package/dist/types/codama/devnet/index.d.ts.map +1 -0
  166. package/dist/types/codama/devnet/instructions/acceptRental.d.ts +131 -0
  167. package/dist/types/codama/devnet/instructions/acceptRental.d.ts.map +1 -0
  168. package/dist/types/codama/devnet/instructions/cancelRental.d.ts +71 -0
  169. package/dist/types/codama/devnet/instructions/cancelRental.d.ts.map +1 -0
  170. package/dist/types/codama/devnet/instructions/closeContract.d.ts +100 -0
  171. package/dist/types/codama/devnet/instructions/closeContract.d.ts.map +1 -0
  172. package/dist/types/codama/devnet/instructions/closeRental.d.ts +83 -0
  173. package/dist/types/codama/devnet/instructions/closeRental.d.ts.map +1 -0
  174. package/dist/types/codama/devnet/instructions/createContract.d.ts +108 -0
  175. package/dist/types/codama/devnet/instructions/createContract.d.ts.map +1 -0
  176. package/dist/types/codama/devnet/instructions/index.d.ts +15 -0
  177. package/dist/types/codama/devnet/instructions/index.d.ts.map +1 -0
  178. package/dist/types/codama/devnet/instructions/payRental.d.ts +110 -0
  179. package/dist/types/codama/devnet/instructions/payRental.d.ts.map +1 -0
  180. package/dist/types/codama/devnet/instructions/resetRental.d.ts +71 -0
  181. package/dist/types/codama/devnet/instructions/resetRental.d.ts.map +1 -0
  182. package/dist/types/codama/devnet/programs/index.d.ts +9 -0
  183. package/dist/types/codama/devnet/programs/index.d.ts.map +1 -0
  184. package/dist/types/codama/devnet/programs/srsly.d.ts +47 -0
  185. package/dist/types/codama/devnet/programs/srsly.d.ts.map +1 -0
  186. package/dist/types/codama/devnet/shared/index.d.ts +50 -0
  187. package/dist/types/codama/devnet/shared/index.d.ts.map +1 -0
  188. package/dist/types/codama/devnet/types/clockData.d.ts +29 -0
  189. package/dist/types/codama/devnet/types/clockData.d.ts.map +1 -0
  190. package/dist/types/codama/devnet/types/equality.d.ts +18 -0
  191. package/dist/types/codama/devnet/types/equality.d.ts.map +1 -0
  192. package/dist/types/codama/devnet/types/execContext.d.ts +48 -0
  193. package/dist/types/codama/devnet/types/execContext.d.ts.map +1 -0
  194. package/dist/types/codama/devnet/types/index.d.ts +16 -0
  195. package/dist/types/codama/devnet/types/index.d.ts.map +1 -0
  196. package/dist/types/codama/devnet/types/serializableAccount.d.ts +22 -0
  197. package/dist/types/codama/devnet/types/serializableAccount.d.ts.map +1 -0
  198. package/dist/types/codama/devnet/types/serializableInstruction.d.ts +30 -0
  199. package/dist/types/codama/devnet/types/serializableInstruction.d.ts.map +1 -0
  200. package/dist/types/codama/devnet/types/threadResponse.d.ts +42 -0
  201. package/dist/types/codama/devnet/types/threadResponse.d.ts.map +1 -0
  202. package/dist/types/codama/devnet/types/trigger.d.ts +98 -0
  203. package/dist/types/codama/devnet/types/trigger.d.ts.map +1 -0
  204. package/dist/types/codama/devnet/types/triggerContext.d.ts +75 -0
  205. package/dist/types/codama/devnet/types/triggerContext.d.ts.map +1 -0
  206. package/dist/types/codama/mainnet/accounts/contractState.d.ts +51 -0
  207. package/dist/types/codama/mainnet/accounts/contractState.d.ts.map +1 -0
  208. package/dist/types/codama/mainnet/accounts/fleet.d.ts +38 -0
  209. package/dist/types/codama/mainnet/accounts/fleet.d.ts.map +1 -0
  210. package/dist/types/codama/mainnet/accounts/index.d.ts +12 -0
  211. package/dist/types/codama/mainnet/accounts/index.d.ts.map +1 -0
  212. package/dist/types/codama/mainnet/accounts/rentalState.d.ts +48 -0
  213. package/dist/types/codama/mainnet/accounts/rentalState.d.ts.map +1 -0
  214. package/dist/types/codama/mainnet/accounts/thread.d.ts +74 -0
  215. package/dist/types/codama/mainnet/accounts/thread.d.ts.map +1 -0
  216. package/dist/types/codama/mainnet/constants.d.ts +33 -0
  217. package/dist/types/codama/mainnet/constants.d.ts.map +1 -0
  218. package/dist/types/codama/mainnet/errors/index.d.ts +9 -0
  219. package/dist/types/codama/mainnet/errors/index.d.ts.map +1 -0
  220. package/dist/types/codama/mainnet/errors/srsly.d.ts +50 -0
  221. package/dist/types/codama/mainnet/errors/srsly.d.ts.map +1 -0
  222. package/dist/types/codama/mainnet/index.d.ts +13 -0
  223. package/dist/types/codama/mainnet/index.d.ts.map +1 -0
  224. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts +131 -0
  225. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts.map +1 -0
  226. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts +71 -0
  227. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts.map +1 -0
  228. package/dist/types/codama/mainnet/instructions/closeContract.d.ts +100 -0
  229. package/dist/types/codama/mainnet/instructions/closeContract.d.ts.map +1 -0
  230. package/dist/types/codama/mainnet/instructions/closeRental.d.ts +83 -0
  231. package/dist/types/codama/mainnet/instructions/closeRental.d.ts.map +1 -0
  232. package/dist/types/codama/mainnet/instructions/createContract.d.ts +108 -0
  233. package/dist/types/codama/mainnet/instructions/createContract.d.ts.map +1 -0
  234. package/dist/types/codama/mainnet/instructions/index.d.ts +15 -0
  235. package/dist/types/codama/mainnet/instructions/index.d.ts.map +1 -0
  236. package/dist/types/codama/mainnet/instructions/payRental.d.ts +110 -0
  237. package/dist/types/codama/mainnet/instructions/payRental.d.ts.map +1 -0
  238. package/dist/types/codama/mainnet/instructions/resetRental.d.ts +71 -0
  239. package/dist/types/codama/mainnet/instructions/resetRental.d.ts.map +1 -0
  240. package/dist/types/codama/mainnet/programs/index.d.ts +9 -0
  241. package/dist/types/codama/mainnet/programs/index.d.ts.map +1 -0
  242. package/dist/types/codama/mainnet/programs/srsly.d.ts +47 -0
  243. package/dist/types/codama/mainnet/programs/srsly.d.ts.map +1 -0
  244. package/dist/types/codama/mainnet/shared/index.d.ts +50 -0
  245. package/dist/types/codama/mainnet/shared/index.d.ts.map +1 -0
  246. package/dist/types/codama/mainnet/types/clockData.d.ts +29 -0
  247. package/dist/types/codama/mainnet/types/clockData.d.ts.map +1 -0
  248. package/dist/types/codama/mainnet/types/equality.d.ts +18 -0
  249. package/dist/types/codama/mainnet/types/equality.d.ts.map +1 -0
  250. package/dist/types/codama/mainnet/types/execContext.d.ts +48 -0
  251. package/dist/types/codama/mainnet/types/execContext.d.ts.map +1 -0
  252. package/dist/types/codama/mainnet/types/index.d.ts +16 -0
  253. package/dist/types/codama/mainnet/types/index.d.ts.map +1 -0
  254. package/dist/types/codama/mainnet/types/serializableAccount.d.ts +22 -0
  255. package/dist/types/codama/mainnet/types/serializableAccount.d.ts.map +1 -0
  256. package/dist/types/codama/mainnet/types/serializableInstruction.d.ts +30 -0
  257. package/dist/types/codama/mainnet/types/serializableInstruction.d.ts.map +1 -0
  258. package/dist/types/codama/mainnet/types/threadResponse.d.ts +42 -0
  259. package/dist/types/codama/mainnet/types/threadResponse.d.ts.map +1 -0
  260. package/dist/types/codama/mainnet/types/trigger.d.ts +98 -0
  261. package/dist/types/codama/mainnet/types/trigger.d.ts.map +1 -0
  262. package/dist/types/codama/mainnet/types/triggerContext.d.ts +75 -0
  263. package/dist/types/codama/mainnet/types/triggerContext.d.ts.map +1 -0
  264. package/dist/types/contract/close.d.ts +52 -0
  265. package/dist/types/contract/close.d.ts.map +1 -0
  266. package/dist/types/contract/create.d.ts +80 -0
  267. package/dist/types/contract/create.d.ts.map +1 -0
  268. package/dist/types/contract/index.d.ts +3 -0
  269. package/dist/types/contract/index.d.ts.map +1 -0
  270. package/dist/types/index.d.ts +6 -0
  271. package/dist/types/index.d.ts.map +1 -0
  272. package/dist/types/rental/accept.d.ts +92 -0
  273. package/dist/types/rental/accept.d.ts.map +1 -0
  274. package/dist/types/rental/cancel.d.ts +44 -0
  275. package/dist/types/rental/cancel.d.ts.map +1 -0
  276. package/dist/types/rental/close.d.ts +49 -0
  277. package/dist/types/rental/close.d.ts.map +1 -0
  278. package/dist/types/rental/index.d.ts +5 -0
  279. package/dist/types/rental/index.d.ts.map +1 -0
  280. package/dist/types/rental/reset.d.ts +68 -0
  281. package/dist/types/rental/reset.d.ts.map +1 -0
  282. package/dist/types/utils/config.d.ts +112 -0
  283. package/dist/types/utils/config.d.ts.map +1 -0
  284. package/dist/types/utils/constants.d.ts +32 -0
  285. package/dist/types/utils/constants.d.ts.map +1 -0
  286. package/dist/types/utils/index.d.ts +4 -0
  287. package/dist/types/utils/index.d.ts.map +1 -0
  288. package/dist/types/utils/profiles.d.ts +54 -0
  289. package/dist/types/utils/profiles.d.ts.map +1 -0
  290. package/package.json +11 -5
@@ -0,0 +1,92 @@
1
+ import { Address, TransactionSigner } from '@solana/kit';
2
+ import { type ConfigSelector } from '../utils/config';
3
+ type AcceptRentalInstruction = any;
4
+ /**
5
+ * Simplified parameters for accepting a rental
6
+ */
7
+ export interface AcceptRentalParams {
8
+ /**
9
+ * The borrower wallet that will sign the transaction
10
+ */
11
+ borrower: TransactionSigner<string>;
12
+ /**
13
+ * The borrower's profile account address
14
+ */
15
+ borrowerProfile: Address<string>;
16
+ /**
17
+ * The borrower's faction (1 = mud, 2 = oni, 3 = ustur)
18
+ * Or as string: 'mud', 'oni', 'ustur'
19
+ */
20
+ borrowerFaction: number | string;
21
+ /**
22
+ * The fleet account address that will be rented
23
+ */
24
+ fleet: Address<string>;
25
+ /**
26
+ * The rental contract account address
27
+ */
28
+ contract: Address<string>;
29
+ /**
30
+ * The game ID account address
31
+ * If not provided, will use network-specific default
32
+ */
33
+ gameId?: Address<string>;
34
+ /**
35
+ * The rental rate (in ATLAS tokens)
36
+ */
37
+ rate: number | bigint;
38
+ /**
39
+ * The rental duration (in seconds)
40
+ */
41
+ duration: number | bigint;
42
+ /**
43
+ * Optional referral token account address
44
+ * If provided, referrer will receive 5% of the platform fees
45
+ */
46
+ referralTokenAccount?: Address<string>;
47
+ }
48
+ /**
49
+ * Creates an instruction to accept a rental with fluent configuration.
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * // Use devnet defaults
54
+ * const ix = await acceptRental({
55
+ * borrower: wallet,
56
+ * borrowerProfile: profileAddress,
57
+ * borrowerFaction: 1, // 1 = mud, 2 = oni, 3 = ustur
58
+ * fleet: fleetAddress,
59
+ * contract: contractAddress,
60
+ * rate: 1000, // ATLAS tokens
61
+ * duration: 86400 // 1 day in seconds (total: 1000 * 86400 * 100M stardust)
62
+ * });
63
+ *
64
+ * // With referral (referrer gets 5% of platform fees)
65
+ * const ix = await acceptRental({
66
+ * borrower: wallet,
67
+ * borrowerProfile: profileAddress,
68
+ * borrowerFaction: 1,
69
+ * fleet: fleetAddress,
70
+ * contract: contractAddress,
71
+ * rate: 1000,
72
+ * duration: 86400,
73
+ * referralTokenAccount: referrerTokenAddress
74
+ * });
75
+ *
76
+ * // Use mainnet configuration
77
+ * const ix = await acceptRental(params).set({ network: 'mainnet' });
78
+ *
79
+ * // Override specific constants
80
+ * const ix = await acceptRental(params).set({
81
+ * network: 'mainnet',
82
+ * gameId: 'custom-game-id...'
83
+ * });
84
+ * ```
85
+ *
86
+ * @param params The simplified parameters for accepting a rental
87
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
88
+ */
89
+ export declare function acceptRental(params: AcceptRentalParams): ConfigSelector<AcceptRentalInstruction>;
90
+ export declare function getAcceptRentalInstructionAsync(input: any, options?: any): ConfigSelector<any>;
91
+ export {};
92
+ //# sourceMappingURL=accept.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"accept.d.ts","sourceRoot":"","sources":["../../../src/rental/accept.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAgD,KAAK,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAKxH,KAAK,uBAAuB,GAAG,GAAG,CAAC;AAMnC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEpC;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEjC;;;OAGG;IACH,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACxC;AAkED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,kBAAkB,GACzB,cAAc,CAAC,uBAAuB,CAAC,CAEzC;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAK9F"}
@@ -0,0 +1,44 @@
1
+ import { Address, TransactionSigner } from '@solana/kit';
2
+ import { type ConfigSelector } from '../utils/config';
3
+ type CancelRentalInstruction = any;
4
+ /**
5
+ * Simplified parameters for canceling a rental
6
+ */
7
+ export interface CancelRentalParams {
8
+ /**
9
+ * The borrower wallet that will sign the transaction
10
+ */
11
+ borrower: TransactionSigner<string>;
12
+ /**
13
+ * The rental contract account address
14
+ */
15
+ contract: Address<string>;
16
+ }
17
+ /**
18
+ * Creates an instruction to cancel a rental with fluent configuration.
19
+ *
20
+ * @example
21
+ * ```typescript
22
+ * // Use devnet defaults
23
+ * const ix = await cancelRental({
24
+ * borrower: wallet,
25
+ * contract: contractAddress
26
+ * });
27
+ *
28
+ * // Use mainnet configuration
29
+ * const ix = await cancelRental(params).set({ network: 'mainnet' });
30
+ *
31
+ * // Override specific constants
32
+ * const ix = await cancelRental(params).set({
33
+ * network: 'mainnet',
34
+ * sageProgramAddress: 'custom...'
35
+ * });
36
+ * ```
37
+ *
38
+ * @param params The simplified parameters for canceling a rental
39
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
40
+ */
41
+ export declare function cancelRental(params: CancelRentalParams): ConfigSelector<CancelRentalInstruction>;
42
+ export declare function getCancelRentalInstructionAsync(input: any, options?: any): ConfigSelector<any>;
43
+ export {};
44
+ //# sourceMappingURL=cancel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancel.d.ts","sourceRoot":"","sources":["../../../src/rental/cancel.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAgD,KAAK,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAGxH,KAAK,uBAAuB,GAAG,GAAG,CAAC;AAEnC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEpC;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3B;AA8BD;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,kBAAkB,GACzB,cAAc,CAAC,uBAAuB,CAAC,CAEzC;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAK9F"}
@@ -0,0 +1,49 @@
1
+ import { Address } from '@solana/kit';
2
+ import { type ConfigSelector } from '../utils/config';
3
+ type CloseRentalInstruction = any;
4
+ /**
5
+ * Simplified parameters for closing a rental
6
+ */
7
+ export interface CloseRentalParams {
8
+ /**
9
+ * The borrower address (not a signer in this transaction)
10
+ */
11
+ borrower: Address<string>;
12
+ /**
13
+ * The owner's token account address for receiving ATLAS
14
+ */
15
+ ownerTokenAccount: Address<string>;
16
+ /**
17
+ * The rental contract account address
18
+ */
19
+ contract: Address<string>;
20
+ }
21
+ /**
22
+ * Creates an instruction to close a rental with fluent configuration.
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * // Use devnet defaults
27
+ * const ix = await closeRental({
28
+ * borrower: borrowerAddress,
29
+ * ownerTokenAccount: ownerTokenAccountAddress,
30
+ * contract: contractAddress
31
+ * });
32
+ *
33
+ * // Use mainnet configuration
34
+ * const ix = await closeRental(params).set({ network: 'mainnet' });
35
+ *
36
+ * // Override specific constants
37
+ * const ix = await closeRental(params).set({
38
+ * network: 'mainnet',
39
+ * sageProgramAddress: 'custom...'
40
+ * });
41
+ * ```
42
+ *
43
+ * @param params The simplified parameters for closing a rental
44
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
45
+ */
46
+ export declare function closeRental(params: CloseRentalParams): ConfigSelector<CloseRentalInstruction>;
47
+ export declare function getCloseRentalInstructionAsync(input: any, options?: any): ConfigSelector<any>;
48
+ export {};
49
+ //# sourceMappingURL=close.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"close.d.ts","sourceRoot":"","sources":["../../../src/rental/close.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,OAAO,EAAgD,KAAK,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAGxH,KAAK,sBAAsB,GAAG,GAAG,CAAC;AAElC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1B;;OAEG;IACH,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEnC;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CAC3B;AAgCD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,GACxB,cAAc,CAAC,sBAAsB,CAAC,CAExC;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAK7F"}
@@ -0,0 +1,5 @@
1
+ export * from "./accept";
2
+ export * from "./cancel";
3
+ export * from "./close";
4
+ export * from "./reset";
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/rental/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC"}
@@ -0,0 +1,68 @@
1
+ import { Address } from '@solana/kit';
2
+ import { type ConfigSelector } from '../utils/config';
3
+ type ResetRentalInstruction = any;
4
+ /**
5
+ * Simplified parameters for resetting a rental
6
+ */
7
+ export interface ResetRentalParams {
8
+ /**
9
+ * The fleet account address
10
+ */
11
+ fleet: Address<string>;
12
+ /**
13
+ * The rental contract account address
14
+ */
15
+ contract: Address<string>;
16
+ /**
17
+ * The rental state account address
18
+ */
19
+ rentalState: Address<string>;
20
+ /**
21
+ * The game ID account address
22
+ * If not provided, will use network-specific default
23
+ */
24
+ gameId?: Address<string>;
25
+ /**
26
+ * Optional faction (1 = mud, 2 = oni, 3 = ustur)
27
+ * Or as string: 'mud', 'oni', 'ustur'
28
+ * Only needed if starbase and starbasePlayer are not provided
29
+ */
30
+ faction: number | string;
31
+ /**
32
+ * The owner's profile address
33
+ * Needed only if faction is provided to derive starbasePlayer
34
+ */
35
+ ownerProfile: Address<string>;
36
+ }
37
+ /**
38
+ * Creates an instruction to reset a rental with fluent configuration.
39
+ *
40
+ * @example
41
+ * ```typescript
42
+ * // Use devnet defaults
43
+ * const ix = await resetRental({
44
+ * fleet: fleetAddress,
45
+ * contract: contractAddress,
46
+ * rentalState: rentalStateAddress,
47
+ * faction: 'mud',
48
+ * ownerProfile: ownerProfileAddress
49
+ * });
50
+ *
51
+ * // Use mainnet configuration
52
+ * const ix = await resetRental(params).set({ network: 'mainnet' });
53
+ *
54
+ * // Override specific constants
55
+ * const ix = await resetRental(params).set({
56
+ * network: 'mainnet',
57
+ * gameId: 'custom-game-id...',
58
+ * sageProgramAddress: 'custom...'
59
+ * });
60
+ * ```
61
+ *
62
+ * @param params The simplified parameters for resetting a rental
63
+ * @returns A ConfigSelector that can be configured with .set() or awaited directly
64
+ */
65
+ export declare function resetRental(params: ResetRentalParams): ConfigSelector<ResetRentalInstruction>;
66
+ export declare function getResetRentalInstructionAsync(input: any, options?: any): ConfigSelector<any>;
67
+ export {};
68
+ //# sourceMappingURL=reset.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reset.d.ts","sourceRoot":"","sources":["../../../src/rental/reset.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACR,MAAM,aAAa,CAAC;AAErB,OAAO,EAAgD,KAAK,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAIxH,KAAK,sBAAsB,GAAG,GAAG,CAAC;AAMlC;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAChC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1B;;OAEG;IACH,WAAW,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE7B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzB;;;;OAIG;IACH,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IAEzB;;;OAGG;IACH,YAAY,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CAC/B;AAqDD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAgB,WAAW,CACzB,MAAM,EAAE,iBAAiB,GACxB,cAAc,CAAC,sBAAsB,CAAC,CAExC;AAED,wBAAgB,8BAA8B,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAK7F"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Network configuration for the SRSLY SDK
3
+ */
4
+ export type Network = 'mainnet' | 'devnet';
5
+ /**
6
+ * Configuration options that can be set globally or overridden per call
7
+ */
8
+ export interface ConfigOptions {
9
+ network?: Network;
10
+ sageProgramAddress?: string;
11
+ profileFactionProgramAddress?: string;
12
+ gameId?: string;
13
+ }
14
+ /**
15
+ * Set global configuration options that will be used as defaults for all SDK operations
16
+ * @param config Configuration options to set globally
17
+ *
18
+ * @example
19
+ * ```typescript
20
+ * // Set mainnet as default for all operations
21
+ * setConfig({ network: 'mainnet' });
22
+ *
23
+ * // Now all operations use mainnet by default
24
+ * await createContract(params); // Uses mainnet
25
+ * await acceptRental(params); // Uses mainnet
26
+ *
27
+ * // Can still override per instruction
28
+ * await createContract(params).set({ network: 'devnet' }); // Uses devnet
29
+ * ```
30
+ */
31
+ export declare function setConfig(config: ConfigOptions): void;
32
+ /**
33
+ * Get the current global configuration
34
+ * @returns Current global configuration options
35
+ */
36
+ export declare function getConfig(): ConfigOptions;
37
+ /**
38
+ * Clear global configuration (resets to devnet defaults)
39
+ */
40
+ export declare function clearConfig(): void;
41
+ /**
42
+ * Set global network (convenience function for backward compatibility)
43
+ * @param network Network to set as global default
44
+ *
45
+ * @example
46
+ * ```typescript
47
+ * // Set mainnet as default for all operations
48
+ * setNetwork('mainnet');
49
+ *
50
+ * // Equivalent to:
51
+ * setConfig({ network: 'mainnet' });
52
+ * ```
53
+ */
54
+ export declare function setNetwork(network: Network): void;
55
+ /**
56
+ * Get current global network (convenience function for backward compatibility)
57
+ * @returns Current global network or 'devnet' if not set
58
+ */
59
+ export declare function getNetwork(): Network;
60
+ /**
61
+ * Dynamically import network-specific codama modules
62
+ * @param modulePath The module path relative to the network directory
63
+ * @param network Network to use (defaults to devnet if not specified)
64
+ * @returns Promise resolving to the imported module
65
+ */
66
+ export declare function importNetworkModule<T = any>(modulePath: string, network?: Network): Promise<T>;
67
+ /**
68
+ * Type-safe helper to get network-specific exports
69
+ */
70
+ export interface NetworkModuleCache {
71
+ [key: string]: any;
72
+ }
73
+ /**
74
+ * Cached import for better performance
75
+ * Uses global config network as default if no network specified
76
+ */
77
+ export declare function getCachedNetworkModule<T = any>(modulePath: string, network?: Network): Promise<T>;
78
+ /**
79
+ * Configuration selector for overriding network and constants
80
+ * Also implements PromiseLike to allow direct awaiting
81
+ */
82
+ export interface ConfigSelector<T> extends PromiseLike<T> {
83
+ /**
84
+ * Set configuration options for this call
85
+ */
86
+ set(options: ConfigOptions): ConfigSelector<T>;
87
+ /**
88
+ * Build with current configuration (explicit call)
89
+ */
90
+ build(): Promise<T>;
91
+ }
92
+ /**
93
+ * Create the initial fluent config selector for a function.
94
+ * This is the main entry point for the fluent configuration API.
95
+ *
96
+ * The returned selector can be:
97
+ * - Awaited directly (uses global config + devnet fallback)
98
+ * - Configured with .set() to override network/constants
99
+ * - Chained with multiple .set() calls
100
+ *
101
+ * @param executeFn - The function to execute with optional configuration
102
+ * @returns A ConfigSelector that supports fluent configuration
103
+ *
104
+ * @example
105
+ * // Usage patterns:
106
+ * setConfig({ network: 'mainnet' });
107
+ * await createConfigSelector(executeFn) // Direct await (uses global mainnet)
108
+ * await createConfigSelector(executeFn).set({...}) // Override global config
109
+ * await createConfigSelector(executeFn).set({...}).set({...}) // Chained configs
110
+ */
111
+ export declare function createConfigSelector<T>(executeFn: (config?: ConfigOptions) => Promise<T>): ConfigSelector<T>;
112
+ //# sourceMappingURL=config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,MAAM,OAAO,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAQD;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,aAAa,GAAG,IAAI,CAErD;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,aAAa,CAEzC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAEjD;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAEpC;AAWD;;;;;GAKG;AACH,wBAAsB,mBAAmB,CAAC,CAAC,GAAG,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAWpG;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,CAAC,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC;CACpB;AAID;;;GAGG;AACH,wBAAsB,sBAAsB,CAAC,CAAC,GAAG,GAAG,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,CAAC,CAAC,CAAC,CAWvG;AAED;;;GAGG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,CAAE,SAAQ,WAAW,CAAC,CAAC,CAAC;IACvD;;OAEG;IACH,GAAG,CAAC,OAAO,EAAE,aAAa,GAAG,cAAc,CAAC,CAAC,CAAC,CAAC;IAE/C;;OAEG;IACH,KAAK,IAAI,OAAO,CAAC,CAAC,CAAC,CAAC;CACrB;AAqCD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,oBAAoB,CAAC,CAAC,EACpC,SAAS,EAAE,CAAC,MAAM,CAAC,EAAE,aAAa,KAAK,OAAO,CAAC,CAAC,CAAC,GAChD,cAAc,CAAC,CAAC,CAAC,CAcnB"}
@@ -0,0 +1,32 @@
1
+ import { type ConfigOptions } from './config';
2
+ export declare const STARBASE_SEED = "Starbase";
3
+ export declare const STARBASE_PLAYER_SEED = "starbase_player";
4
+ export declare const SAGE_PLAYER_PROFILE_SEED = "sage_player_profile";
5
+ export declare const PROFILE_FACTION_SEED = "profile_faction";
6
+ export declare const ATLAS_TO_STARDUST = 100000000;
7
+ export declare enum PaymentFrequency {
8
+ Hourly = 0,
9
+ Daily = 1,
10
+ DailyOld = 2,
11
+ Weekly = 3,
12
+ Monthly = 4,
13
+ Decasecond = 5,
14
+ Minute = 6
15
+ }
16
+ export declare function getPaymentFrequency(): Promise<any>;
17
+ export declare function getSrslyProgramAddress(): Promise<any>;
18
+ import { type Address } from "@solana/kit";
19
+ export declare function getProgramId(): Promise<Address>;
20
+ export declare function getSageProgramAddress(config?: ConfigOptions): Promise<any>;
21
+ export declare function getProfileFactionProgramAddress(config?: ConfigOptions): Promise<any>;
22
+ export declare function getSageGameId(config?: ConfigOptions): Promise<any>;
23
+ export declare const FACTION_SPECIFIC_CSS: Record<string, {
24
+ x: number;
25
+ y: number;
26
+ }>;
27
+ export declare const FACTION_MAPPING: Record<number, string>;
28
+ /**
29
+ * Convert PaymentFrequency enum to string (async version)
30
+ */
31
+ export declare function paymentFrequencyToString(freq: any): Promise<string>;
32
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../../src/utils/constants.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqC,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AAGjF,eAAO,MAAM,aAAa,aAAa,CAAC;AACxC,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AACtD,eAAO,MAAM,wBAAwB,wBAAwB,CAAC;AAC9D,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAGtD,eAAO,MAAM,iBAAiB,YAAc,CAAC;AAG7C,oBAAY,gBAAgB;IAC1B,MAAM,IAAI;IACV,KAAK,IAAI;IACT,QAAQ,IAAI;IACZ,MAAM,IAAI;IACV,OAAO,IAAI;IAEX,UAAU,IAAI;IACd,MAAM,IAAI;CACX;AAGD,wBAAsB,mBAAmB,iBAGxC;AAED,wBAAsB,sBAAsB,iBAG3C;AACD,OAAO,EAAE,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAG3C,wBAAsB,YAAY,IAAI,OAAO,CAAC,OAAO,CAAC,CAErD;AAGD,wBAAsB,qBAAqB,CAAC,MAAM,CAAC,EAAE,aAAa,gBAgBjE;AAED,wBAAsB,+BAA+B,CAAC,MAAM,CAAC,EAAE,aAAa,gBAgB3E;AAED,wBAAsB,aAAa,CAAC,MAAM,CAAC,EAAE,aAAa,gBAgBzD;AAGD,eAAO,MAAM,oBAAoB,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,CAIzE,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAIlD,CAAC;AAEF;;GAEG;AACH,wBAAsB,wBAAwB,CAAC,IAAI,EAAE,GAAG,GAAG,OAAO,CAAC,MAAM,CAAC,CAGzE"}
@@ -0,0 +1,4 @@
1
+ export * from "./constants";
2
+ export * from "./profiles";
3
+ export * from "./config";
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC"}
@@ -0,0 +1,54 @@
1
+ import { Address } from '@solana/kit';
2
+ import type { ConfigOptions } from './config';
3
+ /**
4
+ * Helper function to derive the borrower's profile faction account
5
+ *
6
+ * @param profile The borrower's profile address
7
+ * @param config Optional configuration for network-specific constants
8
+ * @returns Promise that resolves to the derived profile faction address
9
+ */
10
+ export declare function deriveProfileFaction(profile: Address<string>, config?: ConfigOptions): Promise<Address<string>>;
11
+ /**
12
+ * Helper function to derive the sage player profile
13
+ *
14
+ * @param borrowerProfile The borrower's profile address
15
+ * @param gameId The game ID (if not provided, uses network-specific default)
16
+ * @param config Optional configuration for network-specific constants
17
+ * @returns Promise that resolves to the derived sage player profile address
18
+ */
19
+ export declare function deriveSagePlayerProfile(borrowerProfile: Address<string>, gameId?: Address<string>, config?: ConfigOptions): Promise<Address<string>>;
20
+ /**
21
+ * Helper function to derive the starbase address based on faction
22
+ *
23
+ * @param faction The faction (1/2/3 or 'mud'/'oni'/'ustur')
24
+ * @param gameId The game ID (if not provided, uses network-specific default)
25
+ * @param config Optional configuration for network-specific constants
26
+ * @returns Promise that resolves to the derived starbase address
27
+ */
28
+ export declare function deriveStarbase(faction: number | string, gameId?: Address<string>, config?: ConfigOptions): Promise<Address<string>>;
29
+ /**
30
+ * Helper function to derive the starbase player address
31
+ *
32
+ * @param sagePlayerProfile The sage player profile address
33
+ * @param starbase The starbase address
34
+ * @param starbaseSeqId The starbase sequence ID (defaults to 0)
35
+ * @param config Optional configuration for network-specific constants
36
+ * @returns Promise that resolves to the derived starbase player address
37
+ */
38
+ export declare function deriveStarbasePlayer(sagePlayerProfile: Address<string>, starbase: Address<string>, starbaseSeqId?: number, config?: ConfigOptions): Promise<Address<string>>;
39
+ /**
40
+ * Derives all three accounts needed: profileFaction, starbase, and starbasePlayer
41
+ *
42
+ * @param profile The borrower's profile address
43
+ * @param faction The faction (1/2/3 or 'mud'/'oni'/'ustur')
44
+ * @param gameId The game ID (if not provided, uses network-specific default)
45
+ * @param starbaseSeqId The starbase sequence ID (defaults to 0)
46
+ * @param config Optional configuration for network-specific constants
47
+ * @returns Promise that resolves to the three derived addresses
48
+ */
49
+ export declare function deriveGameAccounts(profile: Address<string>, faction: number | string, gameId?: Address<string>, starbaseSeqId?: number, config?: ConfigOptions): Promise<{
50
+ profileFaction: Address<string>;
51
+ starbase: Address<string>;
52
+ starbasePlayer: Address<string>;
53
+ }>;
54
+ //# sourceMappingURL=profiles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"profiles.d.ts","sourceRoot":"","sources":["../../../src/utils/profiles.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EAIR,MAAM,aAAa,CAAC;AAGrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AAa9C;;;;;;GAMG;AACH,wBAAsB,oBAAoB,CACxC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,EACxB,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAW1B;AAED;;;;;;;GAOG;AACH,wBAAsB,uBAAuB,CAC3C,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,EAChC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EACxB,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAe1B;AAED;;;;;;;GAOG;AACH,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EACxB,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAyC1B;AAED;;;;;;;;GAQG;AACH,wBAAsB,oBAAoB,CACxC,iBAAiB,EAAE,OAAO,CAAC,MAAM,CAAC,EAClC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,EACzB,aAAa,GAAE,MAAU,EACzB,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAmB1B;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,EACxB,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,EACxB,aAAa,GAAE,MAAU,EACzB,MAAM,CAAC,EAAE,aAAa,GACrB,OAAO,CAAC;IACT,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAChC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAC1B,cAAc,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACjC,CAAC,CA4BD"}
package/package.json CHANGED
@@ -1,11 +1,12 @@
1
1
  {
2
2
  "name": "@wuwei-labs/srsly",
3
- "version": "2.0.0-beta.6",
3
+ "version": "2.0.0-beta.9",
4
4
  "description": "",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "types": "./dist/types/index.d.ts",
7
7
  "module": "./dist/esm/index.js",
8
8
  "source": "./src/index.ts",
9
+ "sideEffects": false,
9
10
  "publishConfig": {
10
11
  "access": "public"
11
12
  },
@@ -23,7 +24,7 @@
23
24
  "types": "./dist/types/index.d.ts",
24
25
  "require": "./dist/cjs/index.js",
25
26
  "import": "./dist/esm/index.js",
26
- "default": "./dist/esm/index.js"
27
+ "default": "./dist/cjs/index.cjs"
27
28
  },
28
29
  "./idl/mainnet": "./target/idl/srsly-mainnet.json",
29
30
  "./idl/devnet": "./target/idl/srsly-devnet.json",
@@ -38,8 +39,8 @@
38
39
  ],
39
40
  "scripts": {
40
41
  "package": "pnpm run clean && pnpm build && pnpm run package:cjs && pnpm run package:esm",
41
- "package:cjs": "tsc -p tsconfig.cjs.json",
42
- "package:esm": "tsc -p tsconfig.esm.json",
42
+ "package:cjs": "tsc -p tsconfig.cjs.json && tsconfig-to-dual-package tsconfig.cjs.json",
43
+ "package:esm": "tsc -p tsconfig.esm.json && tsconfig-to-dual-package tsconfig.esm.json",
43
44
  "clean": "rm -rf dist && cargo clean && pnpm install",
44
45
  "generate": "node generate.mjs",
45
46
  "build": "pnpm build:mainnet && pnpm build:devnet",
@@ -47,8 +48,12 @@
47
48
  "build:devnet": "NETWORK=devnet anchor build && pnpm run generate",
48
49
  "docs": "typedoc",
49
50
  "test": "vitest",
50
- "test:manual": "node tests/test-complete-idl.js && node tests/test-cjs.js",
51
+ "test:manual": "node tests/test-complete-idl.js && node tests/test-cjs.js && node tests/test-webpack-sim.js",
51
52
  "test:cjs": "node tests/test-cjs.js",
53
+ "test:webpack": "node tests/test-webpack-sim.js",
54
+ "test:npm-install": "node tests/test-npm-install.js",
55
+ "test:pnpm-install": "node tests/test-pnpm-install.js",
56
+ "test:package-managers": "node tests/test-npm-install.js && node tests/test-pnpm-install.js",
52
57
  "test:idl": "node tests/test-idl-types.js"
53
58
  },
54
59
  "author": "",
@@ -60,6 +65,7 @@
60
65
  "@types/bn.js": "^5.1.6",
61
66
  "codama": "^1.2.13",
62
67
  "ts-node": "^10.9.2",
68
+ "tsconfig-to-dual-package": "^1.2.0",
63
69
  "typedoc": "^0.28.3",
64
70
  "typescript": "^5.8.3",
65
71
  "vitest": "^3.1.2"