@sly-rentals/core 3.0.0 → 5.0.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 (227) hide show
  1. package/dist/api.json +8422 -5107
  2. package/dist/cjs/audit/events-registry.js +13 -0
  3. package/dist/cjs/audit/events-registry.js.map +1 -1
  4. package/dist/cjs/audit/events.js +220 -0
  5. package/dist/cjs/audit/events.js.map +1 -1
  6. package/dist/cjs/generated/codama/accounts/configState.js +3 -1
  7. package/dist/cjs/generated/codama/accounts/configState.js.map +1 -1
  8. package/dist/cjs/generated/codama/accounts/contractState.js +4 -0
  9. package/dist/cjs/generated/codama/accounts/contractState.js.map +1 -1
  10. package/dist/cjs/generated/codama/errors/srsly.js +3 -3
  11. package/dist/cjs/generated/codama/errors/srsly.js.map +1 -1
  12. package/dist/cjs/generated/codama/instructions/createContract.js +2 -0
  13. package/dist/cjs/generated/codama/instructions/createContract.js.map +1 -1
  14. package/dist/cjs/generated/codama/instructions/index.js +2 -0
  15. package/dist/cjs/generated/codama/instructions/index.js.map +1 -1
  16. package/dist/cjs/generated/codama/instructions/migrateConfig.js +119 -0
  17. package/dist/cjs/generated/codama/instructions/migrateConfig.js.map +1 -0
  18. package/dist/cjs/generated/codama/instructions/migrateContract.js +84 -0
  19. package/dist/cjs/generated/codama/instructions/migrateContract.js.map +1 -0
  20. package/dist/cjs/generated/codama/instructions/updateConfig.js +2 -0
  21. package/dist/cjs/generated/codama/instructions/updateConfig.js.map +1 -1
  22. package/dist/cjs/generated/codama/instructions/updateContract.js +2 -0
  23. package/dist/cjs/generated/codama/instructions/updateContract.js.map +1 -1
  24. package/dist/cjs/generated/codama/programs/srsly.js +15 -7
  25. package/dist/cjs/generated/codama/programs/srsly.js.map +1 -1
  26. package/dist/cjs/generated/codama/types/borrowerClaimed.js +31 -0
  27. package/dist/cjs/generated/codama/types/borrowerClaimed.js.map +1 -0
  28. package/dist/cjs/generated/codama/types/borrowerClosed.js +29 -0
  29. package/dist/cjs/generated/codama/types/borrowerClosed.js.map +1 -0
  30. package/dist/cjs/generated/codama/types/borrowerCreated.js +29 -0
  31. package/dist/cjs/generated/codama/types/borrowerCreated.js.map +1 -0
  32. package/dist/cjs/generated/codama/types/combatStats.js +49 -0
  33. package/dist/cjs/generated/codama/types/combatStats.js.map +1 -0
  34. package/dist/cjs/generated/codama/types/contractCloseQueued.js +29 -0
  35. package/dist/cjs/generated/codama/types/contractCloseQueued.js.map +1 -0
  36. package/dist/cjs/generated/codama/types/contractClosed.js +29 -0
  37. package/dist/cjs/generated/codama/types/contractClosed.js.map +1 -0
  38. package/dist/cjs/generated/codama/types/contractCreated.js +47 -0
  39. package/dist/cjs/generated/codama/types/contractCreated.js.map +1 -0
  40. package/dist/cjs/generated/codama/types/contractUpdated.js +39 -0
  41. package/dist/cjs/generated/codama/types/contractUpdated.js.map +1 -0
  42. package/dist/cjs/generated/codama/types/delegateSet.js +31 -0
  43. package/dist/cjs/generated/codama/types/delegateSet.js.map +1 -0
  44. package/dist/cjs/generated/codama/types/fleet.js +14 -0
  45. package/dist/cjs/generated/codama/types/fleet.js.map +1 -1
  46. package/dist/cjs/generated/codama/types/index.js +15 -0
  47. package/dist/cjs/generated/codama/types/index.js.map +1 -1
  48. package/dist/cjs/generated/codama/types/reservationKnockedOff.js +41 -0
  49. package/dist/cjs/generated/codama/types/reservationKnockedOff.js.map +1 -0
  50. package/dist/cjs/generated/codama/types/reservationPlaced.js +37 -0
  51. package/dist/cjs/generated/codama/types/reservationPlaced.js.map +1 -0
  52. package/dist/cjs/generated/codama/types/shipStats.js +2 -0
  53. package/dist/cjs/generated/codama/types/shipStats.js.map +1 -1
  54. package/dist/cjs/generated/codama/types/staleDecayApplied.js +33 -0
  55. package/dist/cjs/generated/codama/types/staleDecayApplied.js.map +1 -0
  56. package/dist/cjs/generated/codama/types/threadClosed.js +29 -0
  57. package/dist/cjs/generated/codama/types/threadClosed.js.map +1 -0
  58. package/dist/cjs/generated/codama/types/threadCreated.js +33 -0
  59. package/dist/cjs/generated/codama/types/threadCreated.js.map +1 -0
  60. package/dist/cjs/generated/codama/types/threadFunded.js +39 -0
  61. package/dist/cjs/generated/codama/types/threadFunded.js.map +1 -0
  62. package/dist/cjs/idl/srsly.json +3238 -293
  63. package/dist/cjs/instructions/createContract.js +1 -0
  64. package/dist/cjs/instructions/createContract.js.map +1 -1
  65. package/dist/cjs/instructions/reserveRental.js +4 -4
  66. package/dist/cjs/instructions/reserveRental.js.map +1 -1
  67. package/dist/cjs/instructions/updateConfig.js +1 -0
  68. package/dist/cjs/instructions/updateConfig.js.map +1 -1
  69. package/dist/cjs/instructions/updateContract.js +3 -1
  70. package/dist/cjs/instructions/updateContract.js.map +1 -1
  71. package/dist/cjs/package.json +1 -1
  72. package/dist/cjs/utils/contractSnapshot.js +32 -21
  73. package/dist/cjs/utils/contractSnapshot.js.map +1 -1
  74. package/dist/cjs/utils/contractSnapshot.test.js +11 -15
  75. package/dist/cjs/utils/contractSnapshot.test.js.map +1 -1
  76. package/dist/cjs/version.js +1 -1
  77. package/dist/esm/audit/events-registry.js +13 -0
  78. package/dist/esm/audit/events-registry.js.map +1 -1
  79. package/dist/esm/audit/events.js +220 -0
  80. package/dist/esm/audit/events.js.map +1 -1
  81. package/dist/esm/generated/codama/accounts/configState.js +3 -1
  82. package/dist/esm/generated/codama/accounts/configState.js.map +1 -1
  83. package/dist/esm/generated/codama/accounts/contractState.js +5 -1
  84. package/dist/esm/generated/codama/accounts/contractState.js.map +1 -1
  85. package/dist/esm/generated/codama/errors/srsly.js +5 -5
  86. package/dist/esm/generated/codama/errors/srsly.js.map +1 -1
  87. package/dist/esm/generated/codama/instructions/createContract.js +2 -0
  88. package/dist/esm/generated/codama/instructions/createContract.js.map +1 -1
  89. package/dist/esm/generated/codama/instructions/index.js +2 -0
  90. package/dist/esm/generated/codama/instructions/index.js.map +1 -1
  91. package/dist/esm/generated/codama/instructions/migrateConfig.js +109 -0
  92. package/dist/esm/generated/codama/instructions/migrateConfig.js.map +1 -0
  93. package/dist/esm/generated/codama/instructions/migrateContract.js +75 -0
  94. package/dist/esm/generated/codama/instructions/migrateContract.js.map +1 -0
  95. package/dist/esm/generated/codama/instructions/updateConfig.js +2 -0
  96. package/dist/esm/generated/codama/instructions/updateConfig.js.map +1 -1
  97. package/dist/esm/generated/codama/instructions/updateContract.js +3 -1
  98. package/dist/esm/generated/codama/instructions/updateContract.js.map +1 -1
  99. package/dist/esm/generated/codama/programs/srsly.js +15 -7
  100. package/dist/esm/generated/codama/programs/srsly.js.map +1 -1
  101. package/dist/esm/generated/codama/types/borrowerClaimed.js +26 -0
  102. package/dist/esm/generated/codama/types/borrowerClaimed.js.map +1 -0
  103. package/dist/esm/generated/codama/types/borrowerClosed.js +24 -0
  104. package/dist/esm/generated/codama/types/borrowerClosed.js.map +1 -0
  105. package/dist/esm/generated/codama/types/borrowerCreated.js +24 -0
  106. package/dist/esm/generated/codama/types/borrowerCreated.js.map +1 -0
  107. package/dist/esm/generated/codama/types/combatStats.js +44 -0
  108. package/dist/esm/generated/codama/types/combatStats.js.map +1 -0
  109. package/dist/esm/generated/codama/types/contractCloseQueued.js +24 -0
  110. package/dist/esm/generated/codama/types/contractCloseQueued.js.map +1 -0
  111. package/dist/esm/generated/codama/types/contractClosed.js +24 -0
  112. package/dist/esm/generated/codama/types/contractClosed.js.map +1 -0
  113. package/dist/esm/generated/codama/types/contractCreated.js +42 -0
  114. package/dist/esm/generated/codama/types/contractCreated.js.map +1 -0
  115. package/dist/esm/generated/codama/types/contractUpdated.js +34 -0
  116. package/dist/esm/generated/codama/types/contractUpdated.js.map +1 -0
  117. package/dist/esm/generated/codama/types/delegateSet.js +26 -0
  118. package/dist/esm/generated/codama/types/delegateSet.js.map +1 -0
  119. package/dist/esm/generated/codama/types/fleet.js +15 -1
  120. package/dist/esm/generated/codama/types/fleet.js.map +1 -1
  121. package/dist/esm/generated/codama/types/index.js +15 -0
  122. package/dist/esm/generated/codama/types/index.js.map +1 -1
  123. package/dist/esm/generated/codama/types/reservationKnockedOff.js +36 -0
  124. package/dist/esm/generated/codama/types/reservationKnockedOff.js.map +1 -0
  125. package/dist/esm/generated/codama/types/reservationPlaced.js +32 -0
  126. package/dist/esm/generated/codama/types/reservationPlaced.js.map +1 -0
  127. package/dist/esm/generated/codama/types/shipStats.js +3 -1
  128. package/dist/esm/generated/codama/types/shipStats.js.map +1 -1
  129. package/dist/esm/generated/codama/types/staleDecayApplied.js +28 -0
  130. package/dist/esm/generated/codama/types/staleDecayApplied.js.map +1 -0
  131. package/dist/esm/generated/codama/types/threadClosed.js +24 -0
  132. package/dist/esm/generated/codama/types/threadClosed.js.map +1 -0
  133. package/dist/esm/generated/codama/types/threadCreated.js +28 -0
  134. package/dist/esm/generated/codama/types/threadCreated.js.map +1 -0
  135. package/dist/esm/generated/codama/types/threadFunded.js +34 -0
  136. package/dist/esm/generated/codama/types/threadFunded.js.map +1 -0
  137. package/dist/esm/idl/srsly.json +3238 -293
  138. package/dist/esm/instructions/createContract.js +1 -0
  139. package/dist/esm/instructions/createContract.js.map +1 -1
  140. package/dist/esm/instructions/reserveRental.js +4 -4
  141. package/dist/esm/instructions/reserveRental.js.map +1 -1
  142. package/dist/esm/instructions/updateConfig.js +1 -0
  143. package/dist/esm/instructions/updateConfig.js.map +1 -1
  144. package/dist/esm/instructions/updateContract.js +3 -1
  145. package/dist/esm/instructions/updateContract.js.map +1 -1
  146. package/dist/esm/package.json +1 -1
  147. package/dist/esm/utils/contractSnapshot.js +32 -21
  148. package/dist/esm/utils/contractSnapshot.js.map +1 -1
  149. package/dist/esm/utils/contractSnapshot.test.js +11 -15
  150. package/dist/esm/utils/contractSnapshot.test.js.map +1 -1
  151. package/dist/esm/version.js +1 -1
  152. package/dist/idl/srsly.json +3239 -294
  153. package/dist/types/audit/events-registry.d.ts +1 -1
  154. package/dist/types/audit/events-registry.d.ts.map +1 -1
  155. package/dist/types/audit/events.d.ts.map +1 -1
  156. package/dist/types/audit/index.d.ts +1 -1
  157. package/dist/types/audit/index.d.ts.map +1 -1
  158. package/dist/types/audit/types.d.ts +121 -1
  159. package/dist/types/audit/types.d.ts.map +1 -1
  160. package/dist/types/generated/codama/accounts/configState.d.ts +16 -0
  161. package/dist/types/generated/codama/accounts/configState.d.ts.map +1 -1
  162. package/dist/types/generated/codama/accounts/contractState.d.ts +40 -0
  163. package/dist/types/generated/codama/accounts/contractState.d.ts.map +1 -1
  164. package/dist/types/generated/codama/errors/srsly.d.ts +1 -1
  165. package/dist/types/generated/codama/errors/srsly.d.ts.map +1 -1
  166. package/dist/types/generated/codama/instructions/createContract.d.ts +4 -0
  167. package/dist/types/generated/codama/instructions/createContract.d.ts.map +1 -1
  168. package/dist/types/generated/codama/instructions/index.d.ts +2 -0
  169. package/dist/types/generated/codama/instructions/index.d.ts.map +1 -1
  170. package/dist/types/generated/codama/instructions/migrateConfig.d.ts +66 -0
  171. package/dist/types/generated/codama/instructions/migrateConfig.d.ts.map +1 -0
  172. package/dist/types/generated/codama/instructions/migrateContract.d.ts +59 -0
  173. package/dist/types/generated/codama/instructions/migrateContract.d.ts.map +1 -0
  174. package/dist/types/generated/codama/instructions/updateConfig.d.ts +16 -0
  175. package/dist/types/generated/codama/instructions/updateConfig.d.ts.map +1 -1
  176. package/dist/types/generated/codama/instructions/updateContract.d.ts +22 -0
  177. package/dist/types/generated/codama/instructions/updateContract.d.ts.map +1 -1
  178. package/dist/types/generated/codama/programs/srsly.d.ts +14 -8
  179. package/dist/types/generated/codama/programs/srsly.d.ts.map +1 -1
  180. package/dist/types/generated/codama/types/borrowerClaimed.d.ts +23 -0
  181. package/dist/types/generated/codama/types/borrowerClaimed.d.ts.map +1 -0
  182. package/dist/types/generated/codama/types/borrowerClosed.d.ts +18 -0
  183. package/dist/types/generated/codama/types/borrowerClosed.d.ts.map +1 -0
  184. package/dist/types/generated/codama/types/borrowerCreated.d.ts +18 -0
  185. package/dist/types/generated/codama/types/borrowerCreated.d.ts.map +1 -0
  186. package/dist/types/generated/codama/types/combatStats.d.ts +28 -0
  187. package/dist/types/generated/codama/types/combatStats.d.ts.map +1 -0
  188. package/dist/types/generated/codama/types/contractCloseQueued.d.ts +22 -0
  189. package/dist/types/generated/codama/types/contractCloseQueued.d.ts.map +1 -0
  190. package/dist/types/generated/codama/types/contractClosed.d.ts +18 -0
  191. package/dist/types/generated/codama/types/contractClosed.d.ts.map +1 -0
  192. package/dist/types/generated/codama/types/contractCreated.d.ts +39 -0
  193. package/dist/types/generated/codama/types/contractCreated.d.ts.map +1 -0
  194. package/dist/types/generated/codama/types/contractUpdated.d.ts +34 -0
  195. package/dist/types/generated/codama/types/contractUpdated.d.ts.map +1 -0
  196. package/dist/types/generated/codama/types/delegateSet.d.ts +23 -0
  197. package/dist/types/generated/codama/types/delegateSet.d.ts.map +1 -0
  198. package/dist/types/generated/codama/types/fleet.d.ts +14 -0
  199. package/dist/types/generated/codama/types/fleet.d.ts.map +1 -1
  200. package/dist/types/generated/codama/types/index.d.ts +15 -0
  201. package/dist/types/generated/codama/types/index.d.ts.map +1 -1
  202. package/dist/types/generated/codama/types/reservationKnockedOff.d.ts +33 -0
  203. package/dist/types/generated/codama/types/reservationKnockedOff.d.ts.map +1 -0
  204. package/dist/types/generated/codama/types/reservationPlaced.d.ts +32 -0
  205. package/dist/types/generated/codama/types/reservationPlaced.d.ts.map +1 -0
  206. package/dist/types/generated/codama/types/shipStats.d.ts +3 -1
  207. package/dist/types/generated/codama/types/shipStats.d.ts.map +1 -1
  208. package/dist/types/generated/codama/types/staleDecayApplied.d.ts +31 -0
  209. package/dist/types/generated/codama/types/staleDecayApplied.d.ts.map +1 -0
  210. package/dist/types/generated/codama/types/threadClosed.d.ts +18 -0
  211. package/dist/types/generated/codama/types/threadClosed.d.ts.map +1 -0
  212. package/dist/types/generated/codama/types/threadCreated.d.ts +25 -0
  213. package/dist/types/generated/codama/types/threadCreated.d.ts.map +1 -0
  214. package/dist/types/generated/codama/types/threadFunded.d.ts +28 -0
  215. package/dist/types/generated/codama/types/threadFunded.d.ts.map +1 -0
  216. package/dist/types/instructions/createContract.d.ts +10 -0
  217. package/dist/types/instructions/createContract.d.ts.map +1 -1
  218. package/dist/types/instructions/updateConfig.d.ts +7 -0
  219. package/dist/types/instructions/updateConfig.d.ts.map +1 -1
  220. package/dist/types/instructions/updateContract.d.ts +7 -0
  221. package/dist/types/instructions/updateContract.d.ts.map +1 -1
  222. package/dist/types/utils/bidMath.d.ts +27 -17
  223. package/dist/types/utils/bidMath.d.ts.map +1 -1
  224. package/dist/types/utils/contractSnapshot.d.ts +3 -2
  225. package/dist/types/utils/contractSnapshot.d.ts.map +1 -1
  226. package/dist/types/version.d.ts +1 -1
  227. package/package.json +2 -2
@@ -0,0 +1,32 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+ import { type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from "@solana/kit";
9
+ /**
10
+ * Emitted on first-time reservation (queue was Available).
11
+ * The promotion to active rental is signaled by `RentalAccepted`.
12
+ */
13
+ export type ReservationPlaced = {
14
+ rentalState: Address;
15
+ contract: Address;
16
+ borrower: Address;
17
+ bidAtlas: bigint;
18
+ bidPoints: bigint;
19
+ escrow: bigint;
20
+ };
21
+ export type ReservationPlacedArgs = {
22
+ rentalState: Address;
23
+ contract: Address;
24
+ borrower: Address;
25
+ bidAtlas: number | bigint;
26
+ bidPoints: number | bigint;
27
+ escrow: number | bigint;
28
+ };
29
+ export declare function getReservationPlacedEncoder(): FixedSizeEncoder<ReservationPlacedArgs>;
30
+ export declare function getReservationPlacedDecoder(): FixedSizeDecoder<ReservationPlaced>;
31
+ export declare function getReservationPlacedCodec(): FixedSizeCodec<ReservationPlacedArgs, ReservationPlaced>;
32
+ //# sourceMappingURL=reservationPlaced.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reservationPlaced.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/reservationPlaced.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAQL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,WAAW,EAAE,OAAO,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,GAAG,MAAM,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,MAAM,CAAC;IAC3B,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;CACzB,CAAC;AAEF,wBAAgB,2BAA2B,IAAI,gBAAgB,CAAC,qBAAqB,CAAC,CASrF;AAED,wBAAgB,2BAA2B,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CASjF;AAED,wBAAgB,yBAAyB,IAAI,cAAc,CACzD,qBAAqB,EACrB,iBAAiB,CAClB,CAKA"}
@@ -6,16 +6,18 @@
6
6
  * @see https://github.com/codama-idl/codama
7
7
  */
8
8
  import { type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from "@solana/kit";
9
- import { type CargoStats, type CargoStatsArgs, type MiscStats, type MiscStatsArgs, type MovementStats, type MovementStatsArgs } from ".";
9
+ import { type CargoStats, type CargoStatsArgs, type CombatStats, type CombatStatsArgs, type MiscStats, type MiscStatsArgs, type MovementStats, type MovementStatsArgs } from ".";
10
10
  /** A ship's stats */
11
11
  export type ShipStats = {
12
12
  movementStats: MovementStats;
13
13
  cargoStats: CargoStats;
14
+ combatStats: CombatStats;
14
15
  miscStats: MiscStats;
15
16
  };
16
17
  export type ShipStatsArgs = {
17
18
  movementStats: MovementStatsArgs;
18
19
  cargoStats: CargoStatsArgs;
20
+ combatStats: CombatStatsArgs;
19
21
  miscStats: MiscStatsArgs;
20
22
  };
21
23
  export declare function getShipStatsEncoder(): FixedSizeEncoder<ShipStatsArgs>;
@@ -1 +1 @@
1
- {"version":3,"file":"shipStats.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/shipStats.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EAOL,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,GAAG,CAAC;AAEX,qBAAqB;AACrB,MAAM,MAAM,SAAS,GAAG;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,iBAAiB,CAAC;IACjC,UAAU,EAAE,cAAc,CAAC;IAC3B,SAAS,EAAE,aAAa,CAAC;CAC1B,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAMrE;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAMjE;AAED,wBAAgB,iBAAiB,IAAI,cAAc,CAAC,aAAa,EAAE,SAAS,CAAC,CAE5E"}
1
+ {"version":3,"file":"shipStats.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/shipStats.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAIL,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AACrB,OAAO,EASL,KAAK,UAAU,EACf,KAAK,cAAc,EACnB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,iBAAiB,EACvB,MAAM,GAAG,CAAC;AAEX,qBAAqB;AACrB,MAAM,MAAM,SAAS,GAAG;IACtB,aAAa,EAAE,aAAa,CAAC;IAC7B,UAAU,EAAE,UAAU,CAAC;IACvB,WAAW,EAAE,WAAW,CAAC;IACzB,SAAS,EAAE,SAAS,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC1B,aAAa,EAAE,iBAAiB,CAAC;IACjC,UAAU,EAAE,cAAc,CAAC;IAC3B,WAAW,EAAE,eAAe,CAAC;IAC7B,SAAS,EAAE,aAAa,CAAC;CAC1B,CAAC;AAEF,wBAAgB,mBAAmB,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAOrE;AAED,wBAAgB,mBAAmB,IAAI,gBAAgB,CAAC,SAAS,CAAC,CAOjE;AAED,wBAAgB,iBAAiB,IAAI,cAAc,CAAC,aAAa,EAAE,SAAS,CAAC,CAE5E"}
@@ -0,0 +1,31 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+ import { type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from "@solana/kit";
9
+ /**
10
+ * Emitted on the idle branch of `rental_accept` when the stale-discount
11
+ * writeback actually moves the stored `rate`. Mutually exclusive with
12
+ * the contested bump (the demand branch). `idle_seconds` is the gap
13
+ * between the previous close and this accept — what the borrower's
14
+ * discount is computed against.
15
+ */
16
+ export type StaleDecayApplied = {
17
+ contract: Address;
18
+ oldRate: bigint;
19
+ newRate: bigint;
20
+ idleSeconds: bigint;
21
+ };
22
+ export type StaleDecayAppliedArgs = {
23
+ contract: Address;
24
+ oldRate: number | bigint;
25
+ newRate: number | bigint;
26
+ idleSeconds: number | bigint;
27
+ };
28
+ export declare function getStaleDecayAppliedEncoder(): FixedSizeEncoder<StaleDecayAppliedArgs>;
29
+ export declare function getStaleDecayAppliedDecoder(): FixedSizeDecoder<StaleDecayApplied>;
30
+ export declare function getStaleDecayAppliedCodec(): FixedSizeCodec<StaleDecayAppliedArgs, StaleDecayApplied>;
31
+ //# sourceMappingURL=staleDecayApplied.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"staleDecayApplied.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/staleDecayApplied.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAQL,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB;;;;;;GAMG;AACH,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,MAAM,MAAM,qBAAqB,GAAG;IAClC,QAAQ,EAAE,OAAO,CAAC;IAClB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC;CAC9B,CAAC;AAEF,wBAAgB,2BAA2B,IAAI,gBAAgB,CAAC,qBAAqB,CAAC,CAOrF;AAED,wBAAgB,2BAA2B,IAAI,gBAAgB,CAAC,iBAAiB,CAAC,CAOjF;AAED,wBAAgB,yBAAyB,IAAI,cAAc,CACzD,qBAAqB,EACrB,iBAAiB,CAClB,CAKA"}
@@ -0,0 +1,18 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+ import { type Address, type FixedSizeCodec, type FixedSizeDecoder, type FixedSizeEncoder } from "@solana/kit";
9
+ /** Emitted when an automation thread is closed. */
10
+ export type ThreadClosed = {
11
+ contract: Address;
12
+ thread: Address;
13
+ };
14
+ export type ThreadClosedArgs = ThreadClosed;
15
+ export declare function getThreadClosedEncoder(): FixedSizeEncoder<ThreadClosedArgs>;
16
+ export declare function getThreadClosedDecoder(): FixedSizeDecoder<ThreadClosed>;
17
+ export declare function getThreadClosedCodec(): FixedSizeCodec<ThreadClosedArgs, ThreadClosed>;
18
+ //# sourceMappingURL=threadClosed.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threadClosed.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/threadClosed.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAML,KAAK,OAAO,EACZ,KAAK,cAAc,EACnB,KAAK,gBAAgB,EACrB,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB,mDAAmD;AACnD,MAAM,MAAM,YAAY,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAElE,MAAM,MAAM,gBAAgB,GAAG,YAAY,CAAC;AAE5C,wBAAgB,sBAAsB,IAAI,gBAAgB,CAAC,gBAAgB,CAAC,CAK3E;AAED,wBAAgB,sBAAsB,IAAI,gBAAgB,CAAC,YAAY,CAAC,CAKvE;AAED,wBAAgB,oBAAoB,IAAI,cAAc,CACpD,gBAAgB,EAChB,YAAY,CACb,CAEA"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+ import { type Address, type Codec, type Decoder, type Encoder } from "@solana/kit";
9
+ /** Emitted when a per-contract automation thread is created. */
10
+ export type ThreadCreated = {
11
+ contract: Address;
12
+ thread: Address;
13
+ paymentsFreq: string;
14
+ funding: bigint;
15
+ };
16
+ export type ThreadCreatedArgs = {
17
+ contract: Address;
18
+ thread: Address;
19
+ paymentsFreq: string;
20
+ funding: number | bigint;
21
+ };
22
+ export declare function getThreadCreatedEncoder(): Encoder<ThreadCreatedArgs>;
23
+ export declare function getThreadCreatedDecoder(): Decoder<ThreadCreated>;
24
+ export declare function getThreadCreatedCodec(): Codec<ThreadCreatedArgs, ThreadCreated>;
25
+ //# sourceMappingURL=threadCreated.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threadCreated.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/threadCreated.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAcL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,OAAO,EACb,MAAM,aAAa,CAAC;AAErB,gEAAgE;AAChE,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC9B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CAC1B,CAAC;AAEF,wBAAgB,uBAAuB,IAAI,OAAO,CAAC,iBAAiB,CAAC,CAOpE;AAED,wBAAgB,uBAAuB,IAAI,OAAO,CAAC,aAAa,CAAC,CAOhE;AAED,wBAAgB,qBAAqB,IAAI,KAAK,CAC5C,iBAAiB,EACjB,aAAa,CACd,CAEA"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * This code was AUTOGENERATED using the Codama library.
3
+ * Please DO NOT EDIT THIS FILE, instead use visitors
4
+ * to add features, then rerun Codama to update it.
5
+ *
6
+ * @see https://github.com/codama-idl/codama
7
+ */
8
+ import { type Address, type Codec, type Decoder, type Encoder, type Option, type OptionOrNullable } from "@solana/kit";
9
+ /**
10
+ * Emitted on `contract_thread_update` — captures both funding deltas and
11
+ * optional schedule changes.
12
+ */
13
+ export type ThreadFunded = {
14
+ contract: Address;
15
+ thread: Address;
16
+ added: bigint;
17
+ newPaymentsFreq: Option<string>;
18
+ };
19
+ export type ThreadFundedArgs = {
20
+ contract: Address;
21
+ thread: Address;
22
+ added: number | bigint;
23
+ newPaymentsFreq: OptionOrNullable<string>;
24
+ };
25
+ export declare function getThreadFundedEncoder(): Encoder<ThreadFundedArgs>;
26
+ export declare function getThreadFundedDecoder(): Decoder<ThreadFunded>;
27
+ export declare function getThreadFundedCodec(): Codec<ThreadFundedArgs, ThreadFunded>;
28
+ //# sourceMappingURL=threadFunded.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"threadFunded.d.ts","sourceRoot":"","sources":["../../../../../src/generated/codama/types/threadFunded.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,EAgBL,KAAK,OAAO,EACZ,KAAK,KAAK,EACV,KAAK,OAAO,EACZ,KAAK,OAAO,EACZ,KAAK,MAAM,EACX,KAAK,gBAAgB,EACtB,MAAM,aAAa,CAAC;AAErB;;;GAGG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;CACjC,CAAC;AAEF,MAAM,MAAM,gBAAgB,GAAG;IAC7B,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,eAAe,EAAE,gBAAgB,CAAC,MAAM,CAAC,CAAC;CAC3C,CAAC;AAEF,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAUlE;AAED,wBAAgB,sBAAsB,IAAI,OAAO,CAAC,YAAY,CAAC,CAU9D;AAED,wBAAgB,oBAAoB,IAAI,KAAK,CAAC,gBAAgB,EAAE,YAAY,CAAC,CAE5E"}
@@ -86,6 +86,16 @@ export interface CreateContractParams {
86
86
  * @default 1
87
87
  */
88
88
  contestedThreshold?: number;
89
+ /**
90
+ * Per-contract floor for the stale-discount writeback (bps).
91
+ * - `10_000` disables the mechanic for this contract (rate never decays).
92
+ * - `5_000` allows decay down to 50% of the stored rate before clamping.
93
+ * - `0` removes the per-contract floor (still clamped to the program-wide
94
+ * minimum rate at writeback).
95
+ * Range 0..=10_000.
96
+ * @default 10000 // opt-in only
97
+ */
98
+ staleDiscountFloorBps?: number;
89
99
  /**
90
100
  * Enable contract automation thread.
91
101
  * When true, bundles createContractThread into the same transaction.
@@ -1 +1 @@
1
- {"version":3,"file":"createContract.d.ts","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAKpD,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAyC,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAM5D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;;;OAIG;IACH,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IAExB;;;;;;;OAOG;IACH,IAAI,EAAE,WAAW,CAAC;IAElB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B;;;;;OAKG;IACH,WAAW,EAAE,aAAa,CAAC;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;IAE7B;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CA8HjD"}
1
+ {"version":3,"file":"createContract.d.ts","sourceRoot":"","sources":["../../../src/instructions/createContract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAKpD,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAyC,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC9F,OAAO,EAAkC,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpF,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAqB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAC3E,OAAO,EAAc,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAG1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAM5D;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;OAGG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;;;OAIG;IACH,KAAK,EAAE,OAAO,GAAG,MAAM,CAAC;IAExB;;;;;;;OAOG;IACH,IAAI,EAAE,WAAW,CAAC;IAElB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B;;;;;OAKG;IACH,WAAW,EAAE,aAAa,CAAC;IAE3B;;;OAGG;IACH,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;;OAKG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;;;;;OAQG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;;;;OAQG;IACH,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAE/B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,aAAa,CAAC;IAE7B;;;;;;;;;;;;OAYG;IACH,cAAc,CAAC,EAAE,QAAQ,CAAC;IAE1B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CA+HjD"}
@@ -87,6 +87,13 @@ export interface UpdateConfigParams {
87
87
  * 100 disables the snipe ramp; 100..=10000 enables it.
88
88
  */
89
89
  contestedMultiplierMaxBps?: number | null;
90
+ /**
91
+ * Daily stale-discount in bps (e.g. 200 = 2%/day off the stored rate
92
+ * per idle day). `0` disables the mechanic protocol-wide. Combines with
93
+ * each contract's `stale_discount_floor_bps` to cap the total decay.
94
+ * Range 0..=10_000.
95
+ */
96
+ staleDiscountPerDayBps?: number | null;
90
97
  /**
91
98
  * Sets compute units to allocate for the transaction.
92
99
  * @example 400000
@@ -1 +1 @@
1
- {"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../../src/instructions/updateConfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAuB,KAAK,OAAO,EAAyB,MAAM,aAAa,CAAC;AAEvF,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAEnC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEzC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEvC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAElD;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAElD;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAErC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEvC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1C;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAmDjD"}
1
+ {"version":3,"file":"updateConfig.d.ts","sourceRoot":"","sources":["../../../src/instructions/updateConfig.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAuB,KAAK,OAAO,EAAyB,MAAM,aAAa,CAAC;AAEvF,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAE5E,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;GAGG;AACH,MAAM,WAAW,kBAAkB;IACjC;;;OAGG;IACH,KAAK,EAAE,eAAe,CAAC;IAEvB;;OAEG;IACH,QAAQ,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAEnC;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEzC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEvC;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAExB;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAElD;;OAEG;IACH,wBAAwB,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAElD;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAErC;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE7B;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEpC;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE3B;;OAEG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEjC;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1B;;OAEG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAExC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAAC;IAEvC;;;OAGG;IACH,yBAAyB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAE1C;;;;;OAKG;IACH,sBAAsB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEvC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AASD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE,kBAAkB,EAC1B,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAoDjD"}
@@ -77,6 +77,13 @@ export interface UpdateContractParams {
77
77
  * - `1..=10` enables it with the chosen sensitivity.
78
78
  */
79
79
  contestedThreshold?: number;
80
+ /**
81
+ * Per-contract floor for the stale-discount writeback (bps).
82
+ * Range 0..=10_000. `10_000` disables decay for this contract; lower
83
+ * values let the rate drift down to that floor over idle time. Applies
84
+ * on the next `rental_accept` writeback.
85
+ */
86
+ staleDiscountFloorBps?: number | null;
80
87
  /**
81
88
  * Sets compute units to allocate for the transaction.
82
89
  * @example 400000
@@ -1 +1 @@
1
- {"version":3,"file":"updateContract.d.ts","sourceRoot":"","sources":["../../../src/instructions/updateContract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,SAAS,EAAE,eAAe,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAE3B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IAEnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CAwEjD"}
1
+ {"version":3,"file":"updateContract.d.ts","sourceRoot":"","sources":["../../../src/instructions/updateContract.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AAEpD,OAAO,EAA6B,KAAK,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAuB,KAAK,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACnE,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACzE,OAAO,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAE5D;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC;;;;OAIG;IACH,SAAS,EAAE,eAAe,CAAC;IAE3B;;OAEG;IACH,QAAQ,EAAE,OAAO,GAAG,MAAM,CAAC;IAE3B;;;;;;;OAOG;IACH,IAAI,CAAC,EAAE,WAAW,CAAC;IAEnB;;;;;OAKG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B;;;;;OAKG;IACH,WAAW,CAAC,EAAE,aAAa,CAAC;IAE5B;;;;;;;OAOG;IACH,cAAc,CAAC,EAAE,aAAa,CAAC;IAE/B;;;;OAIG;IACH,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAE/B;;;;OAIG;IACH,OAAO,CAAC,EAAE,OAAO,CAAC;IAElB;;;;;;OAMG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B;;;;;OAKG;IACH,qBAAqB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAEtC;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,wBAAsB,cAAc,CAClC,MAAM,EAAE,oBAAoB,EAC5B,MAAM,CAAC,EAAE,OAAO,CAAC,SAAS,CAAC,GAC1B,OAAO,CAAC,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC,CA0EjD"}
@@ -30,22 +30,32 @@ export declare function computeMinimumBid(args: {
30
30
  closenessFraction: number;
31
31
  }): bigint;
32
32
  export type MinimumBid = {
33
- /** Stardust amount a challenger must bid to clear the floor. */
34
- minBidStardust: bigint;
35
- /** Stardust amount of the existing defender bid (sum of bidAtlas + bidPoints
36
- * converted via `atlasPerPoint`). 0 if no defender. */
37
- defenderBidStardust: bigint;
38
- /** Contract rate per day in stardust. */
39
- rateStardust: bigint;
40
- /** Closeness fraction at the moment of evaluation (0..1). */
41
- closenessFraction: number;
42
- /** Effective ramp multiplier applied (e.g. 4.65 for 4.65×). */
43
- rampMultiplier: number;
44
- /** Unix-second timestamp the floor was computed for (now + delaySeconds). */
45
- evaluatedAtSeconds: number;
46
- /** Active rental's end_time in unix seconds, if an active rental exists. */
47
- activeEndSeconds: number | null;
48
- /** Active rental's start_time in unix seconds, if one exists. */
49
- activeStartSeconds: number | null;
33
+ /** Minimum bid a challenger paying in ATLAS must submit as `bidAtlas`
34
+ * to clear the floor. Same unit as the on-chain field — ATLAS is
35
+ * denominated in stardust (1 ATLAS = `stardustPerAtlas` stardust). */
36
+ atlas: bigint;
37
+ /** Minimum bid a challenger paying in POINTS must submit as `bidPoints`
38
+ * to clear the floor. Same unit as the on-chain field — points-dust
39
+ * (1 point = 1e8 dust). Rounded up so the result clears the floor
40
+ * exactly; straight integer division would underbid by one dust unit
41
+ * at non-multiple boundaries and fail the on-chain `>=` check. */
42
+ points: bigint;
43
+ /** The current queued-reservation holder's bid in raw on-chain units —
44
+ * the challenger needs to clear at least these levels (or whichever
45
+ * is higher between this and the contract rate) to take the slot.
46
+ * `null` when no reservation is queued (challenger faces only the
47
+ * contract rate). Mixed-currency bids populate both fields;
48
+ * single-currency bids leave the unused field at `0n`. Presence
49
+ * (`current !== null`) is the canonical "is there an incumbent to
50
+ * outbid" check. */
51
+ current: {
52
+ atlas: bigint;
53
+ points: bigint;
54
+ } | null;
55
+ /** Unix-second timestamp the floor was evaluated for — `Math.floor(
56
+ * Date.now() / 1000) + delaySeconds`, or `nowSeconds` when supplied.
57
+ * Consumers anchor against this rather than client wall-clock so
58
+ * time-projected floors line up with the moment the math was done. */
59
+ now: number;
50
60
  };
51
61
  //# sourceMappingURL=bidMath.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"bidMath.d.ts","sourceRoot":"","sources":["../../../src/utils/bidMath.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,MAAM,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,GAAG,MAAM,CAYT;AAED,MAAM,MAAM,UAAU,GAAG;IACvB,gEAAgE;IAChE,cAAc,EAAE,MAAM,CAAC;IACvB;4DACwD;IACxD,mBAAmB,EAAE,MAAM,CAAC;IAC5B,yCAAyC;IACzC,YAAY,EAAE,MAAM,CAAC;IACrB,6DAA6D;IAC7D,iBAAiB,EAAE,MAAM,CAAC;IAC1B,+DAA+D;IAC/D,cAAc,EAAE,MAAM,CAAC;IACvB,6EAA6E;IAC7E,kBAAkB,EAAE,MAAM,CAAC;IAC3B,4EAA4E;IAC5E,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,iEAAiE;IACjE,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;CACnC,CAAC"}
1
+ {"version":3,"file":"bidMath.d.ts","sourceRoot":"","sources":["../../../src/utils/bidMath.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,yBAAyB,EAAE,MAAM,CAAC;IAClC,cAAc,EAAE,MAAM,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,GAAG,MAAM,CAYT;AAED,MAAM,MAAM,UAAU,GAAG;IACvB;;2EAEuE;IACvE,KAAK,EAAE,MAAM,CAAC;IACd;;;;uEAImE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf;;;;;;;yBAOqB;IACrB,OAAO,EAAE;QACP,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;KAChB,GAAG,IAAI,CAAC;IACT;;;2EAGuE;IACvE,GAAG,EAAE,MAAM,CAAC;CACb,CAAC"}
@@ -49,8 +49,9 @@ export type ContractSnapshot = {
49
49
  * ```ts
50
50
  * const snap = await getContractSnapshot({ contractAddress: 'Abc...' });
51
51
  * const rate = snap.contract.data.rate;
52
- * const defenderBid = snap.queuedRental?.data.bidAtlas ?? 0n;
53
- * const floorNow = snap.minimumBid.minBidStardust;
52
+ * const currentBid = snap.minimumBid.current?.atlas ?? 0n;
53
+ * const floorNowAtlas = snap.minimumBid.atlas;
54
+ * const floorNowPoints = snap.minimumBid.points;
54
55
  *
55
56
  * // Project the floor 4 hours forward without re-fetching:
56
57
  * const floorLater = computeMinimumBidFromSnapshot(snap, {
@@ -1 +1 @@
1
- {"version":3,"file":"contractSnapshot.d.ts","sourceRoot":"","sources":["../../../src/utils/contractSnapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAM5E,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAI/D,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IACpC,QAAQ,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IACxC;8EAC0E;IAC1E,YAAY,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACjD;8EAC0E;IAC1E,YAAY,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACjD;;6EAEyE;IACzE,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8B5B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA+B5B;AAUD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,EAC1C,IAAI,GAAE;IACJ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,GACL,UAAU,CA0DZ;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC;oDACgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;+BAC2B;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;wDACoD;IACpD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAAC,UAAU,CAAC,CA2BtB"}
1
+ {"version":3,"file":"contractSnapshot.d.ts","sourceRoot":"","sources":["../../../src/utils/contractSnapshot.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAW,KAAK,OAAO,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAC5E,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAChF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0CAA0C,CAAC;AAM5E,OAAO,EAAqB,KAAK,UAAU,EAAE,MAAM,WAAW,CAAC;AAI/D,MAAM,MAAM,cAAc,CAAC,CAAC,IAAI;IAAE,IAAI,EAAE,CAAC,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC;AAE9D,MAAM,MAAM,gBAAgB,GAAG;IAC7B,MAAM,EAAE,cAAc,CAAC,WAAW,CAAC,CAAC;IACpC,QAAQ,EAAE,cAAc,CAAC,aAAa,CAAC,CAAC;IACxC;8EAC0E;IAC1E,YAAY,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACjD;8EAC0E;IAC1E,YAAY,EAAE,cAAc,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC;IACjD;;6EAEyE;IACzE,UAAU,EAAE,UAAU,CAAC;CACxB,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE;IAC9C,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8B5B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA+B5B;AAUD;;;;;;;GAOG;AACH,wBAAgB,6BAA6B,CAC3C,IAAI,EAAE,IAAI,CAAC,gBAAgB,EAAE,YAAY,CAAC,EAC1C,IAAI,GAAE;IACJ,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,aAAa,CAAC,EAAE,MAAM,CAAC;CACnB,GACL,UAAU,CAqEZ;AAED;;;;;;;;GAQG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE;IACxC,eAAe,EAAE,OAAO,GAAG,MAAM,CAAC;IAClC;oDACgD;IAChD,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;+BAC2B;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,4EAA4E;IAC5E,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;wDACoD;IACpD,QAAQ,CAAC,EAAE,gBAAgB,CAAC;CAC7B,GAAG,OAAO,CAAC,UAAU,CAAC,CA2BtB"}
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "3.0.0";
1
+ export declare const VERSION = "5.0.0";
2
2
  //# sourceMappingURL=version.d.ts.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sly-rentals/core",
3
- "version": "3.0.0",
3
+ "version": "5.0.0",
4
4
  "description": "TypeScript SDK for SRSLY",
5
5
  "main": "./dist/cjs/index.js",
6
6
  "module": "./dist/esm/index.js",
@@ -100,7 +100,7 @@
100
100
  "@codama/renderers-js": "^1.4.2",
101
101
  "@solana/kit": "^2.1.1",
102
102
  "uplot": "^1.6.32",
103
- "@sly-rentals/vault": "1.0.1"
103
+ "@sly-rentals/vault": "2.0.0"
104
104
  },
105
105
  "devDependencies": {
106
106
  "@types/node": "^24.0.3",