@wuwei-labs/srsly 2.0.0-beta.7 → 2.3.3-canary.36.16828734028.0

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 (668) hide show
  1. package/README.md +370 -505
  2. package/dist/cjs/config/index.js +12 -0
  3. package/dist/cjs/config/index.js.map +1 -0
  4. package/dist/cjs/config/initialize.js +95 -0
  5. package/dist/cjs/config/initialize.js.map +1 -0
  6. package/dist/cjs/config/update.js +163 -0
  7. package/dist/cjs/config/update.js.map +1 -0
  8. package/dist/cjs/contract/close.js +128 -67
  9. package/dist/cjs/contract/close.js.map +1 -1
  10. package/dist/cjs/contract/create.js +232 -43
  11. package/dist/cjs/contract/create.js.map +1 -1
  12. package/dist/cjs/contract/index.js +49 -0
  13. package/dist/cjs/contract/index.js.map +1 -1
  14. package/dist/cjs/demos.js +69 -0
  15. package/dist/cjs/demos.js.map +1 -0
  16. package/dist/cjs/generated/codama/accounts/configState.js +123 -0
  17. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -0
  18. package/dist/cjs/{codama/devnet → generated/codama}/accounts/contractState.js +47 -9
  19. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -0
  20. package/dist/cjs/{codama/devnet → generated/codama}/accounts/index.js +1 -1
  21. package/dist/cjs/generated/codama/accounts/index.js.map +1 -0
  22. package/dist/cjs/{codama/devnet → generated/codama}/accounts/rentalState.js +49 -11
  23. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -0
  24. package/dist/cjs/{codama/mainnet → generated/codama}/accounts/thread.js +42 -5
  25. package/dist/cjs/generated/codama/accounts/thread.js.map +1 -0
  26. package/dist/cjs/generated/codama/errors/index.js.map +1 -0
  27. package/dist/cjs/generated/codama/errors/srsly.js +101 -0
  28. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -0
  29. package/dist/cjs/generated/codama/index.js.map +1 -0
  30. package/dist/cjs/{codama/devnet → generated/codama}/instructions/acceptRental.js +18 -43
  31. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -0
  32. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/cancelRental.js +66 -34
  33. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -0
  34. package/dist/cjs/{codama/devnet/instructions/resetRental.js → generated/codama/instructions/closeContract.js} +29 -38
  35. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -0
  36. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/closeRental.js +89 -44
  37. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -0
  38. package/dist/cjs/{codama/devnet → generated/codama}/instructions/createContract.js +13 -16
  39. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -0
  40. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/index.js +2 -0
  41. package/dist/cjs/generated/codama/instructions/index.js.map +1 -0
  42. package/dist/cjs/generated/codama/instructions/initializeConfig.js +139 -0
  43. package/dist/cjs/generated/codama/instructions/initializeConfig.js.map +1 -0
  44. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/payRental.js +14 -71
  45. package/dist/cjs/generated/codama/instructions/payRental.js.map +1 -0
  46. package/dist/cjs/{codama/mainnet → generated/codama}/instructions/resetRental.js +11 -10
  47. package/dist/cjs/generated/codama/instructions/resetRental.js.map +1 -0
  48. package/dist/cjs/generated/codama/instructions/updateConfig.js +143 -0
  49. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -0
  50. package/dist/cjs/generated/codama/programs/index.js.map +1 -0
  51. package/dist/cjs/{codama/devnet → generated/codama}/programs/srsly.js +15 -7
  52. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -0
  53. package/dist/cjs/{codama/devnet → generated/codama}/shared/index.js +1 -1
  54. package/dist/cjs/generated/codama/shared/index.js.map +1 -0
  55. package/dist/cjs/generated/codama/types/clockData.js +58 -0
  56. package/dist/cjs/generated/codama/types/clockData.js.map +1 -0
  57. package/dist/cjs/generated/codama/types/equality.js.map +1 -0
  58. package/dist/cjs/{codama/devnet → generated/codama}/types/execContext.js +31 -1
  59. package/dist/cjs/generated/codama/types/execContext.js.map +1 -0
  60. package/dist/cjs/{codama/devnet → generated/codama}/types/index.js +1 -0
  61. package/dist/cjs/generated/codama/types/index.js.map +1 -0
  62. package/dist/cjs/generated/codama/types/paymentFrequency.js +36 -0
  63. package/dist/cjs/generated/codama/types/paymentFrequency.js.map +1 -0
  64. package/dist/cjs/{codama/mainnet → generated/codama}/types/serializableAccount.js +28 -1
  65. package/dist/cjs/generated/codama/types/serializableAccount.js.map +1 -0
  66. package/dist/cjs/{codama/mainnet → generated/codama}/types/serializableInstruction.js +28 -1
  67. package/dist/cjs/generated/codama/types/serializableInstruction.js.map +1 -0
  68. package/dist/cjs/{codama/mainnet → generated/codama}/types/threadResponse.js +31 -1
  69. package/dist/cjs/generated/codama/types/threadResponse.js.map +1 -0
  70. package/dist/cjs/generated/codama/types/trigger.js.map +1 -0
  71. package/dist/cjs/generated/codama/types/triggerContext.js.map +1 -0
  72. package/dist/cjs/idl/index.js +27 -0
  73. package/dist/cjs/idl/index.js.map +1 -0
  74. package/dist/cjs/idl/srsly-data.js +3140 -0
  75. package/dist/cjs/idl/srsly-data.js.map +1 -0
  76. package/dist/cjs/idl/srsly.json +3104 -0
  77. package/dist/cjs/index.js +244 -4
  78. package/dist/cjs/index.js.map +1 -1
  79. package/dist/cjs/package.json +63 -0
  80. package/dist/cjs/rental/accept.js +228 -55
  81. package/dist/cjs/rental/accept.js.map +1 -1
  82. package/dist/cjs/rental/cancel.js +155 -25
  83. package/dist/cjs/rental/cancel.js.map +1 -1
  84. package/dist/cjs/rental/close.js +157 -29
  85. package/dist/cjs/rental/close.js.map +1 -1
  86. package/dist/cjs/rental/index.js +84 -0
  87. package/dist/cjs/rental/index.js.map +1 -1
  88. package/dist/cjs/rental/reset.js +159 -36
  89. package/dist/cjs/rental/reset.js.map +1 -1
  90. package/dist/cjs/types/payment-frequency.js +87 -0
  91. package/dist/cjs/types/payment-frequency.js.map +1 -0
  92. package/dist/cjs/types/srsly.js +3 -0
  93. package/dist/cjs/types/srsly.js.map +1 -0
  94. package/dist/cjs/utils/config.js +142 -100
  95. package/dist/cjs/utils/config.js.map +1 -1
  96. package/dist/cjs/utils/constants.js +45 -81
  97. package/dist/cjs/utils/constants.js.map +1 -1
  98. package/dist/cjs/utils/cron.js +204 -0
  99. package/dist/cjs/utils/cron.js.map +1 -0
  100. package/dist/cjs/utils/derive-pda.js +415 -0
  101. package/dist/cjs/utils/derive-pda.js.map +1 -0
  102. package/dist/cjs/utils/fetch-accounts.js +241 -0
  103. package/dist/cjs/utils/fetch-accounts.js.map +1 -0
  104. package/dist/cjs/utils/index.js +14 -1
  105. package/dist/cjs/utils/index.js.map +1 -1
  106. package/dist/cjs/utils/instruction-converter.js +125 -0
  107. package/dist/cjs/utils/instruction-converter.js.map +1 -0
  108. package/dist/cjs/utils/param-converters.js +190 -0
  109. package/dist/cjs/utils/param-converters.js.map +1 -0
  110. package/dist/cjs/utils/payment-frequency.js +111 -0
  111. package/dist/cjs/utils/payment-frequency.js.map +1 -0
  112. package/dist/cjs/utils/schedule-builder.js +158 -0
  113. package/dist/cjs/utils/schedule-builder.js.map +1 -0
  114. package/dist/cjs/utils/schedule-validation.js +136 -0
  115. package/dist/cjs/utils/schedule-validation.js.map +1 -0
  116. package/dist/cjs/utils/signer.js +127 -0
  117. package/dist/cjs/utils/signer.js.map +1 -0
  118. package/dist/cjs/utils/smart-params.js +52 -0
  119. package/dist/cjs/utils/smart-params.js.map +1 -0
  120. package/dist/esm/config/index.js +7 -0
  121. package/dist/esm/config/index.js.map +1 -0
  122. package/dist/esm/config/initialize.js +92 -0
  123. package/dist/esm/config/initialize.js.map +1 -0
  124. package/dist/esm/config/update.js +159 -0
  125. package/dist/esm/config/update.js.map +1 -0
  126. package/dist/esm/contract/close.js +130 -70
  127. package/dist/esm/contract/close.js.map +1 -1
  128. package/dist/esm/contract/create.js +233 -44
  129. package/dist/esm/contract/create.js.map +1 -1
  130. package/dist/esm/contract/index.js +51 -2
  131. package/dist/esm/contract/index.js.map +1 -1
  132. package/dist/esm/demos.js +26 -0
  133. package/dist/esm/demos.js.map +1 -0
  134. package/dist/esm/generated/codama/accounts/configState.js +111 -0
  135. package/dist/esm/generated/codama/accounts/configState.js.map +1 -0
  136. package/dist/esm/{codama/mainnet → generated/codama}/accounts/contractState.js +48 -10
  137. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -0
  138. package/dist/esm/{codama/devnet → generated/codama}/accounts/index.js +1 -1
  139. package/dist/esm/generated/codama/accounts/index.js.map +1 -0
  140. package/dist/esm/generated/codama/accounts/rentalState.js +113 -0
  141. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -0
  142. package/dist/esm/{codama/mainnet → generated/codama}/accounts/thread.js +43 -6
  143. package/dist/esm/generated/codama/accounts/thread.js.map +1 -0
  144. package/dist/esm/generated/codama/errors/index.js.map +1 -0
  145. package/dist/esm/generated/codama/errors/srsly.js +96 -0
  146. package/dist/esm/generated/codama/errors/srsly.js.map +1 -0
  147. package/dist/esm/generated/codama/index.js.map +1 -0
  148. package/dist/esm/{codama/devnet → generated/codama}/instructions/acceptRental.js +18 -43
  149. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -0
  150. package/dist/esm/{codama/mainnet → generated/codama}/instructions/cancelRental.js +66 -34
  151. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -0
  152. package/dist/esm/{codama/devnet/instructions/resetRental.js → generated/codama/instructions/closeContract.js} +21 -30
  153. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -0
  154. package/dist/esm/{codama/devnet → generated/codama}/instructions/closeRental.js +89 -44
  155. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -0
  156. package/dist/esm/{codama/mainnet → generated/codama}/instructions/createContract.js +13 -16
  157. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -0
  158. package/dist/esm/{codama/mainnet → generated/codama}/instructions/index.js +2 -0
  159. package/dist/esm/generated/codama/instructions/index.js.map +1 -0
  160. package/dist/esm/generated/codama/instructions/initializeConfig.js +129 -0
  161. package/dist/esm/generated/codama/instructions/initializeConfig.js.map +1 -0
  162. package/dist/esm/{codama/mainnet → generated/codama}/instructions/payRental.js +16 -73
  163. package/dist/esm/generated/codama/instructions/payRental.js.map +1 -0
  164. package/dist/esm/{codama/mainnet → generated/codama}/instructions/resetRental.js +11 -10
  165. package/dist/esm/generated/codama/instructions/resetRental.js.map +1 -0
  166. package/dist/esm/generated/codama/instructions/updateConfig.js +133 -0
  167. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -0
  168. package/dist/esm/generated/codama/programs/index.js.map +1 -0
  169. package/dist/esm/{codama/devnet → generated/codama}/programs/srsly.js +15 -7
  170. package/dist/esm/generated/codama/programs/srsly.js.map +1 -0
  171. package/dist/esm/{codama/devnet → generated/codama}/shared/index.js +1 -1
  172. package/dist/esm/generated/codama/shared/index.js.map +1 -0
  173. package/dist/esm/generated/codama/types/clockData.js +53 -0
  174. package/dist/esm/generated/codama/types/clockData.js.map +1 -0
  175. package/dist/esm/generated/codama/types/equality.js.map +1 -0
  176. package/dist/esm/generated/codama/types/execContext.js +63 -0
  177. package/dist/esm/generated/codama/types/execContext.js.map +1 -0
  178. package/dist/esm/{codama/devnet → generated/codama}/types/index.js +1 -0
  179. package/dist/esm/generated/codama/types/index.js.map +1 -0
  180. package/dist/esm/generated/codama/types/paymentFrequency.js +30 -0
  181. package/dist/esm/generated/codama/types/paymentFrequency.js.map +1 -0
  182. package/dist/esm/generated/codama/types/serializableAccount.js +53 -0
  183. package/dist/esm/generated/codama/types/serializableAccount.js.map +1 -0
  184. package/dist/esm/generated/codama/types/serializableInstruction.js +54 -0
  185. package/dist/esm/generated/codama/types/serializableInstruction.js.map +1 -0
  186. package/dist/esm/generated/codama/types/threadResponse.js +63 -0
  187. package/dist/esm/generated/codama/types/threadResponse.js.map +1 -0
  188. package/dist/esm/generated/codama/types/trigger.js.map +1 -0
  189. package/dist/esm/generated/codama/types/triggerContext.js.map +1 -0
  190. package/dist/esm/idl/index.js +21 -0
  191. package/dist/esm/idl/index.js.map +1 -0
  192. package/dist/esm/idl/srsly-data.js +3137 -0
  193. package/dist/esm/idl/srsly-data.js.map +1 -0
  194. package/dist/esm/idl/srsly.json +3104 -0
  195. package/dist/esm/index.js +213 -5
  196. package/dist/esm/index.js.map +1 -1
  197. package/dist/esm/package.json +63 -0
  198. package/dist/esm/rental/accept.js +230 -58
  199. package/dist/esm/rental/accept.js.map +1 -1
  200. package/dist/esm/rental/cancel.js +155 -26
  201. package/dist/esm/rental/cancel.js.map +1 -1
  202. package/dist/esm/rental/close.js +157 -30
  203. package/dist/esm/rental/close.js.map +1 -1
  204. package/dist/esm/rental/index.js +88 -4
  205. package/dist/esm/rental/index.js.map +1 -1
  206. package/dist/esm/rental/reset.js +161 -39
  207. package/dist/esm/rental/reset.js.map +1 -1
  208. package/dist/esm/types/payment-frequency.js +83 -0
  209. package/dist/esm/types/payment-frequency.js.map +1 -0
  210. package/dist/esm/types/srsly.js +2 -0
  211. package/dist/esm/types/srsly.js.map +1 -0
  212. package/dist/esm/utils/config.js +134 -92
  213. package/dist/esm/utils/config.js.map +1 -1
  214. package/dist/esm/utils/constants.js +43 -77
  215. package/dist/esm/utils/constants.js.map +1 -1
  216. package/dist/esm/utils/cron.js +195 -0
  217. package/dist/esm/utils/cron.js.map +1 -0
  218. package/dist/esm/utils/derive-pda.js +402 -0
  219. package/dist/esm/utils/derive-pda.js.map +1 -0
  220. package/dist/esm/utils/fetch-accounts.js +233 -0
  221. package/dist/esm/utils/fetch-accounts.js.map +1 -0
  222. package/dist/esm/utils/index.js +16 -3
  223. package/dist/esm/utils/index.js.map +1 -1
  224. package/dist/esm/utils/instruction-converter.js +120 -0
  225. package/dist/esm/utils/instruction-converter.js.map +1 -0
  226. package/dist/esm/utils/param-converters.js +182 -0
  227. package/dist/esm/utils/param-converters.js.map +1 -0
  228. package/dist/esm/utils/payment-frequency.js +104 -0
  229. package/dist/esm/utils/payment-frequency.js.map +1 -0
  230. package/dist/esm/utils/schedule-builder.js +153 -0
  231. package/dist/esm/utils/schedule-builder.js.map +1 -0
  232. package/dist/esm/utils/schedule-validation.js +132 -0
  233. package/dist/esm/utils/schedule-validation.js.map +1 -0
  234. package/dist/esm/utils/signer.js +119 -0
  235. package/dist/esm/utils/signer.js.map +1 -0
  236. package/dist/esm/utils/smart-params.js +49 -0
  237. package/dist/esm/utils/smart-params.js.map +1 -0
  238. package/dist/types/config/index.d.ts +7 -0
  239. package/dist/types/config/index.d.ts.map +1 -0
  240. package/dist/types/config/initialize.d.ts +66 -0
  241. package/dist/types/config/initialize.d.ts.map +1 -0
  242. package/dist/types/config/update.d.ts +143 -0
  243. package/dist/types/config/update.d.ts.map +1 -0
  244. package/dist/types/contract/close.d.ts +100 -28
  245. package/dist/types/contract/close.d.ts.map +1 -1
  246. package/dist/types/contract/create.d.ts +115 -45
  247. package/dist/types/contract/create.d.ts.map +1 -1
  248. package/dist/types/contract/index.d.ts +51 -2
  249. package/dist/types/contract/index.d.ts.map +1 -1
  250. package/dist/types/demos.d.ts +66 -0
  251. package/dist/types/demos.d.ts.map +1 -0
  252. package/dist/types/generated/codama/accounts/configState.d.ts +75 -0
  253. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -0
  254. package/dist/types/generated/codama/accounts/contractState.d.ts +78 -0
  255. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -0
  256. package/dist/types/{codama/devnet → generated/codama}/accounts/index.d.ts +1 -1
  257. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -0
  258. package/dist/types/generated/codama/accounts/rentalState.d.ts +78 -0
  259. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -0
  260. package/dist/types/{codama/mainnet → generated/codama}/accounts/thread.d.ts +8 -7
  261. package/dist/types/generated/codama/accounts/thread.d.ts.map +1 -0
  262. package/dist/types/generated/codama/errors/index.d.ts.map +1 -0
  263. package/dist/types/generated/codama/errors/srsly.d.ts +68 -0
  264. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -0
  265. package/dist/types/generated/codama/index.d.ts.map +1 -0
  266. package/dist/types/generated/codama/instructions/acceptRental.d.ts +132 -0
  267. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -0
  268. package/dist/types/generated/codama/instructions/cancelRental.d.ts +87 -0
  269. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -0
  270. package/dist/types/generated/codama/instructions/closeContract.d.ts +71 -0
  271. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -0
  272. package/dist/types/generated/codama/instructions/closeRental.d.ts +119 -0
  273. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -0
  274. package/dist/types/generated/codama/instructions/createContract.d.ts +112 -0
  275. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -0
  276. package/dist/types/{codama/devnet → generated/codama}/instructions/index.d.ts +2 -0
  277. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -0
  278. package/dist/types/generated/codama/instructions/initializeConfig.d.ts +60 -0
  279. package/dist/types/generated/codama/instructions/initializeConfig.d.ts.map +1 -0
  280. package/dist/types/generated/codama/instructions/payRental.d.ts +103 -0
  281. package/dist/types/generated/codama/instructions/payRental.d.ts.map +1 -0
  282. package/dist/types/generated/codama/instructions/resetRental.d.ts +79 -0
  283. package/dist/types/generated/codama/instructions/resetRental.d.ts.map +1 -0
  284. package/dist/types/generated/codama/instructions/updateConfig.d.ts +109 -0
  285. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -0
  286. package/dist/types/generated/codama/programs/index.d.ts.map +1 -0
  287. package/dist/types/{codama/mainnet → generated/codama}/programs/srsly.d.ts +12 -6
  288. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -0
  289. package/dist/types/{codama/devnet → generated/codama}/shared/index.d.ts +14 -3
  290. package/dist/types/generated/codama/shared/index.d.ts.map +1 -0
  291. package/dist/types/{codama/devnet → generated/codama}/types/clockData.d.ts +4 -3
  292. package/dist/types/generated/codama/types/clockData.d.ts.map +1 -0
  293. package/dist/types/{codama/devnet → generated/codama}/types/equality.d.ts +4 -4
  294. package/dist/types/generated/codama/types/equality.d.ts.map +1 -0
  295. package/dist/types/{codama/devnet → generated/codama}/types/execContext.d.ts +2 -1
  296. package/dist/types/generated/codama/types/execContext.d.ts.map +1 -0
  297. package/dist/types/{codama/devnet → generated/codama}/types/index.d.ts +1 -0
  298. package/dist/types/generated/codama/types/index.d.ts.map +1 -0
  299. package/dist/types/generated/codama/types/paymentFrequency.d.ts +24 -0
  300. package/dist/types/generated/codama/types/paymentFrequency.d.ts.map +1 -0
  301. package/dist/types/{codama/devnet → generated/codama}/types/serializableAccount.d.ts +4 -3
  302. package/dist/types/generated/codama/types/serializableAccount.d.ts.map +1 -0
  303. package/dist/types/{codama/mainnet → generated/codama}/types/serializableInstruction.d.ts +2 -1
  304. package/dist/types/generated/codama/types/serializableInstruction.d.ts.map +1 -0
  305. package/dist/types/{codama/devnet → generated/codama}/types/threadResponse.d.ts +2 -1
  306. package/dist/types/generated/codama/types/threadResponse.d.ts.map +1 -0
  307. package/dist/types/generated/codama/types/trigger.d.ts.map +1 -0
  308. package/dist/types/generated/codama/types/triggerContext.d.ts.map +1 -0
  309. package/dist/types/idl/index.d.ts +21 -0
  310. package/dist/types/idl/index.d.ts.map +1 -0
  311. package/dist/types/idl/srsly-data.d.ts +1458 -0
  312. package/dist/types/idl/srsly-data.d.ts.map +1 -0
  313. package/dist/types/index.d.ts +213 -5
  314. package/dist/types/index.d.ts.map +1 -1
  315. package/dist/types/rental/accept.d.ts +165 -61
  316. package/dist/types/rental/accept.d.ts.map +1 -1
  317. package/dist/types/rental/cancel.d.ts +119 -22
  318. package/dist/types/rental/cancel.d.ts.map +1 -1
  319. package/dist/types/rental/close.d.ts +108 -27
  320. package/dist/types/rental/close.d.ts.map +1 -1
  321. package/dist/types/rental/index.d.ts +88 -4
  322. package/dist/types/rental/index.d.ts.map +1 -1
  323. package/dist/types/rental/reset.d.ts +137 -39
  324. package/dist/types/rental/reset.d.ts.map +1 -1
  325. package/dist/types/types/payment-frequency.d.ts +55 -0
  326. package/dist/types/types/payment-frequency.d.ts.map +1 -0
  327. package/dist/types/types/srsly.d.ts +3111 -0
  328. package/dist/types/types/srsly.d.ts.map +1 -0
  329. package/dist/types/utils/config.d.ts +78 -61
  330. package/dist/types/utils/config.d.ts.map +1 -1
  331. package/dist/types/utils/constants.d.ts +16 -22
  332. package/dist/types/utils/constants.d.ts.map +1 -1
  333. package/dist/types/utils/cron.d.ts +77 -0
  334. package/dist/types/utils/cron.d.ts.map +1 -0
  335. package/dist/types/utils/derive-pda.d.ts +213 -0
  336. package/dist/types/utils/derive-pda.d.ts.map +1 -0
  337. package/dist/types/utils/fetch-accounts.d.ts +158 -0
  338. package/dist/types/utils/fetch-accounts.d.ts.map +1 -0
  339. package/dist/types/utils/index.d.ts +16 -3
  340. package/dist/types/utils/index.d.ts.map +1 -1
  341. package/dist/types/utils/instruction-converter.d.ts +171 -0
  342. package/dist/types/utils/instruction-converter.d.ts.map +1 -0
  343. package/dist/types/utils/param-converters.d.ts +67 -0
  344. package/dist/types/utils/param-converters.d.ts.map +1 -0
  345. package/dist/types/utils/payment-frequency.d.ts +38 -0
  346. package/dist/types/utils/payment-frequency.d.ts.map +1 -0
  347. package/dist/types/utils/schedule-builder.d.ts +64 -0
  348. package/dist/types/utils/schedule-builder.d.ts.map +1 -0
  349. package/dist/types/utils/schedule-validation.d.ts +36 -0
  350. package/dist/types/utils/schedule-validation.d.ts.map +1 -0
  351. package/dist/types/utils/signer.d.ts +61 -0
  352. package/dist/types/utils/signer.d.ts.map +1 -0
  353. package/dist/types/utils/smart-params.d.ts +112 -0
  354. package/dist/types/utils/smart-params.d.ts.map +1 -0
  355. package/package.json +55 -34
  356. package/dist/cjs/codama/devnet/accounts/contractState.js.map +0 -1
  357. package/dist/cjs/codama/devnet/accounts/fleet.js +0 -77
  358. package/dist/cjs/codama/devnet/accounts/fleet.js.map +0 -1
  359. package/dist/cjs/codama/devnet/accounts/index.js.map +0 -1
  360. package/dist/cjs/codama/devnet/accounts/rentalState.js.map +0 -1
  361. package/dist/cjs/codama/devnet/accounts/thread.js +0 -89
  362. package/dist/cjs/codama/devnet/accounts/thread.js.map +0 -1
  363. package/dist/cjs/codama/devnet/constants.js +0 -32
  364. package/dist/cjs/codama/devnet/constants.js.map +0 -1
  365. package/dist/cjs/codama/devnet/errors/index.js.map +0 -1
  366. package/dist/cjs/codama/devnet/errors/srsly.js +0 -74
  367. package/dist/cjs/codama/devnet/errors/srsly.js.map +0 -1
  368. package/dist/cjs/codama/devnet/index.js.map +0 -1
  369. package/dist/cjs/codama/devnet/instructions/acceptRental.js.map +0 -1
  370. package/dist/cjs/codama/devnet/instructions/cancelRental.js +0 -225
  371. package/dist/cjs/codama/devnet/instructions/cancelRental.js.map +0 -1
  372. package/dist/cjs/codama/devnet/instructions/closeContract.js +0 -246
  373. package/dist/cjs/codama/devnet/instructions/closeContract.js.map +0 -1
  374. package/dist/cjs/codama/devnet/instructions/closeRental.js +0 -260
  375. package/dist/cjs/codama/devnet/instructions/closeRental.js.map +0 -1
  376. package/dist/cjs/codama/devnet/instructions/createContract.js.map +0 -1
  377. package/dist/cjs/codama/devnet/instructions/index.js +0 -31
  378. package/dist/cjs/codama/devnet/instructions/index.js.map +0 -1
  379. package/dist/cjs/codama/devnet/instructions/payRental.js +0 -280
  380. package/dist/cjs/codama/devnet/instructions/payRental.js.map +0 -1
  381. package/dist/cjs/codama/devnet/instructions/resetRental.js.map +0 -1
  382. package/dist/cjs/codama/devnet/programs/index.js.map +0 -1
  383. package/dist/cjs/codama/devnet/programs/srsly.js.map +0 -1
  384. package/dist/cjs/codama/devnet/shared/index.js.map +0 -1
  385. package/dist/cjs/codama/devnet/types/clockData.js +0 -31
  386. package/dist/cjs/codama/devnet/types/clockData.js.map +0 -1
  387. package/dist/cjs/codama/devnet/types/equality.js.map +0 -1
  388. package/dist/cjs/codama/devnet/types/execContext.js.map +0 -1
  389. package/dist/cjs/codama/devnet/types/index.js.map +0 -1
  390. package/dist/cjs/codama/devnet/types/serializableAccount.js +0 -31
  391. package/dist/cjs/codama/devnet/types/serializableAccount.js.map +0 -1
  392. package/dist/cjs/codama/devnet/types/serializableInstruction.js +0 -32
  393. package/dist/cjs/codama/devnet/types/serializableInstruction.js.map +0 -1
  394. package/dist/cjs/codama/devnet/types/threadResponse.js +0 -38
  395. package/dist/cjs/codama/devnet/types/threadResponse.js.map +0 -1
  396. package/dist/cjs/codama/devnet/types/trigger.js.map +0 -1
  397. package/dist/cjs/codama/devnet/types/triggerContext.js.map +0 -1
  398. package/dist/cjs/codama/mainnet/accounts/contractState.js +0 -87
  399. package/dist/cjs/codama/mainnet/accounts/contractState.js.map +0 -1
  400. package/dist/cjs/codama/mainnet/accounts/fleet.js +0 -77
  401. package/dist/cjs/codama/mainnet/accounts/fleet.js.map +0 -1
  402. package/dist/cjs/codama/mainnet/accounts/index.js +0 -28
  403. package/dist/cjs/codama/mainnet/accounts/index.js.map +0 -1
  404. package/dist/cjs/codama/mainnet/accounts/rentalState.js +0 -87
  405. package/dist/cjs/codama/mainnet/accounts/rentalState.js.map +0 -1
  406. package/dist/cjs/codama/mainnet/accounts/thread.js.map +0 -1
  407. package/dist/cjs/codama/mainnet/constants.js +0 -32
  408. package/dist/cjs/codama/mainnet/constants.js.map +0 -1
  409. package/dist/cjs/codama/mainnet/errors/index.js +0 -25
  410. package/dist/cjs/codama/mainnet/errors/index.js.map +0 -1
  411. package/dist/cjs/codama/mainnet/errors/srsly.js +0 -74
  412. package/dist/cjs/codama/mainnet/errors/srsly.js.map +0 -1
  413. package/dist/cjs/codama/mainnet/index.js +0 -29
  414. package/dist/cjs/codama/mainnet/index.js.map +0 -1
  415. package/dist/cjs/codama/mainnet/instructions/acceptRental.js +0 -357
  416. package/dist/cjs/codama/mainnet/instructions/acceptRental.js.map +0 -1
  417. package/dist/cjs/codama/mainnet/instructions/cancelRental.js.map +0 -1
  418. package/dist/cjs/codama/mainnet/instructions/closeContract.js +0 -246
  419. package/dist/cjs/codama/mainnet/instructions/closeContract.js.map +0 -1
  420. package/dist/cjs/codama/mainnet/instructions/closeRental.js.map +0 -1
  421. package/dist/cjs/codama/mainnet/instructions/createContract.js +0 -261
  422. package/dist/cjs/codama/mainnet/instructions/createContract.js.map +0 -1
  423. package/dist/cjs/codama/mainnet/instructions/index.js.map +0 -1
  424. package/dist/cjs/codama/mainnet/instructions/payRental.js.map +0 -1
  425. package/dist/cjs/codama/mainnet/instructions/resetRental.js.map +0 -1
  426. package/dist/cjs/codama/mainnet/programs/index.js +0 -25
  427. package/dist/cjs/codama/mainnet/programs/index.js.map +0 -1
  428. package/dist/cjs/codama/mainnet/programs/srsly.js +0 -73
  429. package/dist/cjs/codama/mainnet/programs/srsly.js.map +0 -1
  430. package/dist/cjs/codama/mainnet/shared/index.js +0 -95
  431. package/dist/cjs/codama/mainnet/shared/index.js.map +0 -1
  432. package/dist/cjs/codama/mainnet/types/clockData.js +0 -31
  433. package/dist/cjs/codama/mainnet/types/clockData.js.map +0 -1
  434. package/dist/cjs/codama/mainnet/types/equality.js +0 -30
  435. package/dist/cjs/codama/mainnet/types/equality.js.map +0 -1
  436. package/dist/cjs/codama/mainnet/types/execContext.js +0 -38
  437. package/dist/cjs/codama/mainnet/types/execContext.js.map +0 -1
  438. package/dist/cjs/codama/mainnet/types/index.js +0 -32
  439. package/dist/cjs/codama/mainnet/types/index.js.map +0 -1
  440. package/dist/cjs/codama/mainnet/types/serializableAccount.js.map +0 -1
  441. package/dist/cjs/codama/mainnet/types/serializableInstruction.js.map +0 -1
  442. package/dist/cjs/codama/mainnet/types/threadResponse.js.map +0 -1
  443. package/dist/cjs/codama/mainnet/types/trigger.js +0 -90
  444. package/dist/cjs/codama/mainnet/types/trigger.js.map +0 -1
  445. package/dist/cjs/codama/mainnet/types/triggerContext.js +0 -49
  446. package/dist/cjs/codama/mainnet/types/triggerContext.js.map +0 -1
  447. package/dist/cjs/utils/profiles.js +0 -159
  448. package/dist/cjs/utils/profiles.js.map +0 -1
  449. package/dist/esm/codama/devnet/accounts/contractState.js +0 -75
  450. package/dist/esm/codama/devnet/accounts/contractState.js.map +0 -1
  451. package/dist/esm/codama/devnet/accounts/fleet.js +0 -64
  452. package/dist/esm/codama/devnet/accounts/fleet.js.map +0 -1
  453. package/dist/esm/codama/devnet/accounts/index.js.map +0 -1
  454. package/dist/esm/codama/devnet/accounts/rentalState.js +0 -74
  455. package/dist/esm/codama/devnet/accounts/rentalState.js.map +0 -1
  456. package/dist/esm/codama/devnet/accounts/thread.js +0 -77
  457. package/dist/esm/codama/devnet/accounts/thread.js.map +0 -1
  458. package/dist/esm/codama/devnet/constants.js +0 -29
  459. package/dist/esm/codama/devnet/constants.js.map +0 -1
  460. package/dist/esm/codama/devnet/errors/index.js.map +0 -1
  461. package/dist/esm/codama/devnet/errors/srsly.js +0 -69
  462. package/dist/esm/codama/devnet/errors/srsly.js.map +0 -1
  463. package/dist/esm/codama/devnet/index.js.map +0 -1
  464. package/dist/esm/codama/devnet/instructions/acceptRental.js.map +0 -1
  465. package/dist/esm/codama/devnet/instructions/cancelRental.js +0 -215
  466. package/dist/esm/codama/devnet/instructions/cancelRental.js.map +0 -1
  467. package/dist/esm/codama/devnet/instructions/closeContract.js +0 -236
  468. package/dist/esm/codama/devnet/instructions/closeContract.js.map +0 -1
  469. package/dist/esm/codama/devnet/instructions/closeRental.js.map +0 -1
  470. package/dist/esm/codama/devnet/instructions/createContract.js +0 -251
  471. package/dist/esm/codama/devnet/instructions/createContract.js.map +0 -1
  472. package/dist/esm/codama/devnet/instructions/index.js +0 -15
  473. package/dist/esm/codama/devnet/instructions/index.js.map +0 -1
  474. package/dist/esm/codama/devnet/instructions/payRental.js +0 -270
  475. package/dist/esm/codama/devnet/instructions/payRental.js.map +0 -1
  476. package/dist/esm/codama/devnet/instructions/resetRental.js.map +0 -1
  477. package/dist/esm/codama/devnet/programs/index.js.map +0 -1
  478. package/dist/esm/codama/devnet/programs/srsly.js.map +0 -1
  479. package/dist/esm/codama/devnet/shared/index.js.map +0 -1
  480. package/dist/esm/codama/devnet/types/clockData.js +0 -26
  481. package/dist/esm/codama/devnet/types/clockData.js.map +0 -1
  482. package/dist/esm/codama/devnet/types/equality.js.map +0 -1
  483. package/dist/esm/codama/devnet/types/execContext.js +0 -33
  484. package/dist/esm/codama/devnet/types/execContext.js.map +0 -1
  485. package/dist/esm/codama/devnet/types/index.js.map +0 -1
  486. package/dist/esm/codama/devnet/types/serializableAccount.js +0 -26
  487. package/dist/esm/codama/devnet/types/serializableAccount.js.map +0 -1
  488. package/dist/esm/codama/devnet/types/serializableInstruction.js +0 -27
  489. package/dist/esm/codama/devnet/types/serializableInstruction.js.map +0 -1
  490. package/dist/esm/codama/devnet/types/threadResponse.js +0 -33
  491. package/dist/esm/codama/devnet/types/threadResponse.js.map +0 -1
  492. package/dist/esm/codama/devnet/types/trigger.js.map +0 -1
  493. package/dist/esm/codama/devnet/types/triggerContext.js.map +0 -1
  494. package/dist/esm/codama/mainnet/accounts/contractState.js.map +0 -1
  495. package/dist/esm/codama/mainnet/accounts/fleet.js +0 -64
  496. package/dist/esm/codama/mainnet/accounts/fleet.js.map +0 -1
  497. package/dist/esm/codama/mainnet/accounts/index.js +0 -12
  498. package/dist/esm/codama/mainnet/accounts/index.js.map +0 -1
  499. package/dist/esm/codama/mainnet/accounts/rentalState.js +0 -74
  500. package/dist/esm/codama/mainnet/accounts/rentalState.js.map +0 -1
  501. package/dist/esm/codama/mainnet/accounts/thread.js.map +0 -1
  502. package/dist/esm/codama/mainnet/constants.js +0 -29
  503. package/dist/esm/codama/mainnet/constants.js.map +0 -1
  504. package/dist/esm/codama/mainnet/errors/index.js +0 -9
  505. package/dist/esm/codama/mainnet/errors/index.js.map +0 -1
  506. package/dist/esm/codama/mainnet/errors/srsly.js +0 -69
  507. package/dist/esm/codama/mainnet/errors/srsly.js.map +0 -1
  508. package/dist/esm/codama/mainnet/index.js +0 -13
  509. package/dist/esm/codama/mainnet/index.js.map +0 -1
  510. package/dist/esm/codama/mainnet/instructions/acceptRental.js +0 -347
  511. package/dist/esm/codama/mainnet/instructions/acceptRental.js.map +0 -1
  512. package/dist/esm/codama/mainnet/instructions/cancelRental.js.map +0 -1
  513. package/dist/esm/codama/mainnet/instructions/closeContract.js +0 -236
  514. package/dist/esm/codama/mainnet/instructions/closeContract.js.map +0 -1
  515. package/dist/esm/codama/mainnet/instructions/closeRental.js +0 -250
  516. package/dist/esm/codama/mainnet/instructions/closeRental.js.map +0 -1
  517. package/dist/esm/codama/mainnet/instructions/createContract.js.map +0 -1
  518. package/dist/esm/codama/mainnet/instructions/index.js.map +0 -1
  519. package/dist/esm/codama/mainnet/instructions/payRental.js.map +0 -1
  520. package/dist/esm/codama/mainnet/instructions/resetRental.js.map +0 -1
  521. package/dist/esm/codama/mainnet/programs/index.js +0 -9
  522. package/dist/esm/codama/mainnet/programs/index.js.map +0 -1
  523. package/dist/esm/codama/mainnet/programs/srsly.js +0 -68
  524. package/dist/esm/codama/mainnet/programs/srsly.js.map +0 -1
  525. package/dist/esm/codama/mainnet/shared/index.js +0 -87
  526. package/dist/esm/codama/mainnet/shared/index.js.map +0 -1
  527. package/dist/esm/codama/mainnet/types/clockData.js +0 -26
  528. package/dist/esm/codama/mainnet/types/clockData.js.map +0 -1
  529. package/dist/esm/codama/mainnet/types/equality.js +0 -24
  530. package/dist/esm/codama/mainnet/types/equality.js.map +0 -1
  531. package/dist/esm/codama/mainnet/types/execContext.js +0 -33
  532. package/dist/esm/codama/mainnet/types/execContext.js.map +0 -1
  533. package/dist/esm/codama/mainnet/types/index.js +0 -16
  534. package/dist/esm/codama/mainnet/types/index.js.map +0 -1
  535. package/dist/esm/codama/mainnet/types/serializableAccount.js +0 -26
  536. package/dist/esm/codama/mainnet/types/serializableAccount.js.map +0 -1
  537. package/dist/esm/codama/mainnet/types/serializableInstruction.js +0 -27
  538. package/dist/esm/codama/mainnet/types/serializableInstruction.js.map +0 -1
  539. package/dist/esm/codama/mainnet/types/threadResponse.js +0 -33
  540. package/dist/esm/codama/mainnet/types/threadResponse.js.map +0 -1
  541. package/dist/esm/codama/mainnet/types/trigger.js +0 -83
  542. package/dist/esm/codama/mainnet/types/trigger.js.map +0 -1
  543. package/dist/esm/codama/mainnet/types/triggerContext.js +0 -42
  544. package/dist/esm/codama/mainnet/types/triggerContext.js.map +0 -1
  545. package/dist/esm/utils/profiles.js +0 -152
  546. package/dist/esm/utils/profiles.js.map +0 -1
  547. package/dist/types/codama/devnet/accounts/contractState.d.ts +0 -51
  548. package/dist/types/codama/devnet/accounts/contractState.d.ts.map +0 -1
  549. package/dist/types/codama/devnet/accounts/fleet.d.ts +0 -38
  550. package/dist/types/codama/devnet/accounts/fleet.d.ts.map +0 -1
  551. package/dist/types/codama/devnet/accounts/index.d.ts.map +0 -1
  552. package/dist/types/codama/devnet/accounts/rentalState.d.ts +0 -48
  553. package/dist/types/codama/devnet/accounts/rentalState.d.ts.map +0 -1
  554. package/dist/types/codama/devnet/accounts/thread.d.ts +0 -74
  555. package/dist/types/codama/devnet/accounts/thread.d.ts.map +0 -1
  556. package/dist/types/codama/devnet/constants.d.ts +0 -33
  557. package/dist/types/codama/devnet/constants.d.ts.map +0 -1
  558. package/dist/types/codama/devnet/errors/index.d.ts.map +0 -1
  559. package/dist/types/codama/devnet/errors/srsly.d.ts +0 -50
  560. package/dist/types/codama/devnet/errors/srsly.d.ts.map +0 -1
  561. package/dist/types/codama/devnet/index.d.ts.map +0 -1
  562. package/dist/types/codama/devnet/instructions/acceptRental.d.ts +0 -131
  563. package/dist/types/codama/devnet/instructions/acceptRental.d.ts.map +0 -1
  564. package/dist/types/codama/devnet/instructions/cancelRental.d.ts +0 -71
  565. package/dist/types/codama/devnet/instructions/cancelRental.d.ts.map +0 -1
  566. package/dist/types/codama/devnet/instructions/closeContract.d.ts +0 -100
  567. package/dist/types/codama/devnet/instructions/closeContract.d.ts.map +0 -1
  568. package/dist/types/codama/devnet/instructions/closeRental.d.ts +0 -83
  569. package/dist/types/codama/devnet/instructions/closeRental.d.ts.map +0 -1
  570. package/dist/types/codama/devnet/instructions/createContract.d.ts +0 -108
  571. package/dist/types/codama/devnet/instructions/createContract.d.ts.map +0 -1
  572. package/dist/types/codama/devnet/instructions/index.d.ts.map +0 -1
  573. package/dist/types/codama/devnet/instructions/payRental.d.ts +0 -110
  574. package/dist/types/codama/devnet/instructions/payRental.d.ts.map +0 -1
  575. package/dist/types/codama/devnet/instructions/resetRental.d.ts +0 -71
  576. package/dist/types/codama/devnet/instructions/resetRental.d.ts.map +0 -1
  577. package/dist/types/codama/devnet/programs/index.d.ts.map +0 -1
  578. package/dist/types/codama/devnet/programs/srsly.d.ts +0 -47
  579. package/dist/types/codama/devnet/programs/srsly.d.ts.map +0 -1
  580. package/dist/types/codama/devnet/shared/index.d.ts.map +0 -1
  581. package/dist/types/codama/devnet/types/clockData.d.ts.map +0 -1
  582. package/dist/types/codama/devnet/types/equality.d.ts.map +0 -1
  583. package/dist/types/codama/devnet/types/execContext.d.ts.map +0 -1
  584. package/dist/types/codama/devnet/types/index.d.ts.map +0 -1
  585. package/dist/types/codama/devnet/types/serializableAccount.d.ts.map +0 -1
  586. package/dist/types/codama/devnet/types/serializableInstruction.d.ts +0 -30
  587. package/dist/types/codama/devnet/types/serializableInstruction.d.ts.map +0 -1
  588. package/dist/types/codama/devnet/types/threadResponse.d.ts.map +0 -1
  589. package/dist/types/codama/devnet/types/trigger.d.ts.map +0 -1
  590. package/dist/types/codama/devnet/types/triggerContext.d.ts.map +0 -1
  591. package/dist/types/codama/mainnet/accounts/contractState.d.ts +0 -51
  592. package/dist/types/codama/mainnet/accounts/contractState.d.ts.map +0 -1
  593. package/dist/types/codama/mainnet/accounts/fleet.d.ts +0 -38
  594. package/dist/types/codama/mainnet/accounts/fleet.d.ts.map +0 -1
  595. package/dist/types/codama/mainnet/accounts/index.d.ts +0 -12
  596. package/dist/types/codama/mainnet/accounts/index.d.ts.map +0 -1
  597. package/dist/types/codama/mainnet/accounts/rentalState.d.ts +0 -48
  598. package/dist/types/codama/mainnet/accounts/rentalState.d.ts.map +0 -1
  599. package/dist/types/codama/mainnet/accounts/thread.d.ts.map +0 -1
  600. package/dist/types/codama/mainnet/constants.d.ts +0 -33
  601. package/dist/types/codama/mainnet/constants.d.ts.map +0 -1
  602. package/dist/types/codama/mainnet/errors/index.d.ts +0 -9
  603. package/dist/types/codama/mainnet/errors/index.d.ts.map +0 -1
  604. package/dist/types/codama/mainnet/errors/srsly.d.ts +0 -50
  605. package/dist/types/codama/mainnet/errors/srsly.d.ts.map +0 -1
  606. package/dist/types/codama/mainnet/index.d.ts +0 -13
  607. package/dist/types/codama/mainnet/index.d.ts.map +0 -1
  608. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts +0 -131
  609. package/dist/types/codama/mainnet/instructions/acceptRental.d.ts.map +0 -1
  610. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts +0 -71
  611. package/dist/types/codama/mainnet/instructions/cancelRental.d.ts.map +0 -1
  612. package/dist/types/codama/mainnet/instructions/closeContract.d.ts +0 -100
  613. package/dist/types/codama/mainnet/instructions/closeContract.d.ts.map +0 -1
  614. package/dist/types/codama/mainnet/instructions/closeRental.d.ts +0 -83
  615. package/dist/types/codama/mainnet/instructions/closeRental.d.ts.map +0 -1
  616. package/dist/types/codama/mainnet/instructions/createContract.d.ts +0 -108
  617. package/dist/types/codama/mainnet/instructions/createContract.d.ts.map +0 -1
  618. package/dist/types/codama/mainnet/instructions/index.d.ts +0 -15
  619. package/dist/types/codama/mainnet/instructions/index.d.ts.map +0 -1
  620. package/dist/types/codama/mainnet/instructions/payRental.d.ts +0 -110
  621. package/dist/types/codama/mainnet/instructions/payRental.d.ts.map +0 -1
  622. package/dist/types/codama/mainnet/instructions/resetRental.d.ts +0 -71
  623. package/dist/types/codama/mainnet/instructions/resetRental.d.ts.map +0 -1
  624. package/dist/types/codama/mainnet/programs/index.d.ts +0 -9
  625. package/dist/types/codama/mainnet/programs/index.d.ts.map +0 -1
  626. package/dist/types/codama/mainnet/programs/srsly.d.ts.map +0 -1
  627. package/dist/types/codama/mainnet/shared/index.d.ts +0 -50
  628. package/dist/types/codama/mainnet/shared/index.d.ts.map +0 -1
  629. package/dist/types/codama/mainnet/types/clockData.d.ts +0 -29
  630. package/dist/types/codama/mainnet/types/clockData.d.ts.map +0 -1
  631. package/dist/types/codama/mainnet/types/equality.d.ts +0 -18
  632. package/dist/types/codama/mainnet/types/equality.d.ts.map +0 -1
  633. package/dist/types/codama/mainnet/types/execContext.d.ts +0 -48
  634. package/dist/types/codama/mainnet/types/execContext.d.ts.map +0 -1
  635. package/dist/types/codama/mainnet/types/index.d.ts +0 -16
  636. package/dist/types/codama/mainnet/types/index.d.ts.map +0 -1
  637. package/dist/types/codama/mainnet/types/serializableAccount.d.ts +0 -22
  638. package/dist/types/codama/mainnet/types/serializableAccount.d.ts.map +0 -1
  639. package/dist/types/codama/mainnet/types/serializableInstruction.d.ts.map +0 -1
  640. package/dist/types/codama/mainnet/types/threadResponse.d.ts +0 -42
  641. package/dist/types/codama/mainnet/types/threadResponse.d.ts.map +0 -1
  642. package/dist/types/codama/mainnet/types/trigger.d.ts +0 -98
  643. package/dist/types/codama/mainnet/types/trigger.d.ts.map +0 -1
  644. package/dist/types/codama/mainnet/types/triggerContext.d.ts +0 -75
  645. package/dist/types/codama/mainnet/types/triggerContext.d.ts.map +0 -1
  646. package/dist/types/utils/profiles.d.ts +0 -54
  647. package/dist/types/utils/profiles.d.ts.map +0 -1
  648. package/target/idl/srsly-devnet.json +0 -3275
  649. package/target/idl/srsly-mainnet.json +0 -3275
  650. package/target/types/srsly-devnet.ts +0 -1
  651. package/target/types/srsly-mainnet.ts +0 -1
  652. /package/dist/cjs/{codama/devnet → generated/codama}/errors/index.js +0 -0
  653. /package/dist/cjs/{codama/devnet → generated/codama}/index.js +0 -0
  654. /package/dist/cjs/{codama/devnet → generated/codama}/programs/index.js +0 -0
  655. /package/dist/cjs/{codama/devnet → generated/codama}/types/equality.js +0 -0
  656. /package/dist/cjs/{codama/devnet → generated/codama}/types/trigger.js +0 -0
  657. /package/dist/cjs/{codama/devnet → generated/codama}/types/triggerContext.js +0 -0
  658. /package/dist/esm/{codama/devnet → generated/codama}/errors/index.js +0 -0
  659. /package/dist/esm/{codama/devnet → generated/codama}/index.js +0 -0
  660. /package/dist/esm/{codama/devnet → generated/codama}/programs/index.js +0 -0
  661. /package/dist/esm/{codama/devnet → generated/codama}/types/equality.js +0 -0
  662. /package/dist/esm/{codama/devnet → generated/codama}/types/trigger.js +0 -0
  663. /package/dist/esm/{codama/devnet → generated/codama}/types/triggerContext.js +0 -0
  664. /package/dist/types/{codama/devnet → generated/codama}/errors/index.d.ts +0 -0
  665. /package/dist/types/{codama/devnet → generated/codama}/index.d.ts +0 -0
  666. /package/dist/types/{codama/devnet → generated/codama}/programs/index.d.ts +0 -0
  667. /package/dist/types/{codama/devnet → generated/codama}/types/trigger.d.ts +0 -0
  668. /package/dist/types/{codama/devnet → generated/codama}/types/triggerContext.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"srsly-data.d.ts","sourceRoot":"","sources":["../../../src/idl/srsly-data.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,eAAO,MAAM,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwjGN,CAAC;AACX,eAAe,GAAG,CAAC"}
@@ -1,6 +1,214 @@
1
- export * from "./contract";
2
- export * from "./rental";
3
- export * from "./utils";
4
- export type { ContractState, RentalState, Fleet, CreateContractInstruction, AcceptRentalInstruction, CancelRentalInstruction, CloseRentalInstruction, CloseContractInstruction, ResetRentalInstruction, ClockData, ThreadResponse } from "./codama/devnet";
5
- export { PaymentFrequency } from "./utils/constants";
1
+ /**
2
+ * @purpose SRSLY SDK - Solana Rental System Library main entry point
3
+ * @reviewed 2025-07-29
4
+ *
5
+ * A comprehensive TypeScript SDK for interacting with the SRSLY Solana program,
6
+ * which facilitates fleet rentals in the Star Atlas ecosystem. This SDK provides
7
+ * a fluent, developer-friendly interface that works with both @solana/kit and
8
+ * @solana/web3.js libraries.
9
+ *
10
+ * ## Features
11
+ *
12
+ * - **Universal Compatibility**: Works with both @solana/kit and @solana/web3.js
13
+ * - **Fluent API**: Chainable methods for intuitive development experience
14
+ * - **String-Based Addresses**: Uses strings for all addresses to eliminate library conflicts
15
+ * - **Network Agnostic**: Supports mainnet, devnet, and custom RPC endpoints
16
+ * - **Type Safety**: Full TypeScript support with comprehensive type definitions
17
+ * - **Auto-Generated Types**: Types generated from Solana program IDL for accuracy
18
+ *
19
+ * ## Quick Start
20
+ *
21
+ * ```typescript
22
+ * import { createContract, acceptRental } from '@srsly/sdk';
23
+ *
24
+ * // Create a rental contract
25
+ * const instruction = await createContract({
26
+ * owner: wallet,
27
+ * fleet: "FleetAddress123...",
28
+ * ownerProfile: "ProfileAddr...",
29
+ * rate: 1000,
30
+ * durationMax: 7, // 7 payment periods (7 days for @daily)
31
+ * paymentsFreq: 'daily'
32
+ * });
33
+ *
34
+ * // Accept a rental
35
+ * const rentalInstruction = await acceptRental({
36
+ * borrower: borrowerWallet,
37
+ * contract: contractAddress,
38
+ * amount: 7000,
39
+ * duration: { days: 7 } // Smart parameter format
40
+ * });
41
+ * ```
42
+ *
43
+ * ## Architecture
44
+ *
45
+ * The SDK is organized into several main modules:
46
+ * - **Contract**: Functions for creating and managing rental contracts
47
+ * - **Rental**: Functions for rental operations (accept, cancel, close)
48
+ * - **Utils**: Helper functions for duration, payment frequency, and account management
49
+ * - **Types**: TypeScript type definitions and interfaces
50
+ *
51
+ * @packageDocumentation
52
+ */
53
+ export * from './contract';
54
+ export * from './rental';
55
+ export * from './config';
56
+ export { setSdkConfig as setConfig, getSdkConfig as getConfig, clearSdkConfig as clearConfig, resolveProgramAddresses, type SdkConfigOptions, type SdkConfigSelector, type PublicKeyConstructor, type ProgramSet, } from './utils/config';
57
+ export * from './utils';
58
+ export type { KitInstruction, FluentInstruction } from './utils/instruction-converter';
59
+ export type { ConfigState, ContractState, RentalState, CreateContractInstruction, AcceptRentalInstruction, CancelRentalInstruction, CloseRentalInstruction, CloseContractInstruction, ResetRentalInstruction, ClockData, ThreadResponse, } from './generated/codama';
60
+ /**
61
+ * Account fetch functions that work with any RPC endpoint.
62
+ *
63
+ * These functions accept RPC URL strings and return account data,
64
+ * making it easy to fetch program state from any network.
65
+ *
66
+ * @example
67
+ * ```typescript
68
+ * const contract = await fetchContractState(
69
+ * "https://api.mainnet-beta.solana.com",
70
+ * contractAddress
71
+ * );
72
+ *
73
+ * // Fetch SAGE fleet data using manual struct parsing
74
+ * const fleet = await fetchFleetState(fleetAddress);
75
+ * ```
76
+ */
77
+ export { fetchContractState, fetchRentalState, fetchConfigState, fetchFleetState, fetchMultipleContractStates, fetchMultipleRentalStates, type FleetState, } from './utils/fetch-accounts';
78
+ /**
79
+ * Payment frequency enum generated from the Rust program.
80
+ *
81
+ * This enum mirrors the Rust PaymentFrequency type and provides
82
+ * type-safe payment frequency values for contract creation.
83
+ */
84
+ export { PaymentFrequency } from './types/payment-frequency';
85
+ /**
86
+ * Payment frequency types and validation utilities.
87
+ *
88
+ * These exports provide string-based payment frequency handling,
89
+ * validation functions, and mapping between different representations.
90
+ *
91
+ * @example
92
+ * ```typescript
93
+ * if (isValidPaymentFrequency('daily')) {
94
+ * const frequency = getPaymentFrequencyFromString('daily');
95
+ * }
96
+ * ```
97
+ */
98
+ export { PaymentFrequencyString, VALID_PAYMENT_FREQUENCIES, PAYMENT_FREQUENCY_MAP, PAYMENT_FREQUENCY_CONSTANTS, PAYMENT_FREQUENCY_TO_CRON, CRON_TO_PAYMENT_FREQUENCY, getPaymentFrequencyFromString, isValidPaymentFrequency, } from './types/payment-frequency';
99
+ /**
100
+ * Payment frequency utilities that mirror the Rust program implementation.
101
+ *
102
+ * These functions provide conversion between payment frequencies and time durations,
103
+ * ensuring consistency with the on-chain program logic.
104
+ *
105
+ * @example
106
+ * ```typescript
107
+ * const seconds = paymentFrequencyStringToSeconds('weekly');
108
+ * validateDurationAlignment(duration, 'daily');
109
+ * ```
110
+ */
111
+ export { paymentFrequencyToSeconds, paymentFrequencyStringToSeconds, validateDurationAlignment, normalizePaymentSchedule, } from './utils/payment-frequency';
112
+ /**
113
+ * Cron expression utilities for advanced payment scheduling.
114
+ *
115
+ * These functions provide cron expression parsing, validation, and scheduling
116
+ * capabilities using the croner library, mirroring the Rust implementation.
117
+ *
118
+ * @example
119
+ * ```typescript
120
+ * // Validate a cron expression
121
+ * if (validateCronExpression("0 9 * * MON-FRI")) {
122
+ * // Calculate next payment time
123
+ * const nextPayment = getNextCronOccurrence("@daily", Date.now() / 1000);
124
+ * }
125
+ *
126
+ * // Preview payment schedule
127
+ * const schedule = calculatePaymentSchedule("@hourly", startTime, duration);
128
+ * console.log(`${schedule.totalPayments} payments will occur`);
129
+ * ```
130
+ */
131
+ export { getNextCronOccurrence, validateCronExpression, paymentFrequencyToCron, parseScheduleString, calculatePaymentSchedule, formatPaymentSchedulePreview, } from './utils/cron';
132
+ /**
133
+ * Schedule validation utilities for rental contracts.
134
+ *
135
+ * These functions validate payment schedules against contract constraints
136
+ * and provide detailed feedback on potential issues.
137
+ *
138
+ * @example
139
+ * ```typescript
140
+ * const validation = validateRentalSchedule(
141
+ * "@daily",
142
+ * { days: 7 }, // Smart parameter format
143
+ * { days: 1 }, // Smart parameter format
144
+ * { days: 30 } // Smart parameter format
145
+ * );
146
+ *
147
+ * if (validation.valid) {
148
+ * console.log(`${validation.paymentCount} payments scheduled`);
149
+ * }
150
+ * ```
151
+ */
152
+ export { validateRentalSchedule, validateFrequencyForDuration, type ScheduleValidationResult, } from './utils/schedule-validation';
153
+ /**
154
+ * Schedule builder for creating and previewing payment schedules.
155
+ *
156
+ * Provides a fluent API for building payment schedules with validation
157
+ * and preview capabilities.
158
+ *
159
+ * @example
160
+ * ```typescript
161
+ * // From standard frequency
162
+ * const schedule = ScheduleBuilder
163
+ * .fromFrequency("daily")
164
+ * .preview(Date.now() / 1000, { days: 7 });
165
+ *
166
+ * // Custom cron expression
167
+ * const custom = ScheduleBuilder
168
+ * .fromCron("0 12 * * MON")
169
+ * .validate({ days: 30 }, { days: 1 }, { days: 90 });
170
+ *
171
+ * // Common intervals
172
+ * const every3Hours = ScheduleBuilder
173
+ * .every('hours', 3)
174
+ * .preview(Date.now() / 1000, { days: 1 });
175
+ * ```
176
+ */
177
+ export { ScheduleBuilder, createSchedule, type SchedulePreview, type PaymentInfo, } from './utils/schedule-builder';
178
+ /**
179
+ * Duration helper functions (DEPRECATED)
180
+ *
181
+ * Duration helper functions have been deprecated in favor of smart parameters.
182
+ * Use the smart parameter format instead for better type safety and clarity.
183
+ *
184
+ * @example
185
+ * ```typescript
186
+ * // Old approach (deprecated):
187
+ * // const rentalDuration = days(7);
188
+ *
189
+ * // New approach with smart parameters:
190
+ * const rentalDuration = { days: 7 };
191
+ * const paymentPeriod = { hours: 6 };
192
+ * const longRental = { weeks: 2 };
193
+ * ```
194
+ */
195
+ /**
196
+ * SRSLY Program IDL
197
+ *
198
+ * Export the complete IDL for the SRSLY program, useful for:
199
+ * - Building custom decoders
200
+ * - Generating client code
201
+ * - Inspecting program structure
202
+ * - Version-aware deserialization
203
+ */
204
+ export { IDL, type IDL as IDLType } from './idl';
205
+ /**
206
+ * Legacy versioned decoders are now deprecated.
207
+ *
208
+ * Use the native Codama lazy decoder instead:
209
+ * - Replace: fetchMaybeRentalStateVersioned(rpc, address)
210
+ * - With: fetchMaybeRentalState(rpc, address, { lazy: true })
211
+ *
212
+ * The lazy decoder is available in all generated account fetch functions.
213
+ */
6
214
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AAIxB,YAAY,EAEV,aAAa,EACb,WAAW,EACX,KAAK,EAGL,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EAGtB,SAAS,EACT,cAAc,EACf,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmDG;AAGH,cAAc,YAAY,CAAC;AAC3B,cAAc,UAAU,CAAC;AAGzB,cAAc,UAAU,CAAC;AAGzB,OAAO,EACL,YAAY,IAAI,SAAS,EACzB,YAAY,IAAI,SAAS,EACzB,cAAc,IAAI,WAAW,EAC7B,uBAAuB,EAEvB,KAAK,gBAAgB,EACrB,KAAK,iBAAiB,EACtB,KAAK,oBAAoB,EACzB,KAAK,UAAU,GAChB,MAAM,gBAAgB,CAAC;AAExB,cAAc,SAAS,CAAC;AAGxB,YAAY,EAAE,cAAc,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AAIvF,YAAY,EAEV,WAAW,EACX,aAAa,EACb,WAAW,EAGX,yBAAyB,EACzB,uBAAuB,EACvB,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,EACxB,sBAAsB,EAGtB,SAAS,EACT,cAAc,GACf,MAAM,oBAAoB,CAAC;AAE5B;;;;;;;;;;;;;;;;GAgBG;AACH,OAAO,EACL,kBAAkB,EAClB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,EACf,2BAA2B,EAC3B,yBAAyB,EACzB,KAAK,UAAU,GAChB,MAAM,wBAAwB,CAAC;AAEhC;;;;;GAKG;AACH,OAAO,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAE7D;;;;;;;;;;;;GAYG;AACH,OAAO,EACL,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,EACrB,2BAA2B,EAC3B,yBAAyB,EACzB,yBAAyB,EACzB,6BAA6B,EAC7B,uBAAuB,GACxB,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;;;;GAWG;AACH,OAAO,EACL,yBAAyB,EACzB,+BAA+B,EAC/B,yBAAyB,EACzB,wBAAwB,GACzB,MAAM,2BAA2B,CAAC;AAEnC;;;;;;;;;;;;;;;;;;GAkBG;AACH,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,sBAAsB,EACtB,mBAAmB,EACnB,wBAAwB,EACxB,4BAA4B,GAC7B,MAAM,cAAc,CAAC;AAEtB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,OAAO,EACL,sBAAsB,EACtB,4BAA4B,EAC5B,KAAK,wBAAwB,GAC9B,MAAM,6BAA6B,CAAC;AAErC;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,OAAO,EACL,eAAe,EACf,cAAc,EACd,KAAK,eAAe,EACpB,KAAK,WAAW,GACjB,MAAM,0BAA0B,CAAC;AAElC;;;;;;;;;;;;;;;;GAgBG;AAEH;;;;;;;;GAQG;AACH,OAAO,EAAE,GAAG,EAAE,KAAK,GAAG,IAAI,OAAO,EAAE,MAAM,OAAO,CAAC;AAEjD;;;;;;;;GAQG"}
@@ -1,92 +1,196 @@
1
- import { Address, TransactionSigner } from '@solana/kit';
2
- import { type ConfigSelector } from '../utils/config';
3
- type AcceptRentalInstruction = any;
4
1
  /**
5
- * Simplified parameters for accepting a rental
2
+ * @purpose Rental contract acceptance with payment calculation and SAGE integration
3
+ * @reviewed 2025-07-29
4
+ */
5
+ import { type SdkConfigSelector } from '../utils/config';
6
+ import { type FluentInstruction, type SmartFluentConfigSelector } from '../utils/instruction-converter';
7
+ import { type UniversalSigner } from '../utils/signer';
8
+ import type { DurationParam } from '../utils/smart-params';
9
+ type UniversalAddress = string;
10
+ /**
11
+ * Parameters for accepting a rental contract.
12
+ *
13
+ * This interface defines the required parameters for a borrower to accept an existing
14
+ * rental contract. The SDK automatically fetches contract details and calculates the
15
+ * required payment amount based on the contract's rate and payment frequency.
16
+ *
17
+ * @interface AcceptRentalParams
6
18
  */
7
19
  export interface AcceptRentalParams {
8
20
  /**
9
- * The borrower wallet that will sign the transaction
10
- */
11
- borrower: TransactionSigner<string>;
12
- /**
13
- * The borrower's profile account address
14
- */
15
- borrowerProfile: Address<string>;
16
- /**
17
- * The borrower's faction (1 = mud, 2 = oni, 3 = ustur)
18
- * Or as string: 'mud', 'oni', 'ustur'
19
- */
20
- borrowerFaction: number | string;
21
- /**
22
- * The fleet account address that will be rented
21
+ * The borrower who will rent the fleet (signer object or base58 string address).
22
+ * This account will control the fleet during the rental period and make payments.
23
+ * Can be a wallet/signer object (CLI usage) or base58 address string (browser usage).
23
24
  */
24
- fleet: Address<string>;
25
+ borrower: UniversalSigner;
25
26
  /**
26
- * The rental contract account address
27
+ * String address of the borrower's profile in the Star Atlas game.
28
+ * Used for SAGE integration to transfer fleet control to the borrower.
27
29
  */
28
- contract: Address<string>;
30
+ borrowerProfile: UniversalAddress;
29
31
  /**
30
- * The game ID account address
31
- * If not provided, will use network-specific default
32
+ * Faction identifier for the borrower in Star Atlas.
33
+ * Can be provided as a number (1 = MUD, 2 = ONI, 3 = Ustur) or string ('mud', 'oni', 'ustur').
34
+ * If not provided, the faction will be automatically resolved from the fleet account.
35
+ * Used for deriving faction-specific game accounts required by SAGE.
36
+ * @example 'mud' // or 1
32
37
  */
33
- gameId?: Address<string>;
38
+ borrowerFaction?: number | string;
34
39
  /**
35
- * The rental rate (in ATLAS tokens)
40
+ * String address of the rental contract to accept.
41
+ * The SDK will automatically fetch the contract state to retrieve:
42
+ * - Fleet address and ownership details
43
+ * - Rental rate per payment period
44
+ * - Payment frequency (hourly, daily, weekly, monthly)
45
+ * - Duration constraints (minimum and maximum)
46
+ * - Owner information for payment routing
36
47
  */
37
- rate: number | bigint;
48
+ contract: UniversalAddress;
38
49
  /**
39
- * The rental duration (in seconds)
50
+ * Rental duration.
51
+ * Can be specified as seconds (number) or time units (object).
52
+ * Must be within the contract's minimum and maximum duration limits.
53
+ * @example { days: 7 } // 7 days
54
+ * @example { weeks: 2 } // 2 weeks
55
+ * @example 604800 // 7 days in seconds (backwards compatible)
40
56
  */
41
- duration: number | bigint;
42
- /**
43
- * Optional referral token account address
44
- * If provided, referrer will receive 5% of the platform fees
45
- */
46
- referralTokenAccount?: Address<string>;
57
+ duration: DurationParam;
47
58
  }
48
59
  /**
49
- * Creates an instruction to accept a rental with fluent configuration.
60
+ * Creates an instruction to accept a rental contract with fluent configuration.
61
+ *
62
+ * This function allows a borrower to accept an existing rental contract, automatically
63
+ * calculating the required payment amount based on the contract's rate and payment frequency.
64
+ * The SDK fetches contract details, validates duration constraints, and derives all
65
+ * necessary accounts for the rental operation.
66
+ *
67
+ * ## Features
68
+ *
69
+ * - **Automatic Payment Calculation**: Fetches contract state and calculates exact payment amount
70
+ * - **Automatic Faction Resolution**: Optionally fetches faction from fleet account if not provided
71
+ * - **Duration Validation**: Ensures rental duration meets contract constraints
72
+ * - **Account Derivation**: Automatically derives all required game accounts
73
+ * - **SAGE Integration**: Sets up fleet ownership transfer in the Star Atlas ecosystem
74
+ * - **Clockwork Integration**: Configures automated payment scheduling
75
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
76
+ *
77
+ * ## Process
78
+ *
79
+ * 1. **Fetch Contract**: Retrieves contract state from the blockchain
80
+ * 2. **Validate Duration**: Checks that rental duration meets contract constraints
81
+ * 3. **Calculate Payment**: Computes payment amount using contract rate and payment frequency
82
+ * 4. **Derive Accounts**: Generates required game accounts (starbase, faction, etc.)
83
+ * 5. **Create Instruction**: Builds the rental acceptance instruction
84
+ * 6. **Setup Threading**: Configures automated payment processing
85
+ *
86
+ * ## Payment Calculation
87
+ *
88
+ * The payment amount is calculated using the formula:
89
+ * ```text
90
+ * payment = rate × payment_periods × stardust_to_atlas_conversion
91
+ * ```
92
+ *
93
+ * Where:
94
+ * - `rate`: Contract's rental rate per payment period
95
+ * - `payment_periods`: Duration divided by payment frequency interval
96
+ * - `stardust_to_atlas_conversion`: Network-specific conversion factor
97
+ *
98
+ * ## Requirements
99
+ *
100
+ * - Contract must exist and be active
101
+ * - Duration must be within contract's min/max limits
102
+ * - Duration must be multiple of payment frequency
103
+ * - Borrower must have sufficient ATLAS tokens for payment
50
104
  *
51
105
  * @example
52
106
  * ```typescript
53
- * // Use devnet defaults
54
- * const ix = await acceptRental({
107
+ * import { acceptRental } from '@srsly/sdk';
108
+ *
109
+ * // Using smart duration parameters (recommended)
110
+ * const instruction = await acceptRental({
111
+ * borrower: wallet, // Wallet object for signing
112
+ * borrowerProfile: "ProfileAddr...", // Borrower's Star Atlas profile
113
+ * contract: "ContractAddr...", // Contract to accept
114
+ * duration: { days: 7 } // 7 days rental duration
115
+ * // borrowerFaction auto-resolved from fleet account
116
+ * });
117
+ *
118
+ * // Different duration formats
119
+ * const hourlyRental = await acceptRental({
120
+ * borrower: wallet,
121
+ * borrowerProfile: "ProfileAddr...",
122
+ * contract: "ContractAddr...",
123
+ * duration: { hours: 12 } // 12 hours
124
+ * });
125
+ *
126
+ * const weeklyRental = await acceptRental({
55
127
  * borrower: wallet,
56
- * borrowerProfile: profileAddress,
57
- * borrowerFaction: 1, // 1 = mud, 2 = oni, 3 = ustur
58
- * fleet: fleetAddress,
59
- * contract: contractAddress,
60
- * rate: 1000, // ATLAS tokens
61
- * duration: 86400 // 1 day in seconds (total: 1000 * 86400 * 100M stardust)
128
+ * borrowerProfile: "ProfileAddr...",
129
+ * contract: "ContractAddr...",
130
+ * duration: { weeks: 2 } // 2 weeks
62
131
  * });
63
132
  *
64
- * // With referral (referrer gets 5% of platform fees)
65
- * const ix = await acceptRental({
133
+ * const monthlyRental = await acceptRental({
66
134
  * borrower: wallet,
67
- * borrowerProfile: profileAddress,
68
- * borrowerFaction: 1,
69
- * fleet: fleetAddress,
70
- * contract: contractAddress,
71
- * rate: 1000,
72
- * duration: 86400,
73
- * referralTokenAccount: referrerTokenAddress
135
+ * borrowerProfile: "ProfileAddr...",
136
+ * contract: "ContractAddr...",
137
+ * duration: { months: 1 } // 1 month
74
138
  * });
75
139
  *
76
- * // Use mainnet configuration
77
- * const ix = await acceptRental(params).set({ network: 'mainnet' });
140
+ * // Backwards compatible - raw seconds
141
+ * const legacyRental = await acceptRental({
142
+ * borrower: wallet,
143
+ * borrowerProfile: "ProfileAddr...",
144
+ * contract: "ContractAddr...",
145
+ * duration: 604800 // 7 days in seconds
146
+ * });
78
147
  *
79
- * // Override specific constants
80
- * const ix = await acceptRental(params).set({
81
- * network: 'mainnet',
82
- * gameId: 'custom-game-id...'
148
+ * // Manual faction specification (optional)
149
+ * const manualInstruction = await acceptRental({
150
+ * borrower: wallet.publicKey.toString(), // Address string for browser
151
+ * borrowerProfile: "ProfileAddr...", // Borrower's Star Atlas profile
152
+ * borrowerFaction: 'mud', // Optional: 'mud', 'oni', or 'ustur'
153
+ * contract: "ContractAddr...", // Contract to accept
154
+ * duration: { days: 7 } // 7 days rental duration
83
155
  * });
156
+ *
157
+ * // Configure for mainnet
158
+ * const mainnetInstruction = await acceptRental({
159
+ * borrower: wallet, // Wallet object (CLI style)
160
+ * borrowerProfile: "ProfileAddr...",
161
+ * borrowerFaction: 1, // Can use numbers: 1=mud, 2=oni, 3=ustur
162
+ * contract: "ContractAddr...",
163
+ * duration: { days: 7 }
164
+ * }).set({ programs: 'mainnet' });
165
+ *
166
+ * // Use with your preferred Solana library
167
+ * const transaction = new Transaction().add(mainnetInstruction);
168
+ * await sendAndConfirmTransaction(connection, transaction, [wallet]);
84
169
  * ```
85
170
  *
86
- * @param params The simplified parameters for accepting a rental
87
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
171
+ * @param params - The rental acceptance parameters including borrower, contract, and duration
172
+ * @returns A SmartFluentConfigSelector that can be configured with .set() or awaited directly
173
+ * @throws Error when contract is not found, duration constraints are violated, or payment calculation fails
174
+ */
175
+ export declare function acceptRental(params: AcceptRentalParams): SmartFluentConfigSelector<FluentInstruction>;
176
+ /**
177
+ * Low-level function to create a rental acceptance instruction with raw input parameters.
178
+ *
179
+ * This function provides direct access to the underlying codama-generated instruction
180
+ * builder. It's primarily used internally by the SDK but can be used for advanced
181
+ * use cases where full control over instruction parameters is needed.
182
+ *
183
+ * @internal
184
+ * @param input - Raw instruction input parameters as expected by codama
185
+ * @param options - Optional instruction options including program address
186
+ * @returns A SdkConfigSelector for the raw instruction
88
187
  */
89
- export declare function acceptRental(params: AcceptRentalParams): ConfigSelector<AcceptRentalInstruction>;
90
- export declare function getAcceptRentalInstructionAsync(input: any, options?: any): ConfigSelector<any>;
188
+ export declare function getAcceptRentalInstructionAsync(input: any, options?: any): SdkConfigSelector<any>;
189
+ export declare const acceptRentalDemo: {
190
+ tabName: string;
191
+ description: string;
192
+ imports: string;
193
+ instruction: string;
194
+ };
91
195
  export {};
92
196
  //# sourceMappingURL=accept.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"accept.d.ts","sourceRoot":"","sources":["../../../src/rental/accept.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,OAAO,EACP,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAgD,KAAK,cAAc,EAAsB,MAAM,iBAAiB,CAAC;AAKxH,KAAK,uBAAuB,GAAG,GAAG,CAAC;AAMnC;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC;;OAEG;IACH,QAAQ,EAAE,iBAAiB,CAAC,MAAM,CAAC,CAAC;IAEpC;;OAEG;IACH,eAAe,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEjC;;;OAGG;IACH,eAAe,EAAE,MAAM,GAAG,MAAM,CAAC;IAEjC;;OAEG;IACH,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEvB;;OAEG;IACH,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAE1B;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IAEzB;;OAEG;IACH,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAEtB;;OAEG;IACH,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAE1B;;;OAGG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;CACxC;AAkED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAwCG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,kBAAkB,GACzB,cAAc,CAAC,uBAAuB,CAAC,CAEzC;AAED,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,cAAc,CAAC,GAAG,CAAC,CAK9F"}
1
+ {"version":3,"file":"accept.d.ts","sourceRoot":"","sources":["../../../src/rental/accept.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAKL,KAAK,iBAAiB,EAEvB,MAAM,iBAAiB,CAAC;AAGzB,OAAO,EAGL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAC/B,MAAM,gCAAgC,CAAC;AAIxC,OAAO,EAA2B,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAI3D,KAAK,gBAAgB,GAAG,MAAM,CAAC;AAG/B;;;;;;;;GAQG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;;OAIG;IACH,QAAQ,EAAE,eAAe,CAAC;IAE1B;;;OAGG;IACH,eAAe,EAAE,gBAAgB,CAAC;IAElC;;;;;;OAMG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IAElC;;;;;;;;OAQG;IACH,QAAQ,EAAE,gBAAgB,CAAC;IAE3B;;;;;;;OAOG;IACH,QAAQ,EAAE,aAAa,CAAC;CACzB;AAmID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmHG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,kBAAkB,GACzB,yBAAyB,CAAC,iBAAiB,CAAC,CAG9C;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,+BAA+B,CAAC,KAAK,EAAE,GAAG,EAAE,OAAO,CAAC,EAAE,GAAG,GAAG,iBAAiB,CAAC,GAAG,CAAC,CAKjG;AAGD,eAAO,MAAM,gBAAgB;;;;;CAU5B,CAAC"}
@@ -1,44 +1,141 @@
1
- import { Address, TransactionSigner } from '@solana/kit';
2
- import { type ConfigSelector } from '../utils/config';
3
- type CancelRentalInstruction = any;
4
1
  /**
5
- * Simplified parameters for canceling a rental
2
+ * @purpose Rental cancellation with penalty processing and thread cleanup
3
+ * @reviewed 2025-07-29
4
+ */
5
+ import { type SdkConfigSelector } from '../utils/config';
6
+ import { type UniversalSigner } from '../utils/signer';
7
+ import { type FluentInstruction, type SmartFluentConfigSelector } from '../utils/instruction-converter';
8
+ type UniversalAddress = string;
9
+ /**
10
+ * Parameters for canceling an active rental.
11
+ *
12
+ * This interface defines the required parameters for a borrower to cancel their
13
+ * active rental. Canceling a rental stops automated payments but typically
14
+ * incurs a penalty fee as defined in the contract terms.
15
+ *
16
+ * You can provide either the contract address OR the rental state address.
17
+ * If both are provided, rental takes priority.
18
+ *
19
+ * @interface CancelRentalParams
6
20
  */
7
21
  export interface CancelRentalParams {
8
22
  /**
9
- * The borrower wallet that will sign the transaction
23
+ * The borrower who wants to cancel the rental (signer object or base58 string address).
24
+ * Must be the original borrower who accepted the rental contract.
25
+ * This account will pay any cancellation penalties.
26
+ * Can be a wallet/signer object (CLI usage) or base58 address string (browser usage).
27
+ */
28
+ borrower: UniversalSigner;
29
+ /**
30
+ * String address of the rental contract associated with the active rental.
31
+ * The rental state for this contract will be canceled and automated payments stopped.
32
+ *
33
+ * Either this OR rental must be provided. If both are provided, rental takes priority.
10
34
  */
11
- borrower: TransactionSigner<string>;
35
+ contract?: UniversalAddress;
12
36
  /**
13
- * The rental contract account address
37
+ * String address of the rental state account to cancel.
38
+ * This is an alternative to providing the contract address - the SDK will
39
+ * fetch the rental state to determine the associated contract.
40
+ *
41
+ * Either this OR contract must be provided. If both are provided, this takes priority.
14
42
  */
15
- contract: Address<string>;
43
+ rental?: UniversalAddress;
16
44
  }
17
45
  /**
18
46
  * Creates an instruction to cancel a rental with fluent configuration.
19
47
  *
48
+ * This function allows a borrower to cancel their active rental before the
49
+ * rental period expires. Canceling a rental stops automated payments but
50
+ * may incur penalty fees as defined in the contract terms. The fleet ownership
51
+ * is immediately returned to the original owner.
52
+ *
53
+ * ## Features
54
+ *
55
+ * - **Immediate Cancellation**: Stops the rental and automated payments immediately
56
+ * - **Fleet Transfer**: Returns fleet control to the original owner
57
+ * - **Thread Cleanup**: Cancels the automated payment thread
58
+ * - **Penalty Processing**: Handles any cancellation fees as defined in the contract
59
+ * - **Universal Library Support**: Works with both @solana/kit and @solana/web3.js
60
+ *
61
+ * ## Process
62
+ *
63
+ * 1. **Validate Authority**: Ensures only the borrower can cancel their rental
64
+ * 2. **Calculate Penalties**: Computes any cancellation fees owed
65
+ * 3. **Transfer Fleet**: Returns fleet ownership to the original owner
66
+ * 4. **Cancel Thread**: Stops automated payment processing
67
+ * 5. **Update State**: Marks rental as canceled in the rental state account
68
+ *
69
+ * ## Requirements
70
+ *
71
+ * - Rental must be active (not already canceled or completed)
72
+ * - Caller must be the original borrower
73
+ * - Borrower must have sufficient funds for any cancellation penalties
74
+ *
75
+ * ## Cancellation Effects
76
+ *
77
+ * - **Fleet Control**: Immediately returned to owner
78
+ * - **Automated Payments**: Stopped permanently
79
+ * - **Rental State**: Marked as canceled
80
+ * - **Thread Account**: Cleaned up and closed
81
+ * - **Penalties**: Charged according to contract terms
82
+ *
20
83
  * @example
21
84
  * ```typescript
22
- * // Use devnet defaults
23
- * const ix = await cancelRental({
85
+ * import { cancelRental } from '@srsly/sdk';
86
+ *
87
+ * // Cancel rental using contract address
88
+ * const instruction = await cancelRental({
24
89
  * borrower: wallet,
25
- * contract: contractAddress
90
+ * contract: "ContractAddr..."
26
91
  * });
27
92
  *
28
- * // Use mainnet configuration
29
- * const ix = await cancelRental(params).set({ network: 'mainnet' });
30
- *
31
- * // Override specific constants
32
- * const ix = await cancelRental(params).set({
33
- * network: 'mainnet',
34
- * sageProgramAddress: 'custom...'
93
+ * // Cancel rental using rental state address (alternative approach)
94
+ * const instruction2 = await cancelRental({
95
+ * borrower: wallet,
96
+ * rental: "RentalStateAddr..."
35
97
  * });
98
+ *
99
+ * // Configure for mainnet
100
+ * const mainnetInstruction = await cancelRental({
101
+ * borrower: wallet,
102
+ * contract: "ContractAddr..."
103
+ * }).set({ programs: 'mainnet' });
104
+ *
105
+ * // Convert to @solana/web3.js format
106
+ * const web3jsInstruction = await cancelRental({
107
+ * borrower: wallet,
108
+ * rental: "RentalStateAddr..."
109
+ * }).web3js();
110
+ *
111
+ * // Use with your preferred Solana library
112
+ * const transaction = new Transaction().add(web3jsInstruction);
113
+ * await sendAndConfirmTransaction(connection, transaction, [wallet]);
36
114
  * ```
37
115
  *
38
- * @param params The simplified parameters for canceling a rental
39
- * @returns A ConfigSelector that can be configured with .set() or awaited directly
116
+ * @param params - The rental cancellation parameters including borrower and either contract or rentalState
117
+ * @returns A SmartFluentConfigSelector that can be configured with .set() or awaited directly
118
+ * @throws Error when rental is not active, caller is not the borrower, or instruction generation fails
119
+ */
120
+ export declare function cancelRental(params: CancelRentalParams): SmartFluentConfigSelector<FluentInstruction>;
121
+ /**
122
+ * Low-level function to create a rental cancellation instruction with raw input parameters.
123
+ *
124
+ * This function provides direct access to the underlying codama-generated instruction
125
+ * builder. It's primarily used internally by the SDK but can be used for advanced
126
+ * use cases where full control over instruction parameters is needed.
127
+ *
128
+ * @internal
129
+ * @param input - Raw instruction input parameters as expected by codama
130
+ * @param options - Optional instruction options including program address
131
+ * @returns A SdkConfigSelector for the raw instruction
40
132
  */
41
- export declare function cancelRental(params: CancelRentalParams): ConfigSelector<CancelRentalInstruction>;
42
- export declare function getCancelRentalInstructionAsync(input: any, options?: any): ConfigSelector<any>;
133
+ export declare function getCancelRentalInstructionAsync(input: any, options?: any): SdkConfigSelector<any>;
134
+ export declare const cancelRentalDemo: {
135
+ tabName: string;
136
+ description: string;
137
+ imports: string;
138
+ instruction: string;
139
+ };
43
140
  export {};
44
141
  //# sourceMappingURL=cancel.d.ts.map