@wuwei-labs/srsly 2.3.3-canary.36.16828894446.0 → 3.0.0-beta.1

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 (724) hide show
  1. package/README.md +126 -462
  2. package/dist/cjs/accounts/borrower.js +47 -0
  3. package/dist/cjs/accounts/borrower.js.map +1 -0
  4. package/dist/cjs/accounts/config.js +47 -0
  5. package/dist/cjs/accounts/config.js.map +1 -0
  6. package/dist/cjs/accounts/contract.js +47 -0
  7. package/dist/cjs/accounts/contract.js.map +1 -0
  8. package/dist/cjs/accounts/fleet.js +77 -0
  9. package/dist/cjs/accounts/fleet.js.map +1 -0
  10. package/dist/cjs/accounts/rental.js +47 -0
  11. package/dist/cjs/accounts/rental.js.map +1 -0
  12. package/dist/cjs/demos.js +124 -59
  13. package/dist/cjs/demos.js.map +1 -1
  14. package/dist/cjs/generated/codama/accounts/borrowerState.js +84 -0
  15. package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -0
  16. package/dist/cjs/generated/codama/accounts/configState.js +37 -52
  17. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
  18. package/dist/cjs/generated/codama/accounts/contractState.js +27 -51
  19. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
  20. package/dist/cjs/generated/codama/accounts/index.js +5 -2
  21. package/dist/cjs/generated/codama/accounts/index.js.map +1 -1
  22. package/dist/cjs/generated/codama/accounts/memberState.js +78 -0
  23. package/dist/cjs/generated/codama/accounts/memberState.js.map +1 -0
  24. package/dist/cjs/generated/codama/accounts/rentalState.js +23 -59
  25. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -1
  26. package/dist/cjs/generated/codama/accounts/thread.js +45 -61
  27. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -1
  28. package/dist/cjs/generated/codama/accounts/vaultState.js +82 -0
  29. package/dist/cjs/generated/codama/accounts/vaultState.js.map +1 -0
  30. package/dist/cjs/generated/codama/errors/index.js +2 -2
  31. package/dist/cjs/generated/codama/errors/srsly.js +158 -19
  32. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
  33. package/dist/cjs/generated/codama/index.js +2 -2
  34. package/dist/cjs/generated/codama/instructions/acceptRental.js +107 -40
  35. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -1
  36. package/dist/cjs/generated/codama/instructions/cancelRental.js +53 -56
  37. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -1
  38. package/dist/cjs/generated/codama/instructions/captureRental.js +129 -0
  39. package/dist/cjs/generated/codama/instructions/captureRental.js.map +1 -0
  40. package/dist/cjs/generated/codama/instructions/claimBorrower.js +222 -0
  41. package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -0
  42. package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js +225 -0
  43. package/dist/cjs/generated/codama/instructions/claimBorrowerPayments.js.map +1 -0
  44. package/dist/cjs/generated/codama/instructions/claimContractPayments.js +230 -0
  45. package/dist/cjs/generated/codama/instructions/claimContractPayments.js.map +1 -0
  46. package/dist/cjs/generated/codama/instructions/closeBorrower.js +84 -0
  47. package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +1 -0
  48. package/dist/cjs/generated/codama/instructions/closeContract.js +140 -31
  49. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -1
  50. package/dist/cjs/generated/codama/instructions/closeRental.js +31 -28
  51. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -1
  52. package/dist/cjs/generated/codama/instructions/createConfig.js +212 -0
  53. package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -0
  54. package/dist/cjs/generated/codama/instructions/createContract.js +47 -45
  55. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
  56. package/dist/cjs/generated/codama/instructions/deleteBorrower.js +126 -0
  57. package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +1 -0
  58. package/dist/cjs/generated/codama/instructions/deleteConfig.js +193 -0
  59. package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -0
  60. package/dist/cjs/generated/codama/instructions/deleteContract.js +115 -0
  61. package/dist/cjs/generated/codama/instructions/deleteContract.js.map +1 -0
  62. package/dist/cjs/generated/codama/instructions/deleteRental.js +115 -0
  63. package/dist/cjs/generated/codama/instructions/deleteRental.js.map +1 -0
  64. package/dist/cjs/generated/codama/instructions/discountBorrower.js +118 -0
  65. package/dist/cjs/generated/codama/instructions/discountBorrower.js.map +1 -0
  66. package/dist/cjs/generated/codama/instructions/index.js +15 -4
  67. package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
  68. package/dist/cjs/generated/codama/instructions/payRental.js +95 -68
  69. package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -1
  70. package/dist/cjs/generated/codama/instructions/{resetRental.js → releaseRental.js} +79 -38
  71. package/dist/cjs/generated/codama/instructions/releaseRental.js.map +1 -0
  72. package/dist/cjs/generated/codama/instructions/reserveRental.js +255 -0
  73. package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -0
  74. package/dist/cjs/generated/codama/instructions/{initializeConfig.js → updateBorrower.js} +45 -52
  75. package/dist/cjs/generated/codama/instructions/updateBorrower.js.map +1 -0
  76. package/dist/cjs/generated/codama/instructions/updateConfig.js +41 -32
  77. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
  78. package/dist/cjs/generated/codama/instructions/updateContract.js +134 -0
  79. package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -0
  80. package/dist/cjs/generated/codama/programs/index.js +2 -2
  81. package/dist/cjs/generated/codama/programs/srsly.js +74 -18
  82. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
  83. package/dist/cjs/generated/codama/shared/index.js +2 -2
  84. package/dist/cjs/generated/codama/shared/index.js.map +1 -1
  85. package/dist/cjs/generated/codama/types/capturedFlagData.js +31 -0
  86. package/dist/cjs/generated/codama/types/capturedFlagData.js.map +1 -0
  87. package/dist/cjs/generated/codama/types/index.js +7 -9
  88. package/dist/cjs/generated/codama/types/index.js.map +1 -1
  89. package/dist/cjs/generated/codama/types/memberConfig.js +33 -0
  90. package/dist/cjs/generated/codama/types/memberConfig.js.map +1 -0
  91. package/dist/cjs/generated/codama/types/memberType.js +55 -0
  92. package/dist/cjs/generated/codama/types/memberType.js.map +1 -0
  93. package/dist/cjs/generated/codama/types/paymentFrequency.js +2 -2
  94. package/dist/cjs/generated/codama/types/schedule.js +65 -0
  95. package/dist/cjs/generated/codama/types/schedule.js.map +1 -0
  96. package/dist/cjs/generated/codama/types/signal.js +48 -0
  97. package/dist/cjs/generated/codama/types/signal.js.map +1 -0
  98. package/dist/cjs/generated/codama/types/trigger.js +36 -23
  99. package/dist/cjs/generated/codama/types/trigger.js.map +1 -1
  100. package/dist/cjs/index.js +172 -245
  101. package/dist/cjs/index.js.map +1 -1
  102. package/dist/cjs/instructions/acceptRental.js +153 -0
  103. package/dist/cjs/instructions/acceptRental.js.map +1 -0
  104. package/dist/cjs/instructions/cancelRental.js +100 -0
  105. package/dist/cjs/instructions/cancelRental.js.map +1 -0
  106. package/dist/cjs/instructions/captureRental.js +85 -0
  107. package/dist/cjs/instructions/captureRental.js.map +1 -0
  108. package/dist/cjs/instructions/claimBorrower.js +66 -0
  109. package/dist/cjs/instructions/claimBorrower.js.map +1 -0
  110. package/dist/cjs/instructions/claimBorrowerPayments.js +69 -0
  111. package/dist/cjs/instructions/claimBorrowerPayments.js.map +1 -0
  112. package/dist/cjs/instructions/claimContractPayments.js +79 -0
  113. package/dist/cjs/instructions/claimContractPayments.js.map +1 -0
  114. package/dist/cjs/instructions/closeBorrower.js +60 -0
  115. package/dist/cjs/instructions/closeBorrower.js.map +1 -0
  116. package/dist/cjs/instructions/closeContract.js +120 -0
  117. package/dist/cjs/instructions/closeContract.js.map +1 -0
  118. package/dist/cjs/instructions/closeRental.js +105 -0
  119. package/dist/cjs/instructions/closeRental.js.map +1 -0
  120. package/dist/cjs/instructions/createConfig.js +74 -0
  121. package/dist/cjs/instructions/createConfig.js.map +1 -0
  122. package/dist/cjs/instructions/createContract.js +131 -0
  123. package/dist/cjs/instructions/createContract.js.map +1 -0
  124. package/dist/cjs/instructions/deleteBorrower.js +60 -0
  125. package/dist/cjs/instructions/deleteBorrower.js.map +1 -0
  126. package/dist/cjs/instructions/deleteConfig.js +79 -0
  127. package/dist/cjs/instructions/deleteConfig.js.map +1 -0
  128. package/dist/cjs/instructions/deleteRental.js +75 -0
  129. package/dist/cjs/instructions/deleteRental.js.map +1 -0
  130. package/dist/cjs/instructions/discountBorrower.js +75 -0
  131. package/dist/cjs/instructions/discountBorrower.js.map +1 -0
  132. package/dist/cjs/instructions/releaseRental.js +132 -0
  133. package/dist/cjs/instructions/releaseRental.js.map +1 -0
  134. package/dist/cjs/instructions/reserveRental.js +135 -0
  135. package/dist/cjs/instructions/reserveRental.js.map +1 -0
  136. package/dist/cjs/instructions/updateBorrower.js +89 -0
  137. package/dist/cjs/instructions/updateBorrower.js.map +1 -0
  138. package/dist/cjs/instructions/updateConfig.js +103 -0
  139. package/dist/cjs/instructions/updateConfig.js.map +1 -0
  140. package/dist/cjs/instructions/updateContract.js +107 -0
  141. package/dist/cjs/instructions/updateContract.js.map +1 -0
  142. package/dist/cjs/package.json +30 -32
  143. package/dist/cjs/params/amount.js +125 -0
  144. package/dist/cjs/params/amount.js.map +1 -0
  145. package/dist/cjs/params/duration.js +120 -0
  146. package/dist/cjs/params/duration.js.map +1 -0
  147. package/dist/cjs/params/schedule.js +164 -0
  148. package/dist/cjs/params/schedule.js.map +1 -0
  149. package/dist/cjs/pda/constants.js +73 -0
  150. package/dist/cjs/pda/constants.js.map +1 -0
  151. package/dist/cjs/pda/index.js +73 -0
  152. package/dist/cjs/pda/index.js.map +1 -0
  153. package/dist/cjs/pda/sage.js +175 -0
  154. package/dist/cjs/pda/sage.js.map +1 -0
  155. package/dist/cjs/pda/slyvault.js +56 -0
  156. package/dist/cjs/pda/slyvault.js.map +1 -0
  157. package/dist/cjs/pda/srsly.js +120 -0
  158. package/dist/cjs/pda/srsly.js.map +1 -0
  159. package/dist/cjs/pda/thread.js +64 -0
  160. package/dist/cjs/pda/thread.js.map +1 -0
  161. package/dist/cjs/pda/token.js +62 -0
  162. package/dist/cjs/pda/token.js.map +1 -0
  163. package/dist/cjs/utils/addresses.js +90 -0
  164. package/dist/cjs/utils/addresses.js.map +1 -0
  165. package/dist/cjs/utils/config.js +100 -187
  166. package/dist/cjs/utils/config.js.map +1 -1
  167. package/dist/cjs/utils/index.js +32 -28
  168. package/dist/cjs/utils/index.js.map +1 -1
  169. package/dist/cjs/utils/instructions.js +79 -0
  170. package/dist/cjs/utils/instructions.js.map +1 -0
  171. package/dist/cjs/utils/signer.js +113 -94
  172. package/dist/cjs/utils/signer.js.map +1 -1
  173. package/dist/cjs/utils/web3js.js +76 -0
  174. package/dist/cjs/utils/web3js.js.map +1 -0
  175. package/dist/cjs/version.js +7 -0
  176. package/dist/cjs/version.js.map +1 -0
  177. package/dist/esm/accounts/borrower.js +44 -0
  178. package/dist/esm/accounts/borrower.js.map +1 -0
  179. package/dist/esm/accounts/config.js +44 -0
  180. package/dist/esm/accounts/config.js.map +1 -0
  181. package/dist/esm/accounts/contract.js +44 -0
  182. package/dist/esm/accounts/contract.js.map +1 -0
  183. package/dist/esm/accounts/fleet.js +74 -0
  184. package/dist/esm/accounts/fleet.js.map +1 -0
  185. package/dist/esm/accounts/rental.js +44 -0
  186. package/dist/esm/accounts/rental.js.map +1 -0
  187. package/dist/esm/demos.js +123 -18
  188. package/dist/esm/demos.js.map +1 -1
  189. package/dist/esm/generated/codama/accounts/borrowerState.js +72 -0
  190. package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -0
  191. package/dist/esm/generated/codama/accounts/configState.js +38 -53
  192. package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
  193. package/dist/esm/generated/codama/accounts/contractState.js +28 -52
  194. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
  195. package/dist/esm/generated/codama/accounts/index.js +5 -2
  196. package/dist/esm/generated/codama/accounts/index.js.map +1 -1
  197. package/dist/esm/generated/codama/accounts/memberState.js +66 -0
  198. package/dist/esm/generated/codama/accounts/memberState.js.map +1 -0
  199. package/dist/esm/generated/codama/accounts/rentalState.js +23 -60
  200. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -1
  201. package/dist/esm/generated/codama/accounts/thread.js +47 -63
  202. package/dist/esm/generated/codama/accounts/thread.js.map +1 -1
  203. package/dist/esm/generated/codama/accounts/vaultState.js +70 -0
  204. package/dist/esm/generated/codama/accounts/vaultState.js.map +1 -0
  205. package/dist/esm/generated/codama/errors/index.js +2 -2
  206. package/dist/esm/generated/codama/errors/srsly.js +156 -18
  207. package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
  208. package/dist/esm/generated/codama/index.js +2 -2
  209. package/dist/esm/generated/codama/instructions/acceptRental.js +107 -40
  210. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -1
  211. package/dist/esm/generated/codama/instructions/cancelRental.js +54 -57
  212. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -1
  213. package/dist/esm/generated/codama/instructions/captureRental.js +119 -0
  214. package/dist/esm/generated/codama/instructions/captureRental.js.map +1 -0
  215. package/dist/esm/generated/codama/instructions/claimBorrower.js +212 -0
  216. package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -0
  217. package/dist/esm/generated/codama/instructions/claimContractPayments.js +220 -0
  218. package/dist/esm/generated/codama/instructions/claimContractPayments.js.map +1 -0
  219. package/dist/esm/generated/codama/instructions/closeBorrower.js +75 -0
  220. package/dist/esm/generated/codama/instructions/closeBorrower.js.map +1 -0
  221. package/dist/esm/generated/codama/instructions/closeContract.js +142 -33
  222. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -1
  223. package/dist/esm/generated/codama/instructions/closeRental.js +31 -28
  224. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -1
  225. package/dist/esm/generated/codama/instructions/createConfig.js +202 -0
  226. package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -0
  227. package/dist/esm/generated/codama/instructions/createContract.js +48 -46
  228. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
  229. package/dist/esm/generated/codama/instructions/deleteBorrower.js +116 -0
  230. package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +1 -0
  231. package/dist/esm/generated/codama/instructions/deleteConfig.js +183 -0
  232. package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -0
  233. package/dist/esm/generated/codama/instructions/deleteContract.js +105 -0
  234. package/dist/esm/generated/codama/instructions/deleteContract.js.map +1 -0
  235. package/dist/esm/generated/codama/instructions/deleteRental.js +105 -0
  236. package/dist/esm/generated/codama/instructions/deleteRental.js.map +1 -0
  237. package/dist/esm/generated/codama/instructions/discountBorrower.js +108 -0
  238. package/dist/esm/generated/codama/instructions/discountBorrower.js.map +1 -0
  239. package/dist/esm/generated/codama/instructions/index.js +15 -4
  240. package/dist/esm/generated/codama/instructions/index.js.map +1 -1
  241. package/dist/esm/generated/codama/instructions/payRental.js +95 -68
  242. package/dist/esm/generated/codama/instructions/payRental.js.map +1 -1
  243. package/dist/esm/generated/codama/instructions/{resetRental.js → releaseRental.js} +73 -32
  244. package/dist/esm/generated/codama/instructions/releaseRental.js.map +1 -0
  245. package/dist/esm/generated/codama/instructions/reserveRental.js +245 -0
  246. package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -0
  247. package/dist/esm/generated/codama/instructions/{initializeConfig.js → updateBorrower.js} +38 -45
  248. package/dist/esm/generated/codama/instructions/updateBorrower.js.map +1 -0
  249. package/dist/esm/generated/codama/instructions/updateConfig.js +42 -33
  250. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
  251. package/dist/esm/generated/codama/instructions/updateContract.js +124 -0
  252. package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -0
  253. package/dist/esm/generated/codama/programs/index.js +2 -2
  254. package/dist/esm/generated/codama/programs/srsly.js +74 -18
  255. package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
  256. package/dist/esm/generated/codama/shared/index.js +2 -2
  257. package/dist/esm/generated/codama/shared/index.js.map +1 -1
  258. package/dist/esm/generated/codama/types/capturedFlagData.js +26 -0
  259. package/dist/esm/generated/codama/types/capturedFlagData.js.map +1 -0
  260. package/dist/esm/generated/codama/types/index.js +7 -9
  261. package/dist/esm/generated/codama/types/index.js.map +1 -1
  262. package/dist/esm/generated/codama/types/memberConfig.js +28 -0
  263. package/dist/esm/generated/codama/types/memberConfig.js.map +1 -0
  264. package/dist/esm/generated/codama/types/memberType.js +48 -0
  265. package/dist/esm/generated/codama/types/memberType.js.map +1 -0
  266. package/dist/esm/generated/codama/types/paymentFrequency.js +2 -2
  267. package/dist/esm/generated/codama/types/schedule.js +58 -0
  268. package/dist/esm/generated/codama/types/schedule.js.map +1 -0
  269. package/dist/esm/generated/codama/types/signal.js +41 -0
  270. package/dist/esm/generated/codama/types/signal.js.map +1 -0
  271. package/dist/esm/generated/codama/types/trigger.js +37 -24
  272. package/dist/esm/generated/codama/types/trigger.js.map +1 -1
  273. package/dist/esm/index.js +78 -208
  274. package/dist/esm/index.js.map +1 -1
  275. package/dist/esm/instructions/acceptRental.js +150 -0
  276. package/dist/esm/instructions/acceptRental.js.map +1 -0
  277. package/dist/esm/instructions/cancelRental.js +97 -0
  278. package/dist/esm/instructions/cancelRental.js.map +1 -0
  279. package/dist/esm/instructions/captureRental.js +82 -0
  280. package/dist/esm/instructions/captureRental.js.map +1 -0
  281. package/dist/esm/instructions/claimBorrower.js +63 -0
  282. package/dist/esm/instructions/claimBorrower.js.map +1 -0
  283. package/dist/esm/instructions/claimContractPayments.js +76 -0
  284. package/dist/esm/instructions/claimContractPayments.js.map +1 -0
  285. package/dist/esm/instructions/closeBorrower.js +57 -0
  286. package/dist/esm/instructions/closeBorrower.js.map +1 -0
  287. package/dist/esm/instructions/closeContract.js +117 -0
  288. package/dist/esm/instructions/closeContract.js.map +1 -0
  289. package/dist/esm/instructions/closeRental.js +102 -0
  290. package/dist/esm/instructions/closeRental.js.map +1 -0
  291. package/dist/esm/instructions/createConfig.js +71 -0
  292. package/dist/esm/instructions/createConfig.js.map +1 -0
  293. package/dist/esm/instructions/createContract.js +128 -0
  294. package/dist/esm/instructions/createContract.js.map +1 -0
  295. package/dist/esm/instructions/deleteBorrower.js +57 -0
  296. package/dist/esm/instructions/deleteBorrower.js.map +1 -0
  297. package/dist/esm/instructions/deleteConfig.js +76 -0
  298. package/dist/esm/instructions/deleteConfig.js.map +1 -0
  299. package/dist/esm/instructions/deleteRental.js +72 -0
  300. package/dist/esm/instructions/deleteRental.js.map +1 -0
  301. package/dist/esm/instructions/discountBorrower.js +72 -0
  302. package/dist/esm/instructions/discountBorrower.js.map +1 -0
  303. package/dist/esm/instructions/releaseRental.js +129 -0
  304. package/dist/esm/instructions/releaseRental.js.map +1 -0
  305. package/dist/esm/instructions/reserveRental.js +132 -0
  306. package/dist/esm/instructions/reserveRental.js.map +1 -0
  307. package/dist/esm/instructions/updateBorrower.js +86 -0
  308. package/dist/esm/instructions/updateBorrower.js.map +1 -0
  309. package/dist/esm/instructions/updateConfig.js +100 -0
  310. package/dist/esm/instructions/updateConfig.js.map +1 -0
  311. package/dist/esm/instructions/updateContract.js +104 -0
  312. package/dist/esm/instructions/updateContract.js.map +1 -0
  313. package/dist/esm/package.json +30 -32
  314. package/dist/esm/params/amount.js +119 -0
  315. package/dist/esm/params/amount.js.map +1 -0
  316. package/dist/esm/params/duration.js +115 -0
  317. package/dist/esm/params/duration.js.map +1 -0
  318. package/dist/esm/params/schedule.js +157 -0
  319. package/dist/esm/params/schedule.js.map +1 -0
  320. package/dist/esm/pda/constants.js +67 -0
  321. package/dist/esm/pda/constants.js.map +1 -0
  322. package/dist/esm/pda/index.js +42 -0
  323. package/dist/esm/pda/index.js.map +1 -0
  324. package/dist/esm/pda/sage.js +168 -0
  325. package/dist/esm/pda/sage.js.map +1 -0
  326. package/dist/esm/pda/slyvault.js +53 -0
  327. package/dist/esm/pda/slyvault.js.map +1 -0
  328. package/dist/esm/pda/srsly.js +113 -0
  329. package/dist/esm/pda/srsly.js.map +1 -0
  330. package/dist/esm/pda/thread.js +61 -0
  331. package/dist/esm/pda/thread.js.map +1 -0
  332. package/dist/esm/pda/token.js +59 -0
  333. package/dist/esm/pda/token.js.map +1 -0
  334. package/dist/esm/utils/addresses.js +85 -0
  335. package/dist/esm/utils/addresses.js.map +1 -0
  336. package/dist/esm/utils/config.js +95 -149
  337. package/dist/esm/utils/config.js.map +1 -1
  338. package/dist/esm/utils/index.js +12 -14
  339. package/dist/esm/utils/index.js.map +1 -1
  340. package/dist/esm/utils/instructions.js +76 -0
  341. package/dist/esm/utils/instructions.js.map +1 -0
  342. package/dist/esm/utils/signer.js +109 -90
  343. package/dist/esm/utils/signer.js.map +1 -1
  344. package/dist/esm/utils/web3js.js +72 -0
  345. package/dist/esm/utils/web3js.js.map +1 -0
  346. package/dist/esm/version.js +4 -0
  347. package/dist/esm/version.js.map +1 -0
  348. package/dist/types/accounts/borrower.d.ts +34 -0
  349. package/dist/types/accounts/borrower.d.ts.map +1 -0
  350. package/dist/types/accounts/config.d.ts +31 -0
  351. package/dist/types/accounts/config.d.ts.map +1 -0
  352. package/dist/types/accounts/contract.d.ts +34 -0
  353. package/dist/types/accounts/contract.d.ts.map +1 -0
  354. package/dist/types/accounts/fleet.d.ts +49 -0
  355. package/dist/types/accounts/fleet.d.ts.map +1 -0
  356. package/dist/types/accounts/rental.d.ts +34 -0
  357. package/dist/types/accounts/rental.d.ts.map +1 -0
  358. package/dist/types/demos.d.ts +20 -52
  359. package/dist/types/demos.d.ts.map +1 -1
  360. package/dist/types/generated/codama/accounts/borrowerState.d.ts +94 -0
  361. package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -0
  362. package/dist/types/generated/codama/accounts/configState.d.ts +65 -22
  363. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
  364. package/dist/types/generated/codama/accounts/contractState.d.ts +62 -23
  365. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
  366. package/dist/types/generated/codama/accounts/index.d.ts +5 -2
  367. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -1
  368. package/dist/types/generated/codama/accounts/memberState.d.ts +58 -0
  369. package/dist/types/generated/codama/accounts/memberState.d.ts.map +1 -0
  370. package/dist/types/generated/codama/accounts/rentalState.d.ts +35 -39
  371. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -1
  372. package/dist/types/generated/codama/accounts/thread.d.ts +44 -51
  373. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -1
  374. package/dist/types/generated/codama/accounts/vaultState.d.ts +66 -0
  375. package/dist/types/generated/codama/accounts/vaultState.d.ts.map +1 -0
  376. package/dist/types/generated/codama/errors/index.d.ts +2 -2
  377. package/dist/types/generated/codama/errors/srsly.d.ts +111 -19
  378. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
  379. package/dist/types/generated/codama/index.d.ts +2 -2
  380. package/dist/types/generated/codama/instructions/acceptRental.d.ts +60 -45
  381. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -1
  382. package/dist/types/generated/codama/instructions/cancelRental.d.ts +37 -32
  383. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -1
  384. package/dist/types/generated/codama/instructions/captureRental.d.ts +59 -0
  385. package/dist/types/generated/codama/instructions/captureRental.d.ts.map +1 -0
  386. package/dist/types/generated/codama/instructions/claimBorrower.d.ts +90 -0
  387. package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -0
  388. package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts +75 -0
  389. package/dist/types/generated/codama/instructions/claimBorrowerPayments.d.ts.map +1 -0
  390. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts +98 -0
  391. package/dist/types/generated/codama/instructions/claimContractPayments.d.ts.map +1 -0
  392. package/dist/types/generated/codama/instructions/closeBorrower.d.ts +43 -0
  393. package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +1 -0
  394. package/dist/types/generated/codama/instructions/closeContract.d.ts +44 -28
  395. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -1
  396. package/dist/types/generated/codama/instructions/closeRental.d.ts +38 -34
  397. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -1
  398. package/dist/types/generated/codama/instructions/createConfig.d.ts +79 -0
  399. package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -0
  400. package/dist/types/generated/codama/instructions/createContract.d.ts +38 -30
  401. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
  402. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +55 -0
  403. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +1 -0
  404. package/dist/types/generated/codama/instructions/deleteConfig.d.ts +75 -0
  405. package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -0
  406. package/dist/types/generated/codama/instructions/deleteContract.d.ts +55 -0
  407. package/dist/types/generated/codama/instructions/deleteContract.d.ts.map +1 -0
  408. package/dist/types/generated/codama/instructions/deleteRental.d.ts +55 -0
  409. package/dist/types/generated/codama/instructions/deleteRental.d.ts.map +1 -0
  410. package/dist/types/generated/codama/instructions/discountBorrower.d.ts +56 -0
  411. package/dist/types/generated/codama/instructions/discountBorrower.d.ts.map +1 -0
  412. package/dist/types/generated/codama/instructions/index.d.ts +15 -4
  413. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
  414. package/dist/types/generated/codama/instructions/payRental.d.ts +61 -46
  415. package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -1
  416. package/dist/types/generated/codama/instructions/releaseRental.d.ts +105 -0
  417. package/dist/types/generated/codama/instructions/releaseRental.d.ts.map +1 -0
  418. package/dist/types/generated/codama/instructions/reserveRental.d.ts +129 -0
  419. package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -0
  420. package/dist/types/generated/codama/instructions/updateBorrower.d.ts +62 -0
  421. package/dist/types/generated/codama/instructions/updateBorrower.d.ts.map +1 -0
  422. package/dist/types/generated/codama/instructions/updateConfig.d.ts +88 -28
  423. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
  424. package/dist/types/generated/codama/instructions/updateContract.d.ts +88 -0
  425. package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -0
  426. package/dist/types/generated/codama/programs/index.d.ts +2 -2
  427. package/dist/types/generated/codama/programs/srsly.d.ts +57 -21
  428. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
  429. package/dist/types/generated/codama/shared/index.d.ts +2 -13
  430. package/dist/types/generated/codama/shared/index.d.ts.map +1 -1
  431. package/dist/types/generated/codama/types/capturedFlagData.d.ts +35 -0
  432. package/dist/types/generated/codama/types/capturedFlagData.d.ts.map +1 -0
  433. package/dist/types/generated/codama/types/index.d.ts +7 -9
  434. package/dist/types/generated/codama/types/index.d.ts.map +1 -1
  435. package/dist/types/generated/codama/types/memberConfig.d.ts +33 -0
  436. package/dist/types/generated/codama/types/memberConfig.d.ts.map +1 -0
  437. package/dist/types/generated/codama/types/memberType.d.ts +48 -0
  438. package/dist/types/generated/codama/types/memberType.d.ts.map +1 -0
  439. package/dist/types/generated/codama/types/paymentFrequency.d.ts +2 -2
  440. package/dist/types/generated/codama/types/schedule.d.ts +46 -0
  441. package/dist/types/generated/codama/types/schedule.d.ts.map +1 -0
  442. package/dist/types/generated/codama/types/signal.d.ts +56 -0
  443. package/dist/types/generated/codama/types/signal.d.ts.map +1 -0
  444. package/dist/types/generated/codama/types/trigger.d.ts +45 -34
  445. package/dist/types/generated/codama/types/trigger.d.ts.map +1 -1
  446. package/dist/types/index.d.ts +37 -207
  447. package/dist/types/index.d.ts.map +1 -1
  448. package/dist/types/instructions/acceptRental.d.ts +99 -0
  449. package/dist/types/instructions/acceptRental.d.ts.map +1 -0
  450. package/dist/types/instructions/cancelRental.d.ts +90 -0
  451. package/dist/types/instructions/cancelRental.d.ts.map +1 -0
  452. package/dist/types/instructions/captureRental.d.ts +58 -0
  453. package/dist/types/instructions/captureRental.d.ts.map +1 -0
  454. package/dist/types/instructions/claimBorrower.d.ts +53 -0
  455. package/dist/types/instructions/claimBorrower.d.ts.map +1 -0
  456. package/dist/types/instructions/claimBorrowerPayments.d.ts +59 -0
  457. package/dist/types/instructions/claimBorrowerPayments.d.ts.map +1 -0
  458. package/dist/types/instructions/claimContractPayments.d.ts +78 -0
  459. package/dist/types/instructions/claimContractPayments.d.ts.map +1 -0
  460. package/dist/types/instructions/closeBorrower.d.ts +45 -0
  461. package/dist/types/instructions/closeBorrower.d.ts.map +1 -0
  462. package/dist/types/instructions/closeContract.d.ts +91 -0
  463. package/dist/types/instructions/closeContract.d.ts.map +1 -0
  464. package/dist/types/instructions/closeRental.d.ts +62 -0
  465. package/dist/types/instructions/closeRental.d.ts.map +1 -0
  466. package/dist/types/instructions/createConfig.d.ts +62 -0
  467. package/dist/types/instructions/createConfig.d.ts.map +1 -0
  468. package/dist/types/instructions/createContract.d.ts +127 -0
  469. package/dist/types/instructions/createContract.d.ts.map +1 -0
  470. package/dist/types/instructions/deleteBorrower.d.ts +53 -0
  471. package/dist/types/instructions/deleteBorrower.d.ts.map +1 -0
  472. package/dist/types/instructions/deleteConfig.d.ts +64 -0
  473. package/dist/types/instructions/deleteConfig.d.ts.map +1 -0
  474. package/dist/types/instructions/deleteRental.d.ts +67 -0
  475. package/dist/types/instructions/deleteRental.d.ts.map +1 -0
  476. package/dist/types/instructions/discountBorrower.d.ts +64 -0
  477. package/dist/types/instructions/discountBorrower.d.ts.map +1 -0
  478. package/dist/types/instructions/releaseRental.d.ts +104 -0
  479. package/dist/types/instructions/releaseRental.d.ts.map +1 -0
  480. package/dist/types/instructions/reserveRental.d.ts +80 -0
  481. package/dist/types/instructions/reserveRental.d.ts.map +1 -0
  482. package/dist/types/instructions/updateBorrower.d.ts +81 -0
  483. package/dist/types/instructions/updateBorrower.d.ts.map +1 -0
  484. package/dist/types/instructions/updateConfig.d.ts +142 -0
  485. package/dist/types/instructions/updateConfig.d.ts.map +1 -0
  486. package/dist/types/instructions/updateContract.d.ts +113 -0
  487. package/dist/types/instructions/updateContract.d.ts.map +1 -0
  488. package/dist/types/params/amount.d.ts +70 -0
  489. package/dist/types/params/amount.d.ts.map +1 -0
  490. package/dist/types/params/duration.d.ts +65 -0
  491. package/dist/types/params/duration.d.ts.map +1 -0
  492. package/dist/types/params/schedule.d.ts +74 -0
  493. package/dist/types/params/schedule.d.ts.map +1 -0
  494. package/dist/types/pda/constants.d.ts +51 -0
  495. package/dist/types/pda/constants.d.ts.map +1 -0
  496. package/dist/types/pda/index.d.ts +36 -0
  497. package/dist/types/pda/index.d.ts.map +1 -0
  498. package/dist/types/pda/sage.d.ts +69 -0
  499. package/dist/types/pda/sage.d.ts.map +1 -0
  500. package/dist/types/pda/slyvault.d.ts +29 -0
  501. package/dist/types/pda/slyvault.d.ts.map +1 -0
  502. package/dist/types/pda/srsly.d.ts +40 -0
  503. package/dist/types/pda/srsly.d.ts.map +1 -0
  504. package/dist/types/pda/thread.d.ts +31 -0
  505. package/dist/types/pda/thread.d.ts.map +1 -0
  506. package/dist/types/pda/token.d.ts +29 -0
  507. package/dist/types/pda/token.d.ts.map +1 -0
  508. package/dist/types/utils/addresses.d.ts +75 -0
  509. package/dist/types/utils/addresses.d.ts.map +1 -0
  510. package/dist/types/utils/config.d.ts +103 -83
  511. package/dist/types/utils/config.d.ts.map +1 -1
  512. package/dist/types/utils/index.d.ts +7 -14
  513. package/dist/types/utils/index.d.ts.map +1 -1
  514. package/dist/types/utils/instructions.d.ts +52 -0
  515. package/dist/types/utils/instructions.d.ts.map +1 -0
  516. package/dist/types/utils/signer.d.ts +78 -39
  517. package/dist/types/utils/signer.d.ts.map +1 -1
  518. package/dist/types/utils/web3js.d.ts +85 -0
  519. package/dist/types/utils/web3js.d.ts.map +1 -0
  520. package/dist/types/version.d.ts +2 -0
  521. package/dist/types/version.d.ts.map +1 -0
  522. package/package.json +32 -47
  523. package/dist/cjs/config/index.js +0 -12
  524. package/dist/cjs/config/index.js.map +0 -1
  525. package/dist/cjs/config/initialize.js +0 -95
  526. package/dist/cjs/config/initialize.js.map +0 -1
  527. package/dist/cjs/config/update.js +0 -163
  528. package/dist/cjs/config/update.js.map +0 -1
  529. package/dist/cjs/contract/close.js +0 -159
  530. package/dist/cjs/contract/close.js.map +0 -1
  531. package/dist/cjs/contract/create.js +0 -259
  532. package/dist/cjs/contract/create.js.map +0 -1
  533. package/dist/cjs/contract/index.js +0 -68
  534. package/dist/cjs/contract/index.js.map +0 -1
  535. package/dist/cjs/generated/codama/instructions/initializeConfig.js.map +0 -1
  536. package/dist/cjs/generated/codama/instructions/resetRental.js.map +0 -1
  537. package/dist/cjs/generated/codama/types/clockData.js +0 -58
  538. package/dist/cjs/generated/codama/types/clockData.js.map +0 -1
  539. package/dist/cjs/generated/codama/types/equality.js +0 -30
  540. package/dist/cjs/generated/codama/types/equality.js.map +0 -1
  541. package/dist/cjs/generated/codama/types/execContext.js +0 -68
  542. package/dist/cjs/generated/codama/types/execContext.js.map +0 -1
  543. package/dist/cjs/generated/codama/types/serializableAccount.js +0 -58
  544. package/dist/cjs/generated/codama/types/serializableAccount.js.map +0 -1
  545. package/dist/cjs/generated/codama/types/serializableInstruction.js +0 -59
  546. package/dist/cjs/generated/codama/types/serializableInstruction.js.map +0 -1
  547. package/dist/cjs/generated/codama/types/threadResponse.js +0 -68
  548. package/dist/cjs/generated/codama/types/threadResponse.js.map +0 -1
  549. package/dist/cjs/generated/codama/types/triggerContext.js +0 -49
  550. package/dist/cjs/generated/codama/types/triggerContext.js.map +0 -1
  551. package/dist/cjs/idl/index.js +0 -27
  552. package/dist/cjs/idl/index.js.map +0 -1
  553. package/dist/cjs/idl/srsly-data.js +0 -3140
  554. package/dist/cjs/idl/srsly-data.js.map +0 -1
  555. package/dist/cjs/idl/srsly.json +0 -3104
  556. package/dist/cjs/rental/accept.js +0 -263
  557. package/dist/cjs/rental/accept.js.map +0 -1
  558. package/dist/cjs/rental/cancel.js +0 -184
  559. package/dist/cjs/rental/cancel.js.map +0 -1
  560. package/dist/cjs/rental/close.js +0 -184
  561. package/dist/cjs/rental/close.js.map +0 -1
  562. package/dist/cjs/rental/index.js +0 -105
  563. package/dist/cjs/rental/index.js.map +0 -1
  564. package/dist/cjs/rental/reset.js +0 -192
  565. package/dist/cjs/rental/reset.js.map +0 -1
  566. package/dist/cjs/types/payment-frequency.js +0 -87
  567. package/dist/cjs/types/payment-frequency.js.map +0 -1
  568. package/dist/cjs/types/srsly.js +0 -3
  569. package/dist/cjs/types/srsly.js.map +0 -1
  570. package/dist/cjs/utils/constants.js +0 -78
  571. package/dist/cjs/utils/constants.js.map +0 -1
  572. package/dist/cjs/utils/cron.js +0 -204
  573. package/dist/cjs/utils/cron.js.map +0 -1
  574. package/dist/cjs/utils/derive-pda.js +0 -415
  575. package/dist/cjs/utils/derive-pda.js.map +0 -1
  576. package/dist/cjs/utils/fetch-accounts.js +0 -241
  577. package/dist/cjs/utils/fetch-accounts.js.map +0 -1
  578. package/dist/cjs/utils/instruction-converter.js +0 -125
  579. package/dist/cjs/utils/instruction-converter.js.map +0 -1
  580. package/dist/cjs/utils/param-converters.js +0 -190
  581. package/dist/cjs/utils/param-converters.js.map +0 -1
  582. package/dist/cjs/utils/payment-frequency.js +0 -111
  583. package/dist/cjs/utils/payment-frequency.js.map +0 -1
  584. package/dist/cjs/utils/schedule-builder.js +0 -158
  585. package/dist/cjs/utils/schedule-builder.js.map +0 -1
  586. package/dist/cjs/utils/schedule-validation.js +0 -136
  587. package/dist/cjs/utils/schedule-validation.js.map +0 -1
  588. package/dist/cjs/utils/smart-params.js +0 -52
  589. package/dist/cjs/utils/smart-params.js.map +0 -1
  590. package/dist/esm/config/index.js +0 -7
  591. package/dist/esm/config/index.js.map +0 -1
  592. package/dist/esm/config/initialize.js +0 -92
  593. package/dist/esm/config/initialize.js.map +0 -1
  594. package/dist/esm/config/update.js +0 -159
  595. package/dist/esm/config/update.js.map +0 -1
  596. package/dist/esm/contract/close.js +0 -154
  597. package/dist/esm/contract/close.js.map +0 -1
  598. package/dist/esm/contract/create.js +0 -255
  599. package/dist/esm/contract/create.js.map +0 -1
  600. package/dist/esm/contract/index.js +0 -52
  601. package/dist/esm/contract/index.js.map +0 -1
  602. package/dist/esm/generated/codama/instructions/initializeConfig.js.map +0 -1
  603. package/dist/esm/generated/codama/instructions/resetRental.js.map +0 -1
  604. package/dist/esm/generated/codama/types/clockData.js +0 -53
  605. package/dist/esm/generated/codama/types/clockData.js.map +0 -1
  606. package/dist/esm/generated/codama/types/equality.js +0 -24
  607. package/dist/esm/generated/codama/types/equality.js.map +0 -1
  608. package/dist/esm/generated/codama/types/execContext.js +0 -63
  609. package/dist/esm/generated/codama/types/execContext.js.map +0 -1
  610. package/dist/esm/generated/codama/types/serializableAccount.js +0 -53
  611. package/dist/esm/generated/codama/types/serializableAccount.js.map +0 -1
  612. package/dist/esm/generated/codama/types/serializableInstruction.js +0 -54
  613. package/dist/esm/generated/codama/types/serializableInstruction.js.map +0 -1
  614. package/dist/esm/generated/codama/types/threadResponse.js +0 -63
  615. package/dist/esm/generated/codama/types/threadResponse.js.map +0 -1
  616. package/dist/esm/generated/codama/types/triggerContext.js +0 -42
  617. package/dist/esm/generated/codama/types/triggerContext.js.map +0 -1
  618. package/dist/esm/idl/index.js +0 -21
  619. package/dist/esm/idl/index.js.map +0 -1
  620. package/dist/esm/idl/srsly-data.js +0 -3137
  621. package/dist/esm/idl/srsly-data.js.map +0 -1
  622. package/dist/esm/idl/srsly.json +0 -3104
  623. package/dist/esm/rental/accept.js +0 -258
  624. package/dist/esm/rental/accept.js.map +0 -1
  625. package/dist/esm/rental/cancel.js +0 -179
  626. package/dist/esm/rental/cancel.js.map +0 -1
  627. package/dist/esm/rental/close.js +0 -179
  628. package/dist/esm/rental/close.js.map +0 -1
  629. package/dist/esm/rental/index.js +0 -89
  630. package/dist/esm/rental/index.js.map +0 -1
  631. package/dist/esm/rental/reset.js +0 -187
  632. package/dist/esm/rental/reset.js.map +0 -1
  633. package/dist/esm/types/payment-frequency.js +0 -83
  634. package/dist/esm/types/payment-frequency.js.map +0 -1
  635. package/dist/esm/types/srsly.js +0 -2
  636. package/dist/esm/types/srsly.js.map +0 -1
  637. package/dist/esm/utils/constants.js +0 -70
  638. package/dist/esm/utils/constants.js.map +0 -1
  639. package/dist/esm/utils/cron.js +0 -195
  640. package/dist/esm/utils/cron.js.map +0 -1
  641. package/dist/esm/utils/derive-pda.js +0 -402
  642. package/dist/esm/utils/derive-pda.js.map +0 -1
  643. package/dist/esm/utils/fetch-accounts.js +0 -233
  644. package/dist/esm/utils/fetch-accounts.js.map +0 -1
  645. package/dist/esm/utils/instruction-converter.js +0 -120
  646. package/dist/esm/utils/instruction-converter.js.map +0 -1
  647. package/dist/esm/utils/param-converters.js +0 -182
  648. package/dist/esm/utils/param-converters.js.map +0 -1
  649. package/dist/esm/utils/payment-frequency.js +0 -104
  650. package/dist/esm/utils/payment-frequency.js.map +0 -1
  651. package/dist/esm/utils/schedule-builder.js +0 -153
  652. package/dist/esm/utils/schedule-builder.js.map +0 -1
  653. package/dist/esm/utils/schedule-validation.js +0 -132
  654. package/dist/esm/utils/schedule-validation.js.map +0 -1
  655. package/dist/esm/utils/smart-params.js +0 -49
  656. package/dist/esm/utils/smart-params.js.map +0 -1
  657. package/dist/types/config/index.d.ts +0 -7
  658. package/dist/types/config/index.d.ts.map +0 -1
  659. package/dist/types/config/initialize.d.ts +0 -66
  660. package/dist/types/config/initialize.d.ts.map +0 -1
  661. package/dist/types/config/update.d.ts +0 -143
  662. package/dist/types/config/update.d.ts.map +0 -1
  663. package/dist/types/contract/close.d.ts +0 -124
  664. package/dist/types/contract/close.d.ts.map +0 -1
  665. package/dist/types/contract/create.d.ts +0 -150
  666. package/dist/types/contract/create.d.ts.map +0 -1
  667. package/dist/types/contract/index.d.ts +0 -52
  668. package/dist/types/contract/index.d.ts.map +0 -1
  669. package/dist/types/generated/codama/instructions/initializeConfig.d.ts +0 -60
  670. package/dist/types/generated/codama/instructions/initializeConfig.d.ts.map +0 -1
  671. package/dist/types/generated/codama/instructions/resetRental.d.ts +0 -79
  672. package/dist/types/generated/codama/instructions/resetRental.d.ts.map +0 -1
  673. package/dist/types/generated/codama/types/clockData.d.ts +0 -30
  674. package/dist/types/generated/codama/types/clockData.d.ts.map +0 -1
  675. package/dist/types/generated/codama/types/equality.d.ts +0 -18
  676. package/dist/types/generated/codama/types/equality.d.ts.map +0 -1
  677. package/dist/types/generated/codama/types/execContext.d.ts +0 -49
  678. package/dist/types/generated/codama/types/execContext.d.ts.map +0 -1
  679. package/dist/types/generated/codama/types/serializableAccount.d.ts +0 -23
  680. package/dist/types/generated/codama/types/serializableAccount.d.ts.map +0 -1
  681. package/dist/types/generated/codama/types/serializableInstruction.d.ts +0 -31
  682. package/dist/types/generated/codama/types/serializableInstruction.d.ts.map +0 -1
  683. package/dist/types/generated/codama/types/threadResponse.d.ts +0 -43
  684. package/dist/types/generated/codama/types/threadResponse.d.ts.map +0 -1
  685. package/dist/types/generated/codama/types/triggerContext.d.ts +0 -75
  686. package/dist/types/generated/codama/types/triggerContext.d.ts.map +0 -1
  687. package/dist/types/idl/index.d.ts +0 -21
  688. package/dist/types/idl/index.d.ts.map +0 -1
  689. package/dist/types/idl/srsly-data.d.ts +0 -1458
  690. package/dist/types/idl/srsly-data.d.ts.map +0 -1
  691. package/dist/types/rental/accept.d.ts +0 -196
  692. package/dist/types/rental/accept.d.ts.map +0 -1
  693. package/dist/types/rental/cancel.d.ts +0 -141
  694. package/dist/types/rental/cancel.d.ts.map +0 -1
  695. package/dist/types/rental/close.d.ts +0 -130
  696. package/dist/types/rental/close.d.ts.map +0 -1
  697. package/dist/types/rental/index.d.ts +0 -89
  698. package/dist/types/rental/index.d.ts.map +0 -1
  699. package/dist/types/rental/reset.d.ts +0 -166
  700. package/dist/types/rental/reset.d.ts.map +0 -1
  701. package/dist/types/types/payment-frequency.d.ts +0 -55
  702. package/dist/types/types/payment-frequency.d.ts.map +0 -1
  703. package/dist/types/types/srsly.d.ts +0 -3111
  704. package/dist/types/types/srsly.d.ts.map +0 -1
  705. package/dist/types/utils/constants.d.ts +0 -26
  706. package/dist/types/utils/constants.d.ts.map +0 -1
  707. package/dist/types/utils/cron.d.ts +0 -77
  708. package/dist/types/utils/cron.d.ts.map +0 -1
  709. package/dist/types/utils/derive-pda.d.ts +0 -213
  710. package/dist/types/utils/derive-pda.d.ts.map +0 -1
  711. package/dist/types/utils/fetch-accounts.d.ts +0 -158
  712. package/dist/types/utils/fetch-accounts.d.ts.map +0 -1
  713. package/dist/types/utils/instruction-converter.d.ts +0 -171
  714. package/dist/types/utils/instruction-converter.d.ts.map +0 -1
  715. package/dist/types/utils/param-converters.d.ts +0 -67
  716. package/dist/types/utils/param-converters.d.ts.map +0 -1
  717. package/dist/types/utils/payment-frequency.d.ts +0 -38
  718. package/dist/types/utils/payment-frequency.d.ts.map +0 -1
  719. package/dist/types/utils/schedule-builder.d.ts +0 -64
  720. package/dist/types/utils/schedule-builder.d.ts.map +0 -1
  721. package/dist/types/utils/schedule-validation.d.ts +0 -36
  722. package/dist/types/utils/schedule-validation.d.ts.map +0 -1
  723. package/dist/types/utils/smart-params.d.ts +0 -112
  724. package/dist/types/utils/smart-params.d.ts.map +0 -1
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * Constants used for PDA derivation across SRSLY, SAGE, and Thread programs
4
+ * @module pda/constants
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.THREAD_SEED = exports.CONFIG_SEED = exports.BORROWER_STATE_SEED = exports.RENTAL_AUTHORITY_SEED = exports.RENTAL_SEED = exports.CONTRACT_SEED = exports.PROFILE_FACTION_SEED = exports.SAGE_PLAYER_PROFILE_SEED = exports.STARBASE_PLAYER_SEED = exports.STARBASE_SEED = exports.FACTION_MAPPING = exports.FACTION_COORDINATES = void 0;
8
+ exports.isValidFactionName = isValidFactionName;
9
+ exports.getFactionName = getFactionName;
10
+ exports.getFactionCoordinates = getFactionCoordinates;
11
+ /**
12
+ * Faction-specific coordinates for starbase derivation in SAGE
13
+ * These coordinates are used to derive starbase PDAs
14
+ */
15
+ exports.FACTION_COORDINATES = {
16
+ mud: { x: 0, y: -39 },
17
+ oni: { x: -40, y: 30 },
18
+ ustur: { x: 40, y: 30 },
19
+ };
20
+ /**
21
+ * Mapping of numeric faction IDs to faction names
22
+ */
23
+ exports.FACTION_MAPPING = {
24
+ 1: 'mud',
25
+ 2: 'oni',
26
+ 3: 'ustur',
27
+ };
28
+ /**
29
+ * Seed constants for SAGE program PDA derivation
30
+ */
31
+ exports.STARBASE_SEED = 'Starbase';
32
+ exports.STARBASE_PLAYER_SEED = 'starbase_player';
33
+ exports.SAGE_PLAYER_PROFILE_SEED = 'sage_player_profile';
34
+ exports.PROFILE_FACTION_SEED = 'player_faction';
35
+ /**
36
+ * Seed constants for SRSLY program PDA derivation
37
+ */
38
+ exports.CONTRACT_SEED = 'rental_contract';
39
+ exports.RENTAL_SEED = 'rental_state';
40
+ exports.RENTAL_AUTHORITY_SEED = 'rental_authority';
41
+ exports.BORROWER_STATE_SEED = 'borrower_state';
42
+ exports.CONFIG_SEED = 'config';
43
+ /**
44
+ * Seed constants for Thread program (Antegen) PDA derivation
45
+ */
46
+ exports.THREAD_SEED = 'thread';
47
+ /**
48
+ * Type guard to check if a value is a valid faction name
49
+ */
50
+ function isValidFactionName(faction) {
51
+ return faction === 'mud' || faction === 'oni' || faction === 'ustur';
52
+ }
53
+ /**
54
+ * Get faction name from numeric faction ID
55
+ */
56
+ function getFactionName(factionId) {
57
+ const name = exports.FACTION_MAPPING[factionId];
58
+ if (!name) {
59
+ throw new Error(`Invalid faction ID: ${factionId}. Expected 1 (mud), 2 (oni), or 3 (ustur)`);
60
+ }
61
+ return name;
62
+ }
63
+ /**
64
+ * Get faction coordinates by name
65
+ */
66
+ function getFactionCoordinates(faction) {
67
+ const coords = exports.FACTION_COORDINATES[faction.toLowerCase()];
68
+ if (!coords) {
69
+ throw new Error(`Invalid faction: ${faction}. Expected 'mud', 'oni', or 'ustur'`);
70
+ }
71
+ return coords;
72
+ }
73
+ //# sourceMappingURL=constants.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/pda/constants.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AA8CH,gDAEC;AAKD,wCAMC;AAKD,sDAQC;AAtED;;;GAGG;AACU,QAAA,mBAAmB,GAA6C;IAC3E,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE;IACrB,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;IACtB,KAAK,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,EAAE,EAAE,EAAE;CACxB,CAAC;AAEF;;GAEG;AACU,QAAA,eAAe,GAA2B;IACrD,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,KAAK;IACR,CAAC,EAAE,OAAO;CACX,CAAC;AAEF;;GAEG;AACU,QAAA,aAAa,GAAG,UAAU,CAAC;AAC3B,QAAA,oBAAoB,GAAG,iBAAiB,CAAC;AACzC,QAAA,wBAAwB,GAAG,qBAAqB,CAAC;AACjD,QAAA,oBAAoB,GAAG,gBAAgB,CAAC;AAErD;;GAEG;AACU,QAAA,aAAa,GAAG,iBAAiB,CAAC;AAClC,QAAA,WAAW,GAAG,cAAc,CAAC;AAC7B,QAAA,qBAAqB,GAAG,kBAAkB,CAAC;AAC3C,QAAA,mBAAmB,GAAG,gBAAgB,CAAC;AACvC,QAAA,WAAW,GAAG,QAAQ,CAAC;AAEpC;;GAEG;AACU,QAAA,WAAW,GAAG,QAAQ,CAAC;AAEpC;;GAEG;AACH,SAAgB,kBAAkB,CAAC,OAAe;IAChD,OAAO,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,KAAK,IAAI,OAAO,KAAK,OAAO,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,SAAgB,cAAc,CAAC,SAAiB;IAC9C,MAAM,IAAI,GAAG,uBAAe,CAAC,SAAS,CAAC,CAAC;IACxC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,MAAM,IAAI,KAAK,CAAC,uBAAuB,SAAS,2CAA2C,CAAC,CAAC;IAC/F,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,SAAgB,qBAAqB,CAAC,OAAe;IACnD,MAAM,MAAM,GAAG,2BAAmB,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,KAAK,CACb,oBAAoB,OAAO,qCAAqC,CACjE,CAAC;IACJ,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * PDA (Program Derived Address) derivation utilities
4
+ *
5
+ * This module provides helper functions for deriving PDAs across multiple Solana programs:
6
+ * - SRSLY: Contract, rental, borrower state, and config PDAs
7
+ * - SAGE: Player profiles, starbase, and faction PDAs
8
+ * - Antegen: Thread PDAs for automated payments
9
+ * - Token: Associated Token Account (ATA) derivation
10
+ *
11
+ * @module pda
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * import { deriveContract, deriveGameAccounts, deriveRentalThread } from '@srsly/sdk/pda';
16
+ *
17
+ * // Derive SRSLY contract
18
+ * const contract = await deriveContract(fleetAddress);
19
+ *
20
+ * // Derive all SAGE accounts at once
21
+ * const { profileFaction, starbase, starbasePlayer } = await deriveGameAccounts(
22
+ * playerProfile,
23
+ * 'mud',
24
+ * gameId
25
+ * );
26
+ *
27
+ * // Derive thread for automated payments
28
+ * const thread = await deriveRentalThread(rentalState, rentalAuthority);
29
+ * ```
30
+ */
31
+ Object.defineProperty(exports, "__esModule", { value: true });
32
+ exports.deriveSlyvaultVault = exports.deriveAssociatedTokenAccount = exports.deriveRentalThread = exports.deriveGameAccounts = exports.deriveStarbasePlayer = exports.deriveStarbase = exports.deriveSagePlayerProfile = exports.deriveProfileFaction = exports.deriveConfig = exports.deriveBorrowerState = exports.deriveRentalAuthority = exports.deriveRental = exports.deriveContract = exports.getFactionCoordinates = exports.getFactionName = exports.isValidFactionName = exports.THREAD_SEED = exports.CONFIG_SEED = exports.BORROWER_STATE_SEED = exports.RENTAL_AUTHORITY_SEED = exports.RENTAL_SEED = exports.CONTRACT_SEED = exports.PROFILE_FACTION_SEED = exports.SAGE_PLAYER_PROFILE_SEED = exports.STARBASE_PLAYER_SEED = exports.STARBASE_SEED = exports.FACTION_MAPPING = exports.FACTION_COORDINATES = void 0;
33
+ // Export constants
34
+ var constants_1 = require("./constants");
35
+ Object.defineProperty(exports, "FACTION_COORDINATES", { enumerable: true, get: function () { return constants_1.FACTION_COORDINATES; } });
36
+ Object.defineProperty(exports, "FACTION_MAPPING", { enumerable: true, get: function () { return constants_1.FACTION_MAPPING; } });
37
+ Object.defineProperty(exports, "STARBASE_SEED", { enumerable: true, get: function () { return constants_1.STARBASE_SEED; } });
38
+ Object.defineProperty(exports, "STARBASE_PLAYER_SEED", { enumerable: true, get: function () { return constants_1.STARBASE_PLAYER_SEED; } });
39
+ Object.defineProperty(exports, "SAGE_PLAYER_PROFILE_SEED", { enumerable: true, get: function () { return constants_1.SAGE_PLAYER_PROFILE_SEED; } });
40
+ Object.defineProperty(exports, "PROFILE_FACTION_SEED", { enumerable: true, get: function () { return constants_1.PROFILE_FACTION_SEED; } });
41
+ Object.defineProperty(exports, "CONTRACT_SEED", { enumerable: true, get: function () { return constants_1.CONTRACT_SEED; } });
42
+ Object.defineProperty(exports, "RENTAL_SEED", { enumerable: true, get: function () { return constants_1.RENTAL_SEED; } });
43
+ Object.defineProperty(exports, "RENTAL_AUTHORITY_SEED", { enumerable: true, get: function () { return constants_1.RENTAL_AUTHORITY_SEED; } });
44
+ Object.defineProperty(exports, "BORROWER_STATE_SEED", { enumerable: true, get: function () { return constants_1.BORROWER_STATE_SEED; } });
45
+ Object.defineProperty(exports, "CONFIG_SEED", { enumerable: true, get: function () { return constants_1.CONFIG_SEED; } });
46
+ Object.defineProperty(exports, "THREAD_SEED", { enumerable: true, get: function () { return constants_1.THREAD_SEED; } });
47
+ Object.defineProperty(exports, "isValidFactionName", { enumerable: true, get: function () { return constants_1.isValidFactionName; } });
48
+ Object.defineProperty(exports, "getFactionName", { enumerable: true, get: function () { return constants_1.getFactionName; } });
49
+ Object.defineProperty(exports, "getFactionCoordinates", { enumerable: true, get: function () { return constants_1.getFactionCoordinates; } });
50
+ // Export SRSLY program PDAs
51
+ var srsly_1 = require("./srsly");
52
+ Object.defineProperty(exports, "deriveContract", { enumerable: true, get: function () { return srsly_1.deriveContract; } });
53
+ Object.defineProperty(exports, "deriveRental", { enumerable: true, get: function () { return srsly_1.deriveRental; } });
54
+ Object.defineProperty(exports, "deriveRentalAuthority", { enumerable: true, get: function () { return srsly_1.deriveRentalAuthority; } });
55
+ Object.defineProperty(exports, "deriveBorrowerState", { enumerable: true, get: function () { return srsly_1.deriveBorrowerState; } });
56
+ Object.defineProperty(exports, "deriveConfig", { enumerable: true, get: function () { return srsly_1.deriveConfig; } });
57
+ // Export SAGE program PDAs
58
+ var sage_1 = require("./sage");
59
+ Object.defineProperty(exports, "deriveProfileFaction", { enumerable: true, get: function () { return sage_1.deriveProfileFaction; } });
60
+ Object.defineProperty(exports, "deriveSagePlayerProfile", { enumerable: true, get: function () { return sage_1.deriveSagePlayerProfile; } });
61
+ Object.defineProperty(exports, "deriveStarbase", { enumerable: true, get: function () { return sage_1.deriveStarbase; } });
62
+ Object.defineProperty(exports, "deriveStarbasePlayer", { enumerable: true, get: function () { return sage_1.deriveStarbasePlayer; } });
63
+ Object.defineProperty(exports, "deriveGameAccounts", { enumerable: true, get: function () { return sage_1.deriveGameAccounts; } });
64
+ // Export Antegen thread PDAs
65
+ var thread_1 = require("./thread");
66
+ Object.defineProperty(exports, "deriveRentalThread", { enumerable: true, get: function () { return thread_1.deriveRentalThread; } });
67
+ // Export token account utilities
68
+ var token_1 = require("./token");
69
+ Object.defineProperty(exports, "deriveAssociatedTokenAccount", { enumerable: true, get: function () { return token_1.deriveAssociatedTokenAccount; } });
70
+ // Export Slyvault PDAs
71
+ var slyvault_1 = require("./slyvault");
72
+ Object.defineProperty(exports, "deriveSlyvaultVault", { enumerable: true, get: function () { return slyvault_1.deriveSlyvaultVault; } });
73
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/pda/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;;;AAEH,mBAAmB;AACnB,yCAgBqB;AAfnB,gHAAA,mBAAmB,OAAA;AACnB,4GAAA,eAAe,OAAA;AACf,0GAAA,aAAa,OAAA;AACb,iHAAA,oBAAoB,OAAA;AACpB,qHAAA,wBAAwB,OAAA;AACxB,iHAAA,oBAAoB,OAAA;AACpB,0GAAA,aAAa,OAAA;AACb,wGAAA,WAAW,OAAA;AACX,kHAAA,qBAAqB,OAAA;AACrB,gHAAA,mBAAmB,OAAA;AACnB,wGAAA,WAAW,OAAA;AACX,wGAAA,WAAW,OAAA;AACX,+GAAA,kBAAkB,OAAA;AAClB,2GAAA,cAAc,OAAA;AACd,kHAAA,qBAAqB,OAAA;AAGvB,4BAA4B;AAC5B,iCAMiB;AALf,uGAAA,cAAc,OAAA;AACd,qGAAA,YAAY,OAAA;AACZ,8GAAA,qBAAqB,OAAA;AACrB,4GAAA,mBAAmB,OAAA;AACnB,qGAAA,YAAY,OAAA;AAGd,2BAA2B;AAC3B,+BAMgB;AALd,4GAAA,oBAAoB,OAAA;AACpB,+GAAA,uBAAuB,OAAA;AACvB,sGAAA,cAAc,OAAA;AACd,4GAAA,oBAAoB,OAAA;AACpB,0GAAA,kBAAkB,OAAA;AAGpB,6BAA6B;AAC7B,mCAA8C;AAArC,4GAAA,kBAAkB,OAAA;AAE3B,iCAAiC;AACjC,iCAAuD;AAA9C,qHAAA,4BAA4B,OAAA;AAErC,uBAAuB;AACvB,uCAAiD;AAAxC,+GAAA,mBAAmB,OAAA"}
@@ -0,0 +1,175 @@
1
+ "use strict";
2
+ /**
3
+ * PDA derivation functions for SAGE and Profile Faction programs
4
+ * @module pda/sage
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.deriveProfileFaction = deriveProfileFaction;
8
+ exports.deriveSagePlayerProfile = deriveSagePlayerProfile;
9
+ exports.deriveStarbase = deriveStarbase;
10
+ exports.deriveStarbasePlayer = deriveStarbasePlayer;
11
+ exports.deriveGameAccounts = deriveGameAccounts;
12
+ const kit_1 = require("@solana/kit");
13
+ const config_1 = require("../utils/config");
14
+ const constants_1 = require("./constants");
15
+ /**
16
+ * Address encoder for PDA seeds
17
+ */
18
+ const addressEncoder = (0, kit_1.getAddressEncoder)();
19
+ /**
20
+ * Text encoder for string seeds
21
+ */
22
+ const textEncoder = new TextEncoder();
23
+ /**
24
+ * Derive the profile faction PDA from a profile address
25
+ * @param profile - The player profile public key
26
+ * @param programAddress - Optional Profile Faction program address (defaults to network-specific address)
27
+ * @returns The derived profile faction PDA
28
+ */
29
+ async function deriveProfileFaction(profile, programAddress) {
30
+ const profileAddress = (0, kit_1.address)(typeof profile === 'string' ? profile : profile);
31
+ const program = programAddress
32
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
33
+ : (0, kit_1.address)((0, config_1.getAddresses)().profileFaction);
34
+ // Encode seeds to bytes
35
+ const profileFactionSeedBytes = textEncoder.encode(constants_1.PROFILE_FACTION_SEED);
36
+ const profileBytes = addressEncoder.encode(profileAddress);
37
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
38
+ programAddress: program,
39
+ seeds: [profileFactionSeedBytes, profileBytes],
40
+ });
41
+ return pda;
42
+ }
43
+ /**
44
+ * Derive the SAGE player profile PDA
45
+ * @param profile - The player profile public key
46
+ * @param gameId - The game ID public key
47
+ * @param programAddress - Optional SAGE program address (defaults to network-specific address)
48
+ * @returns The derived SAGE player profile PDA
49
+ */
50
+ async function deriveSagePlayerProfile(profile, gameId, programAddress) {
51
+ const profileAddress = (0, kit_1.address)(typeof profile === 'string' ? profile : profile);
52
+ const gameIdAddress = (0, kit_1.address)(typeof gameId === 'string' ? gameId : gameId);
53
+ const program = programAddress
54
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
55
+ : (0, kit_1.address)((0, config_1.getAddresses)().sage);
56
+ // Encode seeds to bytes
57
+ const sagePlayerProfileSeedBytes = textEncoder.encode(constants_1.SAGE_PLAYER_PROFILE_SEED);
58
+ const profileBytes = addressEncoder.encode(profileAddress);
59
+ const gameIdBytes = addressEncoder.encode(gameIdAddress);
60
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
61
+ programAddress: program,
62
+ seeds: [sagePlayerProfileSeedBytes, profileBytes, gameIdBytes],
63
+ });
64
+ return pda;
65
+ }
66
+ /**
67
+ * Derive the starbase PDA from faction and game ID
68
+ * @param faction - Faction name ('mud', 'oni', 'ustur') or faction ID (1, 2, 3)
69
+ * @param gameId - The game ID public key
70
+ * @param programAddress - Optional SAGE program address (defaults to network-specific address)
71
+ * @returns The derived starbase PDA
72
+ */
73
+ async function deriveStarbase(faction, gameId, programAddress) {
74
+ const factionName = typeof faction === 'number' ? (0, constants_1.getFactionName)(faction) : faction;
75
+ const coords = (0, constants_1.getFactionCoordinates)(factionName);
76
+ const gameIdAddress = (0, kit_1.address)(typeof gameId === 'string' ? gameId : gameId);
77
+ const program = programAddress
78
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
79
+ : (0, kit_1.address)((0, config_1.getAddresses)().sage);
80
+ // Encode string and address seeds to bytes
81
+ const starbaseSeedBytes = textEncoder.encode(constants_1.STARBASE_SEED);
82
+ const gameIdBytes = addressEncoder.encode(gameIdAddress);
83
+ // Convert coordinates to little-endian bytes
84
+ const xBuffer = new ArrayBuffer(8);
85
+ const xView = new DataView(xBuffer);
86
+ xView.setBigInt64(0, BigInt(coords.x), true); // true = little endian
87
+ const yBuffer = new ArrayBuffer(8);
88
+ const yView = new DataView(yBuffer);
89
+ yView.setBigInt64(0, BigInt(coords.y), true); // true = little endian
90
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
91
+ programAddress: program,
92
+ seeds: [
93
+ starbaseSeedBytes,
94
+ gameIdBytes,
95
+ new Uint8Array(xBuffer),
96
+ new Uint8Array(yBuffer),
97
+ ],
98
+ });
99
+ return pda;
100
+ }
101
+ /**
102
+ * Derive the starbase player PDA
103
+ * @param sagePlayerProfile - The SAGE player profile public key
104
+ * @param starbase - The starbase public key
105
+ * @param starbaseSeqId - Optional starbase sequence ID (defaults to 0)
106
+ * @param programAddress - Optional SAGE program address (defaults to network-specific address)
107
+ * @returns The derived starbase player PDA
108
+ */
109
+ async function deriveStarbasePlayer(sagePlayerProfile, starbase, starbaseSeqId = 0, programAddress) {
110
+ const profileAddress = (0, kit_1.address)(typeof sagePlayerProfile === 'string' ? sagePlayerProfile : sagePlayerProfile);
111
+ const starbaseAddress = (0, kit_1.address)(typeof starbase === 'string' ? starbase : starbase);
112
+ const program = programAddress
113
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
114
+ : (0, kit_1.address)((0, config_1.getAddresses)().sage);
115
+ // Encode string and address seeds to bytes
116
+ const starbasePlayerSeedBytes = textEncoder.encode(constants_1.STARBASE_PLAYER_SEED);
117
+ const profileBytes = addressEncoder.encode(profileAddress);
118
+ const starbaseBytes = addressEncoder.encode(starbaseAddress);
119
+ // Convert sequence ID to little-endian u16 bytes
120
+ const seqBuffer = new ArrayBuffer(2);
121
+ const seqView = new DataView(seqBuffer);
122
+ seqView.setUint16(0, starbaseSeqId, true); // true = little endian
123
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
124
+ programAddress: program,
125
+ seeds: [
126
+ starbasePlayerSeedBytes,
127
+ profileBytes,
128
+ starbaseBytes,
129
+ new Uint8Array(seqBuffer),
130
+ ],
131
+ });
132
+ return pda;
133
+ }
134
+ /**
135
+ * Derive all SAGE game accounts at once (convenience function)
136
+ *
137
+ * This is a helper that derives all three SAGE-related accounts needed for most operations:
138
+ * - Profile faction (from Profile Faction program)
139
+ * - SAGE player profile (from SAGE program)
140
+ * - Starbase (from SAGE program using faction coordinates)
141
+ * - Starbase player (from SAGE program)
142
+ *
143
+ * @param profile - The player profile public key
144
+ * @param faction - Faction name ('mud', 'oni', 'ustur') or faction ID (1, 2, 3)
145
+ * @param gameId - The game ID public key
146
+ * @param starbaseSeqId - Optional starbase sequence ID (defaults to 0)
147
+ * @returns Object containing all derived SAGE accounts
148
+ *
149
+ * @example
150
+ * ```typescript
151
+ * const accounts = await deriveGameAccounts(
152
+ * playerProfile,
153
+ * 'mud',
154
+ * gameId
155
+ * );
156
+ * // Returns: { profileFaction, sagePlayerProfile, starbase, starbasePlayer }
157
+ * ```
158
+ */
159
+ async function deriveGameAccounts(profile, faction, gameId, starbaseSeqId = 0) {
160
+ // Derive all accounts
161
+ const [profileFaction, sagePlayerProfile, starbase] = await Promise.all([
162
+ deriveProfileFaction(profile),
163
+ deriveSagePlayerProfile(profile, gameId),
164
+ deriveStarbase(faction, gameId),
165
+ ]);
166
+ // Derive starbase player (depends on sagePlayerProfile and starbase)
167
+ const starbasePlayer = await deriveStarbasePlayer(sagePlayerProfile, starbase, starbaseSeqId);
168
+ return {
169
+ profileFaction,
170
+ sagePlayerProfile,
171
+ starbase,
172
+ starbasePlayer,
173
+ };
174
+ }
175
+ //# sourceMappingURL=sage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sage.js","sourceRoot":"","sources":["../../../src/pda/sage.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ /**
3
+ * Slyvault PDA derivation utilities
4
+ * @module pda/slyvault
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.deriveSlyvaultVault = deriveSlyvaultVault;
8
+ const kit_1 = require("@solana/kit");
9
+ const token_1 = require("./token");
10
+ /**
11
+ * Slyvault program address
12
+ */
13
+ const SLYVAULT_PROGRAM = 'VLTm3X1xUXhMYjjEgvwhb6p1ekBvrnYTdVcbHR9Vask';
14
+ /**
15
+ * Slyvault vault seed constant
16
+ */
17
+ const VAULT_SEED = 'vault';
18
+ const addressEncoder = (0, kit_1.getAddressEncoder)();
19
+ const textEncoder = new TextEncoder();
20
+ /**
21
+ * Derive slyvault vault PDA and its associated token account
22
+ * Vault is created with a specific creator (typically the SRSLY program)
23
+ *
24
+ * @param creator - The creator address (typically SRSLY program)
25
+ * @param mint - The token mint address
26
+ * @param slyvaultProgramAddress - Optional slyvault program address (defaults to mainnet)
27
+ * @returns Object containing vault PDA and its token account
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * import { deriveSlyvaultVault } from './slyvault';
32
+ *
33
+ * const { vault, vaultTokenAccount } = await deriveSlyvaultVault(
34
+ * srslyProgramAddress,
35
+ * atlasMintAddress
36
+ * );
37
+ * ```
38
+ */
39
+ async function deriveSlyvaultVault(creator, mint, slyvaultProgramAddress) {
40
+ const creatorAddress = (0, kit_1.address)(creator);
41
+ const mintAddress = (0, kit_1.address)(mint);
42
+ const slyvaultProgram = slyvaultProgramAddress ? (0, kit_1.address)(slyvaultProgramAddress) : (0, kit_1.address)(SLYVAULT_PROGRAM);
43
+ // Encode all seeds to bytes (Uint8Array)
44
+ const vaultSeedBytes = textEncoder.encode(VAULT_SEED);
45
+ const creatorBytes = addressEncoder.encode(creatorAddress);
46
+ const mintBytes = addressEncoder.encode(mintAddress);
47
+ // Derive vault PDA: ["vault", creator, mint]
48
+ const [vault] = await (0, kit_1.getProgramDerivedAddress)({
49
+ programAddress: slyvaultProgram,
50
+ seeds: [vaultSeedBytes, creatorBytes, mintBytes],
51
+ });
52
+ // Derive vault's associated token account
53
+ const vaultTokenAccount = await (0, token_1.deriveAssociatedTokenAccount)(vault, mintAddress);
54
+ return { vault, vaultTokenAccount };
55
+ }
56
+ //# sourceMappingURL=slyvault.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slyvault.js","sourceRoot":"","sources":["../../../src/pda/slyvault.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AAqCH,kDAwBC;AA3DD,qCAA4F;AAC5F,mCAAuD;AAEvD;;GAEG;AACH,MAAM,gBAAgB,GAAG,6CAA6C,CAAC;AAEvE;;GAEG;AACH,MAAM,UAAU,GAAG,OAAO,CAAC;AAE3B,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAC3C,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;;;;;;;;GAkBG;AACI,KAAK,UAAU,mBAAmB,CACvC,OAAyB,EACzB,IAAsB,EACtB,sBAAyC;IAEzC,MAAM,cAAc,GAAG,IAAA,aAAO,EAAC,OAAO,CAAC,CAAC;IACxC,MAAM,WAAW,GAAG,IAAA,aAAO,EAAC,IAAI,CAAC,CAAC;IAClC,MAAM,eAAe,GAAG,sBAAsB,CAAC,CAAC,CAAC,IAAA,aAAO,EAAC,sBAAsB,CAAC,CAAC,CAAC,CAAC,IAAA,aAAO,EAAC,gBAAgB,CAAC,CAAC;IAE7G,yCAAyC;IACzC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IACtD,MAAM,YAAY,GAAG,cAAc,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC3D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAErD,6CAA6C;IAC7C,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC7C,cAAc,EAAE,eAAe;QAC/B,KAAK,EAAE,CAAC,cAAc,EAAE,YAAY,EAAE,SAAS,CAAC;KACjD,CAAC,CAAC;IAEH,0CAA0C;IAC1C,MAAM,iBAAiB,GAAG,MAAM,IAAA,oCAA4B,EAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAEjF,OAAO,EAAE,KAAK,EAAE,iBAAiB,EAAE,CAAC;AACtC,CAAC"}
@@ -0,0 +1,120 @@
1
+ "use strict";
2
+ /**
3
+ * PDA derivation functions for the SRSLY program
4
+ * @module pda/srsly
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.deriveContract = deriveContract;
8
+ exports.deriveRental = deriveRental;
9
+ exports.deriveRentalAuthority = deriveRentalAuthority;
10
+ exports.deriveBorrowerState = deriveBorrowerState;
11
+ exports.deriveConfig = deriveConfig;
12
+ const kit_1 = require("@solana/kit");
13
+ const config_1 = require("../utils/config");
14
+ const constants_1 = require("./constants");
15
+ /**
16
+ * Address encoder for PDA seeds
17
+ */
18
+ const addressEncoder = (0, kit_1.getAddressEncoder)();
19
+ /**
20
+ * Text encoder for string seeds
21
+ */
22
+ const textEncoder = new TextEncoder();
23
+ /**
24
+ * Derive the contract PDA from a fleet address
25
+ * @param fleet - The fleet public key
26
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
27
+ * @returns The derived contract PDA
28
+ */
29
+ async function deriveContract(fleet, programAddress) {
30
+ const fleetAddress = (0, kit_1.address)(typeof fleet === 'string' ? fleet : fleet);
31
+ const program = programAddress
32
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
33
+ : (0, kit_1.address)((0, config_1.getAddresses)().srsly);
34
+ // Encode seeds to bytes
35
+ const contractSeedBytes = textEncoder.encode(constants_1.CONTRACT_SEED);
36
+ const fleetBytes = addressEncoder.encode(fleetAddress);
37
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
38
+ programAddress: program,
39
+ seeds: [contractSeedBytes, fleetBytes],
40
+ });
41
+ return pda;
42
+ }
43
+ /**
44
+ * Derive the rental PDA from contract and borrower addresses
45
+ * @param contract - The contract public key
46
+ * @param borrower - The borrower public key
47
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
48
+ * @returns The derived rental PDA
49
+ */
50
+ async function deriveRental(contract, borrower, programAddress) {
51
+ const contractAddress = (0, kit_1.address)(typeof contract === 'string' ? contract : contract);
52
+ const borrowerAddress = (0, kit_1.address)(typeof borrower === 'string' ? borrower : borrower);
53
+ const program = programAddress
54
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
55
+ : (0, kit_1.address)((0, config_1.getAddresses)().srsly);
56
+ // Encode seeds to bytes
57
+ const rentalSeedBytes = textEncoder.encode(constants_1.RENTAL_SEED);
58
+ const contractBytes = addressEncoder.encode(contractAddress);
59
+ const borrowerBytes = addressEncoder.encode(borrowerAddress);
60
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
61
+ programAddress: program,
62
+ seeds: [rentalSeedBytes, contractBytes, borrowerBytes],
63
+ });
64
+ return pda;
65
+ }
66
+ /**
67
+ * Derive the rental authority PDA
68
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
69
+ * @returns The derived rental authority PDA
70
+ */
71
+ async function deriveRentalAuthority(programAddress) {
72
+ const program = programAddress
73
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
74
+ : (0, kit_1.address)((0, config_1.getAddresses)().srsly);
75
+ // Encode seeds to bytes
76
+ const rentalAuthoritySeedBytes = textEncoder.encode(constants_1.RENTAL_AUTHORITY_SEED);
77
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
78
+ programAddress: program,
79
+ seeds: [rentalAuthoritySeedBytes],
80
+ });
81
+ return pda;
82
+ }
83
+ /**
84
+ * Derive the borrower state PDA from a borrower address
85
+ * @param borrower - The borrower public key
86
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
87
+ * @returns The derived borrower state PDA
88
+ */
89
+ async function deriveBorrowerState(borrower, programAddress) {
90
+ const borrowerAddress = (0, kit_1.address)(typeof borrower === 'string' ? borrower : borrower);
91
+ const program = programAddress
92
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
93
+ : (0, kit_1.address)((0, config_1.getAddresses)().srsly);
94
+ // Encode seeds to bytes
95
+ const borrowerStateSeedBytes = textEncoder.encode(constants_1.BORROWER_STATE_SEED);
96
+ const borrowerBytes = addressEncoder.encode(borrowerAddress);
97
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
98
+ programAddress: program,
99
+ seeds: [borrowerStateSeedBytes, borrowerBytes],
100
+ });
101
+ return pda;
102
+ }
103
+ /**
104
+ * Derive the config PDA
105
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
106
+ * @returns The derived config PDA
107
+ */
108
+ async function deriveConfig(programAddress) {
109
+ const program = programAddress
110
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
111
+ : (0, kit_1.address)((0, config_1.getAddresses)().srsly);
112
+ // Encode seeds to bytes
113
+ const configSeedBytes = textEncoder.encode(constants_1.CONFIG_SEED);
114
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
115
+ programAddress: program,
116
+ seeds: [configSeedBytes],
117
+ });
118
+ return pda;
119
+ }
120
+ //# sourceMappingURL=srsly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,64 @@
1
+ "use strict";
2
+ /**
3
+ * PDA derivation functions for the Antegen (Thread) program
4
+ * @module pda/thread
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.deriveRentalThread = deriveRentalThread;
8
+ const kit_1 = require("@solana/kit");
9
+ const constants_1 = require("./constants");
10
+ /**
11
+ * Default Antegen program address (same across all networks)
12
+ */
13
+ const DEFAULT_ANTEGEN_PROGRAM = 'AgV3xRAdyTe1wW4gTW2oAnzHiAGofsxC7jBVGGkzUQbY';
14
+ /**
15
+ * Address encoder for PDA seeds
16
+ */
17
+ const addressEncoder = (0, kit_1.getAddressEncoder)();
18
+ /**
19
+ * Text encoder for string seeds
20
+ */
21
+ const textEncoder = new TextEncoder();
22
+ /**
23
+ * Derive the rental thread PDA
24
+ *
25
+ * The rental thread is used by the Antegen program for automated payment scheduling.
26
+ * Thread PDAs ALWAYS use seeds: [SEED_THREAD, authority, id]
27
+ *
28
+ * @param rental - The rental state PDA (used as the thread ID)
29
+ * @param authority - The rental authority PDA (REQUIRED - always part of seeds)
30
+ * @param programAddress - Optional Antegen program address (defaults to Antegen program)
31
+ * @returns The derived rental thread PDA
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * import { deriveRental, deriveRentalAuthority } from './srsly';
36
+ * import { deriveRentalThread } from './thread';
37
+ *
38
+ * // Derive rental and authority first
39
+ * const rental = await deriveRental(contract, borrower);
40
+ * const authority = await deriveRentalAuthority();
41
+ *
42
+ * // Then derive the thread (authority is required!)
43
+ * const thread = await deriveRentalThread(rental, authority);
44
+ * ```
45
+ */
46
+ async function deriveRentalThread(rental, authority, programAddress) {
47
+ const rentalAddress = (0, kit_1.address)(typeof rental === 'string' ? rental : rental);
48
+ const authorityAddr = (0, kit_1.address)(typeof authority === 'string' ? authority : authority);
49
+ const program = programAddress
50
+ ? (0, kit_1.address)(typeof programAddress === 'string' ? programAddress : programAddress)
51
+ : (0, kit_1.address)(DEFAULT_ANTEGEN_PROGRAM);
52
+ // Encode seeds to bytes
53
+ // Antegen ALWAYS uses: [SEED_THREAD, authority, id]
54
+ const threadSeedBytes = textEncoder.encode(constants_1.THREAD_SEED);
55
+ const authorityBytes = addressEncoder.encode(authorityAddr);
56
+ const rentalBytes = addressEncoder.encode(rentalAddress);
57
+ const seeds = [threadSeedBytes, authorityBytes, rentalBytes];
58
+ const [pda] = await (0, kit_1.getProgramDerivedAddress)({
59
+ programAddress: program,
60
+ seeds,
61
+ });
62
+ return pda;
63
+ }
64
+ //# sourceMappingURL=thread.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":";AAAA;;;GAGG;;AA4CH,gDAyBC;AAnED,qCAA4F;AAC5F,2CAA0C;AAE1C;;GAEG;AACH,MAAM,uBAAuB,GAAG,8CAA8C,CAAC;AAE/E;;GAEG;AACH,MAAM,cAAc,GAAG,IAAA,uBAAiB,GAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACI,KAAK,UAAU,kBAAkB,CACtC,MAAwB,EACxB,SAA2B,EAC3B,cAAiC;IAEjC,MAAM,aAAa,GAAG,IAAA,aAAO,EAAC,OAAO,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC5E,MAAM,aAAa,GAAG,IAAA,aAAO,EAAC,OAAO,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;IACrF,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,IAAA,aAAO,EAAC,OAAO,cAAc,KAAK,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,cAAc,CAAC;QAC/E,CAAC,CAAC,IAAA,aAAO,EAAC,uBAAkC,CAAC,CAAC;IAEhD,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,uBAAW,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAEzD,MAAM,KAAK,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,WAAW,CAAC,CAAC;IAE7D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,IAAA,8BAAwB,EAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}