@wuwei-labs/srsly 2.3.3-canary.36.16828734028.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,97 @@
1
+ /**
2
+ * @purpose Simplified cancelRental instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated cancelRental instruction.
5
+ * Cancels an active rental with an optional delay.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getCancelRentalInstructionAsync } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner } from '../utils/signer';
11
+ import { deriveRental, deriveRentalAuthority } from '../pda/srsly';
12
+ import { deriveRentalThread } from '../pda/thread';
13
+ import { prepareInstructions } from '../utils/instructions';
14
+ import { convertDuration } from '../params/duration';
15
+ /**
16
+ * Cancel a rental
17
+ *
18
+ * Allows a borrower to cancel an active rental.
19
+ *
20
+ * **Cancellation Behavior:**
21
+ * - `cancelDelay = 0`: Instant cancellation (requires `allowInstantCancel` on contract)
22
+ * - Sets `Trigger::Immediate` so `rental_pay` fires immediately
23
+ * - Returns `InstantCancelNotAllowed` error if contract doesn't allow it
24
+ * - `cancelDelay > 0`: Deferred cancellation
25
+ * - Rental continues until `now + cancelDelay`
26
+ * - Existing Cron trigger handles cleanup when `end_time` is reached
27
+ *
28
+ * Both paths refund the borrower for unused time. Owner gets paid when `rental_pay` fires.
29
+ *
30
+ * @param params - Cancellation parameters (borrower, contract, cancelDelay)
31
+ * @param config - Optional SDK configuration overrides
32
+ * @returns Kit instruction (or web3.js if PublicKey in config)
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * // Deferred cancellation (cancel after 1 hour - default)
37
+ * const ix = await cancelRental({
38
+ * borrower: borrowerWallet,
39
+ * contract: contractAddress
40
+ * });
41
+ *
42
+ * // Instant cancellation (requires allowInstantCancel on contract)
43
+ * const ix2 = await cancelRental({
44
+ * borrower: borrowerWallet,
45
+ * contract: contractAddress,
46
+ * cancelDelay: 0
47
+ * });
48
+ *
49
+ * // Cancel after 12 hours
50
+ * const ix3 = await cancelRental({
51
+ * borrower: borrowerWallet,
52
+ * contract: contractAddress,
53
+ * cancelDelay: { hours: 12 }
54
+ * });
55
+ * ```
56
+ */
57
+ export async function cancelRental(params, config) {
58
+ // Merge config
59
+ const finalConfig = mergeConfig(config);
60
+ // Validate required params
61
+ if (!params.borrower) {
62
+ throw new Error('borrower is required');
63
+ }
64
+ if (!params.contract) {
65
+ throw new Error('contract is required');
66
+ }
67
+ // Convert borrower to transaction signer
68
+ const borrowerSigner = toTransactionSigner(params.borrower);
69
+ // Get network-specific addresses
70
+ const addresses = getAddresses(config);
71
+ const atlasMint = address(addresses.atlasMint);
72
+ const programAddress = address(addresses.srsly);
73
+ // Derive rental thread (only PDA not auto-derived by Codama)
74
+ const rentalState = await deriveRental(params.contract, borrowerSigner.address);
75
+ const rentalAuthority = await deriveRentalAuthority();
76
+ const rentalThread = await deriveRentalThread(rentalState, rentalAuthority);
77
+ // Convert duration to seconds (supports { hours: 1 }, { days: 1 }, etc.)
78
+ // Default to 1 hour if not specified (safer than instant cancel which requires flag)
79
+ const cancelDelay = params.cancelDelay !== undefined
80
+ ? BigInt(convertDuration(params.cancelDelay))
81
+ : BigInt(convertDuration({ hours: 1 }));
82
+ // Call Codama-generated instruction
83
+ // Note: Codama auto-derives config, borrowerState, borrowerTokenAccount,
84
+ // rentalState, rentalTokenAccount, rentalAuthority, antegenProgram, tokenProgram
85
+ const kitInstruction = await getCancelRentalInstructionAsync({
86
+ mint: atlasMint,
87
+ borrower: borrowerSigner,
88
+ rentalThread,
89
+ contract: address(params.contract),
90
+ cancelDelay,
91
+ }, { programAddress });
92
+ return prepareInstructions(kitInstruction, {
93
+ computeUnits: params.computeUnits,
94
+ PublicKey: finalConfig.PublicKey
95
+ });
96
+ }
97
+ //# sourceMappingURL=cancelRental.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cancelRental.js","sourceRoot":"","sources":["../../../src/instructions/cancelRental.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,+BAA+B,EAAE,MAAM,kCAAkC,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,YAAY,EAAE,qBAAqB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACnD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,eAAe,EAAsB,MAAM,oBAAoB,CAAC;AAyCzE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,MAA0B,EAC1B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,6DAA6D;IAC7D,MAAM,WAAW,GAAG,MAAM,YAAY,CAAC,MAAM,CAAC,QAAQ,EAAE,cAAc,CAAC,OAAO,CAAC,CAAC;IAChF,MAAM,eAAe,GAAG,MAAM,qBAAqB,EAAE,CAAC;IACtD,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;IAE5E,yEAAyE;IACzE,qFAAqF;IACrF,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW,KAAK,SAAS;QAClD,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC7C,CAAC,CAAC,MAAM,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IAE1C,oCAAoC;IACpC,yEAAyE;IACzE,iFAAiF;IACjF,MAAM,cAAc,GAAG,MAAM,+BAA+B,CAC1D;QACE,IAAI,EAAE,SAAS;QACf,QAAQ,EAAE,cAAc;QACxB,YAAY;QACZ,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC;QAC7C,WAAW;KACZ,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,82 @@
1
+ /**
2
+ * @purpose Simplified captureRental instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated captureRental instruction.
5
+ * Allows anyone to capture a rental with missed payments.
6
+ * Automatically fetches defender state from on-chain data.
7
+ */
8
+ import { address } from '@solana/kit';
9
+ import { getCaptureRentalInstructionAsync } from '../generated/codama/instructions';
10
+ import { mergeConfig, getAddresses } from '../utils/config';
11
+ import { toTransactionSigner } from '../utils/signer';
12
+ import { deriveConfig } from '../pda/srsly';
13
+ import { fetchContract } from '../accounts/contract';
14
+ import { fetchRental } from '../accounts/rental';
15
+ import { prepareInstructions } from '../utils/instructions';
16
+ /**
17
+ * Capture a rental with missed payments
18
+ *
19
+ * Allows anyone to enforce payment on a rental where the borrower has
20
+ * missed scheduled payments. The challenger receives a reward for
21
+ * capturing the rental.
22
+ *
23
+ * The defender's borrower state is automatically fetched from on-chain data:
24
+ * 1. Fetches contract to get currentRentalState
25
+ * 2. Validates an active rental exists
26
+ * 3. Fetches rental state to get borrowerState (defender)
27
+ *
28
+ * @param params - Capture parameters (challenger, contract)
29
+ * @param config - Optional SDK configuration overrides
30
+ * @returns Kit instruction (or web3.js if PublicKey in config)
31
+ * @throws Error if no active rental exists or fetch fails
32
+ *
33
+ * @example
34
+ * ```typescript
35
+ * const ix = await captureRental({
36
+ * challenger: ownerWallet,
37
+ * contract: contractAddress
38
+ * });
39
+ * ```
40
+ */
41
+ export async function captureRental(params, config) {
42
+ // Merge config
43
+ const finalConfig = mergeConfig(config);
44
+ // Validate required params
45
+ if (!params.challenger) {
46
+ throw new Error('challenger is required');
47
+ }
48
+ if (!params.contract) {
49
+ throw new Error('contract is required');
50
+ }
51
+ // Fetch contract to get currentRentalState
52
+ const contractAccount = await fetchContract(params.contract, finalConfig.rpcUrl);
53
+ const currentRentalState = contractAccount.data.currentRentalState;
54
+ // Check if there's an active rental (system program = no rental)
55
+ const SYSTEM_PROGRAM = '11111111111111111111111111111111';
56
+ if (currentRentalState === SYSTEM_PROGRAM) {
57
+ throw new Error(`No active rental exists for contract ${params.contract}. Cannot capture a rental that doesn't exist.`);
58
+ }
59
+ // Fetch rental state to get borrowerState (defender)
60
+ const rentalAccount = await fetchRental(currentRentalState, finalConfig.rpcUrl);
61
+ const defenderState = rentalAccount.data.borrowerState;
62
+ // Convert challenger to transaction signer
63
+ const challengerSigner = toTransactionSigner(params.challenger);
64
+ // Derive config PDA
65
+ const configPda = await deriveConfig();
66
+ // Get network-specific addresses
67
+ const addresses = getAddresses(config);
68
+ const programAddress = address(addresses.srsly);
69
+ // Call Codama-generated instruction
70
+ // Note: Codama will auto-derive challengerState from challenger address
71
+ const kitInstruction = await getCaptureRentalInstructionAsync({
72
+ challenger: challengerSigner,
73
+ contract: address(params.contract),
74
+ defenderState,
75
+ config: configPda,
76
+ }, { programAddress });
77
+ return prepareInstructions(kitInstruction, {
78
+ computeUnits: params.computeUnits,
79
+ PublicKey: finalConfig.PublicKey
80
+ });
81
+ }
82
+ //# sourceMappingURL=captureRental.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"captureRental.js","sourceRoot":"","sources":["../../../src/instructions/captureRental.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAyB5D;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,wBAAwB,CAAC,CAAC;IAC5C,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,2CAA2C;IAC3C,MAAM,eAAe,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACjF,MAAM,kBAAkB,GAAG,eAAe,CAAC,IAAI,CAAC,kBAAkB,CAAC;IAEnE,iEAAiE;IACjE,MAAM,cAAc,GAAG,kCAA6C,CAAC;IACrE,IAAI,kBAAkB,KAAK,cAAc,EAAE,CAAC;QAC1C,MAAM,IAAI,KAAK,CACb,wCAAwC,MAAM,CAAC,QAAQ,+CAA+C,CACvG,CAAC;IACJ,CAAC;IAED,qDAAqD;IACrD,MAAM,aAAa,GAAG,MAAM,WAAW,CAAC,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IAChF,MAAM,aAAa,GAAG,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC;IAEvD,2CAA2C;IAC3C,MAAM,gBAAgB,GAAG,mBAAmB,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAEhE,oBAAoB;IACpB,MAAM,SAAS,GAAG,MAAM,YAAY,EAAE,CAAC;IAEvC,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,oCAAoC;IACpC,wEAAwE;IACxE,MAAM,cAAc,GAAG,MAAM,gCAAgC,CAC3D;QACE,UAAU,EAAE,gBAAgB;QAC5B,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC;QAC7C,aAAa;QACb,MAAM,EAAE,SAAS;KAClB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * @purpose Simplified claimBorrower instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated claimBorrower instruction.
5
+ * Allows borrowers to claim accumulated ATLAS from their managed token account.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getClaimBorrowerInstructionAsync } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner } from '../utils/signer';
11
+ import { prepareInstructions } from '../utils/instructions';
12
+ /**
13
+ * Claim borrower ATLAS refunds
14
+ *
15
+ * When a borrower is knocked off a reservation, they receive their original
16
+ * bid plus a bonus in ATLAS. These funds accumulate in their managed token
17
+ * account (an ATA with the borrower_state as authority). This instruction
18
+ * transfers those funds to the borrower's personal wallet.
19
+ *
20
+ * @param params - Borrower claim parameters
21
+ * @param config - Optional SDK configuration overrides
22
+ * @returns Kit instruction (or web3.js if PublicKey in config)
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * // Claim accumulated ATLAS refunds
27
+ * const ix = await claimBorrower({
28
+ * borrower: borrowerWallet
29
+ * });
30
+ *
31
+ * // With web3.js
32
+ * import { PublicKey } from '@solana/web3.js';
33
+ * setSdkConfig({ network: 'mainnet-beta', PublicKey });
34
+ * const web3Ix = await claimBorrower({
35
+ * borrower: keypair
36
+ * });
37
+ * ```
38
+ */
39
+ export async function claimBorrower(params, config) {
40
+ // Merge config
41
+ const finalConfig = mergeConfig(config);
42
+ // Validate required params
43
+ if (!params.borrower) {
44
+ throw new Error('borrower is required');
45
+ }
46
+ // Convert borrower to transaction signer
47
+ const borrowerSigner = toTransactionSigner(params.borrower);
48
+ // Get network-specific addresses
49
+ const addresses = getAddresses(config);
50
+ const atlasMint = address(addresses.atlasMint);
51
+ const programAddress = address(addresses.srsly);
52
+ // Call Codama-generated instruction
53
+ // Most accounts are auto-derived (config, borrowerState, managed account, destination)
54
+ const kitInstruction = await getClaimBorrowerInstructionAsync({
55
+ borrower: borrowerSigner,
56
+ mint: atlasMint,
57
+ }, { programAddress });
58
+ return prepareInstructions(kitInstruction, {
59
+ computeUnits: params.computeUnits,
60
+ PublicKey: finalConfig.PublicKey
61
+ });
62
+ }
63
+ //# sourceMappingURL=claimBorrower.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claimBorrower.js","sourceRoot":"","sources":["../../../src/instructions/claimBorrower.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAmB5D;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAE5D,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,oCAAoC;IACpC,uFAAuF;IACvF,MAAM,cAAc,GAAG,MAAM,gCAAgC,CAC3D;QACE,QAAQ,EAAE,cAAc;QACxB,IAAI,EAAE,SAAS;KAChB,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * @purpose Simplified claimContractPayments instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated claimContractPayments instruction.
5
+ * Allows contract owners to claim accumulated rental payments.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getClaimContractPaymentsInstructionAsync } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner } from '../utils/signer';
11
+ import { prepareInstructions } from '../utils/instructions';
12
+ /**
13
+ * Claim contract payments
14
+ *
15
+ * Allows the contract owner to claim accumulated rental payments from
16
+ * the contract's token account to their destination account.
17
+ * Can be automated via Antegen by creating a thread with authority as the contract owner.
18
+ *
19
+ * @param params - Payment claim parameters
20
+ * @param config - Optional SDK configuration overrides
21
+ * @returns Kit instruction (or web3.js if PublicKey in config)
22
+ *
23
+ * @example
24
+ * ```typescript
25
+ * // Manual claim (owner signs as payer)
26
+ * const ix = await claimContractPayments({
27
+ * payer: ownerWallet,
28
+ * owner: ownerWallet.address,
29
+ * contract: contractAddress
30
+ * });
31
+ *
32
+ * // Automated claim via Antegen thread
33
+ * const ix2 = await claimContractPayments({
34
+ * payer: threadSigner,
35
+ * owner: ownerAddress,
36
+ * contract: contractAddress,
37
+ * claimThread: threadAddress
38
+ * });
39
+ * ```
40
+ */
41
+ export async function claimContractPayments(params, config) {
42
+ // Merge config
43
+ const finalConfig = mergeConfig(config);
44
+ // Validate required params
45
+ if (!params.payer) {
46
+ throw new Error('payer is required');
47
+ }
48
+ if (!params.owner) {
49
+ throw new Error('owner is required');
50
+ }
51
+ if (!params.contract) {
52
+ throw new Error('contract is required');
53
+ }
54
+ // Convert payer to transaction signer
55
+ const payerSigner = toTransactionSigner(params.payer);
56
+ // Get network-specific addresses
57
+ const addresses = getAddresses(config);
58
+ const atlasMint = address(addresses.atlasMint);
59
+ const programAddress = address(addresses.srsly);
60
+ // Call Codama-generated instruction
61
+ const kitInstruction = await getClaimContractPaymentsInstructionAsync({
62
+ payer: payerSigner,
63
+ mint: atlasMint,
64
+ owner: address(params.owner),
65
+ contract: address(params.contract),
66
+ destinationTokenAccount: params.destinationTokenAccount
67
+ ? address(params.destinationTokenAccount)
68
+ : undefined,
69
+ claimThread: params.claimThread ? address(params.claimThread) : undefined,
70
+ }, { programAddress });
71
+ return prepareInstructions(kitInstruction, {
72
+ computeUnits: params.computeUnits,
73
+ PublicKey: finalConfig.PublicKey
74
+ });
75
+ }
76
+ //# sourceMappingURL=claimContractPayments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claimContractPayments.js","sourceRoot":"","sources":["../../../src/instructions/claimContractPayments.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,wCAAwC,EAAE,MAAM,kCAAkC,CAAC;AAC5F,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA6C5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,MAAmC,EACnC,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtD,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,oCAAoC;IACpC,MAAM,cAAc,GAAG,MAAM,wCAAwC,CACnE;QACE,KAAK,EAAE,WAAW;QAClB,IAAI,EAAE,SAAS;QACf,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC;QACvC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC;QAC7C,uBAAuB,EAAE,MAAM,CAAC,uBAAuB;YACrD,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,uBAAkC,CAAC;YACpD,CAAC,CAAC,SAAS;QACb,WAAW,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAsB,CAAC,CAAC,CAAC,CAAC,SAAS;KACrF,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,57 @@
1
+ /**
2
+ * @purpose Simplified closeBorrower instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated closeBorrower instruction.
5
+ * Closes the borrower account and reclaims rent.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getCloseBorrowerInstruction } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner, getSignerAddress } from '../utils/signer';
11
+ import { prepareInstructions } from '../utils/instructions';
12
+ import { deriveBorrowerState } from '../pda/srsly';
13
+ /**
14
+ * Close borrower account
15
+ *
16
+ * Closes the borrower account and reclaims rent.
17
+ *
18
+ * This function automatically derives the borrower state PDA.
19
+ *
20
+ * @param params - Close borrower parameters
21
+ * @param config - Optional SDK configuration overrides
22
+ * @returns Kit instruction (or web3.js if PublicKey in config)
23
+ *
24
+ * @example
25
+ * ```typescript
26
+ * // Close borrower account
27
+ * const ix = await closeBorrower({
28
+ * borrower: borrowerWallet
29
+ * });
30
+ * ```
31
+ */
32
+ export async function closeBorrower(params, config) {
33
+ // Merge config
34
+ const finalConfig = mergeConfig(config);
35
+ // Validate required params
36
+ if (!params.borrower) {
37
+ throw new Error('borrower is required');
38
+ }
39
+ // Convert borrower to transaction signer
40
+ const borrowerSigner = toTransactionSigner(params.borrower);
41
+ const borrowerAddress = getSignerAddress(borrowerSigner);
42
+ // Get network-specific addresses
43
+ const addresses = getAddresses(config);
44
+ const programAddress = address(addresses.srsly);
45
+ // Derive borrower state PDA
46
+ const borrowerState = await deriveBorrowerState(borrowerAddress);
47
+ // Call Codama-generated instruction (sync version - no async derivation)
48
+ const kitInstruction = getCloseBorrowerInstruction({
49
+ borrower: borrowerSigner,
50
+ borrowerState,
51
+ }, { programAddress });
52
+ return prepareInstructions(kitInstruction, {
53
+ computeUnits: params.computeUnits,
54
+ PublicKey: finalConfig.PublicKey
55
+ });
56
+ }
57
+ //# sourceMappingURL=closeBorrower.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closeBorrower.js","sourceRoot":"","sources":["../../../src/instructions/closeBorrower.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AAE9F,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAmBnD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrB,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAC;IAC1C,CAAC;IAED,yCAAyC;IACzC,MAAM,cAAc,GAAG,mBAAmB,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IAC5D,MAAM,eAAe,GAAG,gBAAgB,CAAC,cAAc,CAAC,CAAC;IAEzD,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,4BAA4B;IAC5B,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAAC,eAAe,CAAC,CAAC;IAEjE,yEAAyE;IACzE,MAAM,cAAc,GAAG,2BAA2B,CAChD;QACE,QAAQ,EAAE,cAAc;QACxB,aAAa;KACd,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,117 @@
1
+ /**
2
+ * @purpose Simplified closeContract instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated closeContract instruction.
5
+ * Closes a contract with no active rentals and claims remaining payments.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getCloseContractInstructionAsync } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner } from '../utils/signer';
11
+ import { fetchContract } from '../accounts/contract';
12
+ import { prepareInstructions } from '../utils/instructions';
13
+ /**
14
+ * Close a rental contract
15
+ *
16
+ * This instruction is idempotent and can be safely re-run. If contract or token
17
+ * accounts don't exist, they will be created temporarily before being closed.
18
+ * This allows recovery from partial failures during previous close attempts.
19
+ *
20
+ * Contract must have no active rentals. Claims all remaining payments
21
+ * from the contract's token account, invalidates the rental in SAGE,
22
+ * and closes the contract account.
23
+ *
24
+ * @param params - Contract closing parameters
25
+ * @param config - Optional SDK configuration overrides
26
+ * @returns Kit instruction (or web3.js if PublicKey in config)
27
+ *
28
+ * @example
29
+ * ```typescript
30
+ * // Option 1: Provide fleet only (RECOMMENDED - idempotent)
31
+ * const ix = await closeContract({
32
+ * owner: wallet,
33
+ * fleet: fleetAddress
34
+ * // contract derived from fleet PDA
35
+ * // Works even if contract doesn't exist (init_if_needed)
36
+ * });
37
+ *
38
+ * // Option 2: Provide contract only (contract MUST exist)
39
+ * const ix2 = await closeContract({
40
+ * owner: wallet,
41
+ * contract: contractAddress
42
+ * // fleet fetched from contract.fleet
43
+ * // REQUIRES contract to already exist
44
+ * });
45
+ *
46
+ * // Option 3: Provide both (most explicit, no fetching)
47
+ * const ix3 = await closeContract({
48
+ * owner: wallet,
49
+ * fleet: fleetAddress,
50
+ * contract: contractAddress,
51
+ * sageProgram: customSageProgram, // Optional
52
+ * destinationTokenAccount: customTokenAccount // Optional
53
+ * });
54
+ * ```
55
+ */
56
+ export async function closeContract(params, config) {
57
+ // Merge config
58
+ const finalConfig = mergeConfig(config);
59
+ // Validate required params
60
+ if (!params.owner) {
61
+ throw new Error('owner is required');
62
+ }
63
+ if (!params.fleet && !params.contract) {
64
+ throw new Error('Either fleet or contract must be provided');
65
+ }
66
+ // Convert owner to transaction signer
67
+ const ownerSigner = toTransactionSigner(params.owner);
68
+ // Get network-specific addresses
69
+ const addresses = getAddresses(config);
70
+ const atlasMint = address(addresses.atlasMint);
71
+ const programAddress = address(addresses.srsly);
72
+ // Resolve fleet and contract addresses
73
+ let fleetAddress;
74
+ let contractAddress;
75
+ if (params.fleet && params.contract) {
76
+ // Both provided - use as-is
77
+ fleetAddress = address(params.fleet);
78
+ contractAddress = address(params.contract);
79
+ }
80
+ else if (params.fleet) {
81
+ // Only fleet provided - derive contract from fleet PDA
82
+ fleetAddress = address(params.fleet);
83
+ contractAddress = undefined; // Will be derived on-chain
84
+ }
85
+ else if (params.contract) {
86
+ // Only contract provided - fetch contract to get fleet
87
+ const contract = await fetchContract(params.contract, finalConfig.rpcUrl);
88
+ fleetAddress = contract.data.fleet;
89
+ contractAddress = address(params.contract);
90
+ }
91
+ else {
92
+ // Should never reach here due to validation above
93
+ throw new Error('Either fleet or contract must be provided');
94
+ }
95
+ // Get sageProgram from config if not provided
96
+ const sageProgram = params.sageProgram
97
+ ? address(params.sageProgram)
98
+ : address(addresses.sage);
99
+ // Optional destination token account
100
+ const destinationTokenAccount = params.destinationTokenAccount
101
+ ? address(params.destinationTokenAccount)
102
+ : undefined;
103
+ // Call Codama-generated instruction
104
+ const kitInstruction = await getCloseContractInstructionAsync({
105
+ owner: ownerSigner,
106
+ contract: contractAddress,
107
+ mint: atlasMint,
108
+ destinationTokenAccount,
109
+ fleet: fleetAddress,
110
+ sageProgram,
111
+ }, { programAddress });
112
+ return prepareInstructions(kitInstruction, {
113
+ computeUnits: params.computeUnits,
114
+ PublicKey: finalConfig.PublicKey
115
+ });
116
+ }
117
+ //# sourceMappingURL=closeContract.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closeContract.js","sourceRoot":"","sources":["../../../src/instructions/closeContract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,OAAO,EAAgB,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,gCAAgC,EAAE,MAAM,kCAAkC,CAAC;AACpF,OAAO,EAAE,WAAW,EAAE,YAAY,EAAkB,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAE,mBAAmB,EAAwB,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AACrD,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AA4C5D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,MAA2B,EAC3B,MAA2B;IAE3B,eAAe;IACf,MAAM,WAAW,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;IAExC,2BAA2B;IAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,IAAI,KAAK,CAAC,mBAAmB,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACtC,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,sCAAsC;IACtC,MAAM,WAAW,GAAG,mBAAmB,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;IAEtD,iCAAiC;IACjC,MAAM,SAAS,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACvC,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC,SAAoB,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,KAAgB,CAAC,CAAC;IAE3D,uCAAuC;IACvC,IAAI,YAAqB,CAAC;IAC1B,IAAI,eAAoC,CAAC;IAEzC,IAAI,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QACpC,4BAA4B;QAC5B,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC,CAAC;QAChD,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC,CAAC;IACxD,CAAC;SAAM,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACxB,uDAAuD;QACvD,YAAY,GAAG,OAAO,CAAC,MAAM,CAAC,KAAgB,CAAC,CAAC;QAChD,eAAe,GAAG,SAAS,CAAC,CAAC,2BAA2B;IAC1D,CAAC;SAAM,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;QAC3B,uDAAuD;QACvD,MAAM,QAAQ,GAAG,MAAM,aAAa,CAAC,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;QAC1E,YAAY,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC;QACnC,eAAe,GAAG,OAAO,CAAC,MAAM,CAAC,QAAmB,CAAC,CAAC;IACxD,CAAC;SAAM,CAAC;QACN,kDAAkD;QAClD,MAAM,IAAI,KAAK,CAAC,2CAA2C,CAAC,CAAC;IAC/D,CAAC;IAED,8CAA8C;IAC9C,MAAM,WAAW,GAAG,MAAM,CAAC,WAAW;QACpC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,WAAsB,CAAC;QACxC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,IAAe,CAAC,CAAC;IAEvC,qCAAqC;IACrC,MAAM,uBAAuB,GAAG,MAAM,CAAC,uBAAuB;QAC5D,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,uBAAkC,CAAC;QACpD,CAAC,CAAC,SAAS,CAAC;IAEd,oCAAoC;IACpC,MAAM,cAAc,GAAG,MAAM,gCAAgC,CAC3D;QACE,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,eAAe;QACzB,IAAI,EAAE,SAAS;QACf,uBAAuB;QACvB,KAAK,EAAE,YAAY;QACnB,WAAW;KACZ,EACD,EAAE,cAAc,EAAE,CACnB,CAAC;IAEF,OAAO,mBAAmB,CAAC,cAAc,EAAE;QACzC,YAAY,EAAE,MAAM,CAAC,YAAY;QACjC,SAAS,EAAE,WAAW,CAAC,SAAS;KACjC,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,102 @@
1
+ /**
2
+ * @purpose Simplified closeRental instruction wrapper
3
+ *
4
+ * Thin convenience wrapper around Codama-generated closeRental instruction.
5
+ * Closes a completed rental and returns the fleet to the owner.
6
+ */
7
+ import { address } from '@solana/kit';
8
+ import { getCloseRentalInstructionAsync } from '../generated/codama/instructions';
9
+ import { mergeConfig, getAddresses } from '../utils/config';
10
+ import { toTransactionSigner } from '../utils/signer';
11
+ import { fetchContract } from '../accounts/contract';
12
+ import { fetchFleet } from '../accounts/fleet';
13
+ import { deriveGameAccounts } from '../pda/sage';
14
+ import { deriveRental, deriveRentalAuthority, deriveBorrowerState } from '../pda/srsly';
15
+ import { deriveRentalThread } from '../pda/thread';
16
+ import { prepareInstructions } from '../utils/instructions';
17
+ /**
18
+ * Close a rental
19
+ *
20
+ * Closes a completed rental and transfers the fleet back to the owner.
21
+ * Payments are sent to the owner's token account.
22
+ *
23
+ * This function automatically:
24
+ * - Fetches contract to get owner, ownerTokenAccount, fleet, gameId
25
+ * - Fetches fleet to get faction for SAGE account derivation
26
+ * - Derives required SAGE accounts (starbase, starbase player)
27
+ * - Derives rental thread for automated payments
28
+ * - Codama auto-derives contractTokenAccount as ATA
29
+ *
30
+ * @param params - Rental closure parameters (payer, borrower, contract)
31
+ * @param config - Optional SDK configuration overrides
32
+ * @returns Kit instruction (or web3.js if PublicKey in config)
33
+ *
34
+ * @example
35
+ * ```typescript
36
+ * const ix = await closeRental({
37
+ * payer: ownerWallet,
38
+ * borrower: borrowerAddress,
39
+ * contract: contractAddress
40
+ * });
41
+ * ```
42
+ */
43
+ export async function closeRental(params, config) {
44
+ // Merge config
45
+ const finalConfig = mergeConfig(config);
46
+ // Validate required params
47
+ if (!params.payer) {
48
+ throw new Error('payer is required');
49
+ }
50
+ if (!params.borrower) {
51
+ throw new Error('borrower is required');
52
+ }
53
+ if (!params.contract) {
54
+ throw new Error('contract is required');
55
+ }
56
+ // Fetch contract to get owner, fleet, gameId
57
+ const contractAccount = await fetchContract(params.contract, finalConfig.rpcUrl);
58
+ const owner = contractAccount.data.owner;
59
+ const fleet = contractAccount.data.fleet;
60
+ const gameId = contractAccount.data.gameId;
61
+ // Convert payer to transaction signer
62
+ const payerSigner = toTransactionSigner(params.payer);
63
+ // Fetch fleet data to get faction (for SAGE account derivation)
64
+ const fleetState = await fetchFleet(fleet, finalConfig.rpcUrl);
65
+ const faction = fleetState.faction;
66
+ const ownerProfile = fleetState.ownerProfile;
67
+ // Derive SAGE game accounts (we need owner's profile for starbase player)
68
+ const gameAccounts = await deriveGameAccounts(ownerProfile, faction, gameId);
69
+ // Derive rental and rental authority PDAs
70
+ const rental = await deriveRental(params.contract, params.borrower);
71
+ const rentalAuthority = await deriveRentalAuthority();
72
+ // Derive borrower state PDA
73
+ const borrowerState = await deriveBorrowerState(params.borrower);
74
+ // Derive rental thread for automated payments
75
+ const rentalThread = await deriveRentalThread(rental, rentalAuthority);
76
+ // Get network-specific addresses
77
+ const addresses = getAddresses(config);
78
+ const atlasMint = address(addresses.atlasMint);
79
+ const sageProgram = address(addresses.sage);
80
+ const programAddress = address(addresses.srsly);
81
+ // Call Codama-generated instruction
82
+ // Note: contractTokenAccount is auto-derived by Codama as ATA for contract + mint
83
+ const kitInstruction = await getCloseRentalInstructionAsync({
84
+ payer: payerSigner,
85
+ mint: atlasMint,
86
+ borrower: address(params.borrower),
87
+ borrowerState,
88
+ owner: address(owner),
89
+ contract: address(params.contract),
90
+ rentalThread,
91
+ fleet: address(fleet),
92
+ gameId: address(gameId),
93
+ starbase: gameAccounts.starbase,
94
+ starbasePlayer: gameAccounts.starbasePlayer,
95
+ sageProgram,
96
+ }, { programAddress });
97
+ return prepareInstructions(kitInstruction, {
98
+ computeUnits: params.computeUnits,
99
+ PublicKey: finalConfig.PublicKey
100
+ });
101
+ }
102
+ //# sourceMappingURL=closeRental.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"closeRental.js","sourceRoot":"","sources":["../../../src/instructions/closeRental.ts"],"names":[],"mappings":"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"}