@kasufinance/kasu-sdk 1.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/.eslintignore +3 -0
  2. package/.eslintrc.json +90 -0
  3. package/.github/workflows/ci.yml +0 -0
  4. package/.github/workflows/main.yml +43 -0
  5. package/.prettierignore +3 -0
  6. package/.prettierrc +28 -0
  7. package/abis/IClearingCoordinator.abi.json +410 -0
  8. package/abis/IERC20Metadata.abi.json +224 -0
  9. package/abis/IFeeManager.abi.json +66 -0
  10. package/abis/IKSULocking.abi.json +754 -0
  11. package/abis/IKasuAllowList.abi.json +455 -0
  12. package/abis/IKasuController.abi.json +423 -0
  13. package/abis/IKasuNFTs.abi.json +1523 -0
  14. package/abis/IKsuPrice.abi.json +15 -0
  15. package/abis/ILendingPool.abi.json +1431 -0
  16. package/abis/ILendingPoolFactory.abi.json +97 -0
  17. package/abis/ILendingPoolManager.abi.json +1347 -0
  18. package/abis/ILendingPoolTranche.abi.json +1317 -0
  19. package/abis/IPriceFeed.abi.json +1 -0
  20. package/abis/ISystemVariables.abi.json +431 -0
  21. package/abis/IUserLoyaltyRewards.abi.json +288 -0
  22. package/abis/IUserManager.abi.json +321 -0
  23. package/abis/KSULockBonus.abi.json +91 -0
  24. package/abis/KasuPoolExternalTVL.abi.json +812 -0
  25. package/abis/Swapper.abi.json +146 -0
  26. package/copy-abi.ps1 +15 -0
  27. package/dist/bundle.cjs.js +21646 -0
  28. package/dist/bundle.esm.js +21644 -0
  29. package/dist/contracts/IClearingCoordinatorAbi.d.ts +169 -0
  30. package/dist/contracts/IClearingCoordinatorAbi.js +1 -0
  31. package/dist/contracts/IERC20MetadataAbi.d.ts +162 -0
  32. package/dist/contracts/IERC20MetadataAbi.js +1 -0
  33. package/dist/contracts/IFeeManagerAbi.d.ts +96 -0
  34. package/dist/contracts/IFeeManagerAbi.js +1 -0
  35. package/dist/contracts/IKSULockingAbi.d.ts +466 -0
  36. package/dist/contracts/IKSULockingAbi.js +1 -0
  37. package/dist/contracts/IKasuAllowListAbi.d.ts +304 -0
  38. package/dist/contracts/IKasuAllowListAbi.js +1 -0
  39. package/dist/contracts/IKasuControllerAbi.d.ts +309 -0
  40. package/dist/contracts/IKasuControllerAbi.js +1 -0
  41. package/dist/contracts/IKasuNFTsAbi.d.ts +1121 -0
  42. package/dist/contracts/IKasuNFTsAbi.js +1 -0
  43. package/dist/contracts/IKsuPriceAbi.d.ts +42 -0
  44. package/dist/contracts/IKsuPriceAbi.js +1 -0
  45. package/dist/contracts/ILendingPoolAbi.d.ts +968 -0
  46. package/dist/contracts/ILendingPoolAbi.js +1 -0
  47. package/dist/contracts/ILendingPoolFactoryAbi.d.ts +103 -0
  48. package/dist/contracts/ILendingPoolFactoryAbi.js +1 -0
  49. package/dist/contracts/ILendingPoolManagerAbi.d.ts +779 -0
  50. package/dist/contracts/ILendingPoolManagerAbi.js +1 -0
  51. package/dist/contracts/ILendingPoolTrancheAbi.d.ts +752 -0
  52. package/dist/contracts/ILendingPoolTrancheAbi.js +1 -0
  53. package/dist/contracts/ISystemVariablesAbi.d.ts +378 -0
  54. package/dist/contracts/ISystemVariablesAbi.js +1 -0
  55. package/dist/contracts/IUserLoyaltyRewardsAbi.d.ts +248 -0
  56. package/dist/contracts/IUserLoyaltyRewardsAbi.js +1 -0
  57. package/dist/contracts/IUserManagerAbi.d.ts +270 -0
  58. package/dist/contracts/IUserManagerAbi.js +1 -0
  59. package/dist/contracts/KSULockBonusAbi.d.ts +61 -0
  60. package/dist/contracts/KSULockBonusAbi.js +1 -0
  61. package/dist/contracts/KasuPoolExternalTVLAbi.d.ts +411 -0
  62. package/dist/contracts/KasuPoolExternalTVLAbi.js +1 -0
  63. package/dist/contracts/SwapperAbi.d.ts +120 -0
  64. package/dist/contracts/SwapperAbi.js +1 -0
  65. package/dist/contracts/common.d.ts +21 -0
  66. package/dist/contracts/common.js +1 -0
  67. package/dist/contracts/factories/IClearingCoordinatorAbi__factory.d.ts +320 -0
  68. package/dist/contracts/factories/IClearingCoordinatorAbi__factory.js +423 -0
  69. package/dist/contracts/factories/IERC20MetadataAbi__factory.d.ts +178 -0
  70. package/dist/contracts/factories/IERC20MetadataAbi__factory.js +237 -0
  71. package/dist/contracts/factories/IFeeManagerAbi__factory.d.ts +59 -0
  72. package/dist/contracts/factories/IFeeManagerAbi__factory.js +79 -0
  73. package/dist/contracts/factories/IKSULockingAbi__factory.d.ts +588 -0
  74. package/dist/contracts/factories/IKSULockingAbi__factory.js +767 -0
  75. package/dist/contracts/factories/IKasuAllowListAbi__factory.d.ts +354 -0
  76. package/dist/contracts/factories/IKasuAllowListAbi__factory.js +468 -0
  77. package/dist/contracts/factories/IKasuControllerAbi__factory.d.ts +339 -0
  78. package/dist/contracts/factories/IKasuControllerAbi__factory.js +436 -0
  79. package/dist/contracts/factories/IKasuNFTsAbi__factory.d.ts +1629 -0
  80. package/dist/contracts/factories/IKasuNFTsAbi__factory.js +2108 -0
  81. package/dist/contracts/factories/IKsuPriceAbi__factory.d.ts +18 -0
  82. package/dist/contracts/factories/IKsuPriceAbi__factory.js +28 -0
  83. package/dist/contracts/factories/ILendingPoolAbi__factory.d.ts +1109 -0
  84. package/dist/contracts/factories/ILendingPoolAbi__factory.js +1444 -0
  85. package/dist/contracts/factories/ILendingPoolFactoryAbi__factory.d.ts +81 -0
  86. package/dist/contracts/factories/ILendingPoolFactoryAbi__factory.js +110 -0
  87. package/dist/contracts/factories/ILendingPoolManagerAbi__factory.d.ts +1045 -0
  88. package/dist/contracts/factories/ILendingPoolManagerAbi__factory.js +1360 -0
  89. package/dist/contracts/factories/ILendingPoolTrancheAbi__factory.d.ts +1015 -0
  90. package/dist/contracts/factories/ILendingPoolTrancheAbi__factory.js +1330 -0
  91. package/dist/contracts/factories/ISystemVariablesAbi__factory.d.ts +338 -0
  92. package/dist/contracts/factories/ISystemVariablesAbi__factory.js +444 -0
  93. package/dist/contracts/factories/IUserLoyaltyRewardsAbi__factory.d.ts +230 -0
  94. package/dist/contracts/factories/IUserLoyaltyRewardsAbi__factory.js +301 -0
  95. package/dist/contracts/factories/IUserManagerAbi__factory.d.ts +250 -0
  96. package/dist/contracts/factories/IUserManagerAbi__factory.js +334 -0
  97. package/dist/contracts/factories/KSULockBonusAbi__factory.d.ts +76 -0
  98. package/dist/contracts/factories/KSULockBonusAbi__factory.js +104 -0
  99. package/dist/contracts/factories/KasuPoolExternalTVLAbi__factory.d.ts +631 -0
  100. package/dist/contracts/factories/KasuPoolExternalTVLAbi__factory.js +825 -0
  101. package/dist/contracts/factories/SwapperAbi__factory.d.ts +120 -0
  102. package/dist/contracts/factories/SwapperAbi__factory.js +159 -0
  103. package/dist/contracts/factories/index.d.ts +18 -0
  104. package/dist/contracts/factories/index.js +21 -0
  105. package/dist/contracts/index.d.ts +37 -0
  106. package/dist/contracts/index.js +19 -0
  107. package/dist/index.d.ts +17 -0
  108. package/dist/index.js +16 -0
  109. package/dist/sdk-config.d.ts +22 -0
  110. package/dist/sdk-config.js +9 -0
  111. package/dist/services/DataService/data-service.d.ts +37 -0
  112. package/dist/services/DataService/data-service.js +586 -0
  113. package/dist/services/DataService/directus-types.d.ts +187 -0
  114. package/dist/services/DataService/directus-types.js +1 -0
  115. package/dist/services/DataService/queries.d.ts +7 -0
  116. package/dist/services/DataService/queries.js +158 -0
  117. package/dist/services/DataService/subgraph-types.d.ts +95 -0
  118. package/dist/services/DataService/subgraph-types.js +1 -0
  119. package/dist/services/DataService/types.d.ts +169 -0
  120. package/dist/services/DataService/types.js +1 -0
  121. package/dist/services/Locking/locking.d.ts +61 -0
  122. package/dist/services/Locking/locking.js +344 -0
  123. package/dist/services/Locking/queries.d.ts +10 -0
  124. package/dist/services/Locking/queries.js +108 -0
  125. package/dist/services/Locking/types.d.ts +117 -0
  126. package/dist/services/Locking/types.js +1 -0
  127. package/dist/services/Portfolio/portfolio.d.ts +22 -0
  128. package/dist/services/Portfolio/portfolio.js +325 -0
  129. package/dist/services/Portfolio/queries.d.ts +2 -0
  130. package/dist/services/Portfolio/queries.js +164 -0
  131. package/dist/services/Portfolio/types.d.ts +206 -0
  132. package/dist/services/Portfolio/types.js +1 -0
  133. package/dist/services/Swapper/swapper.d.ts +11 -0
  134. package/dist/services/Swapper/swapper.js +97 -0
  135. package/dist/services/Swapper/types.d.ts +51 -0
  136. package/dist/services/Swapper/types.js +1 -0
  137. package/dist/services/UserLending/helper.d.ts +2 -0
  138. package/dist/services/UserLending/helper.js +16 -0
  139. package/dist/services/UserLending/queries.d.ts +8 -0
  140. package/dist/services/UserLending/queries.js +188 -0
  141. package/dist/services/UserLending/subgraph-types.d.ts +147 -0
  142. package/dist/services/UserLending/subgraph-types.js +6 -0
  143. package/dist/services/UserLending/types.d.ts +102 -0
  144. package/dist/services/UserLending/types.js +13 -0
  145. package/dist/services/UserLending/user-lending.d.ts +55 -0
  146. package/dist/services/UserLending/user-lending.js +490 -0
  147. package/dist/services/shared.d.ts +1 -0
  148. package/dist/services/shared.js +11 -0
  149. package/dist/tests/sample.test.d.ts +1 -0
  150. package/dist/tests/sample.test.js +32 -0
  151. package/index.ts +2 -0
  152. package/jest-config.ts +9 -0
  153. package/jest.config.js +8 -0
  154. package/package.json +49 -0
  155. package/rollup.config.js +45 -0
  156. package/src/contracts/IClearingCoordinatorAbi.ts +406 -0
  157. package/src/contracts/IERC20MetadataAbi.ts +364 -0
  158. package/src/contracts/IFeeManagerAbi.ts +182 -0
  159. package/src/contracts/IKSULockingAbi.ts +965 -0
  160. package/src/contracts/IKasuAllowListAbi.ts +605 -0
  161. package/src/contracts/IKasuControllerAbi.ts +703 -0
  162. package/src/contracts/IKasuNFTsAbi.ts +2744 -0
  163. package/src/contracts/IKsuPriceAbi.ts +87 -0
  164. package/src/contracts/ILendingPoolAbi.ts +2081 -0
  165. package/src/contracts/ILendingPoolFactoryAbi.ts +161 -0
  166. package/src/contracts/ILendingPoolManagerAbi.ts +1917 -0
  167. package/src/contracts/ILendingPoolTrancheAbi.ts +1911 -0
  168. package/src/contracts/ISystemVariablesAbi.ts +908 -0
  169. package/src/contracts/IUserLoyaltyRewardsAbi.ts +544 -0
  170. package/src/contracts/IUserManagerAbi.ts +612 -0
  171. package/src/contracts/KSULockBonusAbi.ts +124 -0
  172. package/src/contracts/KasuPoolExternalTVLAbi.ts +1071 -0
  173. package/src/contracts/SwapperAbi.ts +266 -0
  174. package/src/contracts/common.ts +44 -0
  175. package/src/contracts/factories/IClearingCoordinatorAbi__factory.ts +438 -0
  176. package/src/contracts/factories/IERC20MetadataAbi__factory.ts +248 -0
  177. package/src/contracts/factories/IFeeManagerAbi__factory.ts +90 -0
  178. package/src/contracts/factories/IKSULockingAbi__factory.ts +778 -0
  179. package/src/contracts/factories/IKasuAllowListAbi__factory.ts +479 -0
  180. package/src/contracts/factories/IKasuControllerAbi__factory.ts +447 -0
  181. package/src/contracts/factories/IKasuNFTsAbi__factory.ts +2116 -0
  182. package/src/contracts/factories/IKsuPriceAbi__factory.ts +36 -0
  183. package/src/contracts/factories/ILendingPoolAbi__factory.ts +1455 -0
  184. package/src/contracts/factories/ILendingPoolFactoryAbi__factory.ts +125 -0
  185. package/src/contracts/factories/ILendingPoolManagerAbi__factory.ts +1375 -0
  186. package/src/contracts/factories/ILendingPoolTrancheAbi__factory.ts +1345 -0
  187. package/src/contracts/factories/ISystemVariablesAbi__factory.ts +455 -0
  188. package/src/contracts/factories/IUserLoyaltyRewardsAbi__factory.ts +316 -0
  189. package/src/contracts/factories/IUserManagerAbi__factory.ts +345 -0
  190. package/src/contracts/factories/KSULockBonusAbi__factory.ts +115 -0
  191. package/src/contracts/factories/KasuPoolExternalTVLAbi__factory.ts +840 -0
  192. package/src/contracts/factories/SwapperAbi__factory.ts +167 -0
  193. package/src/contracts/factories/index.ts +21 -0
  194. package/src/contracts/index.ts +40 -0
  195. package/src/index.ts +27 -0
  196. package/src/sdk-config.ts +35 -0
  197. package/src/services/DataService/data-service.ts +1017 -0
  198. package/src/services/DataService/directus-types.ts +199 -0
  199. package/src/services/DataService/queries.ts +165 -0
  200. package/src/services/DataService/subgraph-types.ts +104 -0
  201. package/src/services/DataService/types.ts +184 -0
  202. package/src/services/Locking/locking.ts +541 -0
  203. package/src/services/Locking/queries.ts +118 -0
  204. package/src/services/Locking/types.ts +141 -0
  205. package/src/services/Portfolio/portfolio.ts +593 -0
  206. package/src/services/Portfolio/queries.ts +166 -0
  207. package/src/services/Portfolio/types.ts +220 -0
  208. package/src/services/Swapper/swapper.ts +158 -0
  209. package/src/services/Swapper/types.ts +54 -0
  210. package/src/services/UserLending/helper.ts +28 -0
  211. package/src/services/UserLending/queries.ts +196 -0
  212. package/src/services/UserLending/subgraph-types.ts +173 -0
  213. package/src/services/UserLending/types.ts +123 -0
  214. package/src/services/UserLending/user-lending.ts +933 -0
  215. package/src/services/shared.ts +11 -0
  216. package/src/tests/sample.test.ts +44 -0
  217. package/tsconfig.json +27 -0
  218. package/tsconfig.tsbuildinfo +1 -0
  219. package/versioner.sh +6 -0
@@ -0,0 +1,1431 @@
1
+ [
2
+ {
3
+ "inputs": [],
4
+ "name": "ClearingIsPending",
5
+ "type": "error"
6
+ },
7
+ {
8
+ "inputs": [
9
+ {
10
+ "internalType": "uint256",
11
+ "name": "drawAmount",
12
+ "type": "uint256"
13
+ },
14
+ {
15
+ "internalType": "uint256",
16
+ "name": "availableAmount",
17
+ "type": "uint256"
18
+ }
19
+ ],
20
+ "name": "DrawAmountCantBeGreaterThanAvailableAmount",
21
+ "type": "error"
22
+ },
23
+ {
24
+ "inputs": [
25
+ {
26
+ "internalType": "uint256",
27
+ "name": "feesOwedAmount",
28
+ "type": "uint256"
29
+ }
30
+ ],
31
+ "name": "FeesOwedAmountIsGreaterThanZero",
32
+ "type": "error"
33
+ },
34
+ {
35
+ "inputs": [],
36
+ "name": "LendingPoolIsNotStopped",
37
+ "type": "error"
38
+ },
39
+ {
40
+ "inputs": [],
41
+ "name": "LendingPoolIsStopped",
42
+ "type": "error"
43
+ },
44
+ {
45
+ "inputs": [
46
+ {
47
+ "internalType": "uint256",
48
+ "name": "reportedLossAmount",
49
+ "type": "uint256"
50
+ },
51
+ {
52
+ "internalType": "uint256",
53
+ "name": "maxLossAmount",
54
+ "type": "uint256"
55
+ }
56
+ ],
57
+ "name": "LossAmountCantBeGreaterThanMaxLossAmount",
58
+ "type": "error"
59
+ },
60
+ {
61
+ "inputs": [
62
+ {
63
+ "internalType": "uint256",
64
+ "name": "reportedLossAmount",
65
+ "type": "uint256"
66
+ }
67
+ ],
68
+ "name": "LossAmountShouldBeGreaterThanZero",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [
73
+ {
74
+ "internalType": "uint256",
75
+ "name": "lossId",
76
+ "type": "uint256"
77
+ }
78
+ ],
79
+ "name": "LossIdNotValid",
80
+ "type": "error"
81
+ },
82
+ {
83
+ "inputs": [
84
+ {
85
+ "internalType": "string",
86
+ "name": "reason",
87
+ "type": "string"
88
+ }
89
+ ],
90
+ "name": "PoolConfigurationIsIncorrect",
91
+ "type": "error"
92
+ },
93
+ {
94
+ "inputs": [
95
+ {
96
+ "internalType": "uint256",
97
+ "name": "repayAmount",
98
+ "type": "uint256"
99
+ },
100
+ {
101
+ "internalType": "uint256",
102
+ "name": "owedAmount",
103
+ "type": "uint256"
104
+ }
105
+ ],
106
+ "name": "RepayAmountCantBeGreaterThanOwedAmount",
107
+ "type": "error"
108
+ },
109
+ {
110
+ "inputs": [
111
+ {
112
+ "internalType": "uint256",
113
+ "name": "userOwedAmount",
114
+ "type": "uint256"
115
+ }
116
+ ],
117
+ "name": "UserOwedAmountIsGreaterThanZero",
118
+ "type": "error"
119
+ },
120
+ {
121
+ "inputs": [
122
+ {
123
+ "internalType": "uint256",
124
+ "name": "withdrawAmount",
125
+ "type": "uint256"
126
+ },
127
+ {
128
+ "internalType": "uint256",
129
+ "name": "firstLostCapital",
130
+ "type": "uint256"
131
+ }
132
+ ],
133
+ "name": "WithdrawAmountCantBeGreaterThanFirstLostCapital",
134
+ "type": "error"
135
+ },
136
+ {
137
+ "anonymous": false,
138
+ "inputs": [
139
+ {
140
+ "indexed": true,
141
+ "internalType": "address",
142
+ "name": "owner",
143
+ "type": "address"
144
+ },
145
+ {
146
+ "indexed": true,
147
+ "internalType": "address",
148
+ "name": "spender",
149
+ "type": "address"
150
+ },
151
+ {
152
+ "indexed": false,
153
+ "internalType": "uint256",
154
+ "name": "value",
155
+ "type": "uint256"
156
+ }
157
+ ],
158
+ "name": "Approval",
159
+ "type": "event"
160
+ },
161
+ {
162
+ "anonymous": false,
163
+ "inputs": [
164
+ {
165
+ "indexed": true,
166
+ "internalType": "address",
167
+ "name": "user",
168
+ "type": "address"
169
+ },
170
+ {
171
+ "indexed": true,
172
+ "internalType": "address",
173
+ "name": "tranche",
174
+ "type": "address"
175
+ },
176
+ {
177
+ "indexed": false,
178
+ "internalType": "uint256",
179
+ "name": "amount",
180
+ "type": "uint256"
181
+ }
182
+ ],
183
+ "name": "DepositAccepted",
184
+ "type": "event"
185
+ },
186
+ {
187
+ "anonymous": false,
188
+ "inputs": [
189
+ {
190
+ "indexed": true,
191
+ "internalType": "uint256",
192
+ "name": "epoch",
193
+ "type": "uint256"
194
+ },
195
+ {
196
+ "indexed": false,
197
+ "internalType": "uint256",
198
+ "name": "feesIncreasedAmount",
199
+ "type": "uint256"
200
+ }
201
+ ],
202
+ "name": "FeesOwedIncreased",
203
+ "type": "event"
204
+ },
205
+ {
206
+ "anonymous": false,
207
+ "inputs": [
208
+ {
209
+ "indexed": false,
210
+ "internalType": "uint256",
211
+ "name": "amountAdded",
212
+ "type": "uint256"
213
+ }
214
+ ],
215
+ "name": "FirstLossCapitalAdded",
216
+ "type": "event"
217
+ },
218
+ {
219
+ "anonymous": false,
220
+ "inputs": [
221
+ {
222
+ "indexed": true,
223
+ "internalType": "uint256",
224
+ "name": "lossId",
225
+ "type": "uint256"
226
+ },
227
+ {
228
+ "indexed": false,
229
+ "internalType": "uint256",
230
+ "name": "amount",
231
+ "type": "uint256"
232
+ }
233
+ ],
234
+ "name": "FirstLossCapitalLossReported",
235
+ "type": "event"
236
+ },
237
+ {
238
+ "anonymous": false,
239
+ "inputs": [
240
+ {
241
+ "indexed": false,
242
+ "internalType": "uint256",
243
+ "name": "amountWithdrawn",
244
+ "type": "uint256"
245
+ }
246
+ ],
247
+ "name": "FirstLossCapitalWithdrawn",
248
+ "type": "event"
249
+ },
250
+ {
251
+ "anonymous": false,
252
+ "inputs": [
253
+ {
254
+ "indexed": false,
255
+ "internalType": "uint256",
256
+ "name": "amount",
257
+ "type": "uint256"
258
+ }
259
+ ],
260
+ "name": "FundsDrawn",
261
+ "type": "event"
262
+ },
263
+ {
264
+ "anonymous": false,
265
+ "inputs": [
266
+ {
267
+ "indexed": true,
268
+ "internalType": "address",
269
+ "name": "user",
270
+ "type": "address"
271
+ },
272
+ {
273
+ "indexed": true,
274
+ "internalType": "address",
275
+ "name": "tranche",
276
+ "type": "address"
277
+ },
278
+ {
279
+ "indexed": false,
280
+ "internalType": "uint256",
281
+ "name": "shares",
282
+ "type": "uint256"
283
+ },
284
+ {
285
+ "indexed": false,
286
+ "internalType": "uint256",
287
+ "name": "amount",
288
+ "type": "uint256"
289
+ }
290
+ ],
291
+ "name": "ImmediateWithdrawal",
292
+ "type": "event"
293
+ },
294
+ {
295
+ "anonymous": false,
296
+ "inputs": [
297
+ {
298
+ "indexed": true,
299
+ "internalType": "address",
300
+ "name": "tranche",
301
+ "type": "address"
302
+ },
303
+ {
304
+ "indexed": true,
305
+ "internalType": "uint256",
306
+ "name": "epoch",
307
+ "type": "uint256"
308
+ },
309
+ {
310
+ "indexed": false,
311
+ "internalType": "uint256",
312
+ "name": "interestAmount",
313
+ "type": "uint256"
314
+ }
315
+ ],
316
+ "name": "InterestApplied",
317
+ "type": "event"
318
+ },
319
+ {
320
+ "anonymous": false,
321
+ "inputs": [],
322
+ "name": "LendingPoolStopped",
323
+ "type": "event"
324
+ },
325
+ {
326
+ "anonymous": false,
327
+ "inputs": [
328
+ {
329
+ "indexed": false,
330
+ "internalType": "uint256",
331
+ "name": "amount",
332
+ "type": "uint256"
333
+ }
334
+ ],
335
+ "name": "LossReported",
336
+ "type": "event"
337
+ },
338
+ {
339
+ "anonymous": false,
340
+ "inputs": [
341
+ {
342
+ "indexed": false,
343
+ "internalType": "uint256",
344
+ "name": "amountForUsers",
345
+ "type": "uint256"
346
+ },
347
+ {
348
+ "indexed": false,
349
+ "internalType": "uint256",
350
+ "name": "amountForFees",
351
+ "type": "uint256"
352
+ }
353
+ ],
354
+ "name": "OwedFundsRepaid",
355
+ "type": "event"
356
+ },
357
+ {
358
+ "anonymous": false,
359
+ "inputs": [
360
+ {
361
+ "indexed": false,
362
+ "internalType": "uint256",
363
+ "name": "feesPaid",
364
+ "type": "uint256"
365
+ }
366
+ ],
367
+ "name": "PaidFees",
368
+ "type": "event"
369
+ },
370
+ {
371
+ "anonymous": false,
372
+ "inputs": [
373
+ {
374
+ "indexed": true,
375
+ "internalType": "address",
376
+ "name": "tranche",
377
+ "type": "address"
378
+ },
379
+ {
380
+ "indexed": true,
381
+ "internalType": "uint256",
382
+ "name": "applicableEpoch",
383
+ "type": "uint256"
384
+ },
385
+ {
386
+ "indexed": false,
387
+ "internalType": "uint256",
388
+ "name": "arrayIndex",
389
+ "type": "uint256"
390
+ }
391
+ ],
392
+ "name": "RemovedTrancheInterestRateUpdate",
393
+ "type": "event"
394
+ },
395
+ {
396
+ "anonymous": false,
397
+ "inputs": [
398
+ {
399
+ "indexed": true,
400
+ "internalType": "address",
401
+ "name": "from",
402
+ "type": "address"
403
+ },
404
+ {
405
+ "indexed": true,
406
+ "internalType": "address",
407
+ "name": "to",
408
+ "type": "address"
409
+ },
410
+ {
411
+ "indexed": false,
412
+ "internalType": "uint256",
413
+ "name": "value",
414
+ "type": "uint256"
415
+ }
416
+ ],
417
+ "name": "Transfer",
418
+ "type": "event"
419
+ },
420
+ {
421
+ "anonymous": false,
422
+ "inputs": [
423
+ {
424
+ "indexed": false,
425
+ "internalType": "uint256",
426
+ "name": "desiredDrawAmount",
427
+ "type": "uint256"
428
+ }
429
+ ],
430
+ "name": "UpdatedDesiredDrawAmount",
431
+ "type": "event"
432
+ },
433
+ {
434
+ "anonymous": false,
435
+ "inputs": [
436
+ {
437
+ "indexed": true,
438
+ "internalType": "address",
439
+ "name": "drawRecipient",
440
+ "type": "address"
441
+ }
442
+ ],
443
+ "name": "UpdatedDrawRecipient",
444
+ "type": "event"
445
+ },
446
+ {
447
+ "anonymous": false,
448
+ "inputs": [
449
+ {
450
+ "indexed": true,
451
+ "internalType": "address",
452
+ "name": "tranche",
453
+ "type": "address"
454
+ },
455
+ {
456
+ "indexed": false,
457
+ "internalType": "uint256",
458
+ "name": "amount",
459
+ "type": "uint256"
460
+ }
461
+ ],
462
+ "name": "UpdatedMaximumDepositAmount",
463
+ "type": "event"
464
+ },
465
+ {
466
+ "anonymous": false,
467
+ "inputs": [
468
+ {
469
+ "indexed": true,
470
+ "internalType": "address",
471
+ "name": "tranche",
472
+ "type": "address"
473
+ },
474
+ {
475
+ "indexed": false,
476
+ "internalType": "uint256",
477
+ "name": "amount",
478
+ "type": "uint256"
479
+ }
480
+ ],
481
+ "name": "UpdatedMinimumDepositAmount",
482
+ "type": "event"
483
+ },
484
+ {
485
+ "anonymous": false,
486
+ "inputs": [
487
+ {
488
+ "indexed": false,
489
+ "internalType": "uint256",
490
+ "name": "percentage",
491
+ "type": "uint256"
492
+ }
493
+ ],
494
+ "name": "UpdatedMinimumExcessLiquidityPercentage",
495
+ "type": "event"
496
+ },
497
+ {
498
+ "anonymous": false,
499
+ "inputs": [
500
+ {
501
+ "indexed": false,
502
+ "internalType": "uint256",
503
+ "name": "percentage",
504
+ "type": "uint256"
505
+ }
506
+ ],
507
+ "name": "UpdatedTargetExcessLiquidityPercentage",
508
+ "type": "event"
509
+ },
510
+ {
511
+ "anonymous": false,
512
+ "inputs": [
513
+ {
514
+ "indexed": false,
515
+ "internalType": "uint256[]",
516
+ "name": "ratios",
517
+ "type": "uint256[]"
518
+ }
519
+ ],
520
+ "name": "UpdatedTrancheDesiredRatios",
521
+ "type": "event"
522
+ },
523
+ {
524
+ "anonymous": false,
525
+ "inputs": [
526
+ {
527
+ "indexed": true,
528
+ "internalType": "address",
529
+ "name": "tranche",
530
+ "type": "address"
531
+ },
532
+ {
533
+ "indexed": true,
534
+ "internalType": "uint256",
535
+ "name": "applicableEpoch",
536
+ "type": "uint256"
537
+ },
538
+ {
539
+ "indexed": false,
540
+ "internalType": "uint256",
541
+ "name": "newInterestRate",
542
+ "type": "uint256"
543
+ }
544
+ ],
545
+ "name": "UpdatedTrancheInterestRate",
546
+ "type": "event"
547
+ },
548
+ {
549
+ "anonymous": false,
550
+ "inputs": [
551
+ {
552
+ "indexed": false,
553
+ "internalType": "uint256",
554
+ "name": "epochDelay",
555
+ "type": "uint256"
556
+ }
557
+ ],
558
+ "name": "UpdatedTrancheInterestRateChangeEpochDelay",
559
+ "type": "event"
560
+ },
561
+ {
562
+ "anonymous": false,
563
+ "inputs": [
564
+ {
565
+ "indexed": true,
566
+ "internalType": "address",
567
+ "name": "user",
568
+ "type": "address"
569
+ },
570
+ {
571
+ "indexed": true,
572
+ "internalType": "address",
573
+ "name": "tranche",
574
+ "type": "address"
575
+ },
576
+ {
577
+ "indexed": false,
578
+ "internalType": "uint256",
579
+ "name": "shares",
580
+ "type": "uint256"
581
+ },
582
+ {
583
+ "indexed": false,
584
+ "internalType": "uint256",
585
+ "name": "assetAmount",
586
+ "type": "uint256"
587
+ }
588
+ ],
589
+ "name": "WithdrawalAccepted",
590
+ "type": "event"
591
+ },
592
+ {
593
+ "inputs": [
594
+ {
595
+ "internalType": "address",
596
+ "name": "tranche",
597
+ "type": "address"
598
+ },
599
+ {
600
+ "internalType": "address",
601
+ "name": "user",
602
+ "type": "address"
603
+ },
604
+ {
605
+ "internalType": "uint256",
606
+ "name": "acceptedAmount",
607
+ "type": "uint256"
608
+ }
609
+ ],
610
+ "name": "acceptDeposit",
611
+ "outputs": [
612
+ {
613
+ "internalType": "uint256",
614
+ "name": "trancheShares",
615
+ "type": "uint256"
616
+ }
617
+ ],
618
+ "stateMutability": "nonpayable",
619
+ "type": "function"
620
+ },
621
+ {
622
+ "inputs": [
623
+ {
624
+ "internalType": "address",
625
+ "name": "tranche",
626
+ "type": "address"
627
+ },
628
+ {
629
+ "internalType": "address",
630
+ "name": "user",
631
+ "type": "address"
632
+ },
633
+ {
634
+ "internalType": "uint256",
635
+ "name": "acceptedShares",
636
+ "type": "uint256"
637
+ }
638
+ ],
639
+ "name": "acceptWithdrawal",
640
+ "outputs": [
641
+ {
642
+ "internalType": "uint256",
643
+ "name": "assetAmount",
644
+ "type": "uint256"
645
+ }
646
+ ],
647
+ "stateMutability": "nonpayable",
648
+ "type": "function"
649
+ },
650
+ {
651
+ "inputs": [
652
+ {
653
+ "internalType": "address",
654
+ "name": "owner",
655
+ "type": "address"
656
+ },
657
+ {
658
+ "internalType": "address",
659
+ "name": "spender",
660
+ "type": "address"
661
+ }
662
+ ],
663
+ "name": "allowance",
664
+ "outputs": [
665
+ {
666
+ "internalType": "uint256",
667
+ "name": "",
668
+ "type": "uint256"
669
+ }
670
+ ],
671
+ "stateMutability": "view",
672
+ "type": "function"
673
+ },
674
+ {
675
+ "inputs": [
676
+ {
677
+ "internalType": "uint256",
678
+ "name": "epoch",
679
+ "type": "uint256"
680
+ }
681
+ ],
682
+ "name": "applyInterests",
683
+ "outputs": [],
684
+ "stateMutability": "nonpayable",
685
+ "type": "function"
686
+ },
687
+ {
688
+ "inputs": [
689
+ {
690
+ "internalType": "address",
691
+ "name": "spender",
692
+ "type": "address"
693
+ },
694
+ {
695
+ "internalType": "uint256",
696
+ "name": "value",
697
+ "type": "uint256"
698
+ }
699
+ ],
700
+ "name": "approve",
701
+ "outputs": [
702
+ {
703
+ "internalType": "bool",
704
+ "name": "",
705
+ "type": "bool"
706
+ }
707
+ ],
708
+ "stateMutability": "nonpayable",
709
+ "type": "function"
710
+ },
711
+ {
712
+ "inputs": [],
713
+ "name": "availableFunds",
714
+ "outputs": [
715
+ {
716
+ "internalType": "uint256",
717
+ "name": "",
718
+ "type": "uint256"
719
+ }
720
+ ],
721
+ "stateMutability": "view",
722
+ "type": "function"
723
+ },
724
+ {
725
+ "inputs": [
726
+ {
727
+ "internalType": "address",
728
+ "name": "account",
729
+ "type": "address"
730
+ }
731
+ ],
732
+ "name": "balanceOf",
733
+ "outputs": [
734
+ {
735
+ "internalType": "uint256",
736
+ "name": "",
737
+ "type": "uint256"
738
+ }
739
+ ],
740
+ "stateMutability": "view",
741
+ "type": "function"
742
+ },
743
+ {
744
+ "inputs": [],
745
+ "name": "calculateMaximumLossAmount",
746
+ "outputs": [
747
+ {
748
+ "internalType": "uint256",
749
+ "name": "maximumLossAmount",
750
+ "type": "uint256"
751
+ }
752
+ ],
753
+ "stateMutability": "view",
754
+ "type": "function"
755
+ },
756
+ {
757
+ "inputs": [
758
+ {
759
+ "internalType": "address",
760
+ "name": "user",
761
+ "type": "address"
762
+ },
763
+ {
764
+ "internalType": "address",
765
+ "name": "tranche",
766
+ "type": "address"
767
+ },
768
+ {
769
+ "internalType": "uint256",
770
+ "name": "lossId",
771
+ "type": "uint256"
772
+ }
773
+ ],
774
+ "name": "claimRepaidLoss",
775
+ "outputs": [
776
+ {
777
+ "internalType": "uint256",
778
+ "name": "claimedAmount",
779
+ "type": "uint256"
780
+ }
781
+ ],
782
+ "stateMutability": "nonpayable",
783
+ "type": "function"
784
+ },
785
+ {
786
+ "inputs": [
787
+ {
788
+ "internalType": "uint256",
789
+ "name": "amount",
790
+ "type": "uint256"
791
+ }
792
+ ],
793
+ "name": "depositFirstLossCapital",
794
+ "outputs": [],
795
+ "stateMutability": "nonpayable",
796
+ "type": "function"
797
+ },
798
+ {
799
+ "inputs": [
800
+ {
801
+ "internalType": "uint256",
802
+ "name": "amount",
803
+ "type": "uint256"
804
+ }
805
+ ],
806
+ "name": "drawFunds",
807
+ "outputs": [],
808
+ "stateMutability": "nonpayable",
809
+ "type": "function"
810
+ },
811
+ {
812
+ "inputs": [],
813
+ "name": "feesOwedAmount",
814
+ "outputs": [
815
+ {
816
+ "internalType": "uint256",
817
+ "name": "",
818
+ "type": "uint256"
819
+ }
820
+ ],
821
+ "stateMutability": "view",
822
+ "type": "function"
823
+ },
824
+ {
825
+ "inputs": [
826
+ {
827
+ "internalType": "address",
828
+ "name": "tranche",
829
+ "type": "address"
830
+ },
831
+ {
832
+ "internalType": "address",
833
+ "name": "user",
834
+ "type": "address"
835
+ },
836
+ {
837
+ "internalType": "uint256",
838
+ "name": "sharesToWithdraw",
839
+ "type": "uint256"
840
+ }
841
+ ],
842
+ "name": "forceImmediateWithdrawal",
843
+ "outputs": [
844
+ {
845
+ "internalType": "uint256",
846
+ "name": "assetAmount",
847
+ "type": "uint256"
848
+ }
849
+ ],
850
+ "stateMutability": "nonpayable",
851
+ "type": "function"
852
+ },
853
+ {
854
+ "inputs": [],
855
+ "name": "getClearingConfig",
856
+ "outputs": [
857
+ {
858
+ "components": [
859
+ {
860
+ "internalType": "uint256",
861
+ "name": "drawAmount",
862
+ "type": "uint256"
863
+ },
864
+ {
865
+ "internalType": "uint256[]",
866
+ "name": "trancheDesiredRatios",
867
+ "type": "uint256[]"
868
+ },
869
+ {
870
+ "internalType": "uint256",
871
+ "name": "maxExcessPercentage",
872
+ "type": "uint256"
873
+ },
874
+ {
875
+ "internalType": "uint256",
876
+ "name": "minExcessPercentage",
877
+ "type": "uint256"
878
+ }
879
+ ],
880
+ "internalType": "struct ClearingConfiguration",
881
+ "name": "clearingConfig",
882
+ "type": "tuple"
883
+ }
884
+ ],
885
+ "stateMutability": "view",
886
+ "type": "function"
887
+ },
888
+ {
889
+ "inputs": [],
890
+ "name": "getLendingPoolInfo",
891
+ "outputs": [
892
+ {
893
+ "components": [
894
+ {
895
+ "internalType": "address[]",
896
+ "name": "trancheAddresses",
897
+ "type": "address[]"
898
+ },
899
+ {
900
+ "internalType": "address",
901
+ "name": "pendingPool",
902
+ "type": "address"
903
+ }
904
+ ],
905
+ "internalType": "struct LendingPoolInfo",
906
+ "name": "",
907
+ "type": "tuple"
908
+ }
909
+ ],
910
+ "stateMutability": "view",
911
+ "type": "function"
912
+ },
913
+ {
914
+ "inputs": [
915
+ {
916
+ "internalType": "address",
917
+ "name": "tranche",
918
+ "type": "address"
919
+ }
920
+ ],
921
+ "name": "isLendingPoolTranche",
922
+ "outputs": [
923
+ {
924
+ "internalType": "bool",
925
+ "name": "",
926
+ "type": "bool"
927
+ }
928
+ ],
929
+ "stateMutability": "view",
930
+ "type": "function"
931
+ },
932
+ {
933
+ "inputs": [],
934
+ "name": "lendingPoolTrancheCount",
935
+ "outputs": [
936
+ {
937
+ "internalType": "uint256",
938
+ "name": "",
939
+ "type": "uint256"
940
+ }
941
+ ],
942
+ "stateMutability": "view",
943
+ "type": "function"
944
+ },
945
+ {
946
+ "inputs": [],
947
+ "name": "lendingPoolTranches",
948
+ "outputs": [
949
+ {
950
+ "internalType": "address[]",
951
+ "name": "",
952
+ "type": "address[]"
953
+ }
954
+ ],
955
+ "stateMutability": "view",
956
+ "type": "function"
957
+ },
958
+ {
959
+ "inputs": [],
960
+ "name": "pendingPool",
961
+ "outputs": [
962
+ {
963
+ "internalType": "address",
964
+ "name": "",
965
+ "type": "address"
966
+ }
967
+ ],
968
+ "stateMutability": "view",
969
+ "type": "function"
970
+ },
971
+ {
972
+ "inputs": [],
973
+ "name": "poolConfiguration",
974
+ "outputs": [
975
+ {
976
+ "components": [
977
+ {
978
+ "components": [
979
+ {
980
+ "internalType": "uint256",
981
+ "name": "ratio",
982
+ "type": "uint256"
983
+ },
984
+ {
985
+ "internalType": "uint256",
986
+ "name": "interestRate",
987
+ "type": "uint256"
988
+ },
989
+ {
990
+ "internalType": "uint256",
991
+ "name": "minDepositAmount",
992
+ "type": "uint256"
993
+ },
994
+ {
995
+ "internalType": "uint256",
996
+ "name": "maxDepositAmount",
997
+ "type": "uint256"
998
+ }
999
+ ],
1000
+ "internalType": "struct TrancheConfig[]",
1001
+ "name": "tranches",
1002
+ "type": "tuple[]"
1003
+ },
1004
+ {
1005
+ "internalType": "address",
1006
+ "name": "drawRecipient",
1007
+ "type": "address"
1008
+ },
1009
+ {
1010
+ "internalType": "uint256",
1011
+ "name": "desiredDrawAmount",
1012
+ "type": "uint256"
1013
+ },
1014
+ {
1015
+ "internalType": "uint256",
1016
+ "name": "trancheInterestChangeEpochDelay",
1017
+ "type": "uint256"
1018
+ },
1019
+ {
1020
+ "internalType": "uint256",
1021
+ "name": "targetExcessLiquidityPercentage",
1022
+ "type": "uint256"
1023
+ },
1024
+ {
1025
+ "internalType": "uint256",
1026
+ "name": "minimumExcessLiquidityPercentage",
1027
+ "type": "uint256"
1028
+ }
1029
+ ],
1030
+ "internalType": "struct PoolConfiguration",
1031
+ "name": "",
1032
+ "type": "tuple"
1033
+ }
1034
+ ],
1035
+ "stateMutability": "view",
1036
+ "type": "function"
1037
+ },
1038
+ {
1039
+ "inputs": [
1040
+ {
1041
+ "internalType": "address",
1042
+ "name": "tranche",
1043
+ "type": "address"
1044
+ },
1045
+ {
1046
+ "internalType": "uint256",
1047
+ "name": "lossId",
1048
+ "type": "uint256"
1049
+ },
1050
+ {
1051
+ "internalType": "uint256",
1052
+ "name": "amount",
1053
+ "type": "uint256"
1054
+ }
1055
+ ],
1056
+ "name": "repayLoss",
1057
+ "outputs": [],
1058
+ "stateMutability": "nonpayable",
1059
+ "type": "function"
1060
+ },
1061
+ {
1062
+ "inputs": [
1063
+ {
1064
+ "internalType": "uint256",
1065
+ "name": "amount",
1066
+ "type": "uint256"
1067
+ }
1068
+ ],
1069
+ "name": "repayOwedFunds",
1070
+ "outputs": [],
1071
+ "stateMutability": "nonpayable",
1072
+ "type": "function"
1073
+ },
1074
+ {
1075
+ "inputs": [
1076
+ {
1077
+ "internalType": "uint256",
1078
+ "name": "lossAmount",
1079
+ "type": "uint256"
1080
+ },
1081
+ {
1082
+ "internalType": "bool",
1083
+ "name": "doMintLossTokens",
1084
+ "type": "bool"
1085
+ }
1086
+ ],
1087
+ "name": "reportLoss",
1088
+ "outputs": [
1089
+ {
1090
+ "internalType": "uint256",
1091
+ "name": "appliedLoss",
1092
+ "type": "uint256"
1093
+ }
1094
+ ],
1095
+ "stateMutability": "nonpayable",
1096
+ "type": "function"
1097
+ },
1098
+ {
1099
+ "inputs": [],
1100
+ "name": "stop",
1101
+ "outputs": [],
1102
+ "stateMutability": "nonpayable",
1103
+ "type": "function"
1104
+ },
1105
+ {
1106
+ "inputs": [],
1107
+ "name": "totalSupply",
1108
+ "outputs": [
1109
+ {
1110
+ "internalType": "uint256",
1111
+ "name": "",
1112
+ "type": "uint256"
1113
+ }
1114
+ ],
1115
+ "stateMutability": "view",
1116
+ "type": "function"
1117
+ },
1118
+ {
1119
+ "inputs": [
1120
+ {
1121
+ "internalType": "address",
1122
+ "name": "tranche",
1123
+ "type": "address"
1124
+ }
1125
+ ],
1126
+ "name": "trancheConfigurationDepositLimits",
1127
+ "outputs": [
1128
+ {
1129
+ "internalType": "uint256",
1130
+ "name": "minDepositAmount",
1131
+ "type": "uint256"
1132
+ },
1133
+ {
1134
+ "internalType": "uint256",
1135
+ "name": "maxDepositAmount",
1136
+ "type": "uint256"
1137
+ }
1138
+ ],
1139
+ "stateMutability": "view",
1140
+ "type": "function"
1141
+ },
1142
+ {
1143
+ "inputs": [
1144
+ {
1145
+ "internalType": "address",
1146
+ "name": "tranche",
1147
+ "type": "address"
1148
+ }
1149
+ ],
1150
+ "name": "trancheIndex",
1151
+ "outputs": [
1152
+ {
1153
+ "internalType": "uint256",
1154
+ "name": "",
1155
+ "type": "uint256"
1156
+ }
1157
+ ],
1158
+ "stateMutability": "view",
1159
+ "type": "function"
1160
+ },
1161
+ {
1162
+ "inputs": [
1163
+ {
1164
+ "internalType": "address",
1165
+ "name": "to",
1166
+ "type": "address"
1167
+ },
1168
+ {
1169
+ "internalType": "uint256",
1170
+ "name": "value",
1171
+ "type": "uint256"
1172
+ }
1173
+ ],
1174
+ "name": "transfer",
1175
+ "outputs": [
1176
+ {
1177
+ "internalType": "bool",
1178
+ "name": "",
1179
+ "type": "bool"
1180
+ }
1181
+ ],
1182
+ "stateMutability": "nonpayable",
1183
+ "type": "function"
1184
+ },
1185
+ {
1186
+ "inputs": [
1187
+ {
1188
+ "internalType": "address",
1189
+ "name": "from",
1190
+ "type": "address"
1191
+ },
1192
+ {
1193
+ "internalType": "address",
1194
+ "name": "to",
1195
+ "type": "address"
1196
+ },
1197
+ {
1198
+ "internalType": "uint256",
1199
+ "name": "value",
1200
+ "type": "uint256"
1201
+ }
1202
+ ],
1203
+ "name": "transferFrom",
1204
+ "outputs": [
1205
+ {
1206
+ "internalType": "bool",
1207
+ "name": "",
1208
+ "type": "bool"
1209
+ }
1210
+ ],
1211
+ "stateMutability": "nonpayable",
1212
+ "type": "function"
1213
+ },
1214
+ {
1215
+ "inputs": [
1216
+ {
1217
+ "internalType": "uint256",
1218
+ "name": "desiredDrawAmount",
1219
+ "type": "uint256"
1220
+ }
1221
+ ],
1222
+ "name": "updateDesiredDrawAmount",
1223
+ "outputs": [],
1224
+ "stateMutability": "nonpayable",
1225
+ "type": "function"
1226
+ },
1227
+ {
1228
+ "inputs": [
1229
+ {
1230
+ "internalType": "address",
1231
+ "name": "drawRecipient",
1232
+ "type": "address"
1233
+ }
1234
+ ],
1235
+ "name": "updateDrawRecipient",
1236
+ "outputs": [],
1237
+ "stateMutability": "nonpayable",
1238
+ "type": "function"
1239
+ },
1240
+ {
1241
+ "inputs": [
1242
+ {
1243
+ "internalType": "address",
1244
+ "name": "tranche",
1245
+ "type": "address"
1246
+ },
1247
+ {
1248
+ "internalType": "uint256",
1249
+ "name": "maximumDepositAmount",
1250
+ "type": "uint256"
1251
+ }
1252
+ ],
1253
+ "name": "updateMaximumDepositAmount",
1254
+ "outputs": [],
1255
+ "stateMutability": "nonpayable",
1256
+ "type": "function"
1257
+ },
1258
+ {
1259
+ "inputs": [
1260
+ {
1261
+ "internalType": "address",
1262
+ "name": "tranche",
1263
+ "type": "address"
1264
+ },
1265
+ {
1266
+ "internalType": "uint256",
1267
+ "name": "minimumDepositAmount",
1268
+ "type": "uint256"
1269
+ }
1270
+ ],
1271
+ "name": "updateMinimumDepositAmount",
1272
+ "outputs": [],
1273
+ "stateMutability": "nonpayable",
1274
+ "type": "function"
1275
+ },
1276
+ {
1277
+ "inputs": [
1278
+ {
1279
+ "internalType": "uint256",
1280
+ "name": "minimumExcessLiquidityPercentage",
1281
+ "type": "uint256"
1282
+ }
1283
+ ],
1284
+ "name": "updateMinimumExcessLiquidityPercentage",
1285
+ "outputs": [],
1286
+ "stateMutability": "nonpayable",
1287
+ "type": "function"
1288
+ },
1289
+ {
1290
+ "inputs": [
1291
+ {
1292
+ "internalType": "uint256",
1293
+ "name": "targetExcessLiquidityPercentage",
1294
+ "type": "uint256"
1295
+ }
1296
+ ],
1297
+ "name": "updateTargetExcessLiquidityPercentage",
1298
+ "outputs": [],
1299
+ "stateMutability": "nonpayable",
1300
+ "type": "function"
1301
+ },
1302
+ {
1303
+ "inputs": [
1304
+ {
1305
+ "internalType": "uint256[]",
1306
+ "name": "ratios",
1307
+ "type": "uint256[]"
1308
+ }
1309
+ ],
1310
+ "name": "updateTrancheDesiredRatios",
1311
+ "outputs": [],
1312
+ "stateMutability": "nonpayable",
1313
+ "type": "function"
1314
+ },
1315
+ {
1316
+ "inputs": [
1317
+ {
1318
+ "internalType": "address",
1319
+ "name": "tranche",
1320
+ "type": "address"
1321
+ },
1322
+ {
1323
+ "internalType": "uint256",
1324
+ "name": "interestRate",
1325
+ "type": "uint256"
1326
+ }
1327
+ ],
1328
+ "name": "updateTrancheInterestRate",
1329
+ "outputs": [],
1330
+ "stateMutability": "nonpayable",
1331
+ "type": "function"
1332
+ },
1333
+ {
1334
+ "inputs": [
1335
+ {
1336
+ "internalType": "uint256",
1337
+ "name": "epochDelay",
1338
+ "type": "uint256"
1339
+ }
1340
+ ],
1341
+ "name": "updateTrancheInterestRateChangeEpochDelay",
1342
+ "outputs": [],
1343
+ "stateMutability": "nonpayable",
1344
+ "type": "function"
1345
+ },
1346
+ {
1347
+ "inputs": [
1348
+ {
1349
+ "internalType": "address",
1350
+ "name": "user",
1351
+ "type": "address"
1352
+ }
1353
+ ],
1354
+ "name": "userBalance",
1355
+ "outputs": [
1356
+ {
1357
+ "internalType": "uint256",
1358
+ "name": "",
1359
+ "type": "uint256"
1360
+ }
1361
+ ],
1362
+ "stateMutability": "view",
1363
+ "type": "function"
1364
+ },
1365
+ {
1366
+ "inputs": [],
1367
+ "name": "userOwedAmount",
1368
+ "outputs": [
1369
+ {
1370
+ "internalType": "uint256",
1371
+ "name": "",
1372
+ "type": "uint256"
1373
+ }
1374
+ ],
1375
+ "stateMutability": "view",
1376
+ "type": "function"
1377
+ },
1378
+ {
1379
+ "inputs": [
1380
+ {
1381
+ "components": [
1382
+ {
1383
+ "internalType": "uint256",
1384
+ "name": "drawAmount",
1385
+ "type": "uint256"
1386
+ },
1387
+ {
1388
+ "internalType": "uint256[]",
1389
+ "name": "trancheDesiredRatios",
1390
+ "type": "uint256[]"
1391
+ },
1392
+ {
1393
+ "internalType": "uint256",
1394
+ "name": "maxExcessPercentage",
1395
+ "type": "uint256"
1396
+ },
1397
+ {
1398
+ "internalType": "uint256",
1399
+ "name": "minExcessPercentage",
1400
+ "type": "uint256"
1401
+ }
1402
+ ],
1403
+ "internalType": "struct ClearingConfiguration",
1404
+ "name": "clearingConfig",
1405
+ "type": "tuple"
1406
+ }
1407
+ ],
1408
+ "name": "verifyClearingConfig",
1409
+ "outputs": [],
1410
+ "stateMutability": "view",
1411
+ "type": "function"
1412
+ },
1413
+ {
1414
+ "inputs": [
1415
+ {
1416
+ "internalType": "uint256",
1417
+ "name": "withdrawAmount",
1418
+ "type": "uint256"
1419
+ },
1420
+ {
1421
+ "internalType": "address",
1422
+ "name": "withdrawAddress",
1423
+ "type": "address"
1424
+ }
1425
+ ],
1426
+ "name": "withdrawFirstLossCapital",
1427
+ "outputs": [],
1428
+ "stateMutability": "nonpayable",
1429
+ "type": "function"
1430
+ }
1431
+ ]