@1delta/abis 0.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.
@@ -0,0 +1,1031 @@
1
+ export const SiloV2Abi = [
2
+ {
3
+ inputs: [{ internalType: 'contract ISiloFactory', name: '_siloFactory', type: 'address' }],
4
+ stateMutability: 'nonpayable',
5
+ type: 'constructor',
6
+ },
7
+ { inputs: [], name: 'AboveMaxLtv', type: 'error' },
8
+ { inputs: [], name: 'AmountExceedsAllowance', type: 'error' },
9
+ { inputs: [], name: 'BorrowNotPossible', type: 'error' },
10
+ { inputs: [], name: 'CollateralSiloAlreadySet', type: 'error' },
11
+ { inputs: [], name: 'CrossReentrantCall', type: 'error' },
12
+ { inputs: [], name: 'ECDSAInvalidSignature', type: 'error' },
13
+ {
14
+ inputs: [{ internalType: 'uint256', name: 'length', type: 'uint256' }],
15
+ name: 'ECDSAInvalidSignatureLength',
16
+ type: 'error',
17
+ },
18
+ { inputs: [{ internalType: 'bytes32', name: 's', type: 'bytes32' }], name: 'ECDSAInvalidSignatureS', type: 'error' },
19
+ {
20
+ inputs: [
21
+ { internalType: 'address', name: 'spender', type: 'address' },
22
+ { internalType: 'uint256', name: 'allowance', type: 'uint256' },
23
+ { internalType: 'uint256', name: 'needed', type: 'uint256' },
24
+ ],
25
+ name: 'ERC20InsufficientAllowance',
26
+ type: 'error',
27
+ },
28
+ {
29
+ inputs: [
30
+ { internalType: 'address', name: 'sender', type: 'address' },
31
+ { internalType: 'uint256', name: 'balance', type: 'uint256' },
32
+ { internalType: 'uint256', name: 'needed', type: 'uint256' },
33
+ ],
34
+ name: 'ERC20InsufficientBalance',
35
+ type: 'error',
36
+ },
37
+ {
38
+ inputs: [{ internalType: 'address', name: 'approver', type: 'address' }],
39
+ name: 'ERC20InvalidApprover',
40
+ type: 'error',
41
+ },
42
+ {
43
+ inputs: [{ internalType: 'address', name: 'receiver', type: 'address' }],
44
+ name: 'ERC20InvalidReceiver',
45
+ type: 'error',
46
+ },
47
+ { inputs: [{ internalType: 'address', name: 'sender', type: 'address' }], name: 'ERC20InvalidSender', type: 'error' },
48
+ {
49
+ inputs: [{ internalType: 'address', name: 'spender', type: 'address' }],
50
+ name: 'ERC20InvalidSpender',
51
+ type: 'error',
52
+ },
53
+ {
54
+ inputs: [{ internalType: 'uint256', name: 'deadline', type: 'uint256' }],
55
+ name: 'ERC2612ExpiredSignature',
56
+ type: 'error',
57
+ },
58
+ {
59
+ inputs: [
60
+ { internalType: 'address', name: 'signer', type: 'address' },
61
+ { internalType: 'address', name: 'owner', type: 'address' },
62
+ ],
63
+ name: 'ERC2612InvalidSigner',
64
+ type: 'error',
65
+ },
66
+ { inputs: [], name: 'EarnedZero', type: 'error' },
67
+ { inputs: [], name: 'FlashloanAmountTooBig', type: 'error' },
68
+ { inputs: [], name: 'FlashloanFailed', type: 'error' },
69
+ { inputs: [], name: 'InputCanBeAssetsOrShares', type: 'error' },
70
+ { inputs: [], name: 'InputZeroShares', type: 'error' },
71
+ {
72
+ inputs: [
73
+ { internalType: 'address', name: 'account', type: 'address' },
74
+ { internalType: 'uint256', name: 'currentNonce', type: 'uint256' },
75
+ ],
76
+ name: 'InvalidAccountNonce',
77
+ type: 'error',
78
+ },
79
+ { inputs: [], name: 'InvalidInitialization', type: 'error' },
80
+ { inputs: [], name: 'InvalidTokenType', type: 'error' },
81
+ { inputs: [], name: 'NoLiquidity', type: 'error' },
82
+ { inputs: [], name: 'NotEnoughLiquidity', type: 'error' },
83
+ { inputs: [], name: 'NotInitializing', type: 'error' },
84
+ { inputs: [], name: 'NotSolvent', type: 'error' },
85
+ { inputs: [], name: 'NothingToWithdraw', type: 'error' },
86
+ { inputs: [], name: 'OnlyHookReceiver', type: 'error' },
87
+ { inputs: [], name: 'OnlySilo', type: 'error' },
88
+ { inputs: [], name: 'OnlySiloConfig', type: 'error' },
89
+ { inputs: [], name: 'OwnerIsZero', type: 'error' },
90
+ { inputs: [], name: 'ProtectedProtection', type: 'error' },
91
+ { inputs: [], name: 'RecipientIsZero', type: 'error' },
92
+ { inputs: [], name: 'RecipientNotSolventAfterTransfer', type: 'error' },
93
+ { inputs: [], name: 'RepayTooHigh', type: 'error' },
94
+ { inputs: [], name: 'ReturnZeroAssets', type: 'error' },
95
+ { inputs: [], name: 'ReturnZeroShares', type: 'error' },
96
+ { inputs: [], name: 'SenderNotSolventAfterTransfer', type: 'error' },
97
+ { inputs: [], name: 'SiloInitialized', type: 'error' },
98
+ { inputs: [], name: 'UnsupportedFlashloanToken', type: 'error' },
99
+ { inputs: [], name: 'ZeroAmount', type: 'error' },
100
+ { inputs: [], name: 'ZeroTransfer', type: 'error' },
101
+ {
102
+ anonymous: false,
103
+ inputs: [{ indexed: false, internalType: 'uint256', name: 'hooksBefore', type: 'uint256' }],
104
+ name: 'AccruedInterest',
105
+ type: 'event',
106
+ },
107
+ {
108
+ anonymous: false,
109
+ inputs: [
110
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
111
+ { indexed: true, internalType: 'address', name: 'spender', type: 'address' },
112
+ { indexed: false, internalType: 'uint256', name: 'value', type: 'uint256' },
113
+ ],
114
+ name: 'Approval',
115
+ type: 'event',
116
+ },
117
+ {
118
+ anonymous: false,
119
+ inputs: [
120
+ { indexed: true, internalType: 'address', name: 'sender', type: 'address' },
121
+ { indexed: true, internalType: 'address', name: 'receiver', type: 'address' },
122
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
123
+ { indexed: false, internalType: 'uint256', name: 'assets', type: 'uint256' },
124
+ { indexed: false, internalType: 'uint256', name: 'shares', type: 'uint256' },
125
+ ],
126
+ name: 'Borrow',
127
+ type: 'event',
128
+ },
129
+ {
130
+ anonymous: false,
131
+ inputs: [{ indexed: true, internalType: 'address', name: 'borrower', type: 'address' }],
132
+ name: 'CollateralTypeChanged',
133
+ type: 'event',
134
+ },
135
+ {
136
+ anonymous: false,
137
+ inputs: [{ indexed: false, internalType: 'uint256', name: 'deployerFees', type: 'uint256' }],
138
+ name: 'DeployerFeesRedirected',
139
+ type: 'event',
140
+ },
141
+ {
142
+ anonymous: false,
143
+ inputs: [
144
+ { indexed: true, internalType: 'address', name: 'sender', type: 'address' },
145
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
146
+ { indexed: false, internalType: 'uint256', name: 'assets', type: 'uint256' },
147
+ { indexed: false, internalType: 'uint256', name: 'shares', type: 'uint256' },
148
+ ],
149
+ name: 'Deposit',
150
+ type: 'event',
151
+ },
152
+ {
153
+ anonymous: false,
154
+ inputs: [
155
+ { indexed: true, internalType: 'address', name: 'sender', type: 'address' },
156
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
157
+ { indexed: false, internalType: 'uint256', name: 'assets', type: 'uint256' },
158
+ { indexed: false, internalType: 'uint256', name: 'shares', type: 'uint256' },
159
+ ],
160
+ name: 'DepositProtected',
161
+ type: 'event',
162
+ },
163
+ { anonymous: false, inputs: [], name: 'EIP712DomainChanged', type: 'event' },
164
+ {
165
+ anonymous: false,
166
+ inputs: [{ indexed: false, internalType: 'uint256', name: 'amount', type: 'uint256' }],
167
+ name: 'FlashLoan',
168
+ type: 'event',
169
+ },
170
+ {
171
+ anonymous: false,
172
+ inputs: [
173
+ { indexed: false, internalType: 'uint24', name: 'hooksBefore', type: 'uint24' },
174
+ { indexed: false, internalType: 'uint24', name: 'hooksAfter', type: 'uint24' },
175
+ ],
176
+ name: 'HooksUpdated',
177
+ type: 'event',
178
+ },
179
+ {
180
+ anonymous: false,
181
+ inputs: [{ indexed: false, internalType: 'uint64', name: 'version', type: 'uint64' }],
182
+ name: 'Initialized',
183
+ type: 'event',
184
+ },
185
+ {
186
+ anonymous: false,
187
+ inputs: [
188
+ { indexed: true, internalType: 'address', name: 'notificationReceiver', type: 'address' },
189
+ { indexed: false, internalType: 'bool', name: 'success', type: 'bool' },
190
+ ],
191
+ name: 'NotificationSent',
192
+ type: 'event',
193
+ },
194
+ {
195
+ anonymous: false,
196
+ inputs: [
197
+ { indexed: true, internalType: 'address', name: 'sender', type: 'address' },
198
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
199
+ { indexed: false, internalType: 'uint256', name: 'assets', type: 'uint256' },
200
+ { indexed: false, internalType: 'uint256', name: 'shares', type: 'uint256' },
201
+ ],
202
+ name: 'Repay',
203
+ type: 'event',
204
+ },
205
+ {
206
+ anonymous: false,
207
+ inputs: [
208
+ { indexed: true, internalType: 'address', name: 'from', type: 'address' },
209
+ { indexed: true, internalType: 'address', name: 'to', type: 'address' },
210
+ { indexed: false, internalType: 'uint256', name: 'value', type: 'uint256' },
211
+ ],
212
+ name: 'Transfer',
213
+ type: 'event',
214
+ },
215
+ {
216
+ anonymous: false,
217
+ inputs: [
218
+ { indexed: true, internalType: 'address', name: 'sender', type: 'address' },
219
+ { indexed: true, internalType: 'address', name: 'receiver', type: 'address' },
220
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
221
+ { indexed: false, internalType: 'uint256', name: 'assets', type: 'uint256' },
222
+ { indexed: false, internalType: 'uint256', name: 'shares', type: 'uint256' },
223
+ ],
224
+ name: 'Withdraw',
225
+ type: 'event',
226
+ },
227
+ {
228
+ anonymous: false,
229
+ inputs: [
230
+ { indexed: true, internalType: 'address', name: 'sender', type: 'address' },
231
+ { indexed: true, internalType: 'address', name: 'receiver', type: 'address' },
232
+ { indexed: true, internalType: 'address', name: 'owner', type: 'address' },
233
+ { indexed: false, internalType: 'uint256', name: 'assets', type: 'uint256' },
234
+ { indexed: false, internalType: 'uint256', name: 'shares', type: 'uint256' },
235
+ ],
236
+ name: 'WithdrawProtected',
237
+ type: 'event',
238
+ },
239
+ {
240
+ anonymous: false,
241
+ inputs: [
242
+ { indexed: false, internalType: 'uint256', name: 'daoFees', type: 'uint256' },
243
+ { indexed: false, internalType: 'uint256', name: 'deployerFees', type: 'uint256' },
244
+ { indexed: false, internalType: 'bool', name: 'redirectedDeployerFees', type: 'bool' },
245
+ ],
246
+ name: 'WithdrawnFees',
247
+ type: 'event',
248
+ },
249
+ {
250
+ inputs: [],
251
+ name: 'DOMAIN_SEPARATOR',
252
+ outputs: [{ internalType: 'bytes32', name: '', type: 'bytes32' }],
253
+ stateMutability: 'view',
254
+ type: 'function',
255
+ },
256
+ {
257
+ inputs: [],
258
+ name: 'accrueInterest',
259
+ outputs: [{ internalType: 'uint256', name: 'accruedInterest', type: 'uint256' }],
260
+ stateMutability: 'nonpayable',
261
+ type: 'function',
262
+ },
263
+ {
264
+ inputs: [
265
+ { internalType: 'address', name: '_interestRateModel', type: 'address' },
266
+ { internalType: 'uint256', name: '_daoFee', type: 'uint256' },
267
+ { internalType: 'uint256', name: '_deployerFee', type: 'uint256' },
268
+ ],
269
+ name: 'accrueInterestForConfig',
270
+ outputs: [],
271
+ stateMutability: 'nonpayable',
272
+ type: 'function',
273
+ },
274
+ {
275
+ inputs: [
276
+ { internalType: 'address', name: 'owner', type: 'address' },
277
+ { internalType: 'address', name: 'spender', type: 'address' },
278
+ ],
279
+ name: 'allowance',
280
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
281
+ stateMutability: 'view',
282
+ type: 'function',
283
+ },
284
+ {
285
+ inputs: [
286
+ { internalType: 'address', name: 'spender', type: 'address' },
287
+ { internalType: 'uint256', name: 'value', type: 'uint256' },
288
+ ],
289
+ name: 'approve',
290
+ outputs: [{ internalType: 'bool', name: 'result', type: 'bool' }],
291
+ stateMutability: 'nonpayable',
292
+ type: 'function',
293
+ },
294
+ {
295
+ inputs: [],
296
+ name: 'asset',
297
+ outputs: [{ internalType: 'address', name: 'assetTokenAddress', type: 'address' }],
298
+ stateMutability: 'view',
299
+ type: 'function',
300
+ },
301
+ {
302
+ inputs: [{ internalType: 'address', name: 'account', type: 'address' }],
303
+ name: 'balanceOf',
304
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
305
+ stateMutability: 'view',
306
+ type: 'function',
307
+ },
308
+ {
309
+ inputs: [{ internalType: 'address', name: '_account', type: 'address' }],
310
+ name: 'balanceOfAndTotalSupply',
311
+ outputs: [
312
+ { internalType: 'uint256', name: '', type: 'uint256' },
313
+ { internalType: 'uint256', name: '', type: 'uint256' },
314
+ ],
315
+ stateMutability: 'view',
316
+ type: 'function',
317
+ },
318
+ {
319
+ inputs: [
320
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
321
+ { internalType: 'address', name: '_receiver', type: 'address' },
322
+ { internalType: 'address', name: '_borrower', type: 'address' },
323
+ ],
324
+ name: 'borrow',
325
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
326
+ stateMutability: 'nonpayable',
327
+ type: 'function',
328
+ },
329
+ {
330
+ inputs: [
331
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
332
+ { internalType: 'address', name: '_receiver', type: 'address' },
333
+ { internalType: 'address', name: '_borrower', type: 'address' },
334
+ ],
335
+ name: 'borrowSameAsset',
336
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
337
+ stateMutability: 'nonpayable',
338
+ type: 'function',
339
+ },
340
+ {
341
+ inputs: [
342
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
343
+ { internalType: 'address', name: '_receiver', type: 'address' },
344
+ { internalType: 'address', name: '_borrower', type: 'address' },
345
+ ],
346
+ name: 'borrowShares',
347
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
348
+ stateMutability: 'nonpayable',
349
+ type: 'function',
350
+ },
351
+ {
352
+ inputs: [
353
+ { internalType: 'address', name: '_owner', type: 'address' },
354
+ { internalType: 'address', name: '_spender', type: 'address' },
355
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
356
+ ],
357
+ name: 'burn',
358
+ outputs: [],
359
+ stateMutability: 'nonpayable',
360
+ type: 'function',
361
+ },
362
+ {
363
+ inputs: [
364
+ { internalType: 'address', name: '_target', type: 'address' },
365
+ { internalType: 'uint256', name: '_value', type: 'uint256' },
366
+ { internalType: 'enum ISilo.CallType', name: '_callType', type: 'uint8' },
367
+ { internalType: 'bytes', name: '_input', type: 'bytes' },
368
+ ],
369
+ name: 'callOnBehalfOfSilo',
370
+ outputs: [
371
+ { internalType: 'bool', name: 'success', type: 'bool' },
372
+ { internalType: 'bytes', name: 'result', type: 'bytes' },
373
+ ],
374
+ stateMutability: 'payable',
375
+ type: 'function',
376
+ },
377
+ {
378
+ inputs: [],
379
+ name: 'config',
380
+ outputs: [{ internalType: 'contract ISiloConfig', name: 'siloConfig', type: 'address' }],
381
+ stateMutability: 'view',
382
+ type: 'function',
383
+ },
384
+ {
385
+ inputs: [{ internalType: 'uint256', name: '_shares', type: 'uint256' }],
386
+ name: 'convertToAssets',
387
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
388
+ stateMutability: 'view',
389
+ type: 'function',
390
+ },
391
+ {
392
+ inputs: [
393
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
394
+ { internalType: 'enum ISilo.AssetType', name: '_assetType', type: 'uint8' },
395
+ ],
396
+ name: 'convertToAssets',
397
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
398
+ stateMutability: 'view',
399
+ type: 'function',
400
+ },
401
+ {
402
+ inputs: [
403
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
404
+ { internalType: 'enum ISilo.AssetType', name: '_assetType', type: 'uint8' },
405
+ ],
406
+ name: 'convertToShares',
407
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
408
+ stateMutability: 'view',
409
+ type: 'function',
410
+ },
411
+ {
412
+ inputs: [{ internalType: 'uint256', name: '_assets', type: 'uint256' }],
413
+ name: 'convertToShares',
414
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
415
+ stateMutability: 'view',
416
+ type: 'function',
417
+ },
418
+ {
419
+ inputs: [],
420
+ name: 'decimals',
421
+ outputs: [{ internalType: 'uint8', name: '', type: 'uint8' }],
422
+ stateMutability: 'view',
423
+ type: 'function',
424
+ },
425
+ {
426
+ inputs: [
427
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
428
+ { internalType: 'address', name: '_receiver', type: 'address' },
429
+ ],
430
+ name: 'deposit',
431
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
432
+ stateMutability: 'nonpayable',
433
+ type: 'function',
434
+ },
435
+ {
436
+ inputs: [
437
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
438
+ { internalType: 'address', name: '_receiver', type: 'address' },
439
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
440
+ ],
441
+ name: 'deposit',
442
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
443
+ stateMutability: 'nonpayable',
444
+ type: 'function',
445
+ },
446
+ {
447
+ inputs: [],
448
+ name: 'eip712Domain',
449
+ outputs: [
450
+ { internalType: 'bytes1', name: 'fields', type: 'bytes1' },
451
+ { internalType: 'string', name: 'name', type: 'string' },
452
+ { internalType: 'string', name: 'version', type: 'string' },
453
+ { internalType: 'uint256', name: 'chainId', type: 'uint256' },
454
+ { internalType: 'address', name: 'verifyingContract', type: 'address' },
455
+ { internalType: 'bytes32', name: 'salt', type: 'bytes32' },
456
+ { internalType: 'uint256[]', name: 'extensions', type: 'uint256[]' },
457
+ ],
458
+ stateMutability: 'view',
459
+ type: 'function',
460
+ },
461
+ {
462
+ inputs: [],
463
+ name: 'factory',
464
+ outputs: [{ internalType: 'contract ISiloFactory', name: '', type: 'address' }],
465
+ stateMutability: 'view',
466
+ type: 'function',
467
+ },
468
+ {
469
+ inputs: [
470
+ { internalType: 'address', name: '_token', type: 'address' },
471
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
472
+ ],
473
+ name: 'flashFee',
474
+ outputs: [{ internalType: 'uint256', name: 'fee', type: 'uint256' }],
475
+ stateMutability: 'view',
476
+ type: 'function',
477
+ },
478
+ {
479
+ inputs: [
480
+ { internalType: 'contract IERC3156FlashBorrower', name: '_receiver', type: 'address' },
481
+ { internalType: 'address', name: '_token', type: 'address' },
482
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
483
+ { internalType: 'bytes', name: '_data', type: 'bytes' },
484
+ ],
485
+ name: 'flashLoan',
486
+ outputs: [{ internalType: 'bool', name: 'success', type: 'bool' }],
487
+ stateMutability: 'nonpayable',
488
+ type: 'function',
489
+ },
490
+ {
491
+ inputs: [
492
+ { internalType: 'address', name: '_from', type: 'address' },
493
+ { internalType: 'address', name: '_to', type: 'address' },
494
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
495
+ ],
496
+ name: 'forwardTransferFromNoChecks',
497
+ outputs: [],
498
+ stateMutability: 'nonpayable',
499
+ type: 'function',
500
+ },
501
+ {
502
+ inputs: [],
503
+ name: 'getCollateralAndDebtTotalsStorage',
504
+ outputs: [
505
+ { internalType: 'uint256', name: 'totalCollateralAssets', type: 'uint256' },
506
+ { internalType: 'uint256', name: 'totalDebtAssets', type: 'uint256' },
507
+ ],
508
+ stateMutability: 'view',
509
+ type: 'function',
510
+ },
511
+ {
512
+ inputs: [],
513
+ name: 'getCollateralAndProtectedTotalsStorage',
514
+ outputs: [
515
+ { internalType: 'uint256', name: 'totalCollateralAssets', type: 'uint256' },
516
+ { internalType: 'uint256', name: 'totalProtectedAssets', type: 'uint256' },
517
+ ],
518
+ stateMutability: 'view',
519
+ type: 'function',
520
+ },
521
+ {
522
+ inputs: [],
523
+ name: 'getCollateralAssets',
524
+ outputs: [{ internalType: 'uint256', name: 'totalCollateralAssets', type: 'uint256' }],
525
+ stateMutability: 'view',
526
+ type: 'function',
527
+ },
528
+ {
529
+ inputs: [],
530
+ name: 'getDebtAssets',
531
+ outputs: [{ internalType: 'uint256', name: 'totalDebtAssets', type: 'uint256' }],
532
+ stateMutability: 'view',
533
+ type: 'function',
534
+ },
535
+ {
536
+ inputs: [],
537
+ name: 'getFractionsStorage',
538
+ outputs: [
539
+ {
540
+ components: [
541
+ { internalType: 'uint64', name: 'interest', type: 'uint64' },
542
+ { internalType: 'uint64', name: 'revenue', type: 'uint64' },
543
+ ],
544
+ internalType: 'struct ISilo.Fractions',
545
+ name: 'fractions',
546
+ type: 'tuple',
547
+ },
548
+ ],
549
+ stateMutability: 'view',
550
+ type: 'function',
551
+ },
552
+ {
553
+ inputs: [],
554
+ name: 'getLiquidity',
555
+ outputs: [{ internalType: 'uint256', name: 'liquidity', type: 'uint256' }],
556
+ stateMutability: 'view',
557
+ type: 'function',
558
+ },
559
+ {
560
+ inputs: [],
561
+ name: 'getSiloStorage',
562
+ outputs: [
563
+ { internalType: 'uint192', name: 'daoAndDeployerRevenue', type: 'uint192' },
564
+ { internalType: 'uint64', name: 'interestRateTimestamp', type: 'uint64' },
565
+ { internalType: 'uint256', name: 'protectedAssets', type: 'uint256' },
566
+ { internalType: 'uint256', name: 'collateralAssets', type: 'uint256' },
567
+ { internalType: 'uint256', name: 'debtAssets', type: 'uint256' },
568
+ ],
569
+ stateMutability: 'view',
570
+ type: 'function',
571
+ },
572
+ {
573
+ inputs: [{ internalType: 'enum ISilo.AssetType', name: '_assetType', type: 'uint8' }],
574
+ name: 'getTotalAssetsStorage',
575
+ outputs: [{ internalType: 'uint256', name: 'totalAssetsByType', type: 'uint256' }],
576
+ stateMutability: 'view',
577
+ type: 'function',
578
+ },
579
+ {
580
+ inputs: [],
581
+ name: 'hookReceiver',
582
+ outputs: [{ internalType: 'address', name: '', type: 'address' }],
583
+ stateMutability: 'view',
584
+ type: 'function',
585
+ },
586
+ {
587
+ inputs: [],
588
+ name: 'hookSetup',
589
+ outputs: [
590
+ {
591
+ components: [
592
+ { internalType: 'address', name: 'hookReceiver', type: 'address' },
593
+ { internalType: 'uint24', name: 'hooksBefore', type: 'uint24' },
594
+ { internalType: 'uint24', name: 'hooksAfter', type: 'uint24' },
595
+ { internalType: 'uint24', name: 'tokenType', type: 'uint24' },
596
+ ],
597
+ internalType: 'struct IShareToken.HookSetup',
598
+ name: '',
599
+ type: 'tuple',
600
+ },
601
+ ],
602
+ stateMutability: 'view',
603
+ type: 'function',
604
+ },
605
+ {
606
+ inputs: [{ internalType: 'contract ISiloConfig', name: '_config', type: 'address' }],
607
+ name: 'initialize',
608
+ outputs: [],
609
+ stateMutability: 'nonpayable',
610
+ type: 'function',
611
+ },
612
+ {
613
+ inputs: [{ internalType: 'address', name: '_borrower', type: 'address' }],
614
+ name: 'isSolvent',
615
+ outputs: [{ internalType: 'bool', name: '', type: 'bool' }],
616
+ stateMutability: 'view',
617
+ type: 'function',
618
+ },
619
+ {
620
+ inputs: [{ internalType: 'address', name: '_borrower', type: 'address' }],
621
+ name: 'maxBorrow',
622
+ outputs: [{ internalType: 'uint256', name: 'maxAssets', type: 'uint256' }],
623
+ stateMutability: 'view',
624
+ type: 'function',
625
+ },
626
+ {
627
+ inputs: [{ internalType: 'address', name: '_borrower', type: 'address' }],
628
+ name: 'maxBorrowSameAsset',
629
+ outputs: [{ internalType: 'uint256', name: 'maxAssets', type: 'uint256' }],
630
+ stateMutability: 'view',
631
+ type: 'function',
632
+ },
633
+ {
634
+ inputs: [{ internalType: 'address', name: '_borrower', type: 'address' }],
635
+ name: 'maxBorrowShares',
636
+ outputs: [{ internalType: 'uint256', name: 'maxShares', type: 'uint256' }],
637
+ stateMutability: 'view',
638
+ type: 'function',
639
+ },
640
+ {
641
+ inputs: [{ internalType: 'address', name: '', type: 'address' }],
642
+ name: 'maxDeposit',
643
+ outputs: [{ internalType: 'uint256', name: 'maxAssets', type: 'uint256' }],
644
+ stateMutability: 'pure',
645
+ type: 'function',
646
+ },
647
+ {
648
+ inputs: [{ internalType: 'address', name: '_token', type: 'address' }],
649
+ name: 'maxFlashLoan',
650
+ outputs: [{ internalType: 'uint256', name: 'maxLoan', type: 'uint256' }],
651
+ stateMutability: 'view',
652
+ type: 'function',
653
+ },
654
+ {
655
+ inputs: [{ internalType: 'address', name: '', type: 'address' }],
656
+ name: 'maxMint',
657
+ outputs: [{ internalType: 'uint256', name: 'maxShares', type: 'uint256' }],
658
+ stateMutability: 'view',
659
+ type: 'function',
660
+ },
661
+ {
662
+ inputs: [
663
+ { internalType: 'address', name: '_owner', type: 'address' },
664
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
665
+ ],
666
+ name: 'maxRedeem',
667
+ outputs: [{ internalType: 'uint256', name: 'maxShares', type: 'uint256' }],
668
+ stateMutability: 'view',
669
+ type: 'function',
670
+ },
671
+ {
672
+ inputs: [{ internalType: 'address', name: '_owner', type: 'address' }],
673
+ name: 'maxRedeem',
674
+ outputs: [{ internalType: 'uint256', name: 'maxShares', type: 'uint256' }],
675
+ stateMutability: 'view',
676
+ type: 'function',
677
+ },
678
+ {
679
+ inputs: [{ internalType: 'address', name: '_borrower', type: 'address' }],
680
+ name: 'maxRepay',
681
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
682
+ stateMutability: 'view',
683
+ type: 'function',
684
+ },
685
+ {
686
+ inputs: [{ internalType: 'address', name: '_borrower', type: 'address' }],
687
+ name: 'maxRepayShares',
688
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
689
+ stateMutability: 'view',
690
+ type: 'function',
691
+ },
692
+ {
693
+ inputs: [
694
+ { internalType: 'address', name: '_owner', type: 'address' },
695
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
696
+ ],
697
+ name: 'maxWithdraw',
698
+ outputs: [{ internalType: 'uint256', name: 'maxAssets', type: 'uint256' }],
699
+ stateMutability: 'view',
700
+ type: 'function',
701
+ },
702
+ {
703
+ inputs: [{ internalType: 'address', name: '_owner', type: 'address' }],
704
+ name: 'maxWithdraw',
705
+ outputs: [{ internalType: 'uint256', name: 'maxAssets', type: 'uint256' }],
706
+ stateMutability: 'view',
707
+ type: 'function',
708
+ },
709
+ {
710
+ inputs: [
711
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
712
+ { internalType: 'address', name: '_receiver', type: 'address' },
713
+ ],
714
+ name: 'mint',
715
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
716
+ stateMutability: 'nonpayable',
717
+ type: 'function',
718
+ },
719
+ {
720
+ inputs: [
721
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
722
+ { internalType: 'address', name: '_receiver', type: 'address' },
723
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
724
+ ],
725
+ name: 'mint',
726
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
727
+ stateMutability: 'nonpayable',
728
+ type: 'function',
729
+ },
730
+ {
731
+ inputs: [
732
+ { internalType: 'address', name: '_owner', type: 'address' },
733
+ { internalType: 'address', name: '', type: 'address' },
734
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
735
+ ],
736
+ name: 'mint',
737
+ outputs: [],
738
+ stateMutability: 'nonpayable',
739
+ type: 'function',
740
+ },
741
+ {
742
+ inputs: [],
743
+ name: 'name',
744
+ outputs: [{ internalType: 'string', name: '', type: 'string' }],
745
+ stateMutability: 'view',
746
+ type: 'function',
747
+ },
748
+ {
749
+ inputs: [{ internalType: 'address', name: 'owner', type: 'address' }],
750
+ name: 'nonces',
751
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
752
+ stateMutability: 'view',
753
+ type: 'function',
754
+ },
755
+ {
756
+ inputs: [
757
+ { internalType: 'address', name: 'owner', type: 'address' },
758
+ { internalType: 'address', name: 'spender', type: 'address' },
759
+ { internalType: 'uint256', name: 'value', type: 'uint256' },
760
+ { internalType: 'uint256', name: 'deadline', type: 'uint256' },
761
+ { internalType: 'uint8', name: 'v', type: 'uint8' },
762
+ { internalType: 'bytes32', name: 'r', type: 'bytes32' },
763
+ { internalType: 'bytes32', name: 's', type: 'bytes32' },
764
+ ],
765
+ name: 'permit',
766
+ outputs: [],
767
+ stateMutability: 'nonpayable',
768
+ type: 'function',
769
+ },
770
+ {
771
+ inputs: [{ internalType: 'uint256', name: '_assets', type: 'uint256' }],
772
+ name: 'previewBorrow',
773
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
774
+ stateMutability: 'view',
775
+ type: 'function',
776
+ },
777
+ {
778
+ inputs: [{ internalType: 'uint256', name: '_shares', type: 'uint256' }],
779
+ name: 'previewBorrowShares',
780
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
781
+ stateMutability: 'view',
782
+ type: 'function',
783
+ },
784
+ {
785
+ inputs: [
786
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
787
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
788
+ ],
789
+ name: 'previewDeposit',
790
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
791
+ stateMutability: 'view',
792
+ type: 'function',
793
+ },
794
+ {
795
+ inputs: [{ internalType: 'uint256', name: '_assets', type: 'uint256' }],
796
+ name: 'previewDeposit',
797
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
798
+ stateMutability: 'view',
799
+ type: 'function',
800
+ },
801
+ {
802
+ inputs: [
803
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
804
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
805
+ ],
806
+ name: 'previewMint',
807
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
808
+ stateMutability: 'view',
809
+ type: 'function',
810
+ },
811
+ {
812
+ inputs: [{ internalType: 'uint256', name: '_shares', type: 'uint256' }],
813
+ name: 'previewMint',
814
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
815
+ stateMutability: 'view',
816
+ type: 'function',
817
+ },
818
+ {
819
+ inputs: [{ internalType: 'uint256', name: '_shares', type: 'uint256' }],
820
+ name: 'previewRedeem',
821
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
822
+ stateMutability: 'view',
823
+ type: 'function',
824
+ },
825
+ {
826
+ inputs: [
827
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
828
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
829
+ ],
830
+ name: 'previewRedeem',
831
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
832
+ stateMutability: 'view',
833
+ type: 'function',
834
+ },
835
+ {
836
+ inputs: [{ internalType: 'uint256', name: '_assets', type: 'uint256' }],
837
+ name: 'previewRepay',
838
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
839
+ stateMutability: 'view',
840
+ type: 'function',
841
+ },
842
+ {
843
+ inputs: [{ internalType: 'uint256', name: '_shares', type: 'uint256' }],
844
+ name: 'previewRepayShares',
845
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
846
+ stateMutability: 'view',
847
+ type: 'function',
848
+ },
849
+ {
850
+ inputs: [{ internalType: 'uint256', name: '_assets', type: 'uint256' }],
851
+ name: 'previewWithdraw',
852
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
853
+ stateMutability: 'view',
854
+ type: 'function',
855
+ },
856
+ {
857
+ inputs: [
858
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
859
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
860
+ ],
861
+ name: 'previewWithdraw',
862
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
863
+ stateMutability: 'view',
864
+ type: 'function',
865
+ },
866
+ {
867
+ inputs: [
868
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
869
+ { internalType: 'address', name: '_receiver', type: 'address' },
870
+ { internalType: 'address', name: '_owner', type: 'address' },
871
+ ],
872
+ name: 'redeem',
873
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
874
+ stateMutability: 'nonpayable',
875
+ type: 'function',
876
+ },
877
+ {
878
+ inputs: [
879
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
880
+ { internalType: 'address', name: '_receiver', type: 'address' },
881
+ { internalType: 'address', name: '_owner', type: 'address' },
882
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
883
+ ],
884
+ name: 'redeem',
885
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
886
+ stateMutability: 'nonpayable',
887
+ type: 'function',
888
+ },
889
+ {
890
+ inputs: [
891
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
892
+ { internalType: 'address', name: '_borrower', type: 'address' },
893
+ ],
894
+ name: 'repay',
895
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
896
+ stateMutability: 'nonpayable',
897
+ type: 'function',
898
+ },
899
+ {
900
+ inputs: [
901
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
902
+ { internalType: 'address', name: '_borrower', type: 'address' },
903
+ ],
904
+ name: 'repayShares',
905
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
906
+ stateMutability: 'nonpayable',
907
+ type: 'function',
908
+ },
909
+ {
910
+ inputs: [],
911
+ name: 'silo',
912
+ outputs: [{ internalType: 'contract ISilo', name: '', type: 'address' }],
913
+ stateMutability: 'view',
914
+ type: 'function',
915
+ },
916
+ {
917
+ inputs: [],
918
+ name: 'siloConfig',
919
+ outputs: [{ internalType: 'contract ISiloConfig', name: '', type: 'address' }],
920
+ stateMutability: 'view',
921
+ type: 'function',
922
+ },
923
+ { inputs: [], name: 'switchCollateralToThisSilo', outputs: [], stateMutability: 'nonpayable', type: 'function' },
924
+ {
925
+ inputs: [],
926
+ name: 'symbol',
927
+ outputs: [{ internalType: 'string', name: '', type: 'string' }],
928
+ stateMutability: 'view',
929
+ type: 'function',
930
+ },
931
+ {
932
+ inputs: [
933
+ { internalType: 'uint24', name: '_hooksBefore', type: 'uint24' },
934
+ { internalType: 'uint24', name: '_hooksAfter', type: 'uint24' },
935
+ ],
936
+ name: 'synchronizeHooks',
937
+ outputs: [],
938
+ stateMutability: 'nonpayable',
939
+ type: 'function',
940
+ },
941
+ {
942
+ inputs: [],
943
+ name: 'totalAssets',
944
+ outputs: [{ internalType: 'uint256', name: 'totalManagedAssets', type: 'uint256' }],
945
+ stateMutability: 'view',
946
+ type: 'function',
947
+ },
948
+ {
949
+ inputs: [],
950
+ name: 'totalSupply',
951
+ outputs: [{ internalType: 'uint256', name: '', type: 'uint256' }],
952
+ stateMutability: 'view',
953
+ type: 'function',
954
+ },
955
+ {
956
+ inputs: [
957
+ { internalType: 'address', name: '_to', type: 'address' },
958
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
959
+ ],
960
+ name: 'transfer',
961
+ outputs: [{ internalType: 'bool', name: 'result', type: 'bool' }],
962
+ stateMutability: 'nonpayable',
963
+ type: 'function',
964
+ },
965
+ {
966
+ inputs: [
967
+ { internalType: 'address', name: '_from', type: 'address' },
968
+ { internalType: 'address', name: '_to', type: 'address' },
969
+ { internalType: 'uint256', name: '_amount', type: 'uint256' },
970
+ ],
971
+ name: 'transferFrom',
972
+ outputs: [{ internalType: 'bool', name: 'result', type: 'bool' }],
973
+ stateMutability: 'nonpayable',
974
+ type: 'function',
975
+ },
976
+ {
977
+ inputs: [
978
+ { internalType: 'uint256', name: '_shares', type: 'uint256' },
979
+ { internalType: 'address', name: '_owner', type: 'address' },
980
+ { internalType: 'enum ISilo.CollateralType', name: '_transitionFrom', type: 'uint8' },
981
+ ],
982
+ name: 'transitionCollateral',
983
+ outputs: [{ internalType: 'uint256', name: 'assets', type: 'uint256' }],
984
+ stateMutability: 'nonpayable',
985
+ type: 'function',
986
+ },
987
+ { inputs: [], name: 'updateHooks', outputs: [], stateMutability: 'nonpayable', type: 'function' },
988
+ {
989
+ inputs: [],
990
+ name: 'utilizationData',
991
+ outputs: [
992
+ {
993
+ components: [
994
+ { internalType: 'uint256', name: 'collateralAssets', type: 'uint256' },
995
+ { internalType: 'uint256', name: 'debtAssets', type: 'uint256' },
996
+ { internalType: 'uint64', name: 'interestRateTimestamp', type: 'uint64' },
997
+ ],
998
+ internalType: 'struct ISilo.UtilizationData',
999
+ name: '',
1000
+ type: 'tuple',
1001
+ },
1002
+ ],
1003
+ stateMutability: 'view',
1004
+ type: 'function',
1005
+ },
1006
+ {
1007
+ inputs: [
1008
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
1009
+ { internalType: 'address', name: '_receiver', type: 'address' },
1010
+ { internalType: 'address', name: '_owner', type: 'address' },
1011
+ ],
1012
+ name: 'withdraw',
1013
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
1014
+ stateMutability: 'nonpayable',
1015
+ type: 'function',
1016
+ },
1017
+ {
1018
+ inputs: [
1019
+ { internalType: 'uint256', name: '_assets', type: 'uint256' },
1020
+ { internalType: 'address', name: '_receiver', type: 'address' },
1021
+ { internalType: 'address', name: '_owner', type: 'address' },
1022
+ { internalType: 'enum ISilo.CollateralType', name: '_collateralType', type: 'uint8' },
1023
+ ],
1024
+ name: 'withdraw',
1025
+ outputs: [{ internalType: 'uint256', name: 'shares', type: 'uint256' }],
1026
+ stateMutability: 'nonpayable',
1027
+ type: 'function',
1028
+ },
1029
+ { inputs: [], name: 'withdrawFees', outputs: [], stateMutability: 'nonpayable', type: 'function' },
1030
+ { stateMutability: 'payable', type: 'receive' },
1031
+ ] as const