@sly-rentals/core 0.1.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 (801) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +235 -0
  3. package/dist/api.json +50992 -0
  4. package/dist/cjs/accounts/borrower.js +120 -0
  5. package/dist/cjs/accounts/borrower.js.map +1 -0
  6. package/dist/cjs/accounts/config.js +97 -0
  7. package/dist/cjs/accounts/config.js.map +1 -0
  8. package/dist/cjs/accounts/contract.js +107 -0
  9. package/dist/cjs/accounts/contract.js.map +1 -0
  10. package/dist/cjs/accounts/fleet.js +47 -0
  11. package/dist/cjs/accounts/fleet.js.map +1 -0
  12. package/dist/cjs/accounts/index.js +24 -0
  13. package/dist/cjs/accounts/index.js.map +1 -0
  14. package/dist/cjs/accounts/member.js +16 -0
  15. package/dist/cjs/accounts/member.js.map +1 -0
  16. package/dist/cjs/accounts/rental.js +108 -0
  17. package/dist/cjs/accounts/rental.js.map +1 -0
  18. package/dist/cjs/accounts/thread.js +222 -0
  19. package/dist/cjs/accounts/thread.js.map +1 -0
  20. package/dist/cjs/audit/audit.js +398 -0
  21. package/dist/cjs/audit/audit.js.map +1 -0
  22. package/dist/cjs/audit/events.js +273 -0
  23. package/dist/cjs/audit/events.js.map +1 -0
  24. package/dist/cjs/audit/index.js +8 -0
  25. package/dist/cjs/audit/index.js.map +1 -0
  26. package/dist/cjs/audit/types.js +3 -0
  27. package/dist/cjs/audit/types.js.map +1 -0
  28. package/dist/cjs/cost/constants.js +34 -0
  29. package/dist/cjs/cost/constants.js.map +1 -0
  30. package/dist/cjs/cost/estimate.js +123 -0
  31. package/dist/cjs/cost/estimate.js.map +1 -0
  32. package/dist/cjs/cost/estimate.test.js +145 -0
  33. package/dist/cjs/cost/estimate.test.js.map +1 -0
  34. package/dist/cjs/cost/index.js +20 -0
  35. package/dist/cjs/cost/index.js.map +1 -0
  36. package/dist/cjs/cost/sizes.js +21 -0
  37. package/dist/cjs/cost/sizes.js.map +1 -0
  38. package/dist/cjs/generated/codama/accounts/borrowerState.js +80 -0
  39. package/dist/cjs/generated/codama/accounts/borrowerState.js.map +1 -0
  40. package/dist/cjs/generated/codama/accounts/configState.js +114 -0
  41. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -0
  42. package/dist/cjs/generated/codama/accounts/contractState.js +115 -0
  43. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -0
  44. package/dist/cjs/generated/codama/accounts/index.js +28 -0
  45. package/dist/cjs/generated/codama/accounts/index.js.map +1 -0
  46. package/dist/cjs/generated/codama/accounts/rentalState.js +105 -0
  47. package/dist/cjs/generated/codama/accounts/rentalState.js.map +1 -0
  48. package/dist/cjs/generated/codama/errors/index.js +25 -0
  49. package/dist/cjs/generated/codama/errors/index.js.map +1 -0
  50. package/dist/cjs/generated/codama/errors/srsly.js +312 -0
  51. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -0
  52. package/dist/cjs/generated/codama/index.js +29 -0
  53. package/dist/cjs/generated/codama/index.js.map +1 -0
  54. package/dist/cjs/generated/codama/instructions/acceptRental.js +375 -0
  55. package/dist/cjs/generated/codama/instructions/acceptRental.js.map +1 -0
  56. package/dist/cjs/generated/codama/instructions/cancelRental.js +261 -0
  57. package/dist/cjs/generated/codama/instructions/cancelRental.js.map +1 -0
  58. package/dist/cjs/generated/codama/instructions/claimBorrower.js +217 -0
  59. package/dist/cjs/generated/codama/instructions/claimBorrower.js.map +1 -0
  60. package/dist/cjs/generated/codama/instructions/claimContract.js +195 -0
  61. package/dist/cjs/generated/codama/instructions/claimContract.js.map +1 -0
  62. package/dist/cjs/generated/codama/instructions/closeBorrower.js +169 -0
  63. package/dist/cjs/generated/codama/instructions/closeBorrower.js.map +1 -0
  64. package/dist/cjs/generated/codama/instructions/closeContract.js +286 -0
  65. package/dist/cjs/generated/codama/instructions/closeContract.js.map +1 -0
  66. package/dist/cjs/generated/codama/instructions/closeContractThread.js +164 -0
  67. package/dist/cjs/generated/codama/instructions/closeContractThread.js.map +1 -0
  68. package/dist/cjs/generated/codama/instructions/closeRental.js +332 -0
  69. package/dist/cjs/generated/codama/instructions/closeRental.js.map +1 -0
  70. package/dist/cjs/generated/codama/instructions/createBorrower.js +188 -0
  71. package/dist/cjs/generated/codama/instructions/createBorrower.js.map +1 -0
  72. package/dist/cjs/generated/codama/instructions/createConfig.js +236 -0
  73. package/dist/cjs/generated/codama/instructions/createConfig.js.map +1 -0
  74. package/dist/cjs/generated/codama/instructions/createContract.js +281 -0
  75. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -0
  76. package/dist/cjs/generated/codama/instructions/createContractThread.js +309 -0
  77. package/dist/cjs/generated/codama/instructions/createContractThread.js.map +1 -0
  78. package/dist/cjs/generated/codama/instructions/deleteBorrower.js +109 -0
  79. package/dist/cjs/generated/codama/instructions/deleteBorrower.js.map +1 -0
  80. package/dist/cjs/generated/codama/instructions/deleteConfig.js +187 -0
  81. package/dist/cjs/generated/codama/instructions/deleteConfig.js.map +1 -0
  82. package/dist/cjs/generated/codama/instructions/deleteContract.js +109 -0
  83. package/dist/cjs/generated/codama/instructions/deleteContract.js.map +1 -0
  84. package/dist/cjs/generated/codama/instructions/deleteContractThread.js +170 -0
  85. package/dist/cjs/generated/codama/instructions/deleteContractThread.js.map +1 -0
  86. package/dist/cjs/generated/codama/instructions/deleteRental.js +109 -0
  87. package/dist/cjs/generated/codama/instructions/deleteRental.js.map +1 -0
  88. package/dist/cjs/generated/codama/instructions/index.js +49 -0
  89. package/dist/cjs/generated/codama/instructions/index.js.map +1 -0
  90. package/dist/cjs/generated/codama/instructions/invalidateRental.js +150 -0
  91. package/dist/cjs/generated/codama/instructions/invalidateRental.js.map +1 -0
  92. package/dist/cjs/generated/codama/instructions/processContract.js +213 -0
  93. package/dist/cjs/generated/codama/instructions/processContract.js.map +1 -0
  94. package/dist/cjs/generated/codama/instructions/releaseRental.js +148 -0
  95. package/dist/cjs/generated/codama/instructions/releaseRental.js.map +1 -0
  96. package/dist/cjs/generated/codama/instructions/reserveRental.js +323 -0
  97. package/dist/cjs/generated/codama/instructions/reserveRental.js.map +1 -0
  98. package/dist/cjs/generated/codama/instructions/setDelegate.js +74 -0
  99. package/dist/cjs/generated/codama/instructions/setDelegate.js.map +1 -0
  100. package/dist/cjs/generated/codama/instructions/updateConfig.js +132 -0
  101. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -0
  102. package/dist/cjs/generated/codama/instructions/updateContract.js +126 -0
  103. package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -0
  104. package/dist/cjs/generated/codama/instructions/updateContractThread.js +168 -0
  105. package/dist/cjs/generated/codama/instructions/updateContractThread.js.map +1 -0
  106. package/dist/cjs/generated/codama/programs/index.js +25 -0
  107. package/dist/cjs/generated/codama/programs/index.js.map +1 -0
  108. package/dist/cjs/generated/codama/programs/srsly.js +145 -0
  109. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -0
  110. package/dist/cjs/generated/codama/shared/index.js +88 -0
  111. package/dist/cjs/generated/codama/shared/index.js.map +1 -0
  112. package/dist/cjs/generated/codama/types/cargoStats.js +43 -0
  113. package/dist/cjs/generated/codama/types/cargoStats.js.map +1 -0
  114. package/dist/cjs/generated/codama/types/combatStats.js +49 -0
  115. package/dist/cjs/generated/codama/types/combatStats.js.map +1 -0
  116. package/dist/cjs/generated/codama/types/feesPaid.js +33 -0
  117. package/dist/cjs/generated/codama/types/feesPaid.js.map +1 -0
  118. package/dist/cjs/generated/codama/types/fleet.js +74 -0
  119. package/dist/cjs/generated/codama/types/fleet.js.map +1 -0
  120. package/dist/cjs/generated/codama/types/index.js +43 -0
  121. package/dist/cjs/generated/codama/types/index.js.map +1 -0
  122. package/dist/cjs/generated/codama/types/miscStats.js +47 -0
  123. package/dist/cjs/generated/codama/types/miscStats.js.map +1 -0
  124. package/dist/cjs/generated/codama/types/movementStats.js +39 -0
  125. package/dist/cjs/generated/codama/types/movementStats.js.map +1 -0
  126. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js +23 -0
  127. package/dist/cjs/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
  128. package/dist/cjs/generated/codama/types/ownerPaid.js +31 -0
  129. package/dist/cjs/generated/codama/types/ownerPaid.js.map +1 -0
  130. package/dist/cjs/generated/codama/types/rentalAccepted.js +43 -0
  131. package/dist/cjs/generated/codama/types/rentalAccepted.js.map +1 -0
  132. package/dist/cjs/generated/codama/types/rentalCancelled.js +39 -0
  133. package/dist/cjs/generated/codama/types/rentalCancelled.js.map +1 -0
  134. package/dist/cjs/generated/codama/types/rentalClosed.js +37 -0
  135. package/dist/cjs/generated/codama/types/rentalClosed.js.map +1 -0
  136. package/dist/cjs/generated/codama/types/rentalSettled.js +35 -0
  137. package/dist/cjs/generated/codama/types/rentalSettled.js.map +1 -0
  138. package/dist/cjs/generated/codama/types/rentalStatus.js +32 -0
  139. package/dist/cjs/generated/codama/types/rentalStatus.js.map +1 -0
  140. package/dist/cjs/generated/codama/types/schedule.js +63 -0
  141. package/dist/cjs/generated/codama/types/schedule.js.map +1 -0
  142. package/dist/cjs/generated/codama/types/shipCounts.js +45 -0
  143. package/dist/cjs/generated/codama/types/shipCounts.js.map +1 -0
  144. package/dist/cjs/generated/codama/types/shipStats.js +34 -0
  145. package/dist/cjs/generated/codama/types/shipStats.js.map +1 -0
  146. package/dist/cjs/generated/codama/types/signal.js +60 -0
  147. package/dist/cjs/generated/codama/types/signal.js.map +1 -0
  148. package/dist/cjs/generated/codama/types/thread.js +62 -0
  149. package/dist/cjs/generated/codama/types/thread.js.map +1 -0
  150. package/dist/cjs/generated/codama/types/trigger.js +101 -0
  151. package/dist/cjs/generated/codama/types/trigger.js.map +1 -0
  152. package/dist/cjs/idl/srsly.json +4747 -0
  153. package/dist/cjs/index.js +28 -0
  154. package/dist/cjs/index.js.map +1 -0
  155. package/dist/cjs/instructions/acceptRental.js +245 -0
  156. package/dist/cjs/instructions/acceptRental.js.map +1 -0
  157. package/dist/cjs/instructions/approveAffiliate.js +11 -0
  158. package/dist/cjs/instructions/approveAffiliate.js.map +1 -0
  159. package/dist/cjs/instructions/cancelRental.js +101 -0
  160. package/dist/cjs/instructions/cancelRental.js.map +1 -0
  161. package/dist/cjs/instructions/claimBorrower.js +88 -0
  162. package/dist/cjs/instructions/claimBorrower.js.map +1 -0
  163. package/dist/cjs/instructions/claimContract.js +54 -0
  164. package/dist/cjs/instructions/claimContract.js.map +1 -0
  165. package/dist/cjs/instructions/closeBorrower.js +51 -0
  166. package/dist/cjs/instructions/closeBorrower.js.map +1 -0
  167. package/dist/cjs/instructions/closeContract.js +235 -0
  168. package/dist/cjs/instructions/closeContract.js.map +1 -0
  169. package/dist/cjs/instructions/closeContractThread.js +61 -0
  170. package/dist/cjs/instructions/closeContractThread.js.map +1 -0
  171. package/dist/cjs/instructions/closeRental.js +136 -0
  172. package/dist/cjs/instructions/closeRental.js.map +1 -0
  173. package/dist/cjs/instructions/createAffiliate.js +68 -0
  174. package/dist/cjs/instructions/createAffiliate.js.map +1 -0
  175. package/dist/cjs/instructions/createBorrower.js +44 -0
  176. package/dist/cjs/instructions/createBorrower.js.map +1 -0
  177. package/dist/cjs/instructions/createConfig.js +81 -0
  178. package/dist/cjs/instructions/createConfig.js.map +1 -0
  179. package/dist/cjs/instructions/createContract.js +146 -0
  180. package/dist/cjs/instructions/createContract.js.map +1 -0
  181. package/dist/cjs/instructions/createContractThread.js +98 -0
  182. package/dist/cjs/instructions/createContractThread.js.map +1 -0
  183. package/dist/cjs/instructions/deleteBorrower.js +57 -0
  184. package/dist/cjs/instructions/deleteBorrower.js.map +1 -0
  185. package/dist/cjs/instructions/deleteConfig.js +77 -0
  186. package/dist/cjs/instructions/deleteConfig.js.map +1 -0
  187. package/dist/cjs/instructions/deleteContract.js +76 -0
  188. package/dist/cjs/instructions/deleteContract.js.map +1 -0
  189. package/dist/cjs/instructions/deleteContractThread.js +62 -0
  190. package/dist/cjs/instructions/deleteContractThread.js.map +1 -0
  191. package/dist/cjs/instructions/deleteRental.js +73 -0
  192. package/dist/cjs/instructions/deleteRental.js.map +1 -0
  193. package/dist/cjs/instructions/index.js +49 -0
  194. package/dist/cjs/instructions/index.js.map +1 -0
  195. package/dist/cjs/instructions/invalidateRental.js +87 -0
  196. package/dist/cjs/instructions/invalidateRental.js.map +1 -0
  197. package/dist/cjs/instructions/releaseRental.js +87 -0
  198. package/dist/cjs/instructions/releaseRental.js.map +1 -0
  199. package/dist/cjs/instructions/removeAffiliate.js +11 -0
  200. package/dist/cjs/instructions/removeAffiliate.js.map +1 -0
  201. package/dist/cjs/instructions/reserveRental.js +174 -0
  202. package/dist/cjs/instructions/reserveRental.js.map +1 -0
  203. package/dist/cjs/instructions/setDelegate.js +67 -0
  204. package/dist/cjs/instructions/setDelegate.js.map +1 -0
  205. package/dist/cjs/instructions/updateAffiliate.js +55 -0
  206. package/dist/cjs/instructions/updateAffiliate.js.map +1 -0
  207. package/dist/cjs/instructions/updateConfig.js +94 -0
  208. package/dist/cjs/instructions/updateConfig.js.map +1 -0
  209. package/dist/cjs/instructions/updateContract.js +98 -0
  210. package/dist/cjs/instructions/updateContract.js.map +1 -0
  211. package/dist/cjs/instructions/updateContractThread.js +56 -0
  212. package/dist/cjs/instructions/updateContractThread.js.map +1 -0
  213. package/dist/cjs/kit/index.js +69 -0
  214. package/dist/cjs/kit/index.js.map +1 -0
  215. package/dist/cjs/legacy/index.js +121 -0
  216. package/dist/cjs/legacy/index.js.map +1 -0
  217. package/dist/cjs/package.json +78 -0
  218. package/dist/cjs/params/amount.js +126 -0
  219. package/dist/cjs/params/amount.js.map +1 -0
  220. package/dist/cjs/params/duration.js +120 -0
  221. package/dist/cjs/params/duration.js.map +1 -0
  222. package/dist/cjs/params/index.js +21 -0
  223. package/dist/cjs/params/index.js.map +1 -0
  224. package/dist/cjs/params/schedule.js +164 -0
  225. package/dist/cjs/params/schedule.js.map +1 -0
  226. package/dist/cjs/params/sol.js +76 -0
  227. package/dist/cjs/params/sol.js.map +1 -0
  228. package/dist/cjs/pda/constants.js +78 -0
  229. package/dist/cjs/pda/constants.js.map +1 -0
  230. package/dist/cjs/pda/index.js +64 -0
  231. package/dist/cjs/pda/index.js.map +1 -0
  232. package/dist/cjs/pda/lookupTable.js +58 -0
  233. package/dist/cjs/pda/lookupTable.js.map +1 -0
  234. package/dist/cjs/pda/sage.js +160 -0
  235. package/dist/cjs/pda/sage.js.map +1 -0
  236. package/dist/cjs/pda/slyvault.js +12 -0
  237. package/dist/cjs/pda/slyvault.js.map +1 -0
  238. package/dist/cjs/pda/srsly.js +130 -0
  239. package/dist/cjs/pda/srsly.js.map +1 -0
  240. package/dist/cjs/pda/thread.js +74 -0
  241. package/dist/cjs/pda/thread.js.map +1 -0
  242. package/dist/cjs/pda/token.js +63 -0
  243. package/dist/cjs/pda/token.js.map +1 -0
  244. package/dist/cjs/utils/addresses.js +131 -0
  245. package/dist/cjs/utils/addresses.js.map +1 -0
  246. package/dist/cjs/utils/bidMath.js +150 -0
  247. package/dist/cjs/utils/bidMath.js.map +1 -0
  248. package/dist/cjs/utils/config.js +212 -0
  249. package/dist/cjs/utils/config.js.map +1 -0
  250. package/dist/cjs/utils/discountAuth.js +78 -0
  251. package/dist/cjs/utils/discountAuth.js.map +1 -0
  252. package/dist/cjs/utils/index.js +68 -0
  253. package/dist/cjs/utils/index.js.map +1 -0
  254. package/dist/cjs/utils/instructionResult.js +76 -0
  255. package/dist/cjs/utils/instructionResult.js.map +1 -0
  256. package/dist/cjs/utils/instructions.js +74 -0
  257. package/dist/cjs/utils/instructions.js.map +1 -0
  258. package/dist/cjs/utils/lookupTable.js +141 -0
  259. package/dist/cjs/utils/lookupTable.js.map +1 -0
  260. package/dist/cjs/utils/rental.js +49 -0
  261. package/dist/cjs/utils/rental.js.map +1 -0
  262. package/dist/cjs/utils/rpc.js +57 -0
  263. package/dist/cjs/utils/rpc.js.map +1 -0
  264. package/dist/cjs/utils/signer.js +155 -0
  265. package/dist/cjs/utils/signer.js.map +1 -0
  266. package/dist/cjs/utils/web3js.js +76 -0
  267. package/dist/cjs/utils/web3js.js.map +1 -0
  268. package/dist/cjs/version.js +7 -0
  269. package/dist/cjs/version.js.map +1 -0
  270. package/dist/esm/accounts/borrower.js +116 -0
  271. package/dist/esm/accounts/borrower.js.map +1 -0
  272. package/dist/esm/accounts/config.js +93 -0
  273. package/dist/esm/accounts/config.js.map +1 -0
  274. package/dist/esm/accounts/contract.js +103 -0
  275. package/dist/esm/accounts/contract.js.map +1 -0
  276. package/dist/esm/accounts/fleet.js +44 -0
  277. package/dist/esm/accounts/fleet.js.map +1 -0
  278. package/dist/esm/accounts/index.js +8 -0
  279. package/dist/esm/accounts/index.js.map +1 -0
  280. package/dist/esm/accounts/member.js +9 -0
  281. package/dist/esm/accounts/member.js.map +1 -0
  282. package/dist/esm/accounts/rental.js +104 -0
  283. package/dist/esm/accounts/rental.js.map +1 -0
  284. package/dist/esm/accounts/thread.js +216 -0
  285. package/dist/esm/accounts/thread.js.map +1 -0
  286. package/dist/esm/audit/audit.js +395 -0
  287. package/dist/esm/audit/audit.js.map +1 -0
  288. package/dist/esm/audit/events.js +267 -0
  289. package/dist/esm/audit/events.js.map +1 -0
  290. package/dist/esm/audit/index.js +3 -0
  291. package/dist/esm/audit/index.js.map +1 -0
  292. package/dist/esm/audit/types.js +2 -0
  293. package/dist/esm/audit/types.js.map +1 -0
  294. package/dist/esm/cost/constants.js +31 -0
  295. package/dist/esm/cost/constants.js.map +1 -0
  296. package/dist/esm/cost/estimate.js +117 -0
  297. package/dist/esm/cost/estimate.js.map +1 -0
  298. package/dist/esm/cost/estimate.test.js +143 -0
  299. package/dist/esm/cost/estimate.test.js.map +1 -0
  300. package/dist/esm/cost/index.js +4 -0
  301. package/dist/esm/cost/index.js.map +1 -0
  302. package/dist/esm/cost/sizes.js +18 -0
  303. package/dist/esm/cost/sizes.js.map +1 -0
  304. package/dist/esm/generated/codama/accounts/borrowerState.js +68 -0
  305. package/dist/esm/generated/codama/accounts/borrowerState.js.map +1 -0
  306. package/dist/esm/generated/codama/accounts/configState.js +101 -0
  307. package/dist/esm/generated/codama/accounts/configState.js.map +1 -0
  308. package/dist/esm/generated/codama/accounts/contractState.js +103 -0
  309. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -0
  310. package/dist/esm/generated/codama/accounts/index.js +12 -0
  311. package/dist/esm/generated/codama/accounts/index.js.map +1 -0
  312. package/dist/esm/generated/codama/accounts/rentalState.js +93 -0
  313. package/dist/esm/generated/codama/accounts/rentalState.js.map +1 -0
  314. package/dist/esm/generated/codama/errors/index.js +9 -0
  315. package/dist/esm/generated/codama/errors/index.js.map +1 -0
  316. package/dist/esm/generated/codama/errors/srsly.js +306 -0
  317. package/dist/esm/generated/codama/errors/srsly.js.map +1 -0
  318. package/dist/esm/generated/codama/index.js +13 -0
  319. package/dist/esm/generated/codama/index.js.map +1 -0
  320. package/dist/esm/generated/codama/instructions/acceptRental.js +365 -0
  321. package/dist/esm/generated/codama/instructions/acceptRental.js.map +1 -0
  322. package/dist/esm/generated/codama/instructions/cancelRental.js +251 -0
  323. package/dist/esm/generated/codama/instructions/cancelRental.js.map +1 -0
  324. package/dist/esm/generated/codama/instructions/claimBorrower.js +207 -0
  325. package/dist/esm/generated/codama/instructions/claimBorrower.js.map +1 -0
  326. package/dist/esm/generated/codama/instructions/claimContract.js +185 -0
  327. package/dist/esm/generated/codama/instructions/claimContract.js.map +1 -0
  328. package/dist/esm/generated/codama/instructions/closeBorrower.js +159 -0
  329. package/dist/esm/generated/codama/instructions/closeBorrower.js.map +1 -0
  330. package/dist/esm/generated/codama/instructions/closeContract.js +276 -0
  331. package/dist/esm/generated/codama/instructions/closeContract.js.map +1 -0
  332. package/dist/esm/generated/codama/instructions/closeContractThread.js +154 -0
  333. package/dist/esm/generated/codama/instructions/closeContractThread.js.map +1 -0
  334. package/dist/esm/generated/codama/instructions/closeRental.js +322 -0
  335. package/dist/esm/generated/codama/instructions/closeRental.js.map +1 -0
  336. package/dist/esm/generated/codama/instructions/createBorrower.js +178 -0
  337. package/dist/esm/generated/codama/instructions/createBorrower.js.map +1 -0
  338. package/dist/esm/generated/codama/instructions/createConfig.js +226 -0
  339. package/dist/esm/generated/codama/instructions/createConfig.js.map +1 -0
  340. package/dist/esm/generated/codama/instructions/createContract.js +271 -0
  341. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -0
  342. package/dist/esm/generated/codama/instructions/createContractThread.js +299 -0
  343. package/dist/esm/generated/codama/instructions/createContractThread.js.map +1 -0
  344. package/dist/esm/generated/codama/instructions/deleteBorrower.js +99 -0
  345. package/dist/esm/generated/codama/instructions/deleteBorrower.js.map +1 -0
  346. package/dist/esm/generated/codama/instructions/deleteConfig.js +177 -0
  347. package/dist/esm/generated/codama/instructions/deleteConfig.js.map +1 -0
  348. package/dist/esm/generated/codama/instructions/deleteContract.js +99 -0
  349. package/dist/esm/generated/codama/instructions/deleteContract.js.map +1 -0
  350. package/dist/esm/generated/codama/instructions/deleteContractThread.js +160 -0
  351. package/dist/esm/generated/codama/instructions/deleteContractThread.js.map +1 -0
  352. package/dist/esm/generated/codama/instructions/deleteRental.js +99 -0
  353. package/dist/esm/generated/codama/instructions/deleteRental.js.map +1 -0
  354. package/dist/esm/generated/codama/instructions/index.js +33 -0
  355. package/dist/esm/generated/codama/instructions/index.js.map +1 -0
  356. package/dist/esm/generated/codama/instructions/invalidateRental.js +140 -0
  357. package/dist/esm/generated/codama/instructions/invalidateRental.js.map +1 -0
  358. package/dist/esm/generated/codama/instructions/processContract.js +203 -0
  359. package/dist/esm/generated/codama/instructions/processContract.js.map +1 -0
  360. package/dist/esm/generated/codama/instructions/releaseRental.js +138 -0
  361. package/dist/esm/generated/codama/instructions/releaseRental.js.map +1 -0
  362. package/dist/esm/generated/codama/instructions/reserveRental.js +313 -0
  363. package/dist/esm/generated/codama/instructions/reserveRental.js.map +1 -0
  364. package/dist/esm/generated/codama/instructions/setDelegate.js +65 -0
  365. package/dist/esm/generated/codama/instructions/setDelegate.js.map +1 -0
  366. package/dist/esm/generated/codama/instructions/updateConfig.js +122 -0
  367. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -0
  368. package/dist/esm/generated/codama/instructions/updateContract.js +116 -0
  369. package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -0
  370. package/dist/esm/generated/codama/instructions/updateContractThread.js +158 -0
  371. package/dist/esm/generated/codama/instructions/updateContractThread.js.map +1 -0
  372. package/dist/esm/generated/codama/programs/index.js +9 -0
  373. package/dist/esm/generated/codama/programs/index.js.map +1 -0
  374. package/dist/esm/generated/codama/programs/srsly.js +140 -0
  375. package/dist/esm/generated/codama/programs/srsly.js.map +1 -0
  376. package/dist/esm/generated/codama/shared/index.js +80 -0
  377. package/dist/esm/generated/codama/shared/index.js.map +1 -0
  378. package/dist/esm/generated/codama/types/cargoStats.js +38 -0
  379. package/dist/esm/generated/codama/types/cargoStats.js.map +1 -0
  380. package/dist/esm/generated/codama/types/combatStats.js +44 -0
  381. package/dist/esm/generated/codama/types/combatStats.js.map +1 -0
  382. package/dist/esm/generated/codama/types/feesPaid.js +28 -0
  383. package/dist/esm/generated/codama/types/feesPaid.js.map +1 -0
  384. package/dist/esm/generated/codama/types/fleet.js +69 -0
  385. package/dist/esm/generated/codama/types/fleet.js.map +1 -0
  386. package/dist/esm/generated/codama/types/index.js +27 -0
  387. package/dist/esm/generated/codama/types/index.js.map +1 -0
  388. package/dist/esm/generated/codama/types/miscStats.js +42 -0
  389. package/dist/esm/generated/codama/types/miscStats.js.map +1 -0
  390. package/dist/esm/generated/codama/types/movementStats.js +34 -0
  391. package/dist/esm/generated/codama/types/movementStats.js.map +1 -0
  392. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js +18 -0
  393. package/dist/esm/generated/codama/types/optionalNonSystemPubkey.js.map +1 -0
  394. package/dist/esm/generated/codama/types/ownerPaid.js +26 -0
  395. package/dist/esm/generated/codama/types/ownerPaid.js.map +1 -0
  396. package/dist/esm/generated/codama/types/rentalAccepted.js +38 -0
  397. package/dist/esm/generated/codama/types/rentalAccepted.js.map +1 -0
  398. package/dist/esm/generated/codama/types/rentalCancelled.js +34 -0
  399. package/dist/esm/generated/codama/types/rentalCancelled.js.map +1 -0
  400. package/dist/esm/generated/codama/types/rentalClosed.js +32 -0
  401. package/dist/esm/generated/codama/types/rentalClosed.js.map +1 -0
  402. package/dist/esm/generated/codama/types/rentalSettled.js +30 -0
  403. package/dist/esm/generated/codama/types/rentalSettled.js.map +1 -0
  404. package/dist/esm/generated/codama/types/rentalStatus.js +26 -0
  405. package/dist/esm/generated/codama/types/rentalStatus.js.map +1 -0
  406. package/dist/esm/generated/codama/types/schedule.js +56 -0
  407. package/dist/esm/generated/codama/types/schedule.js.map +1 -0
  408. package/dist/esm/generated/codama/types/shipCounts.js +40 -0
  409. package/dist/esm/generated/codama/types/shipCounts.js.map +1 -0
  410. package/dist/esm/generated/codama/types/shipStats.js +29 -0
  411. package/dist/esm/generated/codama/types/shipStats.js.map +1 -0
  412. package/dist/esm/generated/codama/types/signal.js +53 -0
  413. package/dist/esm/generated/codama/types/signal.js.map +1 -0
  414. package/dist/esm/generated/codama/types/thread.js +57 -0
  415. package/dist/esm/generated/codama/types/thread.js.map +1 -0
  416. package/dist/esm/generated/codama/types/trigger.js +94 -0
  417. package/dist/esm/generated/codama/types/trigger.js.map +1 -0
  418. package/dist/esm/idl/srsly.json +4747 -0
  419. package/dist/esm/index.js +12 -0
  420. package/dist/esm/index.js.map +1 -0
  421. package/dist/esm/instructions/acceptRental.js +242 -0
  422. package/dist/esm/instructions/acceptRental.js.map +1 -0
  423. package/dist/esm/instructions/approveAffiliate.js +7 -0
  424. package/dist/esm/instructions/approveAffiliate.js.map +1 -0
  425. package/dist/esm/instructions/cancelRental.js +98 -0
  426. package/dist/esm/instructions/cancelRental.js.map +1 -0
  427. package/dist/esm/instructions/claimBorrower.js +85 -0
  428. package/dist/esm/instructions/claimBorrower.js.map +1 -0
  429. package/dist/esm/instructions/claimContract.js +51 -0
  430. package/dist/esm/instructions/claimContract.js.map +1 -0
  431. package/dist/esm/instructions/closeBorrower.js +48 -0
  432. package/dist/esm/instructions/closeBorrower.js.map +1 -0
  433. package/dist/esm/instructions/closeContract.js +199 -0
  434. package/dist/esm/instructions/closeContract.js.map +1 -0
  435. package/dist/esm/instructions/closeContractThread.js +58 -0
  436. package/dist/esm/instructions/closeContractThread.js.map +1 -0
  437. package/dist/esm/instructions/closeRental.js +133 -0
  438. package/dist/esm/instructions/closeRental.js.map +1 -0
  439. package/dist/esm/instructions/createAffiliate.js +65 -0
  440. package/dist/esm/instructions/createAffiliate.js.map +1 -0
  441. package/dist/esm/instructions/createBorrower.js +41 -0
  442. package/dist/esm/instructions/createBorrower.js.map +1 -0
  443. package/dist/esm/instructions/createConfig.js +78 -0
  444. package/dist/esm/instructions/createConfig.js.map +1 -0
  445. package/dist/esm/instructions/createContract.js +143 -0
  446. package/dist/esm/instructions/createContract.js.map +1 -0
  447. package/dist/esm/instructions/createContractThread.js +95 -0
  448. package/dist/esm/instructions/createContractThread.js.map +1 -0
  449. package/dist/esm/instructions/deleteBorrower.js +54 -0
  450. package/dist/esm/instructions/deleteBorrower.js.map +1 -0
  451. package/dist/esm/instructions/deleteConfig.js +74 -0
  452. package/dist/esm/instructions/deleteConfig.js.map +1 -0
  453. package/dist/esm/instructions/deleteContract.js +73 -0
  454. package/dist/esm/instructions/deleteContract.js.map +1 -0
  455. package/dist/esm/instructions/deleteContractThread.js +59 -0
  456. package/dist/esm/instructions/deleteContractThread.js.map +1 -0
  457. package/dist/esm/instructions/deleteRental.js +70 -0
  458. package/dist/esm/instructions/deleteRental.js.map +1 -0
  459. package/dist/esm/instructions/index.js +33 -0
  460. package/dist/esm/instructions/index.js.map +1 -0
  461. package/dist/esm/instructions/invalidateRental.js +84 -0
  462. package/dist/esm/instructions/invalidateRental.js.map +1 -0
  463. package/dist/esm/instructions/releaseRental.js +84 -0
  464. package/dist/esm/instructions/releaseRental.js.map +1 -0
  465. package/dist/esm/instructions/removeAffiliate.js +7 -0
  466. package/dist/esm/instructions/removeAffiliate.js.map +1 -0
  467. package/dist/esm/instructions/reserveRental.js +171 -0
  468. package/dist/esm/instructions/reserveRental.js.map +1 -0
  469. package/dist/esm/instructions/setDelegate.js +64 -0
  470. package/dist/esm/instructions/setDelegate.js.map +1 -0
  471. package/dist/esm/instructions/updateAffiliate.js +52 -0
  472. package/dist/esm/instructions/updateAffiliate.js.map +1 -0
  473. package/dist/esm/instructions/updateConfig.js +91 -0
  474. package/dist/esm/instructions/updateConfig.js.map +1 -0
  475. package/dist/esm/instructions/updateContract.js +95 -0
  476. package/dist/esm/instructions/updateContract.js.map +1 -0
  477. package/dist/esm/instructions/updateContractThread.js +53 -0
  478. package/dist/esm/instructions/updateContractThread.js.map +1 -0
  479. package/dist/esm/kit/index.js +28 -0
  480. package/dist/esm/kit/index.js.map +1 -0
  481. package/dist/esm/legacy/index.js +81 -0
  482. package/dist/esm/legacy/index.js.map +1 -0
  483. package/dist/esm/package.json +78 -0
  484. package/dist/esm/params/amount.js +120 -0
  485. package/dist/esm/params/amount.js.map +1 -0
  486. package/dist/esm/params/duration.js +115 -0
  487. package/dist/esm/params/duration.js.map +1 -0
  488. package/dist/esm/params/index.js +5 -0
  489. package/dist/esm/params/index.js.map +1 -0
  490. package/dist/esm/params/schedule.js +157 -0
  491. package/dist/esm/params/schedule.js.map +1 -0
  492. package/dist/esm/params/sol.js +73 -0
  493. package/dist/esm/params/sol.js.map +1 -0
  494. package/dist/esm/pda/constants.js +72 -0
  495. package/dist/esm/pda/constants.js.map +1 -0
  496. package/dist/esm/pda/index.js +26 -0
  497. package/dist/esm/pda/index.js.map +1 -0
  498. package/dist/esm/pda/lookupTable.js +55 -0
  499. package/dist/esm/pda/lookupTable.js.map +1 -0
  500. package/dist/esm/pda/sage.js +153 -0
  501. package/dist/esm/pda/sage.js.map +1 -0
  502. package/dist/esm/pda/slyvault.js +8 -0
  503. package/dist/esm/pda/slyvault.js.map +1 -0
  504. package/dist/esm/pda/srsly.js +122 -0
  505. package/dist/esm/pda/srsly.js.map +1 -0
  506. package/dist/esm/pda/thread.js +70 -0
  507. package/dist/esm/pda/thread.js.map +1 -0
  508. package/dist/esm/pda/token.js +60 -0
  509. package/dist/esm/pda/token.js.map +1 -0
  510. package/dist/esm/utils/addresses.js +125 -0
  511. package/dist/esm/utils/addresses.js.map +1 -0
  512. package/dist/esm/utils/bidMath.js +146 -0
  513. package/dist/esm/utils/bidMath.js.map +1 -0
  514. package/dist/esm/utils/config.js +200 -0
  515. package/dist/esm/utils/config.js.map +1 -0
  516. package/dist/esm/utils/discountAuth.js +73 -0
  517. package/dist/esm/utils/discountAuth.js.map +1 -0
  518. package/dist/esm/utils/index.js +27 -0
  519. package/dist/esm/utils/index.js.map +1 -0
  520. package/dist/esm/utils/instructionResult.js +72 -0
  521. package/dist/esm/utils/instructionResult.js.map +1 -0
  522. package/dist/esm/utils/instructions.js +71 -0
  523. package/dist/esm/utils/instructions.js.map +1 -0
  524. package/dist/esm/utils/lookupTable.js +137 -0
  525. package/dist/esm/utils/lookupTable.js.map +1 -0
  526. package/dist/esm/utils/rental.js +45 -0
  527. package/dist/esm/utils/rental.js.map +1 -0
  528. package/dist/esm/utils/rpc.js +52 -0
  529. package/dist/esm/utils/rpc.js.map +1 -0
  530. package/dist/esm/utils/signer.js +147 -0
  531. package/dist/esm/utils/signer.js.map +1 -0
  532. package/dist/esm/utils/web3js.js +72 -0
  533. package/dist/esm/utils/web3js.js.map +1 -0
  534. package/dist/esm/version.js +4 -0
  535. package/dist/esm/version.js.map +1 -0
  536. package/dist/idl/srsly.json +4747 -0
  537. package/dist/types/accounts/borrower.d.ts +58 -0
  538. package/dist/types/accounts/borrower.d.ts.map +1 -0
  539. package/dist/types/accounts/config.d.ts +50 -0
  540. package/dist/types/accounts/config.d.ts.map +1 -0
  541. package/dist/types/accounts/contract.d.ts +53 -0
  542. package/dist/types/accounts/contract.d.ts.map +1 -0
  543. package/dist/types/accounts/fleet.d.ts +24 -0
  544. package/dist/types/accounts/fleet.d.ts.map +1 -0
  545. package/dist/types/accounts/index.d.ts +8 -0
  546. package/dist/types/accounts/index.d.ts.map +1 -0
  547. package/dist/types/accounts/member.d.ts +9 -0
  548. package/dist/types/accounts/member.d.ts.map +1 -0
  549. package/dist/types/accounts/rental.d.ts +53 -0
  550. package/dist/types/accounts/rental.d.ts.map +1 -0
  551. package/dist/types/accounts/thread.d.ts +78 -0
  552. package/dist/types/accounts/thread.d.ts.map +1 -0
  553. package/dist/types/audit/audit.d.ts +10 -0
  554. package/dist/types/audit/audit.d.ts.map +1 -0
  555. package/dist/types/audit/events.d.ts +17 -0
  556. package/dist/types/audit/events.d.ts.map +1 -0
  557. package/dist/types/audit/index.d.ts +4 -0
  558. package/dist/types/audit/index.d.ts.map +1 -0
  559. package/dist/types/audit/types.d.ts +132 -0
  560. package/dist/types/audit/types.d.ts.map +1 -0
  561. package/dist/types/cost/constants.d.ts +31 -0
  562. package/dist/types/cost/constants.d.ts.map +1 -0
  563. package/dist/types/cost/estimate.d.ts +93 -0
  564. package/dist/types/cost/estimate.d.ts.map +1 -0
  565. package/dist/types/cost/estimate.test.d.ts +2 -0
  566. package/dist/types/cost/estimate.test.d.ts.map +1 -0
  567. package/dist/types/cost/index.d.ts +4 -0
  568. package/dist/types/cost/index.d.ts.map +1 -0
  569. package/dist/types/cost/sizes.d.ts +18 -0
  570. package/dist/types/cost/sizes.d.ts.map +1 -0
  571. package/dist/types/generated/codama/accounts/borrowerState.d.ts +82 -0
  572. package/dist/types/generated/codama/accounts/borrowerState.d.ts.map +1 -0
  573. package/dist/types/generated/codama/accounts/configState.d.ts +159 -0
  574. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -0
  575. package/dist/types/generated/codama/accounts/contractState.d.ts +165 -0
  576. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -0
  577. package/dist/types/generated/codama/accounts/index.d.ts +12 -0
  578. package/dist/types/generated/codama/accounts/index.d.ts.map +1 -0
  579. package/dist/types/generated/codama/accounts/rentalState.d.ts +125 -0
  580. package/dist/types/generated/codama/accounts/rentalState.d.ts.map +1 -0
  581. package/dist/types/generated/codama/errors/index.d.ts +9 -0
  582. package/dist/types/generated/codama/errors/index.d.ts.map +1 -0
  583. package/dist/types/generated/codama/errors/srsly.d.ts +208 -0
  584. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -0
  585. package/dist/types/generated/codama/index.d.ts +13 -0
  586. package/dist/types/generated/codama/index.d.ts.map +1 -0
  587. package/dist/types/generated/codama/instructions/acceptRental.d.ts +176 -0
  588. package/dist/types/generated/codama/instructions/acceptRental.d.ts.map +1 -0
  589. package/dist/types/generated/codama/instructions/cancelRental.d.ts +107 -0
  590. package/dist/types/generated/codama/instructions/cancelRental.d.ts.map +1 -0
  591. package/dist/types/generated/codama/instructions/claimBorrower.d.ts +82 -0
  592. package/dist/types/generated/codama/instructions/claimBorrower.d.ts.map +1 -0
  593. package/dist/types/generated/codama/instructions/claimContract.d.ts +79 -0
  594. package/dist/types/generated/codama/instructions/claimContract.d.ts.map +1 -0
  595. package/dist/types/generated/codama/instructions/closeBorrower.d.ts +79 -0
  596. package/dist/types/generated/codama/instructions/closeBorrower.d.ts.map +1 -0
  597. package/dist/types/generated/codama/instructions/closeContract.d.ts +130 -0
  598. package/dist/types/generated/codama/instructions/closeContract.d.ts.map +1 -0
  599. package/dist/types/generated/codama/instructions/closeContractThread.d.ts +70 -0
  600. package/dist/types/generated/codama/instructions/closeContractThread.d.ts.map +1 -0
  601. package/dist/types/generated/codama/instructions/closeRental.d.ts +149 -0
  602. package/dist/types/generated/codama/instructions/closeRental.d.ts.map +1 -0
  603. package/dist/types/generated/codama/instructions/createBorrower.d.ts +71 -0
  604. package/dist/types/generated/codama/instructions/createBorrower.d.ts.map +1 -0
  605. package/dist/types/generated/codama/instructions/createConfig.d.ts +100 -0
  606. package/dist/types/generated/codama/instructions/createConfig.d.ts.map +1 -0
  607. package/dist/types/generated/codama/instructions/createContract.d.ts +131 -0
  608. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -0
  609. package/dist/types/generated/codama/instructions/createContractThread.d.ts +133 -0
  610. package/dist/types/generated/codama/instructions/createContractThread.d.ts.map +1 -0
  611. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts +58 -0
  612. package/dist/types/generated/codama/instructions/deleteBorrower.d.ts.map +1 -0
  613. package/dist/types/generated/codama/instructions/deleteConfig.d.ts +75 -0
  614. package/dist/types/generated/codama/instructions/deleteConfig.d.ts.map +1 -0
  615. package/dist/types/generated/codama/instructions/deleteContract.d.ts +58 -0
  616. package/dist/types/generated/codama/instructions/deleteContract.d.ts.map +1 -0
  617. package/dist/types/generated/codama/instructions/deleteContractThread.d.ts +70 -0
  618. package/dist/types/generated/codama/instructions/deleteContractThread.d.ts.map +1 -0
  619. package/dist/types/generated/codama/instructions/deleteRental.d.ts +61 -0
  620. package/dist/types/generated/codama/instructions/deleteRental.d.ts.map +1 -0
  621. package/dist/types/generated/codama/instructions/index.d.ts +33 -0
  622. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -0
  623. package/dist/types/generated/codama/instructions/invalidateRental.d.ts +89 -0
  624. package/dist/types/generated/codama/instructions/invalidateRental.d.ts.map +1 -0
  625. package/dist/types/generated/codama/instructions/processContract.d.ts +100 -0
  626. package/dist/types/generated/codama/instructions/processContract.d.ts.map +1 -0
  627. package/dist/types/generated/codama/instructions/releaseRental.d.ts +98 -0
  628. package/dist/types/generated/codama/instructions/releaseRental.d.ts.map +1 -0
  629. package/dist/types/generated/codama/instructions/reserveRental.d.ts +159 -0
  630. package/dist/types/generated/codama/instructions/reserveRental.d.ts.map +1 -0
  631. package/dist/types/generated/codama/instructions/setDelegate.d.ts +44 -0
  632. package/dist/types/generated/codama/instructions/setDelegate.d.ts.map +1 -0
  633. package/dist/types/generated/codama/instructions/updateConfig.d.ts +158 -0
  634. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -0
  635. package/dist/types/generated/codama/instructions/updateContract.d.ts +102 -0
  636. package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -0
  637. package/dist/types/generated/codama/instructions/updateContractThread.d.ts +76 -0
  638. package/dist/types/generated/codama/instructions/updateContractThread.d.ts.map +1 -0
  639. package/dist/types/generated/codama/programs/index.d.ts +9 -0
  640. package/dist/types/generated/codama/programs/index.d.ts.map +1 -0
  641. package/dist/types/generated/codama/programs/srsly.d.ts +101 -0
  642. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -0
  643. package/dist/types/generated/codama/shared/index.d.ts +50 -0
  644. package/dist/types/generated/codama/shared/index.d.ts.map +1 -0
  645. package/dist/types/generated/codama/types/cargoStats.d.ts +25 -0
  646. package/dist/types/generated/codama/types/cargoStats.d.ts.map +1 -0
  647. package/dist/types/generated/codama/types/combatStats.d.ts +28 -0
  648. package/dist/types/generated/codama/types/combatStats.d.ts.map +1 -0
  649. package/dist/types/generated/codama/types/feesPaid.d.ts +28 -0
  650. package/dist/types/generated/codama/types/feesPaid.d.ts.map +1 -0
  651. package/dist/types/generated/codama/types/fleet.d.ts +66 -0
  652. package/dist/types/generated/codama/types/fleet.d.ts.map +1 -0
  653. package/dist/types/generated/codama/types/index.d.ts +27 -0
  654. package/dist/types/generated/codama/types/index.d.ts.map +1 -0
  655. package/dist/types/generated/codama/types/miscStats.d.ts +27 -0
  656. package/dist/types/generated/codama/types/miscStats.d.ts.map +1 -0
  657. package/dist/types/generated/codama/types/movementStats.d.ts +23 -0
  658. package/dist/types/generated/codama/types/movementStats.d.ts.map +1 -0
  659. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts +17 -0
  660. package/dist/types/generated/codama/types/optionalNonSystemPubkey.d.ts.map +1 -0
  661. package/dist/types/generated/codama/types/ownerPaid.d.ts +26 -0
  662. package/dist/types/generated/codama/types/ownerPaid.d.ts.map +1 -0
  663. package/dist/types/generated/codama/types/rentalAccepted.d.ts +38 -0
  664. package/dist/types/generated/codama/types/rentalAccepted.d.ts.map +1 -0
  665. package/dist/types/generated/codama/types/rentalCancelled.d.ts +34 -0
  666. package/dist/types/generated/codama/types/rentalCancelled.d.ts.map +1 -0
  667. package/dist/types/generated/codama/types/rentalClosed.d.ts +32 -0
  668. package/dist/types/generated/codama/types/rentalClosed.d.ts.map +1 -0
  669. package/dist/types/generated/codama/types/rentalSettled.d.ts +30 -0
  670. package/dist/types/generated/codama/types/rentalSettled.d.ts.map +1 -0
  671. package/dist/types/generated/codama/types/rentalStatus.d.ts +20 -0
  672. package/dist/types/generated/codama/types/rentalStatus.d.ts.map +1 -0
  673. package/dist/types/generated/codama/types/schedule.d.ts +46 -0
  674. package/dist/types/generated/codama/types/schedule.d.ts.map +1 -0
  675. package/dist/types/generated/codama/types/shipCounts.d.ts +26 -0
  676. package/dist/types/generated/codama/types/shipCounts.d.ts.map +1 -0
  677. package/dist/types/generated/codama/types/shipStats.d.ts +26 -0
  678. package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -0
  679. package/dist/types/generated/codama/types/signal.d.ts +60 -0
  680. package/dist/types/generated/codama/types/signal.d.ts.map +1 -0
  681. package/dist/types/generated/codama/types/thread.d.ts +54 -0
  682. package/dist/types/generated/codama/types/thread.d.ts.map +1 -0
  683. package/dist/types/generated/codama/types/trigger.d.ts +109 -0
  684. package/dist/types/generated/codama/types/trigger.d.ts.map +1 -0
  685. package/dist/types/index.d.ts +12 -0
  686. package/dist/types/index.d.ts.map +1 -0
  687. package/dist/types/instructions/acceptRental.d.ts +98 -0
  688. package/dist/types/instructions/acceptRental.d.ts.map +1 -0
  689. package/dist/types/instructions/approveAffiliate.d.ts +7 -0
  690. package/dist/types/instructions/approveAffiliate.d.ts.map +1 -0
  691. package/dist/types/instructions/cancelRental.d.ts +77 -0
  692. package/dist/types/instructions/cancelRental.d.ts.map +1 -0
  693. package/dist/types/instructions/claimBorrower.d.ts +74 -0
  694. package/dist/types/instructions/claimBorrower.d.ts.map +1 -0
  695. package/dist/types/instructions/claimContract.d.ts +38 -0
  696. package/dist/types/instructions/claimContract.d.ts.map +1 -0
  697. package/dist/types/instructions/closeBorrower.d.ts +43 -0
  698. package/dist/types/instructions/closeBorrower.d.ts.map +1 -0
  699. package/dist/types/instructions/closeContract.d.ts +79 -0
  700. package/dist/types/instructions/closeContract.d.ts.map +1 -0
  701. package/dist/types/instructions/closeContractThread.d.ts +37 -0
  702. package/dist/types/instructions/closeContractThread.d.ts.map +1 -0
  703. package/dist/types/instructions/closeRental.d.ts +52 -0
  704. package/dist/types/instructions/closeRental.d.ts.map +1 -0
  705. package/dist/types/instructions/createAffiliate.d.ts +61 -0
  706. package/dist/types/instructions/createAffiliate.d.ts.map +1 -0
  707. package/dist/types/instructions/createBorrower.d.ts +34 -0
  708. package/dist/types/instructions/createBorrower.d.ts.map +1 -0
  709. package/dist/types/instructions/createConfig.d.ts +70 -0
  710. package/dist/types/instructions/createConfig.d.ts.map +1 -0
  711. package/dist/types/instructions/createContract.d.ts +145 -0
  712. package/dist/types/instructions/createContract.d.ts.map +1 -0
  713. package/dist/types/instructions/createContractThread.d.ts +57 -0
  714. package/dist/types/instructions/createContractThread.d.ts.map +1 -0
  715. package/dist/types/instructions/deleteBorrower.d.ts +53 -0
  716. package/dist/types/instructions/deleteBorrower.d.ts.map +1 -0
  717. package/dist/types/instructions/deleteConfig.d.ts +55 -0
  718. package/dist/types/instructions/deleteConfig.d.ts.map +1 -0
  719. package/dist/types/instructions/deleteContract.d.ts +57 -0
  720. package/dist/types/instructions/deleteContract.d.ts.map +1 -0
  721. package/dist/types/instructions/deleteContractThread.d.ts +39 -0
  722. package/dist/types/instructions/deleteContractThread.d.ts.map +1 -0
  723. package/dist/types/instructions/deleteRental.d.ts +66 -0
  724. package/dist/types/instructions/deleteRental.d.ts.map +1 -0
  725. package/dist/types/instructions/index.d.ts +33 -0
  726. package/dist/types/instructions/index.d.ts.map +1 -0
  727. package/dist/types/instructions/invalidateRental.d.ts +70 -0
  728. package/dist/types/instructions/invalidateRental.d.ts.map +1 -0
  729. package/dist/types/instructions/releaseRental.d.ts +70 -0
  730. package/dist/types/instructions/releaseRental.d.ts.map +1 -0
  731. package/dist/types/instructions/removeAffiliate.d.ts +7 -0
  732. package/dist/types/instructions/removeAffiliate.d.ts.map +1 -0
  733. package/dist/types/instructions/reserveRental.d.ts +89 -0
  734. package/dist/types/instructions/reserveRental.d.ts.map +1 -0
  735. package/dist/types/instructions/setDelegate.d.ts +60 -0
  736. package/dist/types/instructions/setDelegate.d.ts.map +1 -0
  737. package/dist/types/instructions/updateAffiliate.d.ts +62 -0
  738. package/dist/types/instructions/updateAffiliate.d.ts.map +1 -0
  739. package/dist/types/instructions/updateConfig.d.ts +128 -0
  740. package/dist/types/instructions/updateConfig.d.ts.map +1 -0
  741. package/dist/types/instructions/updateContract.d.ts +114 -0
  742. package/dist/types/instructions/updateContract.d.ts.map +1 -0
  743. package/dist/types/instructions/updateContractThread.d.ts +53 -0
  744. package/dist/types/instructions/updateContractThread.d.ts.map +1 -0
  745. package/dist/types/kit/index.d.ts +27 -0
  746. package/dist/types/kit/index.d.ts.map +1 -0
  747. package/dist/types/legacy/index.d.ts +62 -0
  748. package/dist/types/legacy/index.d.ts.map +1 -0
  749. package/dist/types/params/amount.d.ts +75 -0
  750. package/dist/types/params/amount.d.ts.map +1 -0
  751. package/dist/types/params/duration.d.ts +65 -0
  752. package/dist/types/params/duration.d.ts.map +1 -0
  753. package/dist/types/params/index.d.ts +5 -0
  754. package/dist/types/params/index.d.ts.map +1 -0
  755. package/dist/types/params/schedule.d.ts +74 -0
  756. package/dist/types/params/schedule.d.ts.map +1 -0
  757. package/dist/types/params/sol.d.ts +39 -0
  758. package/dist/types/params/sol.d.ts.map +1 -0
  759. package/dist/types/pda/constants.d.ts +56 -0
  760. package/dist/types/pda/constants.d.ts.map +1 -0
  761. package/dist/types/pda/index.d.ts +20 -0
  762. package/dist/types/pda/index.d.ts.map +1 -0
  763. package/dist/types/pda/lookupTable.d.ts +30 -0
  764. package/dist/types/pda/lookupTable.d.ts.map +1 -0
  765. package/dist/types/pda/sage.d.ts +70 -0
  766. package/dist/types/pda/sage.d.ts.map +1 -0
  767. package/dist/types/pda/slyvault.d.ts +8 -0
  768. package/dist/types/pda/slyvault.d.ts.map +1 -0
  769. package/dist/types/pda/srsly.d.ts +53 -0
  770. package/dist/types/pda/srsly.d.ts.map +1 -0
  771. package/dist/types/pda/thread.d.ts +31 -0
  772. package/dist/types/pda/thread.d.ts.map +1 -0
  773. package/dist/types/pda/token.d.ts +30 -0
  774. package/dist/types/pda/token.d.ts.map +1 -0
  775. package/dist/types/utils/addresses.d.ts +97 -0
  776. package/dist/types/utils/addresses.d.ts.map +1 -0
  777. package/dist/types/utils/bidMath.d.ts +89 -0
  778. package/dist/types/utils/bidMath.d.ts.map +1 -0
  779. package/dist/types/utils/config.d.ts +213 -0
  780. package/dist/types/utils/config.d.ts.map +1 -0
  781. package/dist/types/utils/discountAuth.d.ts +57 -0
  782. package/dist/types/utils/discountAuth.d.ts.map +1 -0
  783. package/dist/types/utils/index.d.ts +16 -0
  784. package/dist/types/utils/index.d.ts.map +1 -0
  785. package/dist/types/utils/instructionResult.d.ts +57 -0
  786. package/dist/types/utils/instructionResult.d.ts.map +1 -0
  787. package/dist/types/utils/instructions.d.ts +50 -0
  788. package/dist/types/utils/instructions.d.ts.map +1 -0
  789. package/dist/types/utils/lookupTable.d.ts +48 -0
  790. package/dist/types/utils/lookupTable.d.ts.map +1 -0
  791. package/dist/types/utils/rental.d.ts +22 -0
  792. package/dist/types/utils/rental.d.ts.map +1 -0
  793. package/dist/types/utils/rpc.d.ts +37 -0
  794. package/dist/types/utils/rpc.d.ts.map +1 -0
  795. package/dist/types/utils/signer.d.ts +103 -0
  796. package/dist/types/utils/signer.d.ts.map +1 -0
  797. package/dist/types/utils/web3js.d.ts +85 -0
  798. package/dist/types/utils/web3js.d.ts.map +1 -0
  799. package/dist/types/version.d.ts +2 -0
  800. package/dist/types/version.d.ts.map +1 -0
  801. package/package.json +111 -0
@@ -0,0 +1,122 @@
1
+ /**
2
+ * PDA derivation functions for the SRSLY program
3
+ * @module pda/srsly
4
+ */
5
+ import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
6
+ import { getAddresses } from '../utils/config';
7
+ import { getSignerAddress } from '../utils/signer';
8
+ import { CONFIG_SEED, CONTRACT_SEED, RENTAL_SEED, RENTAL_AUTHORITY_SEED, BORROWER_STATE_SEED, ACTIVE_RENTAL_SEED, QUEUED_RENTAL_SEED, } from './constants';
9
+ /**
10
+ * Address encoder for PDA seeds
11
+ */
12
+ const addressEncoder = getAddressEncoder();
13
+ /**
14
+ * Text encoder for string seeds
15
+ */
16
+ const textEncoder = new TextEncoder();
17
+ /**
18
+ * Derive the contract PDA from a fleet address
19
+ * @param fleet - The fleet public key
20
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
21
+ * @returns The derived contract PDA
22
+ */
23
+ export async function deriveContract(fleet, programAddress) {
24
+ const fleetAddress = getSignerAddress(fleet);
25
+ const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
26
+ // Encode seeds to bytes
27
+ const contractSeedBytes = textEncoder.encode(CONTRACT_SEED);
28
+ const fleetBytes = addressEncoder.encode(fleetAddress);
29
+ const [pda] = await getProgramDerivedAddress({
30
+ programAddress: program,
31
+ seeds: [contractSeedBytes, fleetBytes],
32
+ });
33
+ return pda;
34
+ }
35
+ /**
36
+ * Internal helper to derive a rental PDA with a named seed suffix
37
+ */
38
+ async function deriveRentalWithSeed(contract, seedSuffix, programAddress) {
39
+ const contractAddress = getSignerAddress(contract);
40
+ const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
41
+ const rentalSeedBytes = textEncoder.encode(RENTAL_SEED);
42
+ const contractBytes = addressEncoder.encode(contractAddress);
43
+ const suffixBytes = textEncoder.encode(seedSuffix);
44
+ const [pda] = await getProgramDerivedAddress({
45
+ programAddress: program,
46
+ seeds: [rentalSeedBytes, contractBytes, suffixBytes],
47
+ });
48
+ return pda;
49
+ }
50
+ /**
51
+ * Derive the active rental PDA from contract address
52
+ *
53
+ * Seeds: ["rental_state", contract, "active"]
54
+ *
55
+ * @param contract - The contract public key
56
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
57
+ * @returns The derived active rental PDA
58
+ */
59
+ export async function deriveActiveRental(contract, programAddress) {
60
+ return deriveRentalWithSeed(contract, ACTIVE_RENTAL_SEED, programAddress);
61
+ }
62
+ /**
63
+ * Derive the queued rental PDA from contract address
64
+ *
65
+ * Seeds: ["rental_state", contract, "queued"]
66
+ *
67
+ * @param contract - The contract public key
68
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
69
+ * @returns The derived queued rental PDA
70
+ */
71
+ export async function deriveQueuedRental(contract, programAddress) {
72
+ return deriveRentalWithSeed(contract, QUEUED_RENTAL_SEED, programAddress);
73
+ }
74
+ /**
75
+ * Derive the rental authority PDA
76
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
77
+ * @returns The derived rental authority PDA
78
+ */
79
+ export async function deriveRentalAuthority(programAddress) {
80
+ const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
81
+ // Encode seeds to bytes
82
+ const rentalAuthoritySeedBytes = textEncoder.encode(RENTAL_AUTHORITY_SEED);
83
+ const [pda] = await getProgramDerivedAddress({
84
+ programAddress: program,
85
+ seeds: [rentalAuthoritySeedBytes],
86
+ });
87
+ return pda;
88
+ }
89
+ /**
90
+ * Derive the borrower state PDA from a borrower address
91
+ * @param borrower - The borrower public key
92
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
93
+ * @returns The derived borrower state PDA
94
+ */
95
+ export async function deriveBorrowerState(borrower, programAddress) {
96
+ const borrowerAddress = getSignerAddress(borrower);
97
+ const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
98
+ // Encode seeds to bytes
99
+ const borrowerStateSeedBytes = textEncoder.encode(BORROWER_STATE_SEED);
100
+ const borrowerBytes = addressEncoder.encode(borrowerAddress);
101
+ const [pda] = await getProgramDerivedAddress({
102
+ programAddress: program,
103
+ seeds: [borrowerStateSeedBytes, borrowerBytes],
104
+ });
105
+ return pda;
106
+ }
107
+ /**
108
+ * Derive the config PDA
109
+ * @param programAddress - Optional SRSLY program address (defaults to network-specific address)
110
+ * @returns The derived config PDA
111
+ */
112
+ export async function deriveConfig(programAddress) {
113
+ const program = programAddress ? getSignerAddress(programAddress) : address(getAddresses().srsly);
114
+ // Encode seeds to bytes
115
+ const configSeedBytes = textEncoder.encode(CONFIG_SEED);
116
+ const [pda] = await getProgramDerivedAddress({
117
+ programAddress: program,
118
+ seeds: [configSeedBytes],
119
+ });
120
+ return pda;
121
+ }
122
+ //# sourceMappingURL=srsly.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"srsly.js","sourceRoot":"","sources":["../../../src/pda/srsly.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,70 @@
1
+ /**
2
+ * PDA derivation functions for the Antegen (Thread) program
3
+ * @module pda/thread
4
+ */
5
+ import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
6
+ import { getSignerAddress } from '../utils/signer';
7
+ import { THREAD_SEED, THREAD_FIBER_SEED, ANTEGEN_THREAD_PROGRAM, ANTEGEN_FIBER_PROGRAM, } from './constants';
8
+ /**
9
+ * Address encoder for PDA seeds
10
+ */
11
+ const addressEncoder = getAddressEncoder();
12
+ /**
13
+ * Text encoder for string seeds
14
+ */
15
+ const textEncoder = new TextEncoder();
16
+ /**
17
+ * Derive the contract thread PDA
18
+ *
19
+ * Per-contract thread used by Antegen for automated payment scheduling.
20
+ * Thread PDAs use seeds: [SEED_THREAD, authority, id]
21
+ * where id = contract address.
22
+ *
23
+ * @param contract - The contract PDA (used as the thread ID)
24
+ * @param authority - The rental authority PDA (thread authority)
25
+ * @param programAddress - Optional Antegen program address (defaults to Antegen program)
26
+ * @returns The derived contract thread PDA
27
+ */
28
+ export async function deriveContractThread(contract, authority, programAddress) {
29
+ const contractAddress = getSignerAddress(contract);
30
+ const authorityAddr = getSignerAddress(authority);
31
+ const program = programAddress
32
+ ? getSignerAddress(programAddress)
33
+ : address(ANTEGEN_THREAD_PROGRAM);
34
+ // Encode seeds to bytes
35
+ // Antegen ALWAYS uses: [SEED_THREAD, authority, id]
36
+ const threadSeedBytes = textEncoder.encode(THREAD_SEED);
37
+ const authorityBytes = addressEncoder.encode(authorityAddr);
38
+ const contractBytes = addressEncoder.encode(contractAddress);
39
+ const seeds = [threadSeedBytes, authorityBytes, contractBytes];
40
+ const [pda] = await getProgramDerivedAddress({
41
+ programAddress: program,
42
+ seeds,
43
+ });
44
+ return pda;
45
+ }
46
+ /**
47
+ * Derive the fiber PDA for a thread
48
+ *
49
+ * Fiber PDAs use seeds: ["thread_fiber", thread, fiber_index (u8)]
50
+ *
51
+ * @param thread - The thread PDA
52
+ * @param fiberIndex - The fiber index (1 for close_rental, 2 for activate_rental)
53
+ * @param programAddress - Optional Antegen program address
54
+ * @returns The derived fiber PDA
55
+ */
56
+ export async function deriveFiber(thread, fiberIndex, programAddress) {
57
+ const threadAddress = getSignerAddress(thread);
58
+ const program = programAddress
59
+ ? getSignerAddress(programAddress)
60
+ : address(ANTEGEN_FIBER_PROGRAM);
61
+ const fiberSeedBytes = textEncoder.encode(THREAD_FIBER_SEED);
62
+ const threadBytes = addressEncoder.encode(threadAddress);
63
+ const indexBytes = new Uint8Array([fiberIndex]);
64
+ const [pda] = await getProgramDerivedAddress({
65
+ programAddress: program,
66
+ seeds: [fiberSeedBytes, threadBytes, indexBytes],
67
+ });
68
+ return pda;
69
+ }
70
+ //# sourceMappingURL=thread.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"thread.js","sourceRoot":"","sources":["../../../src/pda/thread.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AACzE,OAAO,EACL,WAAW,EACX,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,aAAa,CAAC;AAErB;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;GAEG;AACH,MAAM,WAAW,GAAG,IAAI,WAAW,EAAE,CAAC;AAEtC;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACxC,QAAyB,EACzB,SAA0B,EAC1B,cAAgC;IAEhC,MAAM,eAAe,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnD,MAAM,aAAa,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAClD,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,sBAAsB,CAAC,CAAC;IAEpC,wBAAwB;IACxB,oDAAoD;IACpD,MAAM,eAAe,GAAG,WAAW,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IACxD,MAAM,cAAc,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IAC5D,MAAM,aAAa,GAAG,cAAc,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;IAE7D,MAAM,KAAK,GAAG,CAAC,eAAe,EAAE,cAAc,EAAE,aAAa,CAAC,CAAC;IAE/D,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK;KACN,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,MAAuB,EACvB,UAAkB,EAClB,cAAgC;IAEhC,MAAM,aAAa,GAAG,gBAAgB,CAAC,MAAM,CAAC,CAAC;IAC/C,MAAM,OAAO,GAAG,cAAc;QAC5B,CAAC,CAAC,gBAAgB,CAAC,cAAc,CAAC;QAClC,CAAC,CAAC,OAAO,CAAC,qBAAqB,CAAC,CAAC;IAEnC,MAAM,cAAc,GAAG,WAAW,CAAC,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAC7D,MAAM,WAAW,GAAG,cAAc,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;IACzD,MAAM,UAAU,GAAG,IAAI,UAAU,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;IAEhD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,OAAO;QACvB,KAAK,EAAE,CAAC,cAAc,EAAE,WAAW,EAAE,UAAU,CAAC;KACjD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,60 @@
1
+ /**
2
+ * Token account derivation utilities
3
+ * @module pda/token
4
+ */
5
+ import { address, getProgramDerivedAddress, getAddressEncoder } from '@solana/kit';
6
+ import { getSignerAddress } from '../utils/signer';
7
+ /**
8
+ * SPL Token program address
9
+ */
10
+ const TOKEN_PROGRAM = 'TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA';
11
+ /**
12
+ * SPL Associated Token Account program address
13
+ */
14
+ const ASSOCIATED_TOKEN_PROGRAM = 'ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL';
15
+ /**
16
+ * Address encoder for PDA seeds
17
+ */
18
+ const addressEncoder = getAddressEncoder();
19
+ /**
20
+ * Derive an Associated Token Account (ATA) address
21
+ *
22
+ * ATAs are deterministic token accounts owned by a wallet for a specific token mint.
23
+ * This is the standard way to derive token account addresses in Solana.
24
+ *
25
+ * @param owner - The wallet public key that owns the ATA
26
+ * @param mint - The token mint public key
27
+ * @param tokenProgramAddress - Optional token program address (defaults to SPL Token)
28
+ * @param associatedTokenProgramAddress - Optional ATA program address (defaults to SPL ATA)
29
+ * @returns The derived ATA address
30
+ *
31
+ * @example
32
+ * ```typescript
33
+ * import { deriveAssociatedTokenAccount } from './token';
34
+ *
35
+ * const ata = await deriveAssociatedTokenAccount(
36
+ * walletAddress,
37
+ * atlasMintAddress
38
+ * );
39
+ * ```
40
+ */
41
+ export async function deriveAssociatedTokenAccount(owner, mint, tokenProgramAddress, associatedTokenProgramAddress) {
42
+ const ownerAddress = getSignerAddress(owner);
43
+ const mintAddress = getSignerAddress(mint);
44
+ const tokenProgram = tokenProgramAddress
45
+ ? getSignerAddress(tokenProgramAddress)
46
+ : address(TOKEN_PROGRAM);
47
+ const ataProgram = associatedTokenProgramAddress
48
+ ? getSignerAddress(associatedTokenProgramAddress)
49
+ : address(ASSOCIATED_TOKEN_PROGRAM);
50
+ // Encode all address seeds to bytes for PDA derivation
51
+ const ownerBytes = addressEncoder.encode(ownerAddress);
52
+ const tokenProgramBytes = addressEncoder.encode(tokenProgram);
53
+ const mintBytes = addressEncoder.encode(mintAddress);
54
+ const [pda] = await getProgramDerivedAddress({
55
+ programAddress: ataProgram,
56
+ seeds: [ownerBytes, tokenProgramBytes, mintBytes],
57
+ });
58
+ return pda;
59
+ }
60
+ //# sourceMappingURL=token.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"token.js","sourceRoot":"","sources":["../../../src/pda/token.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAW,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC5F,OAAO,EAAE,gBAAgB,EAAwB,MAAM,iBAAiB,CAAC;AAEzE;;GAEG;AACH,MAAM,aAAa,GAAG,6CAA6C,CAAC;AAEpE;;GAEG;AACH,MAAM,wBAAwB,GAAG,8CAA8C,CAAC;AAEhF;;GAEG;AACH,MAAM,cAAc,GAAG,iBAAiB,EAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,KAAsB,EACtB,IAAqB,EACrB,mBAAqC,EACrC,6BAA+C;IAE/C,MAAM,YAAY,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC3C,MAAM,YAAY,GAAG,mBAAmB;QACtC,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,CAAC;QACvC,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC3B,MAAM,UAAU,GAAG,6BAA6B;QAC9C,CAAC,CAAC,gBAAgB,CAAC,6BAA6B,CAAC;QACjD,CAAC,CAAC,OAAO,CAAC,wBAAwB,CAAC,CAAC;IAEtC,uDAAuD;IACvD,MAAM,UAAU,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACvD,MAAM,iBAAiB,GAAG,cAAc,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IAC9D,MAAM,SAAS,GAAG,cAAc,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;IAErD,MAAM,CAAC,GAAG,CAAC,GAAG,MAAM,wBAAwB,CAAC;QAC3C,cAAc,EAAE,UAAU;QAC1B,KAAK,EAAE,CAAC,UAAU,EAAE,iBAAiB,EAAE,SAAS,CAAC;KAClD,CAAC,CAAC;IAEH,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -0,0 +1,125 @@
1
+ /**
2
+ * @purpose Centralized program and token addresses for different networks
3
+ *
4
+ * Single source of truth for all Solana program addresses used by SRSLY.
5
+ * Supports mainnet-beta, devnet, and localnet environments.
6
+ */
7
+ import { SRSLY_PROGRAM_ADDRESS } from '../generated/codama';
8
+ import { ANTEGEN_THREAD_PROGRAM } from '../pda/constants';
9
+ /**
10
+ * Genesis hash constants — canonical chain identifiers
11
+ */
12
+ export const MAINNET_GENESIS = '5eykt4UsFv8P8NJdTREpY1vzqKqZKvdpKuc147dw2N9d';
13
+ export const DEVNET_GENESIS = 'EtWTRABZaYq6iMfeYKouRu166VU2xqa1wcaWoxPkrZBG';
14
+ export const ATLASNET_GENESIS = 'Ccod9gttTtZWqCeMgyTW3iCSoPLjkptAGsBUeP2CpchR';
15
+ const ALIAS_TO_GENESIS = {
16
+ mainnet: MAINNET_GENESIS,
17
+ atlasnet: ATLASNET_GENESIS,
18
+ holosim: ATLASNET_GENESIS,
19
+ localnet: ATLASNET_GENESIS,
20
+ };
21
+ /**
22
+ * Antegen program address (same across all networks)
23
+ */
24
+ const ANTEGEN_PROGRAM = ANTEGEN_THREAD_PROGRAM;
25
+ /**
26
+ * Mainnet addresses (production Star Atlas)
27
+ */
28
+ const MAINNET_ADDRESSES = {
29
+ srsly: SRSLY_PROGRAM_ADDRESS,
30
+ sage: 'SAGE2HAwep459SNq61LHvjxPk4pLPEJLoMETef7f7EE',
31
+ antegen: ANTEGEN_PROGRAM,
32
+ atlasMint: 'ATLASXmbPQxBUYbxPsV97usA3fPQYEqzQBUHgiFCUsXx',
33
+ profileFaction: 'pFACSRuobDmvfMKq1bAzwj27t6d2GJhSCHb1VcfnRmq',
34
+ gameId: 'GAMEC7U7cqmFFaRow33j1LwuV8u4YhAS1mJ5Dqjnar2k',
35
+ };
36
+ /**
37
+ * Atlasnet addresses (Star Atlas testnet/devnet)
38
+ */
39
+ const ATLASNET_ADDRESSES = {
40
+ srsly: SRSLY_PROGRAM_ADDRESS,
41
+ sage: 'SAgEeT8u14TE69JXtanGSgNkEdoPUcLabeyZD2uw8x9',
42
+ antegen: ANTEGEN_PROGRAM,
43
+ atlasMint: '6PhneWhbN4R3nFutrRUVnE3sNgRsFS6yPrjRC29mMWnv',
44
+ profileFaction: 'pFACzkX2eSpAjDyEohD6i3VRJvREtH9ynbtM1DwVFsj',
45
+ gameId: 'GAmEqxNYaUqLmLkXGhzUvv4Ud8FotnWPLj6ChdBkUh9j',
46
+ };
47
+ /**
48
+ * Program address sets keyed by genesis hash (source of truth)
49
+ */
50
+ const PROGRAM_ADDRESS_SETS = {
51
+ [MAINNET_GENESIS]: MAINNET_ADDRESSES,
52
+ [DEVNET_GENESIS]: ATLASNET_ADDRESSES,
53
+ [ATLASNET_GENESIS]: ATLASNET_ADDRESSES,
54
+ };
55
+ /**
56
+ * Resolve a program set input (alias or genesis hash) to a genesis hash
57
+ *
58
+ * @param programSet - Named alias or genesis hash string
59
+ * @returns Genesis hash string
60
+ */
61
+ export function resolveGenesisHash(programSet) {
62
+ // Check if it's a named alias
63
+ if (programSet in ALIAS_TO_GENESIS) {
64
+ return ALIAS_TO_GENESIS[programSet];
65
+ }
66
+ // Otherwise treat as genesis hash directly
67
+ return programSet;
68
+ }
69
+ /**
70
+ * Get addresses for a specific program set
71
+ *
72
+ * @param programSet - Program set identifier ('mainnet', 'atlasnet', or 'localnet')
73
+ * @returns Program-specific addresses
74
+ * @throws Error if program set is unknown
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * const addresses = getProgramAddresses('mainnet');
79
+ * console.log(addresses.atlasMint); // 'ATLASXmbP...'
80
+ *
81
+ * const testnetAddresses = getProgramAddresses('atlasnet');
82
+ * console.log(testnetAddresses.sage); // 'SAGEqqFew...'
83
+ * ```
84
+ */
85
+ export function getProgramAddresses(programSet) {
86
+ const genesisHash = resolveGenesisHash(programSet);
87
+ const addresses = PROGRAM_ADDRESS_SETS[genesisHash];
88
+ if (!addresses) {
89
+ // Unknown genesis hash — fall back to devnet addresses
90
+ return PROGRAM_ADDRESS_SETS[DEVNET_GENESIS];
91
+ }
92
+ return addresses;
93
+ }
94
+ /**
95
+ * @deprecated Use getProgramAddresses instead
96
+ */
97
+ export function getNetworkAddresses(network) {
98
+ return getProgramAddresses(network);
99
+ }
100
+ /**
101
+ * Check if a program set is valid
102
+ *
103
+ * @param programSet - Program set to validate
104
+ * @returns True if program set is supported
105
+ */
106
+ export function isValidProgramSet(programSet) {
107
+ // Accept named aliases
108
+ if (programSet in ALIAS_TO_GENESIS)
109
+ return true;
110
+ // Accept known genesis hashes
111
+ if (programSet in PROGRAM_ADDRESS_SETS)
112
+ return true;
113
+ return false;
114
+ }
115
+ /**
116
+ * @deprecated Use isValidProgramSet instead
117
+ */
118
+ export function isValidNetwork(network) {
119
+ return isValidProgramSet(network);
120
+ }
121
+ /**
122
+ * Re-export individual network addresses for direct access
123
+ */
124
+ export { MAINNET_ADDRESSES, ATLASNET_ADDRESSES };
125
+ //# sourceMappingURL=addresses.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"addresses.js","sourceRoot":"","sources":["../../../src/utils/addresses.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAGH,OAAO,EAAE,qBAAqB,EAAE,MAAM,qBAAqB,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAE1D;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,8CAA8C,CAAC;AAC9E,MAAM,CAAC,MAAM,cAAc,GAAG,8CAA8C,CAAC;AAC7E,MAAM,CAAC,MAAM,gBAAgB,GAAG,8CAA8C,CAAC;AAO/E,MAAM,gBAAgB,GAAoC;IACxD,OAAO,EAAE,eAAe;IACxB,QAAQ,EAAE,gBAAgB;IAC1B,OAAO,EAAE,gBAAgB;IACzB,QAAQ,EAAE,gBAAgB;CAC3B,CAAC;AAkCF;;GAEG;AACH,MAAM,eAAe,GAAG,sBAAsB,CAAC;AAE/C;;GAEG;AACH,MAAM,iBAAiB,GAAqB;IAC1C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,kBAAkB,GAAqB;IAC3C,KAAK,EAAE,qBAAqB;IAC5B,IAAI,EAAE,6CAA6C;IACnD,OAAO,EAAE,eAAe;IACxB,SAAS,EAAE,8CAA8C;IACzD,cAAc,EAAE,6CAA6C;IAC7D,MAAM,EAAE,8CAA8C;CACvD,CAAC;AAEF;;GAEG;AACH,MAAM,oBAAoB,GAAqC;IAC7D,CAAC,eAAe,CAAC,EAAE,iBAAiB;IACpC,CAAC,cAAc,CAAC,EAAE,kBAAkB;IACpC,CAAC,gBAAgB,CAAC,EAAE,kBAAkB;CACvC,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,8BAA8B;IAC9B,IAAI,UAAU,IAAI,gBAAgB,EAAE,CAAC;QACnC,OAAO,gBAAgB,CAAC,UAA6B,CAAC,CAAC;IACzD,CAAC;IACD,2CAA2C;IAC3C,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAsB;IACxD,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACnD,MAAM,SAAS,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAEpD,IAAI,CAAC,SAAS,EAAE,CAAC;QACf,uDAAuD;QACvD,OAAO,oBAAoB,CAAC,cAAc,CAAC,CAAC;IAC9C,CAAC;IAED,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,mBAAmB,CAAC,OAAmB;IACrD,OAAO,mBAAmB,CAAC,OAAO,CAAC,CAAC;AACtC,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAAC,UAAkB;IAClD,uBAAuB;IACvB,IAAI,UAAU,IAAI,gBAAgB;QAAE,OAAO,IAAI,CAAC;IAChD,8BAA8B;IAC9B,IAAI,UAAU,IAAI,oBAAoB;QAAE,OAAO,IAAI,CAAC;IACpD,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAe;IAC5C,OAAO,iBAAiB,CAAC,OAAO,CAAC,CAAC;AACpC,CAAC;AAED;;GAEG;AACH,OAAO,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,CAAC"}
@@ -0,0 +1,146 @@
1
+ /**
2
+ * @purpose Reservation bid math helpers
3
+ *
4
+ * Pure-math + on-chain-fetch helpers for computing the contest minimum-bid
5
+ * floor that a challenger must clear to take an existing reservation.
6
+ * Mirrors the on-chain `ConfigState::bid_min_stardust` formula so client UIs
7
+ * (and on-chain-aware tooling) can preview the floor without hitting an RPC
8
+ * for every keystroke.
9
+ */
10
+ import { fetchConfig } from '../accounts/config';
11
+ import { fetchContract } from '../accounts/contract';
12
+ import { fetchRental } from '../accounts/rental';
13
+ import { deriveActiveRental, deriveQueuedRental } from '../pda/srsly';
14
+ import { getRpcUrl } from './config';
15
+ import { createRpc } from './rpc';
16
+ const SYSTEM_PROGRAM_ID = '11111111111111111111111111111111';
17
+ /**
18
+ * Pure math: contest minimum-bid floor in stardust.
19
+ *
20
+ * Mirror of `ConfigState::bid_min_stardust` on-chain.
21
+ *
22
+ * floor = max(rate, defenderBid) × ramp
23
+ * ramp = max(captureRate, 1 + (maxMult - 1) × closeness)
24
+ *
25
+ * `closenessFraction` is in `[0, 1]` — the fraction of the active rental's
26
+ * remaining window that has elapsed since the defender's reservation. 0 =
27
+ * defender just placed; 1 = active rental about to end (snipe).
28
+ *
29
+ * `contestedMultiplierMaxBps` is on the protocol's custom 100=1× scale:
30
+ * 100 disables the ramp, 10_000 = 100×.
31
+ */
32
+ export function computeMinimumBid(args) {
33
+ const closeness = Math.max(0, Math.min(1, args.closenessFraction));
34
+ const closenessBps = BigInt(Math.round(closeness * 10_000));
35
+ const maxBps = BigInt(Math.max(100, args.contestedMultiplierMaxBps));
36
+ const extraBps = maxBps - 100n;
37
+ // ramped_bps in 4-decimal precision: 10_000 = 1×, 46_500 = 4.65×.
38
+ const rampedBps = 10000n + (extraBps * closenessBps) / 100n;
39
+ const capBps = args.captureRateBps > 10000n ? args.captureRateBps : 10000n;
40
+ const effBps = rampedBps > capBps ? rampedBps : capBps;
41
+ const defenderBid = args.defenderBidStardust ?? 0n;
42
+ const base = args.rateStardust > defenderBid ? args.rateStardust : defenderBid;
43
+ return (base * effBps) / 10000n;
44
+ }
45
+ /**
46
+ * High-level helper: compute the contest minimum bid for a contract right
47
+ * now (or at `now + delaySeconds`).
48
+ *
49
+ * Fetches `ConfigState`, `ContractState`, and the active/queued `RentalState`
50
+ * accounts, derives `closeness` from the active rental window, and returns
51
+ * the floor a challenger must clear plus enough context to render a UI.
52
+ *
53
+ * @example
54
+ * ```ts
55
+ * const floor = await getMinimumBid({ contractAddress: 'Abc...' });
56
+ * console.log('Bid at least', floor.minBidStardust, 'stardust');
57
+ *
58
+ * // Preview the floor 4 hours from now (snipe-window pricing):
59
+ * const later = await getMinimumBid({
60
+ * contractAddress: 'Abc...',
61
+ * delaySeconds: 4 * 60 * 60,
62
+ * });
63
+ * ```
64
+ *
65
+ * If the contract has no active rental yet, closeness = 0 and the floor
66
+ * collapses to the rate-bump floor (`rate × captureRate`).
67
+ */
68
+ export async function getMinimumBid(args) {
69
+ const rpcUrl = args.rpcUrl ?? getRpcUrl();
70
+ const rpc = createRpc(rpcUrl);
71
+ const cfgPromise = fetchConfig(rpcUrl);
72
+ const contractPromise = fetchContract(args.contractAddress, rpcUrl);
73
+ const [cfg, contract] = await Promise.all([cfgPromise, contractPromise]);
74
+ const cfgData = cfg.data;
75
+ const contractData = contract.data;
76
+ const rateStardust = BigInt(contractData.rate);
77
+ const atlasPerPoint = args.atlasPerPoint ?? BigInt(cfgData.atlasPerPoint);
78
+ const stardustPerAtlas = BigInt(cfgData.stardustToAtlas);
79
+ const activeAddr = await deriveActiveRental(contract.address);
80
+ const queuedAddr = await deriveQueuedRental(contract.address);
81
+ // Active rental — only meaningful if the contract field points at it.
82
+ let activeStart = null;
83
+ let activeEnd = null;
84
+ if (contractData.activeRental && contractData.activeRental.toString() !== SYSTEM_PROGRAM_ID) {
85
+ try {
86
+ const active = await fetchRental(activeAddr, rpcUrl);
87
+ const a = active.data;
88
+ activeStart = Number(a.startTime);
89
+ activeEnd = Number(a.endTime);
90
+ }
91
+ catch {
92
+ // Account missing despite contract pointer — treat as no active rental.
93
+ }
94
+ }
95
+ // Queued rental — defender bid lives here if a reservation exists.
96
+ let defenderBidStardust = 0n;
97
+ if (contractData.queuedRental && contractData.queuedRental.toString() !== SYSTEM_PROGRAM_ID) {
98
+ try {
99
+ const queued = await fetchRental(queuedAddr, rpcUrl);
100
+ const q = queued.data;
101
+ const bidAtlas = BigInt(q.bidAtlas);
102
+ const bidPoints = BigInt(q.bidPoints);
103
+ // Points are 8-decimal dust; converting to stardust requires the same
104
+ // 8-decimal precision: stardust = points_dust * atlasPerPoint *
105
+ // stardustPerAtlas / 1e8. With both at 1e8 precision this collapses
106
+ // to points_dust * atlasPerPoint.
107
+ const pointsAsStardust = bidPoints > 0n ? (bidPoints * atlasPerPoint * stardustPerAtlas) / 100000000n : 0n;
108
+ defenderBidStardust = bidAtlas + pointsAsStardust;
109
+ }
110
+ catch {
111
+ // Missing queued account — leave defenderBidStardust = 0.
112
+ }
113
+ }
114
+ const evaluatedAtSeconds = args.nowSeconds !== undefined
115
+ ? Math.floor(args.nowSeconds)
116
+ : Math.floor(Date.now() / 1000) + Math.max(0, args.delaySeconds ?? 0);
117
+ let closeness = 0;
118
+ if (activeStart !== null && activeEnd !== null && activeEnd > activeStart) {
119
+ const span = activeEnd - activeStart;
120
+ const elapsed = evaluatedAtSeconds - activeStart;
121
+ closeness = Math.max(0, Math.min(1, elapsed / span));
122
+ }
123
+ const minBidStardust = computeMinimumBid({
124
+ rateStardust,
125
+ defenderBidStardust,
126
+ contestedMultiplierMaxBps: cfgData.contestedMultiplierMaxBps,
127
+ captureRateBps: BigInt(cfgData.captureRateBps),
128
+ closenessFraction: closeness,
129
+ });
130
+ const baseStardust = rateStardust > defenderBidStardust ? rateStardust : defenderBidStardust;
131
+ const rampMultiplier = baseStardust > 0n ? Number(minBidStardust) / Number(baseStardust) : 1;
132
+ // RPC reference kept to match the codebase pattern even when unused;
133
+ // future refinements (e.g. fetching chain time) can plug in here.
134
+ void rpc;
135
+ return {
136
+ minBidStardust,
137
+ defenderBidStardust,
138
+ rateStardust,
139
+ closenessFraction: closeness,
140
+ rampMultiplier,
141
+ evaluatedAtSeconds,
142
+ activeEndSeconds: activeEnd,
143
+ activeStartSeconds: activeStart,
144
+ };
145
+ }
146
+ //# sourceMappingURL=bidMath.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bidMath.js","sourceRoot":"","sources":["../../../src/utils/bidMath.ts"],"names":[],"mappings":"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"}