@varla/sdk 1.11.4 → 1.13.2

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 (238) hide show
  1. package/AGENTS.md +82 -95
  2. package/CHANGELOG.md +359 -0
  3. package/README.md +227 -275
  4. package/dist/abi/full/OpinionCtfExecutionEngineAdapter.js +1 -0
  5. package/dist/abi/full/OpinionCtfExecutionEngineAdapter.js.map +1 -0
  6. package/dist/abi/full/OracleUpdaterRouter.d.ts +30 -9
  7. package/dist/abi/full/OracleUpdaterRouter.d.ts.map +1 -1
  8. package/dist/abi/full/OracleUpdaterRouter.js +37 -9
  9. package/dist/abi/full/OracleUpdaterRouter.js.map +1 -0
  10. package/dist/abi/full/PolymarketCtfAdapter.js +1 -0
  11. package/dist/abi/full/PolymarketCtfAdapter.js.map +1 -0
  12. package/dist/abi/full/VarlaAccessManager.js +1 -0
  13. package/dist/abi/full/VarlaAccessManager.js.map +1 -0
  14. package/dist/abi/full/VarlaConvertLiquidator.js +1 -0
  15. package/dist/abi/full/VarlaConvertLiquidator.js.map +1 -0
  16. package/dist/abi/full/VarlaCore.js +1 -0
  17. package/dist/abi/full/VarlaCore.js.map +1 -0
  18. package/dist/abi/full/VarlaInterestRateStrategy.js +1 -0
  19. package/dist/abi/full/VarlaInterestRateStrategy.js.map +1 -0
  20. package/dist/abi/full/VarlaLiquidator.d.ts +1 -1
  21. package/dist/abi/full/VarlaLiquidator.js +2 -1
  22. package/dist/abi/full/VarlaLiquidator.js.map +1 -0
  23. package/dist/abi/full/VarlaMergeLiquidator.js +1 -0
  24. package/dist/abi/full/VarlaMergeLiquidator.js.map +1 -0
  25. package/dist/abi/full/VarlaOracle.js +1 -0
  26. package/dist/abi/full/VarlaOracle.js.map +1 -0
  27. package/dist/abi/full/VarlaPool.js +1 -0
  28. package/dist/abi/full/VarlaPool.js.map +1 -0
  29. package/dist/abi/full/VarlaProxyAdmin.js +1 -0
  30. package/dist/abi/full/VarlaProxyAdmin.js.map +1 -0
  31. package/dist/abi/index.js +1 -0
  32. package/dist/abi/index.js.map +1 -0
  33. package/dist/abi/subsets/VarlaOracle.registry.js +1 -0
  34. package/dist/abi/subsets/VarlaOracle.registry.js.map +1 -0
  35. package/dist/abi.js +1 -0
  36. package/dist/abi.js.map +1 -0
  37. package/dist/actions/admin.js +1 -0
  38. package/dist/actions/admin.js.map +1 -0
  39. package/dist/actions/core.js +1 -0
  40. package/dist/actions/core.js.map +1 -0
  41. package/dist/actions/erc1155.js +1 -0
  42. package/dist/actions/erc1155.js.map +1 -0
  43. package/dist/actions/erc20.js +1 -0
  44. package/dist/actions/erc20.js.map +1 -0
  45. package/dist/actions/index.d.ts +7 -7
  46. package/dist/actions/index.d.ts.map +1 -1
  47. package/dist/actions/index.js +8 -7
  48. package/dist/actions/index.js.map +1 -0
  49. package/dist/actions/liquidator.js +1 -0
  50. package/dist/actions/liquidator.js.map +1 -0
  51. package/dist/actions/oracle.d.ts +1 -2
  52. package/dist/actions/oracle.d.ts.map +1 -1
  53. package/dist/actions/oracle.js +1 -0
  54. package/dist/actions/oracle.js.map +1 -0
  55. package/dist/actions/oracleUpdaterRouter.d.ts +8 -1
  56. package/dist/actions/oracleUpdaterRouter.d.ts.map +1 -1
  57. package/dist/actions/oracleUpdaterRouter.js +14 -1
  58. package/dist/actions/oracleUpdaterRouter.js.map +1 -0
  59. package/dist/actions/pool.js +1 -0
  60. package/dist/actions/pool.js.map +1 -0
  61. package/dist/actions/rbac.js +1 -0
  62. package/dist/actions/rbac.js.map +1 -0
  63. package/dist/actions/tx.js +1 -0
  64. package/dist/actions/tx.js.map +1 -0
  65. package/dist/actions/utils.js +1 -0
  66. package/dist/actions/utils.js.map +1 -0
  67. package/dist/addresses/bsc.js +1 -0
  68. package/dist/addresses/bsc.js.map +1 -0
  69. package/dist/addresses/index.js +1 -0
  70. package/dist/addresses/index.js.map +1 -0
  71. package/dist/addresses/polygon.js +1 -0
  72. package/dist/addresses/polygon.js.map +1 -0
  73. package/dist/addresses.js +1 -0
  74. package/dist/addresses.js.map +1 -0
  75. package/dist/batch.js +1 -0
  76. package/dist/batch.js.map +1 -0
  77. package/dist/contracts.d.ts +1 -2
  78. package/dist/contracts.d.ts.map +1 -1
  79. package/dist/contracts.js +2 -2
  80. package/dist/contracts.js.map +1 -0
  81. package/dist/errors.d.ts +87 -0
  82. package/dist/errors.d.ts.map +1 -0
  83. package/dist/errors.js +240 -0
  84. package/dist/errors.js.map +1 -0
  85. package/dist/events/decode.js +1 -0
  86. package/dist/events/decode.js.map +1 -0
  87. package/dist/events/defs.js +1 -0
  88. package/dist/events/defs.js.map +1 -0
  89. package/dist/events/index.d.ts +3 -3
  90. package/dist/events/index.d.ts.map +1 -1
  91. package/dist/events/index.js +4 -3
  92. package/dist/events/index.js.map +1 -0
  93. package/dist/events/logs.js +1 -0
  94. package/dist/events/logs.js.map +1 -0
  95. package/dist/events/oracleRegistrySync.js +1 -0
  96. package/dist/events/oracleRegistrySync.js.map +1 -0
  97. package/dist/events/recent.d.ts +1 -1
  98. package/dist/events/recent.d.ts.map +1 -1
  99. package/dist/events/recent.js +2 -1
  100. package/dist/events/recent.js.map +1 -0
  101. package/dist/format.js +1 -0
  102. package/dist/format.js.map +1 -0
  103. package/dist/generated.d.ts +31 -10
  104. package/dist/generated.d.ts.map +1 -1
  105. package/dist/generated.js +1 -0
  106. package/dist/generated.js.map +1 -0
  107. package/dist/index.d.ts +6 -5
  108. package/dist/index.d.ts.map +1 -1
  109. package/dist/index.js +12 -9
  110. package/dist/index.js.map +1 -0
  111. package/dist/leverage/deleverageExecute.d.ts +36 -0
  112. package/dist/leverage/deleverageExecute.d.ts.map +1 -0
  113. package/dist/leverage/deleverageExecute.js +53 -0
  114. package/dist/leverage/deleverageExecute.js.map +1 -0
  115. package/dist/leverage/execute.d.ts +62 -0
  116. package/dist/leverage/execute.d.ts.map +1 -0
  117. package/dist/leverage/execute.js +84 -0
  118. package/dist/leverage/execute.js.map +1 -0
  119. package/dist/leverage/index.d.ts +32 -0
  120. package/dist/leverage/index.d.ts.map +1 -0
  121. package/dist/leverage/index.js +12 -0
  122. package/dist/leverage/index.js.map +1 -0
  123. package/dist/leverage/math.d.ts +119 -0
  124. package/dist/leverage/math.d.ts.map +1 -0
  125. package/dist/leverage/math.js +304 -0
  126. package/dist/leverage/math.js.map +1 -0
  127. package/dist/leverage/plan.d.ts +143 -0
  128. package/dist/leverage/plan.d.ts.map +1 -0
  129. package/dist/leverage/plan.js +204 -0
  130. package/dist/leverage/plan.js.map +1 -0
  131. package/dist/leverage/preflight.d.ts +27 -0
  132. package/dist/leverage/preflight.d.ts.map +1 -0
  133. package/dist/leverage/preflight.js +34 -0
  134. package/dist/leverage/preflight.js.map +1 -0
  135. package/dist/leverage/types.d.ts +157 -0
  136. package/dist/leverage/types.d.ts.map +1 -0
  137. package/dist/leverage/types.js +43 -0
  138. package/dist/leverage/types.js.map +1 -0
  139. package/dist/meta.d.ts +42 -0
  140. package/dist/meta.d.ts.map +1 -0
  141. package/dist/meta.js +47 -0
  142. package/dist/meta.js.map +1 -0
  143. package/dist/types.js +1 -0
  144. package/dist/types.js.map +1 -0
  145. package/dist/views/accessManager.js +1 -0
  146. package/dist/views/accessManager.js.map +1 -0
  147. package/dist/views/adapters.js +1 -0
  148. package/dist/views/adapters.js.map +1 -0
  149. package/dist/views/admin.d.ts.map +1 -1
  150. package/dist/views/admin.js +1 -0
  151. package/dist/views/admin.js.map +1 -0
  152. package/dist/views/core.d.ts.map +1 -1
  153. package/dist/views/core.js +1 -0
  154. package/dist/views/core.js.map +1 -0
  155. package/dist/views/index.d.ts +5 -5
  156. package/dist/views/index.d.ts.map +1 -1
  157. package/dist/views/index.js +6 -5
  158. package/dist/views/index.js.map +1 -0
  159. package/dist/views/lenders.js +1 -0
  160. package/dist/views/lenders.js.map +1 -0
  161. package/dist/views/liquidators.js +1 -0
  162. package/dist/views/liquidators.js.map +1 -0
  163. package/dist/views/oracle.js +1 -0
  164. package/dist/views/oracle.js.map +1 -0
  165. package/dist/views/pool.js +1 -0
  166. package/dist/views/pool.js.map +1 -0
  167. package/dist/views/system.d.ts.map +1 -1
  168. package/dist/views/system.js +1 -0
  169. package/dist/views/system.js.map +1 -0
  170. package/package.json +18 -5
  171. package/src/abi/README.md +17 -0
  172. package/src/abi/full/OpinionCtfExecutionEngineAdapter.ts +320 -0
  173. package/src/abi/full/OracleUpdaterRouter.ts +528 -0
  174. package/src/abi/full/PolymarketCtfAdapter.ts +312 -0
  175. package/src/abi/full/VarlaAccessManager.ts +1171 -0
  176. package/src/abi/full/VarlaConvertLiquidator.ts +834 -0
  177. package/src/abi/full/VarlaCore.ts +2277 -0
  178. package/src/abi/full/VarlaInterestRateStrategy.ts +442 -0
  179. package/src/abi/full/VarlaLiquidator.ts +914 -0
  180. package/src/abi/full/VarlaMergeLiquidator.ts +797 -0
  181. package/src/abi/full/VarlaOracle.ts +1825 -0
  182. package/src/abi/full/VarlaPool.ts +1637 -0
  183. package/src/abi/full/VarlaProxyAdmin.ts +301 -0
  184. package/src/abi/index.ts +17 -0
  185. package/src/abi/subsets/VarlaOracle.registry.ts +784 -0
  186. package/src/abi.ts +2 -0
  187. package/src/actions/admin.ts +357 -0
  188. package/src/actions/core.ts +68 -0
  189. package/src/actions/erc1155.ts +22 -0
  190. package/src/actions/erc20.ts +22 -0
  191. package/src/actions/index.ts +13 -0
  192. package/src/actions/liquidator.ts +76 -0
  193. package/src/actions/oracle.ts +618 -0
  194. package/src/actions/oracleUpdaterRouter.ts +233 -0
  195. package/src/actions/pool.ts +76 -0
  196. package/src/actions/rbac.ts +72 -0
  197. package/src/actions/tx.ts +16 -0
  198. package/src/actions/utils.ts +15 -0
  199. package/src/addresses/README.md +17 -0
  200. package/src/addresses/bsc.json +16 -0
  201. package/src/addresses/bsc.ts +15 -0
  202. package/src/addresses/index.ts +6 -0
  203. package/src/addresses/polygon.json +16 -0
  204. package/src/addresses/polygon.ts +15 -0
  205. package/src/addresses.ts +2 -0
  206. package/src/batch.ts +55 -0
  207. package/src/contracts.ts +232 -0
  208. package/src/errors.ts +305 -0
  209. package/src/events/decode.ts +37 -0
  210. package/src/events/defs.ts +70 -0
  211. package/src/events/index.ts +7 -0
  212. package/src/events/logs.ts +42 -0
  213. package/src/events/oracleRegistrySync.ts +206 -0
  214. package/src/events/recent.ts +39 -0
  215. package/src/format.ts +121 -0
  216. package/src/generated.ts +27 -0
  217. package/src/index.ts +18 -0
  218. package/src/leverage/deleverageExecute.ts +111 -0
  219. package/src/leverage/execute.ts +172 -0
  220. package/src/leverage/index.ts +88 -0
  221. package/src/leverage/math.ts +446 -0
  222. package/src/leverage/plan.ts +356 -0
  223. package/src/leverage/preflight.ts +63 -0
  224. package/src/leverage/types.ts +204 -0
  225. package/src/meta.ts +82 -0
  226. package/src/types.ts +25 -0
  227. package/src/views/accessManager.ts +286 -0
  228. package/src/views/adapters.ts +27 -0
  229. package/src/views/admin.ts +92 -0
  230. package/src/views/core.ts +1370 -0
  231. package/src/views/index.ts +11 -0
  232. package/src/views/lenders.ts +65 -0
  233. package/src/views/liquidators.ts +227 -0
  234. package/src/views/oracle.ts +739 -0
  235. package/src/views/pool.ts +277 -0
  236. package/src/views/system.ts +42 -0
  237. package/BACKEND.md +0 -405
  238. package/FRONTEND.md +0 -485
@@ -0,0 +1,834 @@
1
+ // Auto-generated by varla-protocol/scripts/export-abi.ts
2
+ // Do not edit manually.
3
+ import type { Abi } from "viem";
4
+
5
+ export const VARLACONVERTLIQUIDATOR_ABI = [
6
+ {
7
+ "inputs": [
8
+ {
9
+ "internalType": "address",
10
+ "name": "_core",
11
+ "type": "address"
12
+ },
13
+ {
14
+ "internalType": "address",
15
+ "name": "_treasury",
16
+ "type": "address"
17
+ },
18
+ {
19
+ "internalType": "address",
20
+ "name": "_authority",
21
+ "type": "address"
22
+ }
23
+ ],
24
+ "stateMutability": "nonpayable",
25
+ "type": "constructor"
26
+ },
27
+ {
28
+ "inputs": [
29
+ {
30
+ "internalType": "address",
31
+ "name": "authority",
32
+ "type": "address"
33
+ }
34
+ ],
35
+ "name": "AccessManagedInvalidAuthority",
36
+ "type": "error"
37
+ },
38
+ {
39
+ "inputs": [
40
+ {
41
+ "internalType": "address",
42
+ "name": "caller",
43
+ "type": "address"
44
+ },
45
+ {
46
+ "internalType": "uint32",
47
+ "name": "delay",
48
+ "type": "uint32"
49
+ }
50
+ ],
51
+ "name": "AccessManagedRequiredDelay",
52
+ "type": "error"
53
+ },
54
+ {
55
+ "inputs": [
56
+ {
57
+ "internalType": "address",
58
+ "name": "caller",
59
+ "type": "address"
60
+ }
61
+ ],
62
+ "name": "AccessManagedUnauthorized",
63
+ "type": "error"
64
+ },
65
+ {
66
+ "inputs": [
67
+ {
68
+ "internalType": "uint256",
69
+ "name": "indexSet",
70
+ "type": "uint256"
71
+ },
72
+ {
73
+ "internalType": "uint256",
74
+ "name": "noCount",
75
+ "type": "uint256"
76
+ }
77
+ ],
78
+ "name": "IndexSetTooSmallForLiquidation",
79
+ "type": "error"
80
+ },
81
+ {
82
+ "inputs": [
83
+ {
84
+ "internalType": "uint256",
85
+ "name": "collateralReceived",
86
+ "type": "uint256"
87
+ },
88
+ {
89
+ "internalType": "uint256",
90
+ "name": "required",
91
+ "type": "uint256"
92
+ }
93
+ ],
94
+ "name": "InsufficientConvertCollateral",
95
+ "type": "error"
96
+ },
97
+ {
98
+ "inputs": [
99
+ {
100
+ "internalType": "uint256",
101
+ "name": "positionId",
102
+ "type": "uint256"
103
+ },
104
+ {
105
+ "internalType": "uint256",
106
+ "name": "required",
107
+ "type": "uint256"
108
+ },
109
+ {
110
+ "internalType": "uint256",
111
+ "name": "available",
112
+ "type": "uint256"
113
+ }
114
+ ],
115
+ "name": "InsufficientNoTokenFromLiquidator",
116
+ "type": "error"
117
+ },
118
+ {
119
+ "inputs": [],
120
+ "name": "InvalidDebtToCover",
121
+ "type": "error"
122
+ },
123
+ {
124
+ "inputs": [],
125
+ "name": "LiquidationBlockedByOracleGuards",
126
+ "type": "error"
127
+ },
128
+ {
129
+ "inputs": [],
130
+ "name": "MustNotLeaveDust",
131
+ "type": "error"
132
+ },
133
+ {
134
+ "inputs": [],
135
+ "name": "NegRiskAdapterNotSet",
136
+ "type": "error"
137
+ },
138
+ {
139
+ "inputs": [],
140
+ "name": "NoCollateralToSeize",
141
+ "type": "error"
142
+ },
143
+ {
144
+ "inputs": [
145
+ {
146
+ "internalType": "uint256",
147
+ "name": "healthFactor",
148
+ "type": "uint256"
149
+ }
150
+ ],
151
+ "name": "NotLiquidatable",
152
+ "type": "error"
153
+ },
154
+ {
155
+ "inputs": [
156
+ {
157
+ "internalType": "uint256",
158
+ "name": "positionId",
159
+ "type": "uint256"
160
+ }
161
+ ],
162
+ "name": "NotNegRiskPosition",
163
+ "type": "error"
164
+ },
165
+ {
166
+ "inputs": [
167
+ {
168
+ "internalType": "uint256",
169
+ "name": "positionId",
170
+ "type": "uint256"
171
+ }
172
+ ],
173
+ "name": "OraclePriceUnavailable",
174
+ "type": "error"
175
+ },
176
+ {
177
+ "inputs": [
178
+ {
179
+ "internalType": "uint256",
180
+ "name": "positionId",
181
+ "type": "uint256"
182
+ }
183
+ ],
184
+ "name": "OracleZeroPrice",
185
+ "type": "error"
186
+ },
187
+ {
188
+ "inputs": [],
189
+ "name": "ReentrancyGuardReentrantCall",
190
+ "type": "error"
191
+ },
192
+ {
193
+ "inputs": [
194
+ {
195
+ "internalType": "address",
196
+ "name": "token",
197
+ "type": "address"
198
+ }
199
+ ],
200
+ "name": "SafeERC20FailedOperation",
201
+ "type": "error"
202
+ },
203
+ {
204
+ "inputs": [
205
+ {
206
+ "internalType": "uint256",
207
+ "name": "seizedPositionId",
208
+ "type": "uint256"
209
+ },
210
+ {
211
+ "internalType": "uint256",
212
+ "name": "indexSet",
213
+ "type": "uint256"
214
+ }
215
+ ],
216
+ "name": "SeizedPositionNotInIndexSet",
217
+ "type": "error"
218
+ },
219
+ {
220
+ "inputs": [],
221
+ "name": "SelfLiquidation",
222
+ "type": "error"
223
+ },
224
+ {
225
+ "inputs": [
226
+ {
227
+ "internalType": "uint256",
228
+ "name": "questionCount",
229
+ "type": "uint256"
230
+ }
231
+ ],
232
+ "name": "TooManyQuestions",
233
+ "type": "error"
234
+ },
235
+ {
236
+ "inputs": [],
237
+ "name": "ZeroAddress",
238
+ "type": "error"
239
+ },
240
+ {
241
+ "anonymous": false,
242
+ "inputs": [
243
+ {
244
+ "indexed": false,
245
+ "internalType": "address",
246
+ "name": "authority",
247
+ "type": "address"
248
+ }
249
+ ],
250
+ "name": "AuthorityUpdated",
251
+ "type": "event"
252
+ },
253
+ {
254
+ "anonymous": false,
255
+ "inputs": [
256
+ {
257
+ "indexed": true,
258
+ "internalType": "address",
259
+ "name": "liquidator",
260
+ "type": "address"
261
+ },
262
+ {
263
+ "indexed": true,
264
+ "internalType": "address",
265
+ "name": "user",
266
+ "type": "address"
267
+ },
268
+ {
269
+ "indexed": true,
270
+ "internalType": "uint256",
271
+ "name": "positionId",
272
+ "type": "uint256"
273
+ },
274
+ {
275
+ "indexed": false,
276
+ "internalType": "uint256",
277
+ "name": "debtRepaid",
278
+ "type": "uint256"
279
+ },
280
+ {
281
+ "indexed": false,
282
+ "internalType": "uint256",
283
+ "name": "collateralSeized",
284
+ "type": "uint256"
285
+ },
286
+ {
287
+ "indexed": false,
288
+ "internalType": "uint256",
289
+ "name": "bonusAmount",
290
+ "type": "uint256"
291
+ },
292
+ {
293
+ "indexed": false,
294
+ "internalType": "uint256",
295
+ "name": "protocolFee",
296
+ "type": "uint256"
297
+ },
298
+ {
299
+ "indexed": false,
300
+ "internalType": "bool",
301
+ "name": "usedMerge",
302
+ "type": "bool"
303
+ }
304
+ ],
305
+ "name": "Liquidation",
306
+ "type": "event"
307
+ },
308
+ {
309
+ "anonymous": false,
310
+ "inputs": [
311
+ {
312
+ "indexed": true,
313
+ "internalType": "address",
314
+ "name": "oldAdapter",
315
+ "type": "address"
316
+ },
317
+ {
318
+ "indexed": true,
319
+ "internalType": "address",
320
+ "name": "newAdapter",
321
+ "type": "address"
322
+ }
323
+ ],
324
+ "name": "NegRiskAdapterUpdated",
325
+ "type": "event"
326
+ },
327
+ {
328
+ "anonymous": false,
329
+ "inputs": [
330
+ {
331
+ "indexed": true,
332
+ "internalType": "address",
333
+ "name": "oldStaking",
334
+ "type": "address"
335
+ },
336
+ {
337
+ "indexed": true,
338
+ "internalType": "address",
339
+ "name": "newStaking",
340
+ "type": "address"
341
+ }
342
+ ],
343
+ "name": "StakingUpdated",
344
+ "type": "event"
345
+ },
346
+ {
347
+ "anonymous": false,
348
+ "inputs": [
349
+ {
350
+ "indexed": true,
351
+ "internalType": "address",
352
+ "name": "oldTreasury",
353
+ "type": "address"
354
+ },
355
+ {
356
+ "indexed": true,
357
+ "internalType": "address",
358
+ "name": "newTreasury",
359
+ "type": "address"
360
+ }
361
+ ],
362
+ "name": "TreasuryUpdated",
363
+ "type": "event"
364
+ },
365
+ {
366
+ "inputs": [],
367
+ "name": "BPS",
368
+ "outputs": [
369
+ {
370
+ "internalType": "uint256",
371
+ "name": "",
372
+ "type": "uint256"
373
+ }
374
+ ],
375
+ "stateMutability": "view",
376
+ "type": "function"
377
+ },
378
+ {
379
+ "inputs": [],
380
+ "name": "HEALTH_FACTOR_LIQUIDATION_THRESHOLD",
381
+ "outputs": [
382
+ {
383
+ "internalType": "uint256",
384
+ "name": "",
385
+ "type": "uint256"
386
+ }
387
+ ],
388
+ "stateMutability": "view",
389
+ "type": "function"
390
+ },
391
+ {
392
+ "inputs": [],
393
+ "name": "PRECISION",
394
+ "outputs": [
395
+ {
396
+ "internalType": "uint256",
397
+ "name": "",
398
+ "type": "uint256"
399
+ }
400
+ ],
401
+ "stateMutability": "view",
402
+ "type": "function"
403
+ },
404
+ {
405
+ "inputs": [],
406
+ "name": "authority",
407
+ "outputs": [
408
+ {
409
+ "internalType": "address",
410
+ "name": "",
411
+ "type": "address"
412
+ }
413
+ ],
414
+ "stateMutability": "view",
415
+ "type": "function"
416
+ },
417
+ {
418
+ "inputs": [
419
+ {
420
+ "internalType": "uint256",
421
+ "name": "healthFactor",
422
+ "type": "uint256"
423
+ }
424
+ ],
425
+ "name": "calculateLiquidationBonus",
426
+ "outputs": [
427
+ {
428
+ "internalType": "uint256",
429
+ "name": "",
430
+ "type": "uint256"
431
+ }
432
+ ],
433
+ "stateMutability": "view",
434
+ "type": "function"
435
+ },
436
+ {
437
+ "inputs": [
438
+ {
439
+ "internalType": "address",
440
+ "name": "user",
441
+ "type": "address"
442
+ }
443
+ ],
444
+ "name": "canLiquidate",
445
+ "outputs": [
446
+ {
447
+ "internalType": "bool",
448
+ "name": "canLiquidate_",
449
+ "type": "bool"
450
+ },
451
+ {
452
+ "internalType": "uint256",
453
+ "name": "healthFactor",
454
+ "type": "uint256"
455
+ },
456
+ {
457
+ "internalType": "uint256",
458
+ "name": "currentBonus",
459
+ "type": "uint256"
460
+ }
461
+ ],
462
+ "stateMutability": "view",
463
+ "type": "function"
464
+ },
465
+ {
466
+ "inputs": [],
467
+ "name": "collateralToken",
468
+ "outputs": [
469
+ {
470
+ "internalType": "contract IERC20",
471
+ "name": "",
472
+ "type": "address"
473
+ }
474
+ ],
475
+ "stateMutability": "view",
476
+ "type": "function"
477
+ },
478
+ {
479
+ "inputs": [],
480
+ "name": "core",
481
+ "outputs": [
482
+ {
483
+ "internalType": "contract IVarlaCore",
484
+ "name": "",
485
+ "type": "address"
486
+ }
487
+ ],
488
+ "stateMutability": "view",
489
+ "type": "function"
490
+ },
491
+ {
492
+ "inputs": [],
493
+ "name": "isConsumingScheduledOp",
494
+ "outputs": [
495
+ {
496
+ "internalType": "bytes4",
497
+ "name": "",
498
+ "type": "bytes4"
499
+ }
500
+ ],
501
+ "stateMutability": "view",
502
+ "type": "function"
503
+ },
504
+ {
505
+ "inputs": [
506
+ {
507
+ "internalType": "address",
508
+ "name": "user",
509
+ "type": "address"
510
+ },
511
+ {
512
+ "internalType": "uint256",
513
+ "name": "seizedPositionId",
514
+ "type": "uint256"
515
+ },
516
+ {
517
+ "internalType": "uint256",
518
+ "name": "indexSet",
519
+ "type": "uint256"
520
+ },
521
+ {
522
+ "internalType": "uint256",
523
+ "name": "debtToCover",
524
+ "type": "uint256"
525
+ }
526
+ ],
527
+ "name": "liquidateWithConvert",
528
+ "outputs": [],
529
+ "stateMutability": "nonpayable",
530
+ "type": "function"
531
+ },
532
+ {
533
+ "inputs": [],
534
+ "name": "negRiskAdapter",
535
+ "outputs": [
536
+ {
537
+ "internalType": "contract INegRiskAdapter",
538
+ "name": "",
539
+ "type": "address"
540
+ }
541
+ ],
542
+ "stateMutability": "view",
543
+ "type": "function"
544
+ },
545
+ {
546
+ "inputs": [
547
+ {
548
+ "internalType": "address",
549
+ "name": "",
550
+ "type": "address"
551
+ },
552
+ {
553
+ "internalType": "address",
554
+ "name": "",
555
+ "type": "address"
556
+ },
557
+ {
558
+ "internalType": "uint256[]",
559
+ "name": "",
560
+ "type": "uint256[]"
561
+ },
562
+ {
563
+ "internalType": "uint256[]",
564
+ "name": "",
565
+ "type": "uint256[]"
566
+ },
567
+ {
568
+ "internalType": "bytes",
569
+ "name": "",
570
+ "type": "bytes"
571
+ }
572
+ ],
573
+ "name": "onERC1155BatchReceived",
574
+ "outputs": [
575
+ {
576
+ "internalType": "bytes4",
577
+ "name": "",
578
+ "type": "bytes4"
579
+ }
580
+ ],
581
+ "stateMutability": "nonpayable",
582
+ "type": "function"
583
+ },
584
+ {
585
+ "inputs": [
586
+ {
587
+ "internalType": "address",
588
+ "name": "",
589
+ "type": "address"
590
+ },
591
+ {
592
+ "internalType": "address",
593
+ "name": "",
594
+ "type": "address"
595
+ },
596
+ {
597
+ "internalType": "uint256",
598
+ "name": "",
599
+ "type": "uint256"
600
+ },
601
+ {
602
+ "internalType": "uint256",
603
+ "name": "",
604
+ "type": "uint256"
605
+ },
606
+ {
607
+ "internalType": "bytes",
608
+ "name": "",
609
+ "type": "bytes"
610
+ }
611
+ ],
612
+ "name": "onERC1155Received",
613
+ "outputs": [
614
+ {
615
+ "internalType": "bytes4",
616
+ "name": "",
617
+ "type": "bytes4"
618
+ }
619
+ ],
620
+ "stateMutability": "nonpayable",
621
+ "type": "function"
622
+ },
623
+ {
624
+ "inputs": [],
625
+ "name": "positionsToken",
626
+ "outputs": [
627
+ {
628
+ "internalType": "contract ICTF",
629
+ "name": "",
630
+ "type": "address"
631
+ }
632
+ ],
633
+ "stateMutability": "view",
634
+ "type": "function"
635
+ },
636
+ {
637
+ "inputs": [
638
+ {
639
+ "internalType": "address",
640
+ "name": "user",
641
+ "type": "address"
642
+ },
643
+ {
644
+ "internalType": "uint256",
645
+ "name": "positionId",
646
+ "type": "uint256"
647
+ },
648
+ {
649
+ "internalType": "uint256",
650
+ "name": "debtToCover",
651
+ "type": "uint256"
652
+ }
653
+ ],
654
+ "name": "previewLiquidation",
655
+ "outputs": [
656
+ {
657
+ "internalType": "uint256",
658
+ "name": "debtToLiquidate",
659
+ "type": "uint256"
660
+ },
661
+ {
662
+ "internalType": "uint256",
663
+ "name": "collateralToSeize",
664
+ "type": "uint256"
665
+ },
666
+ {
667
+ "internalType": "uint256",
668
+ "name": "bonusAmount",
669
+ "type": "uint256"
670
+ },
671
+ {
672
+ "internalType": "uint256",
673
+ "name": "protocolFeeAmount",
674
+ "type": "uint256"
675
+ },
676
+ {
677
+ "internalType": "uint256",
678
+ "name": "liquidatorProfitMerge",
679
+ "type": "uint256"
680
+ }
681
+ ],
682
+ "stateMutability": "view",
683
+ "type": "function"
684
+ },
685
+ {
686
+ "inputs": [
687
+ {
688
+ "internalType": "address",
689
+ "name": "token",
690
+ "type": "address"
691
+ },
692
+ {
693
+ "internalType": "address",
694
+ "name": "to",
695
+ "type": "address"
696
+ },
697
+ {
698
+ "internalType": "uint256",
699
+ "name": "id",
700
+ "type": "uint256"
701
+ },
702
+ {
703
+ "internalType": "uint256",
704
+ "name": "amount",
705
+ "type": "uint256"
706
+ }
707
+ ],
708
+ "name": "rescueERC1155",
709
+ "outputs": [],
710
+ "stateMutability": "nonpayable",
711
+ "type": "function"
712
+ },
713
+ {
714
+ "inputs": [
715
+ {
716
+ "internalType": "address",
717
+ "name": "token",
718
+ "type": "address"
719
+ },
720
+ {
721
+ "internalType": "address",
722
+ "name": "to",
723
+ "type": "address"
724
+ },
725
+ {
726
+ "internalType": "uint256",
727
+ "name": "amount",
728
+ "type": "uint256"
729
+ }
730
+ ],
731
+ "name": "rescueERC20",
732
+ "outputs": [],
733
+ "stateMutability": "nonpayable",
734
+ "type": "function"
735
+ },
736
+ {
737
+ "inputs": [
738
+ {
739
+ "internalType": "address",
740
+ "name": "newAuthority",
741
+ "type": "address"
742
+ }
743
+ ],
744
+ "name": "setAuthority",
745
+ "outputs": [],
746
+ "stateMutability": "nonpayable",
747
+ "type": "function"
748
+ },
749
+ {
750
+ "inputs": [
751
+ {
752
+ "internalType": "address",
753
+ "name": "_adapter",
754
+ "type": "address"
755
+ }
756
+ ],
757
+ "name": "setNegRiskAdapter",
758
+ "outputs": [],
759
+ "stateMutability": "nonpayable",
760
+ "type": "function"
761
+ },
762
+ {
763
+ "inputs": [
764
+ {
765
+ "internalType": "address",
766
+ "name": "_staking",
767
+ "type": "address"
768
+ }
769
+ ],
770
+ "name": "setStaking",
771
+ "outputs": [],
772
+ "stateMutability": "nonpayable",
773
+ "type": "function"
774
+ },
775
+ {
776
+ "inputs": [
777
+ {
778
+ "internalType": "address",
779
+ "name": "_treasury",
780
+ "type": "address"
781
+ }
782
+ ],
783
+ "name": "setTreasury",
784
+ "outputs": [],
785
+ "stateMutability": "nonpayable",
786
+ "type": "function"
787
+ },
788
+ {
789
+ "inputs": [],
790
+ "name": "staking",
791
+ "outputs": [
792
+ {
793
+ "internalType": "address",
794
+ "name": "",
795
+ "type": "address"
796
+ }
797
+ ],
798
+ "stateMutability": "view",
799
+ "type": "function"
800
+ },
801
+ {
802
+ "inputs": [
803
+ {
804
+ "internalType": "bytes4",
805
+ "name": "interfaceId",
806
+ "type": "bytes4"
807
+ }
808
+ ],
809
+ "name": "supportsInterface",
810
+ "outputs": [
811
+ {
812
+ "internalType": "bool",
813
+ "name": "",
814
+ "type": "bool"
815
+ }
816
+ ],
817
+ "stateMutability": "view",
818
+ "type": "function"
819
+ },
820
+ {
821
+ "inputs": [],
822
+ "name": "treasury",
823
+ "outputs": [
824
+ {
825
+ "internalType": "address",
826
+ "name": "",
827
+ "type": "address"
828
+ }
829
+ ],
830
+ "stateMutability": "view",
831
+ "type": "function"
832
+ }
833
+ ] as const satisfies Abi;
834
+