@gitmyabi/sierra 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2456 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * ILYTPoolAccounting struct type
4
+ */
5
+ export type ILYTPoolAccounting = {
6
+ totalAssetsDeposited: bigint;
7
+ totalAssetsWithdrawn: bigint;
8
+ exchangeRate: bigint;
9
+ exchangeRateSetDay: bigint;
10
+ exchangeRateChangeRate: bigint;
11
+ exchangeRateCompoundingRate: bigint;
12
+ exchangeRateAtMaturity: bigint;
13
+ exchangeRateMaturityDay: bigint;
14
+ interestRate: bigint;
15
+ indicativeInterestRate: bigint;
16
+ collateralRate: bigint;
17
+ };
18
+ /**
19
+ * ILYTPoolWithdraw struct type
20
+ */
21
+ export type ILYTPoolWithdraw = {
22
+ uuid: `0x${string}`;
23
+ lender: `0x${string}`;
24
+ assets: bigint;
25
+ shares: bigint;
26
+ stage: bigint;
27
+ fundsDestination: `0x${string}`;
28
+ };
29
+ /**
30
+ * ILYTPoolAccountState struct type
31
+ */
32
+ export type ILYTPoolAccountState = {
33
+ poolAddr: `0x${string}`;
34
+ accountAddr: `0x${string}`;
35
+ liquidityAssetAddr: `0x${string}`;
36
+ tokenBalance: bigint;
37
+ assetBalance: bigint;
38
+ maxWithdrawRequest: bigint;
39
+ maxRedeemRequest: bigint;
40
+ requestedSharesOf: bigint;
41
+ requestedAssetsOf: bigint;
42
+ assetsDeposited: bigint;
43
+ assetsWithdrawn: bigint;
44
+ };
45
+ /**
46
+ * ILYTPoolConfigurationState struct type
47
+ */
48
+ export type ILYTPoolConfigurationState = {
49
+ poolAddr: `0x${string}`;
50
+ name: string;
51
+ symbol: string;
52
+ poolAccessControl: `0x${string}`;
53
+ lytPoolController: `0x${string}`;
54
+ activatedAt: bigint;
55
+ serviceConfiguration: `0x${string}`;
56
+ liquidityAssetAddr: `0x${string}`;
57
+ poolAdmin: `0x${string}`;
58
+ issuer: `0x${string}`;
59
+ treasuryWalletAddr: `0x${string}`;
60
+ feeCollectorAddress: `0x${string}`;
61
+ exchangeRateType: bigint;
62
+ };
63
+ /**
64
+ * ILYTPoolOverviewState struct type
65
+ */
66
+ export type ILYTPoolOverviewState = {
67
+ poolAddr: `0x${string}`;
68
+ state: bigint;
69
+ totalAssetsDeposited: bigint;
70
+ totalAssetsWithdrawn: bigint;
71
+ totalAssets: bigint;
72
+ totalShares: bigint;
73
+ exchangeRate: bigint;
74
+ exchangeRateAtSetDay: bigint;
75
+ exchangeRateSetDay: bigint;
76
+ exchangeRateChangeRate: bigint;
77
+ exchangeRateCompoundingRate: bigint;
78
+ exchangeRateAtMaturity: bigint;
79
+ exchangeRateMaturityDay: bigint;
80
+ interestRate: bigint;
81
+ indicativeInterestRate: bigint;
82
+ collateralRate: bigint;
83
+ activeWithdraws: ILYTPoolWithdraw[];
84
+ };
85
+ /**
86
+ * LYTPoolAddressList struct type
87
+ */
88
+ export type LYTPoolAddressList = {
89
+ liquidityAsset: `0x${string}`;
90
+ poolAdmin: `0x${string}`;
91
+ serviceConfiguration: `0x${string}`;
92
+ lytPoolControllerFactory: `0x${string}`;
93
+ poolAccessControlFactory: `0x${string}`;
94
+ };
95
+ /**
96
+ * ILYTPoolConfigurableSettings struct type
97
+ */
98
+ export type ILYTPoolConfigurableSettings = {
99
+ issuer: `0x${string}`;
100
+ treasuryWalletAddr: `0x${string}`;
101
+ feeCollectorAddress: `0x${string}`;
102
+ exchangeRateType: bigint;
103
+ };
104
+ /**
105
+ * LYTPool_json ABI
106
+ *
107
+ * This ABI is typed using viem's type system for full type safety.
108
+ */
109
+ export declare const LYTPool_jsonAbi: readonly [{
110
+ readonly inputs: readonly [{
111
+ readonly internalType: "address";
112
+ readonly name: "addr";
113
+ readonly type: "address";
114
+ }];
115
+ readonly name: "BlacklistedAddress";
116
+ readonly type: "error";
117
+ }, {
118
+ readonly inputs: readonly [];
119
+ readonly name: "BurnExceedsBalance";
120
+ readonly type: "error";
121
+ }, {
122
+ readonly inputs: readonly [];
123
+ readonly name: "CrossChainError";
124
+ readonly type: "error";
125
+ }, {
126
+ readonly inputs: readonly [{
127
+ readonly internalType: "address";
128
+ readonly name: "spender";
129
+ readonly type: "address";
130
+ }, {
131
+ readonly internalType: "uint256";
132
+ readonly name: "allowance";
133
+ readonly type: "uint256";
134
+ }, {
135
+ readonly internalType: "uint256";
136
+ readonly name: "needed";
137
+ readonly type: "uint256";
138
+ }];
139
+ readonly name: "ERC20InsufficientAllowance";
140
+ readonly type: "error";
141
+ }, {
142
+ readonly inputs: readonly [{
143
+ readonly internalType: "address";
144
+ readonly name: "sender";
145
+ readonly type: "address";
146
+ }, {
147
+ readonly internalType: "uint256";
148
+ readonly name: "balance";
149
+ readonly type: "uint256";
150
+ }, {
151
+ readonly internalType: "uint256";
152
+ readonly name: "needed";
153
+ readonly type: "uint256";
154
+ }];
155
+ readonly name: "ERC20InsufficientBalance";
156
+ readonly type: "error";
157
+ }, {
158
+ readonly inputs: readonly [{
159
+ readonly internalType: "address";
160
+ readonly name: "approver";
161
+ readonly type: "address";
162
+ }];
163
+ readonly name: "ERC20InvalidApprover";
164
+ readonly type: "error";
165
+ }, {
166
+ readonly inputs: readonly [{
167
+ readonly internalType: "address";
168
+ readonly name: "receiver";
169
+ readonly type: "address";
170
+ }];
171
+ readonly name: "ERC20InvalidReceiver";
172
+ readonly type: "error";
173
+ }, {
174
+ readonly inputs: readonly [{
175
+ readonly internalType: "address";
176
+ readonly name: "sender";
177
+ readonly type: "address";
178
+ }];
179
+ readonly name: "ERC20InvalidSender";
180
+ readonly type: "error";
181
+ }, {
182
+ readonly inputs: readonly [{
183
+ readonly internalType: "address";
184
+ readonly name: "spender";
185
+ readonly type: "address";
186
+ }];
187
+ readonly name: "ERC20InvalidSpender";
188
+ readonly type: "error";
189
+ }, {
190
+ readonly inputs: readonly [];
191
+ readonly name: "ExchangeRateInvalid";
192
+ readonly type: "error";
193
+ }, {
194
+ readonly inputs: readonly [];
195
+ readonly name: "InvalidAccess";
196
+ readonly type: "error";
197
+ }, {
198
+ readonly inputs: readonly [];
199
+ readonly name: "InvalidInitialization";
200
+ readonly type: "error";
201
+ }, {
202
+ readonly inputs: readonly [];
203
+ readonly name: "InvalidLoan";
204
+ readonly type: "error";
205
+ }, {
206
+ readonly inputs: readonly [];
207
+ readonly name: "InvalidRedemptions";
208
+ readonly type: "error";
209
+ }, {
210
+ readonly inputs: readonly [];
211
+ readonly name: "MintingToPool";
212
+ readonly type: "error";
213
+ }, {
214
+ readonly inputs: readonly [];
215
+ readonly name: "NoAdjustmentsToZeroBalance";
216
+ readonly type: "error";
217
+ }, {
218
+ readonly inputs: readonly [];
219
+ readonly name: "NotInitializing";
220
+ readonly type: "error";
221
+ }, {
222
+ readonly inputs: readonly [];
223
+ readonly name: "NotIssuer";
224
+ readonly type: "error";
225
+ }, {
226
+ readonly inputs: readonly [];
227
+ readonly name: "NotMarketMaker";
228
+ readonly type: "error";
229
+ }, {
230
+ readonly inputs: readonly [];
231
+ readonly name: "NotPoolAdmin";
232
+ readonly type: "error";
233
+ }, {
234
+ readonly inputs: readonly [];
235
+ readonly name: "NotPoolController";
236
+ readonly type: "error";
237
+ }, {
238
+ readonly inputs: readonly [];
239
+ readonly name: "PoolInvalidState";
240
+ readonly type: "error";
241
+ }, {
242
+ readonly inputs: readonly [];
243
+ readonly name: "PoolNotActive";
244
+ readonly type: "error";
245
+ }, {
246
+ readonly inputs: readonly [];
247
+ readonly name: "PoolPaused";
248
+ readonly type: "error";
249
+ }, {
250
+ readonly inputs: readonly [];
251
+ readonly name: "RedeemExceedsBalance";
252
+ readonly type: "error";
253
+ }, {
254
+ readonly inputs: readonly [];
255
+ readonly name: "RedemptionDoesNotCoverDeposits";
256
+ readonly type: "error";
257
+ }, {
258
+ readonly inputs: readonly [];
259
+ readonly name: "RedemptionNotFound";
260
+ readonly type: "error";
261
+ }, {
262
+ readonly inputs: readonly [{
263
+ readonly internalType: "address";
264
+ readonly name: "token";
265
+ readonly type: "address";
266
+ }];
267
+ readonly name: "SafeERC20FailedOperation";
268
+ readonly type: "error";
269
+ }, {
270
+ readonly inputs: readonly [];
271
+ readonly name: "TransferDisabled";
272
+ readonly type: "error";
273
+ }, {
274
+ readonly inputs: readonly [];
275
+ readonly name: "ZeroAmount";
276
+ readonly type: "error";
277
+ }, {
278
+ readonly anonymous: false;
279
+ readonly inputs: readonly [{
280
+ readonly indexed: true;
281
+ readonly internalType: "address";
282
+ readonly name: "lender";
283
+ readonly type: "address";
284
+ }, {
285
+ readonly indexed: false;
286
+ readonly internalType: "uint256";
287
+ readonly name: "amount";
288
+ readonly type: "uint256";
289
+ }, {
290
+ readonly indexed: false;
291
+ readonly internalType: "uint256";
292
+ readonly name: "shares";
293
+ readonly type: "uint256";
294
+ }];
295
+ readonly name: "AccountCredit";
296
+ readonly type: "event";
297
+ }, {
298
+ readonly anonymous: false;
299
+ readonly inputs: readonly [{
300
+ readonly indexed: true;
301
+ readonly internalType: "address";
302
+ readonly name: "lender";
303
+ readonly type: "address";
304
+ }, {
305
+ readonly indexed: false;
306
+ readonly internalType: "uint256";
307
+ readonly name: "amount";
308
+ readonly type: "uint256";
309
+ }];
310
+ readonly name: "AccountDebit";
311
+ readonly type: "event";
312
+ }, {
313
+ readonly anonymous: false;
314
+ readonly inputs: readonly [{
315
+ readonly indexed: true;
316
+ readonly internalType: "address";
317
+ readonly name: "owner";
318
+ readonly type: "address";
319
+ }, {
320
+ readonly indexed: true;
321
+ readonly internalType: "address";
322
+ readonly name: "spender";
323
+ readonly type: "address";
324
+ }, {
325
+ readonly indexed: false;
326
+ readonly internalType: "uint256";
327
+ readonly name: "value";
328
+ readonly type: "uint256";
329
+ }];
330
+ readonly name: "Approval";
331
+ readonly type: "event";
332
+ }, {
333
+ readonly anonymous: false;
334
+ readonly inputs: readonly [{
335
+ readonly indexed: true;
336
+ readonly internalType: "address";
337
+ readonly name: "sender";
338
+ readonly type: "address";
339
+ }, {
340
+ readonly indexed: true;
341
+ readonly internalType: "address";
342
+ readonly name: "owner";
343
+ readonly type: "address";
344
+ }, {
345
+ readonly indexed: false;
346
+ readonly internalType: "uint256";
347
+ readonly name: "assets";
348
+ readonly type: "uint256";
349
+ }, {
350
+ readonly indexed: false;
351
+ readonly internalType: "uint256";
352
+ readonly name: "shares";
353
+ readonly type: "uint256";
354
+ }];
355
+ readonly name: "Deposit";
356
+ readonly type: "event";
357
+ }, {
358
+ readonly anonymous: false;
359
+ readonly inputs: readonly [{
360
+ readonly indexed: false;
361
+ readonly internalType: "uint256";
362
+ readonly name: "_exchangeRate";
363
+ readonly type: "uint256";
364
+ }, {
365
+ readonly indexed: false;
366
+ readonly internalType: "uint256";
367
+ readonly name: "interestRate";
368
+ readonly type: "uint256";
369
+ }, {
370
+ readonly indexed: false;
371
+ readonly internalType: "uint256";
372
+ readonly name: "typeDependantChangeParam";
373
+ readonly type: "uint256";
374
+ }, {
375
+ readonly indexed: false;
376
+ readonly internalType: "uint256";
377
+ readonly name: "exchangeRateMaturityDay";
378
+ readonly type: "uint256";
379
+ }];
380
+ readonly name: "ExchangeRateSet";
381
+ readonly type: "event";
382
+ }, {
383
+ readonly anonymous: false;
384
+ readonly inputs: readonly [{
385
+ readonly indexed: false;
386
+ readonly internalType: "uint256";
387
+ readonly name: "_indicativeInterestRate";
388
+ readonly type: "uint256";
389
+ }, {
390
+ readonly indexed: false;
391
+ readonly internalType: "uint256";
392
+ readonly name: "_collateralRate";
393
+ readonly type: "uint256";
394
+ }];
395
+ readonly name: "IndicativeAndCollateralRatesSet";
396
+ readonly type: "event";
397
+ }, {
398
+ readonly anonymous: false;
399
+ readonly inputs: readonly [{
400
+ readonly indexed: false;
401
+ readonly internalType: "uint64";
402
+ readonly name: "version";
403
+ readonly type: "uint64";
404
+ }];
405
+ readonly name: "Initialized";
406
+ readonly type: "event";
407
+ }, {
408
+ readonly anonymous: false;
409
+ readonly inputs: readonly [];
410
+ readonly name: "PoolCreated";
411
+ readonly type: "event";
412
+ }, {
413
+ readonly anonymous: false;
414
+ readonly inputs: readonly [{
415
+ readonly indexed: true;
416
+ readonly internalType: "address";
417
+ readonly name: "lender";
418
+ readonly type: "address";
419
+ }, {
420
+ readonly indexed: false;
421
+ readonly internalType: "uint256";
422
+ readonly name: "assets";
423
+ readonly type: "uint256";
424
+ }, {
425
+ readonly indexed: false;
426
+ readonly internalType: "uint256";
427
+ readonly name: "shares";
428
+ readonly type: "uint256";
429
+ }, {
430
+ readonly indexed: false;
431
+ readonly internalType: "enum ILYTPoolDepositType";
432
+ readonly name: "depositType";
433
+ readonly type: "uint8";
434
+ }, {
435
+ readonly indexed: false;
436
+ readonly internalType: "bytes32";
437
+ readonly name: "transferTxHash";
438
+ readonly type: "bytes32";
439
+ }];
440
+ readonly name: "PoolDeposit";
441
+ readonly type: "event";
442
+ }, {
443
+ readonly anonymous: false;
444
+ readonly inputs: readonly [{
445
+ readonly indexed: true;
446
+ readonly internalType: "address";
447
+ readonly name: "lender";
448
+ readonly type: "address";
449
+ }, {
450
+ readonly indexed: false;
451
+ readonly internalType: "uint256";
452
+ readonly name: "assets";
453
+ readonly type: "uint256";
454
+ }, {
455
+ readonly indexed: false;
456
+ readonly internalType: "uint256";
457
+ readonly name: "shares";
458
+ readonly type: "uint256";
459
+ }, {
460
+ readonly indexed: false;
461
+ readonly internalType: "bytes32";
462
+ readonly name: "uuid";
463
+ readonly type: "bytes32";
464
+ }, {
465
+ readonly indexed: false;
466
+ readonly internalType: "address";
467
+ readonly name: "fundsDestination";
468
+ readonly type: "address";
469
+ }];
470
+ readonly name: "RedeemDestinationChanged";
471
+ readonly type: "event";
472
+ }, {
473
+ readonly anonymous: false;
474
+ readonly inputs: readonly [{
475
+ readonly indexed: true;
476
+ readonly internalType: "address";
477
+ readonly name: "lender";
478
+ readonly type: "address";
479
+ }, {
480
+ readonly indexed: false;
481
+ readonly internalType: "uint256";
482
+ readonly name: "shares";
483
+ readonly type: "uint256";
484
+ }, {
485
+ readonly indexed: false;
486
+ readonly internalType: "uint256";
487
+ readonly name: "assets";
488
+ readonly type: "uint256";
489
+ }, {
490
+ readonly indexed: false;
491
+ readonly internalType: "uint256";
492
+ readonly name: "fees";
493
+ readonly type: "uint256";
494
+ }, {
495
+ readonly indexed: false;
496
+ readonly internalType: "bytes32";
497
+ readonly name: "uuid";
498
+ readonly type: "bytes32";
499
+ }, {
500
+ readonly indexed: false;
501
+ readonly internalType: "uint256";
502
+ readonly name: "expectedAssets";
503
+ readonly type: "uint256";
504
+ }, {
505
+ readonly indexed: false;
506
+ readonly internalType: "address";
507
+ readonly name: "fundsDestination";
508
+ readonly type: "address";
509
+ }];
510
+ readonly name: "RedeemRepay";
511
+ readonly type: "event";
512
+ }, {
513
+ readonly anonymous: false;
514
+ readonly inputs: readonly [{
515
+ readonly indexed: true;
516
+ readonly internalType: "address";
517
+ readonly name: "lender";
518
+ readonly type: "address";
519
+ }, {
520
+ readonly indexed: false;
521
+ readonly internalType: "uint256";
522
+ readonly name: "assets";
523
+ readonly type: "uint256";
524
+ }, {
525
+ readonly indexed: false;
526
+ readonly internalType: "uint256";
527
+ readonly name: "shares";
528
+ readonly type: "uint256";
529
+ }, {
530
+ readonly indexed: false;
531
+ readonly internalType: "bytes32";
532
+ readonly name: "uuid";
533
+ readonly type: "bytes32";
534
+ }];
535
+ readonly name: "RedeemRequested";
536
+ readonly type: "event";
537
+ }, {
538
+ readonly anonymous: false;
539
+ readonly inputs: readonly [{
540
+ readonly indexed: true;
541
+ readonly internalType: "address";
542
+ readonly name: "from";
543
+ readonly type: "address";
544
+ }, {
545
+ readonly indexed: true;
546
+ readonly internalType: "address";
547
+ readonly name: "to";
548
+ readonly type: "address";
549
+ }, {
550
+ readonly indexed: false;
551
+ readonly internalType: "uint256";
552
+ readonly name: "value";
553
+ readonly type: "uint256";
554
+ }];
555
+ readonly name: "Transfer";
556
+ readonly type: "event";
557
+ }, {
558
+ readonly anonymous: false;
559
+ readonly inputs: readonly [{
560
+ readonly indexed: true;
561
+ readonly internalType: "address";
562
+ readonly name: "fundsDestination";
563
+ readonly type: "address";
564
+ }, {
565
+ readonly indexed: false;
566
+ readonly internalType: "uint256";
567
+ readonly name: "amount";
568
+ readonly type: "uint256";
569
+ }];
570
+ readonly name: "TransferAssets";
571
+ readonly type: "event";
572
+ }, {
573
+ readonly anonymous: false;
574
+ readonly inputs: readonly [{
575
+ readonly indexed: true;
576
+ readonly internalType: "address";
577
+ readonly name: "sender";
578
+ readonly type: "address";
579
+ }, {
580
+ readonly indexed: true;
581
+ readonly internalType: "address";
582
+ readonly name: "receiver";
583
+ readonly type: "address";
584
+ }, {
585
+ readonly indexed: true;
586
+ readonly internalType: "address";
587
+ readonly name: "owner";
588
+ readonly type: "address";
589
+ }, {
590
+ readonly indexed: false;
591
+ readonly internalType: "uint256";
592
+ readonly name: "assets";
593
+ readonly type: "uint256";
594
+ }, {
595
+ readonly indexed: false;
596
+ readonly internalType: "uint256";
597
+ readonly name: "shares";
598
+ readonly type: "uint256";
599
+ }];
600
+ readonly name: "Withdraw";
601
+ readonly type: "event";
602
+ }, {
603
+ readonly inputs: readonly [];
604
+ readonly name: "accounting";
605
+ readonly outputs: readonly [{
606
+ readonly components: readonly [{
607
+ readonly internalType: "uint256";
608
+ readonly name: "totalAssetsDeposited";
609
+ readonly type: "uint256";
610
+ }, {
611
+ readonly internalType: "uint256";
612
+ readonly name: "totalAssetsWithdrawn";
613
+ readonly type: "uint256";
614
+ }, {
615
+ readonly internalType: "uint256";
616
+ readonly name: "exchangeRate";
617
+ readonly type: "uint256";
618
+ }, {
619
+ readonly internalType: "uint256";
620
+ readonly name: "exchangeRateSetDay";
621
+ readonly type: "uint256";
622
+ }, {
623
+ readonly internalType: "uint256";
624
+ readonly name: "exchangeRateChangeRate";
625
+ readonly type: "uint256";
626
+ }, {
627
+ readonly internalType: "uint256";
628
+ readonly name: "exchangeRateCompoundingRate";
629
+ readonly type: "uint256";
630
+ }, {
631
+ readonly internalType: "uint256";
632
+ readonly name: "exchangeRateAtMaturity";
633
+ readonly type: "uint256";
634
+ }, {
635
+ readonly internalType: "uint256";
636
+ readonly name: "exchangeRateMaturityDay";
637
+ readonly type: "uint256";
638
+ }, {
639
+ readonly internalType: "uint256";
640
+ readonly name: "interestRate";
641
+ readonly type: "uint256";
642
+ }, {
643
+ readonly internalType: "uint256";
644
+ readonly name: "indicativeInterestRate";
645
+ readonly type: "uint256";
646
+ }, {
647
+ readonly internalType: "uint256";
648
+ readonly name: "collateralRate";
649
+ readonly type: "uint256";
650
+ }];
651
+ readonly internalType: "struct ILYTPoolAccounting";
652
+ readonly name: "";
653
+ readonly type: "tuple";
654
+ }];
655
+ readonly stateMutability: "view";
656
+ readonly type: "function";
657
+ }, {
658
+ readonly inputs: readonly [{
659
+ readonly internalType: "address";
660
+ readonly name: "lender";
661
+ readonly type: "address";
662
+ }, {
663
+ readonly internalType: "uint256";
664
+ readonly name: "debit";
665
+ readonly type: "uint256";
666
+ }, {
667
+ readonly internalType: "uint256";
668
+ readonly name: "credit";
669
+ readonly type: "uint256";
670
+ }];
671
+ readonly name: "addAdjustmentAmount";
672
+ readonly outputs: readonly [];
673
+ readonly stateMutability: "nonpayable";
674
+ readonly type: "function";
675
+ }, {
676
+ readonly inputs: readonly [];
677
+ readonly name: "admin";
678
+ readonly outputs: readonly [{
679
+ readonly internalType: "address";
680
+ readonly name: "";
681
+ readonly type: "address";
682
+ }];
683
+ readonly stateMutability: "view";
684
+ readonly type: "function";
685
+ }, {
686
+ readonly inputs: readonly [{
687
+ readonly internalType: "address";
688
+ readonly name: "owner";
689
+ readonly type: "address";
690
+ }, {
691
+ readonly internalType: "address";
692
+ readonly name: "spender";
693
+ readonly type: "address";
694
+ }];
695
+ readonly name: "allowance";
696
+ readonly outputs: readonly [{
697
+ readonly internalType: "uint256";
698
+ readonly name: "";
699
+ readonly type: "uint256";
700
+ }];
701
+ readonly stateMutability: "view";
702
+ readonly type: "function";
703
+ }, {
704
+ readonly inputs: readonly [{
705
+ readonly internalType: "address";
706
+ readonly name: "spender";
707
+ readonly type: "address";
708
+ }, {
709
+ readonly internalType: "uint256";
710
+ readonly name: "value";
711
+ readonly type: "uint256";
712
+ }];
713
+ readonly name: "approve";
714
+ readonly outputs: readonly [{
715
+ readonly internalType: "bool";
716
+ readonly name: "";
717
+ readonly type: "bool";
718
+ }];
719
+ readonly stateMutability: "nonpayable";
720
+ readonly type: "function";
721
+ }, {
722
+ readonly inputs: readonly [];
723
+ readonly name: "asset";
724
+ readonly outputs: readonly [{
725
+ readonly internalType: "address";
726
+ readonly name: "";
727
+ readonly type: "address";
728
+ }];
729
+ readonly stateMutability: "view";
730
+ readonly type: "function";
731
+ }, {
732
+ readonly inputs: readonly [{
733
+ readonly internalType: "address";
734
+ readonly name: "lender";
735
+ readonly type: "address";
736
+ }];
737
+ readonly name: "assetBalanceOf";
738
+ readonly outputs: readonly [{
739
+ readonly internalType: "uint256";
740
+ readonly name: "";
741
+ readonly type: "uint256";
742
+ }];
743
+ readonly stateMutability: "view";
744
+ readonly type: "function";
745
+ }, {
746
+ readonly inputs: readonly [{
747
+ readonly internalType: "address";
748
+ readonly name: "account";
749
+ readonly type: "address";
750
+ }];
751
+ readonly name: "balanceOf";
752
+ readonly outputs: readonly [{
753
+ readonly internalType: "uint256";
754
+ readonly name: "";
755
+ readonly type: "uint256";
756
+ }];
757
+ readonly stateMutability: "view";
758
+ readonly type: "function";
759
+ }, {
760
+ readonly inputs: readonly [{
761
+ readonly internalType: "address";
762
+ readonly name: "lender";
763
+ readonly type: "address";
764
+ }, {
765
+ readonly internalType: "bytes32";
766
+ readonly name: "uuid";
767
+ readonly type: "bytes32";
768
+ }, {
769
+ readonly internalType: "address";
770
+ readonly name: "fundsDestination";
771
+ readonly type: "address";
772
+ }];
773
+ readonly name: "changeRedemptionDestination";
774
+ readonly outputs: readonly [];
775
+ readonly stateMutability: "nonpayable";
776
+ readonly type: "function";
777
+ }, {
778
+ readonly inputs: readonly [{
779
+ readonly internalType: "uint256";
780
+ readonly name: "shares";
781
+ readonly type: "uint256";
782
+ }];
783
+ readonly name: "convertToAssets";
784
+ readonly outputs: readonly [{
785
+ readonly internalType: "uint256";
786
+ readonly name: "assets";
787
+ readonly type: "uint256";
788
+ }];
789
+ readonly stateMutability: "view";
790
+ readonly type: "function";
791
+ }, {
792
+ readonly inputs: readonly [{
793
+ readonly internalType: "uint256";
794
+ readonly name: "assets";
795
+ readonly type: "uint256";
796
+ }];
797
+ readonly name: "convertToShares";
798
+ readonly outputs: readonly [{
799
+ readonly internalType: "uint256";
800
+ readonly name: "shares";
801
+ readonly type: "uint256";
802
+ }];
803
+ readonly stateMutability: "view";
804
+ readonly type: "function";
805
+ }, {
806
+ readonly inputs: readonly [];
807
+ readonly name: "decimals";
808
+ readonly outputs: readonly [{
809
+ readonly internalType: "uint8";
810
+ readonly name: "";
811
+ readonly type: "uint8";
812
+ }];
813
+ readonly stateMutability: "view";
814
+ readonly type: "function";
815
+ }, {
816
+ readonly inputs: readonly [{
817
+ readonly internalType: "uint256";
818
+ readonly name: "assets";
819
+ readonly type: "uint256";
820
+ }, {
821
+ readonly internalType: "address";
822
+ readonly name: "lender";
823
+ readonly type: "address";
824
+ }];
825
+ readonly name: "deposit";
826
+ readonly outputs: readonly [{
827
+ readonly internalType: "uint256";
828
+ readonly name: "shares";
829
+ readonly type: "uint256";
830
+ }];
831
+ readonly stateMutability: "nonpayable";
832
+ readonly type: "function";
833
+ }, {
834
+ readonly inputs: readonly [{
835
+ readonly internalType: "uint256";
836
+ readonly name: "assets";
837
+ readonly type: "uint256";
838
+ }, {
839
+ readonly internalType: "address";
840
+ readonly name: "lender";
841
+ readonly type: "address";
842
+ }, {
843
+ readonly internalType: "bytes32";
844
+ readonly name: "transferTxHash";
845
+ readonly type: "bytes32";
846
+ }];
847
+ readonly name: "depositFromTransfer";
848
+ readonly outputs: readonly [{
849
+ readonly internalType: "uint256";
850
+ readonly name: "shares";
851
+ readonly type: "uint256";
852
+ }];
853
+ readonly stateMutability: "nonpayable";
854
+ readonly type: "function";
855
+ }, {
856
+ readonly inputs: readonly [{
857
+ readonly internalType: "uint256";
858
+ readonly name: "assets";
859
+ readonly type: "uint256";
860
+ }, {
861
+ readonly internalType: "address";
862
+ readonly name: "lender";
863
+ readonly type: "address";
864
+ }, {
865
+ readonly internalType: "bytes32";
866
+ readonly name: "transferTxHash";
867
+ readonly type: "bytes32";
868
+ }];
869
+ readonly name: "depositOffChain";
870
+ readonly outputs: readonly [{
871
+ readonly internalType: "uint256";
872
+ readonly name: "shares";
873
+ readonly type: "uint256";
874
+ }];
875
+ readonly stateMutability: "nonpayable";
876
+ readonly type: "function";
877
+ }, {
878
+ readonly inputs: readonly [];
879
+ readonly name: "exchangeRate";
880
+ readonly outputs: readonly [{
881
+ readonly internalType: "uint256";
882
+ readonly name: "_exchangeRate";
883
+ readonly type: "uint256";
884
+ }];
885
+ readonly stateMutability: "view";
886
+ readonly type: "function";
887
+ }, {
888
+ readonly inputs: readonly [];
889
+ readonly name: "getActiveWithdraws";
890
+ readonly outputs: readonly [{
891
+ readonly components: readonly [{
892
+ readonly internalType: "bytes32";
893
+ readonly name: "uuid";
894
+ readonly type: "bytes32";
895
+ }, {
896
+ readonly internalType: "address";
897
+ readonly name: "lender";
898
+ readonly type: "address";
899
+ }, {
900
+ readonly internalType: "uint256";
901
+ readonly name: "assets";
902
+ readonly type: "uint256";
903
+ }, {
904
+ readonly internalType: "uint256";
905
+ readonly name: "shares";
906
+ readonly type: "uint256";
907
+ }, {
908
+ readonly internalType: "enum ILYTPoolWithdrawStage";
909
+ readonly name: "stage";
910
+ readonly type: "uint8";
911
+ }, {
912
+ readonly internalType: "address";
913
+ readonly name: "fundsDestination";
914
+ readonly type: "address";
915
+ }];
916
+ readonly internalType: "struct ILYTPoolWithdraw[]";
917
+ readonly name: "";
918
+ readonly type: "tuple[]";
919
+ }];
920
+ readonly stateMutability: "view";
921
+ readonly type: "function";
922
+ }, {
923
+ readonly inputs: readonly [{
924
+ readonly internalType: "address";
925
+ readonly name: "lender";
926
+ readonly type: "address";
927
+ }];
928
+ readonly name: "getLYTPoolAccountState";
929
+ readonly outputs: readonly [{
930
+ readonly components: readonly [{
931
+ readonly internalType: "address";
932
+ readonly name: "poolAddr";
933
+ readonly type: "address";
934
+ }, {
935
+ readonly internalType: "address";
936
+ readonly name: "accountAddr";
937
+ readonly type: "address";
938
+ }, {
939
+ readonly internalType: "address";
940
+ readonly name: "liquidityAssetAddr";
941
+ readonly type: "address";
942
+ }, {
943
+ readonly internalType: "uint256";
944
+ readonly name: "tokenBalance";
945
+ readonly type: "uint256";
946
+ }, {
947
+ readonly internalType: "uint256";
948
+ readonly name: "assetBalance";
949
+ readonly type: "uint256";
950
+ }, {
951
+ readonly internalType: "uint256";
952
+ readonly name: "maxWithdrawRequest";
953
+ readonly type: "uint256";
954
+ }, {
955
+ readonly internalType: "uint256";
956
+ readonly name: "maxRedeemRequest";
957
+ readonly type: "uint256";
958
+ }, {
959
+ readonly internalType: "uint256";
960
+ readonly name: "requestedSharesOf";
961
+ readonly type: "uint256";
962
+ }, {
963
+ readonly internalType: "uint256";
964
+ readonly name: "requestedAssetsOf";
965
+ readonly type: "uint256";
966
+ }, {
967
+ readonly internalType: "uint256";
968
+ readonly name: "assetsDeposited";
969
+ readonly type: "uint256";
970
+ }, {
971
+ readonly internalType: "uint256";
972
+ readonly name: "assetsWithdrawn";
973
+ readonly type: "uint256";
974
+ }];
975
+ readonly internalType: "struct ILYTPoolAccountState";
976
+ readonly name: "_poolAccountState";
977
+ readonly type: "tuple";
978
+ }];
979
+ readonly stateMutability: "view";
980
+ readonly type: "function";
981
+ }, {
982
+ readonly inputs: readonly [];
983
+ readonly name: "getLYTPoolConfigurationState";
984
+ readonly outputs: readonly [{
985
+ readonly components: readonly [{
986
+ readonly internalType: "address";
987
+ readonly name: "poolAddr";
988
+ readonly type: "address";
989
+ }, {
990
+ readonly internalType: "string";
991
+ readonly name: "name";
992
+ readonly type: "string";
993
+ }, {
994
+ readonly internalType: "string";
995
+ readonly name: "symbol";
996
+ readonly type: "string";
997
+ }, {
998
+ readonly internalType: "address";
999
+ readonly name: "poolAccessControl";
1000
+ readonly type: "address";
1001
+ }, {
1002
+ readonly internalType: "address";
1003
+ readonly name: "lytPoolController";
1004
+ readonly type: "address";
1005
+ }, {
1006
+ readonly internalType: "uint256";
1007
+ readonly name: "activatedAt";
1008
+ readonly type: "uint256";
1009
+ }, {
1010
+ readonly internalType: "address";
1011
+ readonly name: "serviceConfiguration";
1012
+ readonly type: "address";
1013
+ }, {
1014
+ readonly internalType: "address";
1015
+ readonly name: "liquidityAssetAddr";
1016
+ readonly type: "address";
1017
+ }, {
1018
+ readonly internalType: "address";
1019
+ readonly name: "poolAdmin";
1020
+ readonly type: "address";
1021
+ }, {
1022
+ readonly internalType: "address";
1023
+ readonly name: "issuer";
1024
+ readonly type: "address";
1025
+ }, {
1026
+ readonly internalType: "address";
1027
+ readonly name: "treasuryWalletAddr";
1028
+ readonly type: "address";
1029
+ }, {
1030
+ readonly internalType: "address";
1031
+ readonly name: "feeCollectorAddress";
1032
+ readonly type: "address";
1033
+ }, {
1034
+ readonly internalType: "enum ILYTPoolExchangeRateType";
1035
+ readonly name: "exchangeRateType";
1036
+ readonly type: "uint8";
1037
+ }];
1038
+ readonly internalType: "struct ILYTPoolConfigurationState";
1039
+ readonly name: "_poolConfigurationState";
1040
+ readonly type: "tuple";
1041
+ }];
1042
+ readonly stateMutability: "view";
1043
+ readonly type: "function";
1044
+ }, {
1045
+ readonly inputs: readonly [];
1046
+ readonly name: "getLYTPoolOverviewState";
1047
+ readonly outputs: readonly [{
1048
+ readonly components: readonly [{
1049
+ readonly internalType: "address";
1050
+ readonly name: "poolAddr";
1051
+ readonly type: "address";
1052
+ }, {
1053
+ readonly internalType: "uint256";
1054
+ readonly name: "state";
1055
+ readonly type: "uint256";
1056
+ }, {
1057
+ readonly internalType: "uint256";
1058
+ readonly name: "totalAssetsDeposited";
1059
+ readonly type: "uint256";
1060
+ }, {
1061
+ readonly internalType: "uint256";
1062
+ readonly name: "totalAssetsWithdrawn";
1063
+ readonly type: "uint256";
1064
+ }, {
1065
+ readonly internalType: "uint256";
1066
+ readonly name: "totalAssets";
1067
+ readonly type: "uint256";
1068
+ }, {
1069
+ readonly internalType: "uint256";
1070
+ readonly name: "totalShares";
1071
+ readonly type: "uint256";
1072
+ }, {
1073
+ readonly internalType: "uint256";
1074
+ readonly name: "exchangeRate";
1075
+ readonly type: "uint256";
1076
+ }, {
1077
+ readonly internalType: "uint256";
1078
+ readonly name: "exchangeRateAtSetDay";
1079
+ readonly type: "uint256";
1080
+ }, {
1081
+ readonly internalType: "uint256";
1082
+ readonly name: "exchangeRateSetDay";
1083
+ readonly type: "uint256";
1084
+ }, {
1085
+ readonly internalType: "uint256";
1086
+ readonly name: "exchangeRateChangeRate";
1087
+ readonly type: "uint256";
1088
+ }, {
1089
+ readonly internalType: "uint256";
1090
+ readonly name: "exchangeRateCompoundingRate";
1091
+ readonly type: "uint256";
1092
+ }, {
1093
+ readonly internalType: "uint256";
1094
+ readonly name: "exchangeRateAtMaturity";
1095
+ readonly type: "uint256";
1096
+ }, {
1097
+ readonly internalType: "uint256";
1098
+ readonly name: "exchangeRateMaturityDay";
1099
+ readonly type: "uint256";
1100
+ }, {
1101
+ readonly internalType: "uint256";
1102
+ readonly name: "interestRate";
1103
+ readonly type: "uint256";
1104
+ }, {
1105
+ readonly internalType: "uint256";
1106
+ readonly name: "indicativeInterestRate";
1107
+ readonly type: "uint256";
1108
+ }, {
1109
+ readonly internalType: "uint256";
1110
+ readonly name: "collateralRate";
1111
+ readonly type: "uint256";
1112
+ }, {
1113
+ readonly components: readonly [{
1114
+ readonly internalType: "bytes32";
1115
+ readonly name: "uuid";
1116
+ readonly type: "bytes32";
1117
+ }, {
1118
+ readonly internalType: "address";
1119
+ readonly name: "lender";
1120
+ readonly type: "address";
1121
+ }, {
1122
+ readonly internalType: "uint256";
1123
+ readonly name: "assets";
1124
+ readonly type: "uint256";
1125
+ }, {
1126
+ readonly internalType: "uint256";
1127
+ readonly name: "shares";
1128
+ readonly type: "uint256";
1129
+ }, {
1130
+ readonly internalType: "enum ILYTPoolWithdrawStage";
1131
+ readonly name: "stage";
1132
+ readonly type: "uint8";
1133
+ }, {
1134
+ readonly internalType: "address";
1135
+ readonly name: "fundsDestination";
1136
+ readonly type: "address";
1137
+ }];
1138
+ readonly internalType: "struct ILYTPoolWithdraw[]";
1139
+ readonly name: "activeWithdraws";
1140
+ readonly type: "tuple[]";
1141
+ }];
1142
+ readonly internalType: "struct ILYTPoolOverviewState";
1143
+ readonly name: "_poolOverviewState";
1144
+ readonly type: "tuple";
1145
+ }];
1146
+ readonly stateMutability: "view";
1147
+ readonly type: "function";
1148
+ }, {
1149
+ readonly inputs: readonly [{
1150
+ readonly components: readonly [{
1151
+ readonly internalType: "address";
1152
+ readonly name: "liquidityAsset";
1153
+ readonly type: "address";
1154
+ }, {
1155
+ readonly internalType: "address";
1156
+ readonly name: "poolAdmin";
1157
+ readonly type: "address";
1158
+ }, {
1159
+ readonly internalType: "address";
1160
+ readonly name: "serviceConfiguration";
1161
+ readonly type: "address";
1162
+ }, {
1163
+ readonly internalType: "address";
1164
+ readonly name: "lytPoolControllerFactory";
1165
+ readonly type: "address";
1166
+ }, {
1167
+ readonly internalType: "address";
1168
+ readonly name: "poolAccessControlFactory";
1169
+ readonly type: "address";
1170
+ }];
1171
+ readonly internalType: "struct LYTPoolAddressList";
1172
+ readonly name: "poolAddressList";
1173
+ readonly type: "tuple";
1174
+ }, {
1175
+ readonly components: readonly [{
1176
+ readonly internalType: "address";
1177
+ readonly name: "issuer";
1178
+ readonly type: "address";
1179
+ }, {
1180
+ readonly internalType: "address";
1181
+ readonly name: "treasuryWalletAddr";
1182
+ readonly type: "address";
1183
+ }, {
1184
+ readonly internalType: "address";
1185
+ readonly name: "feeCollectorAddress";
1186
+ readonly type: "address";
1187
+ }, {
1188
+ readonly internalType: "enum ILYTPoolExchangeRateType";
1189
+ readonly name: "exchangeRateType";
1190
+ readonly type: "uint8";
1191
+ }];
1192
+ readonly internalType: "struct ILYTPoolConfigurableSettings";
1193
+ readonly name: "poolSettings";
1194
+ readonly type: "tuple";
1195
+ }, {
1196
+ readonly internalType: "string";
1197
+ readonly name: "tokenName";
1198
+ readonly type: "string";
1199
+ }, {
1200
+ readonly internalType: "string";
1201
+ readonly name: "tokenSymbol";
1202
+ readonly type: "string";
1203
+ }];
1204
+ readonly name: "initialize";
1205
+ readonly outputs: readonly [];
1206
+ readonly stateMutability: "nonpayable";
1207
+ readonly type: "function";
1208
+ }, {
1209
+ readonly inputs: readonly [];
1210
+ readonly name: "issuerAddr";
1211
+ readonly outputs: readonly [{
1212
+ readonly internalType: "address";
1213
+ readonly name: "";
1214
+ readonly type: "address";
1215
+ }];
1216
+ readonly stateMutability: "view";
1217
+ readonly type: "function";
1218
+ }, {
1219
+ readonly inputs: readonly [];
1220
+ readonly name: "liquidityAssetAddr";
1221
+ readonly outputs: readonly [{
1222
+ readonly internalType: "address";
1223
+ readonly name: "";
1224
+ readonly type: "address";
1225
+ }];
1226
+ readonly stateMutability: "view";
1227
+ readonly type: "function";
1228
+ }, {
1229
+ readonly inputs: readonly [];
1230
+ readonly name: "lytPoolController";
1231
+ readonly outputs: readonly [{
1232
+ readonly internalType: "contract ILYTPoolController";
1233
+ readonly name: "";
1234
+ readonly type: "address";
1235
+ }];
1236
+ readonly stateMutability: "view";
1237
+ readonly type: "function";
1238
+ }, {
1239
+ readonly inputs: readonly [{
1240
+ readonly internalType: "address";
1241
+ readonly name: "owner";
1242
+ readonly type: "address";
1243
+ }];
1244
+ readonly name: "maxRedeemRequest";
1245
+ readonly outputs: readonly [{
1246
+ readonly internalType: "uint256";
1247
+ readonly name: "maxShares";
1248
+ readonly type: "uint256";
1249
+ }];
1250
+ readonly stateMutability: "view";
1251
+ readonly type: "function";
1252
+ }, {
1253
+ readonly inputs: readonly [{
1254
+ readonly internalType: "address";
1255
+ readonly name: "owner";
1256
+ readonly type: "address";
1257
+ }];
1258
+ readonly name: "maxWithdrawRequest";
1259
+ readonly outputs: readonly [{
1260
+ readonly internalType: "uint256";
1261
+ readonly name: "maxAssets";
1262
+ readonly type: "uint256";
1263
+ }];
1264
+ readonly stateMutability: "view";
1265
+ readonly type: "function";
1266
+ }, {
1267
+ readonly inputs: readonly [];
1268
+ readonly name: "name";
1269
+ readonly outputs: readonly [{
1270
+ readonly internalType: "string";
1271
+ readonly name: "";
1272
+ readonly type: "string";
1273
+ }];
1274
+ readonly stateMutability: "view";
1275
+ readonly type: "function";
1276
+ }, {
1277
+ readonly inputs: readonly [];
1278
+ readonly name: "poolAccessControl";
1279
+ readonly outputs: readonly [{
1280
+ readonly internalType: "contract ILYTPoolAccessControl";
1281
+ readonly name: "";
1282
+ readonly type: "address";
1283
+ }];
1284
+ readonly stateMutability: "view";
1285
+ readonly type: "function";
1286
+ }, {
1287
+ readonly inputs: readonly [];
1288
+ readonly name: "poolType";
1289
+ readonly outputs: readonly [{
1290
+ readonly internalType: "enum IPoolType";
1291
+ readonly name: "";
1292
+ readonly type: "uint8";
1293
+ }];
1294
+ readonly stateMutability: "pure";
1295
+ readonly type: "function";
1296
+ }, {
1297
+ readonly inputs: readonly [{
1298
+ readonly internalType: "uint256";
1299
+ readonly name: "shares";
1300
+ readonly type: "uint256";
1301
+ }];
1302
+ readonly name: "previewRedeemRequest";
1303
+ readonly outputs: readonly [{
1304
+ readonly internalType: "uint256";
1305
+ readonly name: "assets";
1306
+ readonly type: "uint256";
1307
+ }];
1308
+ readonly stateMutability: "view";
1309
+ readonly type: "function";
1310
+ }, {
1311
+ readonly inputs: readonly [{
1312
+ readonly internalType: "uint256";
1313
+ readonly name: "assets";
1314
+ readonly type: "uint256";
1315
+ }];
1316
+ readonly name: "previewWithdrawRequest";
1317
+ readonly outputs: readonly [{
1318
+ readonly internalType: "uint256";
1319
+ readonly name: "shares";
1320
+ readonly type: "uint256";
1321
+ }];
1322
+ readonly stateMutability: "view";
1323
+ readonly type: "function";
1324
+ }, {
1325
+ readonly inputs: readonly [{
1326
+ readonly internalType: "address";
1327
+ readonly name: "lender";
1328
+ readonly type: "address";
1329
+ }, {
1330
+ readonly internalType: "uint256";
1331
+ readonly name: "repayment";
1332
+ readonly type: "uint256";
1333
+ }, {
1334
+ readonly internalType: "uint256";
1335
+ readonly name: "fees";
1336
+ readonly type: "uint256";
1337
+ }, {
1338
+ readonly internalType: "bytes32";
1339
+ readonly name: "uuid";
1340
+ readonly type: "bytes32";
1341
+ }];
1342
+ readonly name: "processRedemption";
1343
+ readonly outputs: readonly [];
1344
+ readonly stateMutability: "nonpayable";
1345
+ readonly type: "function";
1346
+ }, {
1347
+ readonly inputs: readonly [{
1348
+ readonly internalType: "uint256";
1349
+ readonly name: "shares";
1350
+ readonly type: "uint256";
1351
+ }];
1352
+ readonly name: "requestRedeem";
1353
+ readonly outputs: readonly [{
1354
+ readonly internalType: "uint256";
1355
+ readonly name: "assets";
1356
+ readonly type: "uint256";
1357
+ }];
1358
+ readonly stateMutability: "nonpayable";
1359
+ readonly type: "function";
1360
+ }, {
1361
+ readonly inputs: readonly [];
1362
+ readonly name: "serviceConfiguration";
1363
+ readonly outputs: readonly [{
1364
+ readonly internalType: "contract ILYTPoolServiceConfiguration";
1365
+ readonly name: "";
1366
+ readonly type: "address";
1367
+ }];
1368
+ readonly stateMutability: "view";
1369
+ readonly type: "function";
1370
+ }, {
1371
+ readonly inputs: readonly [{
1372
+ readonly internalType: "uint256";
1373
+ readonly name: "_exchangeRate";
1374
+ readonly type: "uint256";
1375
+ }, {
1376
+ readonly internalType: "uint256";
1377
+ readonly name: "_typeDependantChangeParam";
1378
+ readonly type: "uint256";
1379
+ }, {
1380
+ readonly internalType: "uint256";
1381
+ readonly name: "_exchangeRateMaturityDay";
1382
+ readonly type: "uint256";
1383
+ }, {
1384
+ readonly internalType: "uint256";
1385
+ readonly name: "_interestRate";
1386
+ readonly type: "uint256";
1387
+ }];
1388
+ readonly name: "setExchangeRate";
1389
+ readonly outputs: readonly [];
1390
+ readonly stateMutability: "nonpayable";
1391
+ readonly type: "function";
1392
+ }, {
1393
+ readonly inputs: readonly [{
1394
+ readonly internalType: "uint256";
1395
+ readonly name: "_indicativeInterestRate";
1396
+ readonly type: "uint256";
1397
+ }, {
1398
+ readonly internalType: "uint256";
1399
+ readonly name: "_collateralRate";
1400
+ readonly type: "uint256";
1401
+ }];
1402
+ readonly name: "setIndicativeAndCollateralRates";
1403
+ readonly outputs: readonly [];
1404
+ readonly stateMutability: "nonpayable";
1405
+ readonly type: "function";
1406
+ }, {
1407
+ readonly inputs: readonly [];
1408
+ readonly name: "settings";
1409
+ readonly outputs: readonly [{
1410
+ readonly components: readonly [{
1411
+ readonly internalType: "address";
1412
+ readonly name: "issuer";
1413
+ readonly type: "address";
1414
+ }, {
1415
+ readonly internalType: "address";
1416
+ readonly name: "treasuryWalletAddr";
1417
+ readonly type: "address";
1418
+ }, {
1419
+ readonly internalType: "address";
1420
+ readonly name: "feeCollectorAddress";
1421
+ readonly type: "address";
1422
+ }, {
1423
+ readonly internalType: "enum ILYTPoolExchangeRateType";
1424
+ readonly name: "exchangeRateType";
1425
+ readonly type: "uint8";
1426
+ }];
1427
+ readonly internalType: "struct ILYTPoolConfigurableSettings";
1428
+ readonly name: "poolSettings";
1429
+ readonly type: "tuple";
1430
+ }];
1431
+ readonly stateMutability: "view";
1432
+ readonly type: "function";
1433
+ }, {
1434
+ readonly inputs: readonly [];
1435
+ readonly name: "state";
1436
+ readonly outputs: readonly [{
1437
+ readonly internalType: "enum ILYTPoolLifeCycleState";
1438
+ readonly name: "";
1439
+ readonly type: "uint8";
1440
+ }];
1441
+ readonly stateMutability: "view";
1442
+ readonly type: "function";
1443
+ }, {
1444
+ readonly inputs: readonly [];
1445
+ readonly name: "symbol";
1446
+ readonly outputs: readonly [{
1447
+ readonly internalType: "string";
1448
+ readonly name: "";
1449
+ readonly type: "string";
1450
+ }];
1451
+ readonly stateMutability: "view";
1452
+ readonly type: "function";
1453
+ }, {
1454
+ readonly inputs: readonly [];
1455
+ readonly name: "totalAssets";
1456
+ readonly outputs: readonly [{
1457
+ readonly internalType: "uint256";
1458
+ readonly name: "";
1459
+ readonly type: "uint256";
1460
+ }];
1461
+ readonly stateMutability: "view";
1462
+ readonly type: "function";
1463
+ }, {
1464
+ readonly inputs: readonly [];
1465
+ readonly name: "totalAvailableAssets";
1466
+ readonly outputs: readonly [{
1467
+ readonly internalType: "uint256";
1468
+ readonly name: "assets";
1469
+ readonly type: "uint256";
1470
+ }];
1471
+ readonly stateMutability: "view";
1472
+ readonly type: "function";
1473
+ }, {
1474
+ readonly inputs: readonly [];
1475
+ readonly name: "totalSupply";
1476
+ readonly outputs: readonly [{
1477
+ readonly internalType: "uint256";
1478
+ readonly name: "";
1479
+ readonly type: "uint256";
1480
+ }];
1481
+ readonly stateMutability: "view";
1482
+ readonly type: "function";
1483
+ }, {
1484
+ readonly inputs: readonly [{
1485
+ readonly internalType: "address";
1486
+ readonly name: "to";
1487
+ readonly type: "address";
1488
+ }, {
1489
+ readonly internalType: "uint256";
1490
+ readonly name: "value";
1491
+ readonly type: "uint256";
1492
+ }];
1493
+ readonly name: "transfer";
1494
+ readonly outputs: readonly [{
1495
+ readonly internalType: "bool";
1496
+ readonly name: "";
1497
+ readonly type: "bool";
1498
+ }];
1499
+ readonly stateMutability: "nonpayable";
1500
+ readonly type: "function";
1501
+ }, {
1502
+ readonly inputs: readonly [{
1503
+ readonly internalType: "address";
1504
+ readonly name: "from";
1505
+ readonly type: "address";
1506
+ }, {
1507
+ readonly internalType: "address";
1508
+ readonly name: "to";
1509
+ readonly type: "address";
1510
+ }, {
1511
+ readonly internalType: "uint256";
1512
+ readonly name: "value";
1513
+ readonly type: "uint256";
1514
+ }];
1515
+ readonly name: "transferFrom";
1516
+ readonly outputs: readonly [{
1517
+ readonly internalType: "bool";
1518
+ readonly name: "";
1519
+ readonly type: "bool";
1520
+ }];
1521
+ readonly stateMutability: "nonpayable";
1522
+ readonly type: "function";
1523
+ }, {
1524
+ readonly inputs: readonly [{
1525
+ readonly internalType: "uint256";
1526
+ readonly name: "assets";
1527
+ readonly type: "uint256";
1528
+ }];
1529
+ readonly name: "transferToTreasuryWallet";
1530
+ readonly outputs: readonly [];
1531
+ readonly stateMutability: "nonpayable";
1532
+ readonly type: "function";
1533
+ }, {
1534
+ readonly inputs: readonly [];
1535
+ readonly name: "treasuryWalletAddr";
1536
+ readonly outputs: readonly [{
1537
+ readonly internalType: "address";
1538
+ readonly name: "";
1539
+ readonly type: "address";
1540
+ }];
1541
+ readonly stateMutability: "view";
1542
+ readonly type: "function";
1543
+ }];
1544
+ /**
1545
+ * Type-safe ABI for LYTPool_json
1546
+ */
1547
+ export type LYTPool_jsonAbi = typeof LYTPool_jsonAbi;
1548
+ /**
1549
+ * Contract instance type for LYTPool_json
1550
+ */
1551
+ export type LYTPool_jsonContract = any;
1552
+ /**
1553
+ * LYTPool_json Contract Class
1554
+ *
1555
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
1556
+ *
1557
+ * @example
1558
+ * ```typescript
1559
+ * import { createPublicClient, createWalletClient, http } from 'viem';
1560
+ * import { mainnet } from 'viem/chains';
1561
+ * import { LYTPool_json } from 'LYTPool_json';
1562
+ *
1563
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
1564
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
1565
+ *
1566
+ * const contract = new LYTPool_json('0x...', { publicClient, walletClient });
1567
+ *
1568
+ * // Read functions
1569
+ * const result = await contract.balanceOf('0x...');
1570
+ *
1571
+ * // Write functions
1572
+ * const hash = await contract.transfer('0x...', 1000n);
1573
+ *
1574
+ * // Simulate transactions (dry-run)
1575
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
1576
+ * console.log('Gas estimate:', simulation.request.gas);
1577
+ *
1578
+ * // Watch events
1579
+ * const unwatch = contract.watch.Transfer((event) => {
1580
+ * console.log('Transfer event:', event);
1581
+ * });
1582
+ * ```
1583
+ */
1584
+ export declare class LYTPool_json {
1585
+ private contract;
1586
+ private contractAddress;
1587
+ private publicClient;
1588
+ constructor(address: Address, clients: {
1589
+ publicClient: PublicClient;
1590
+ walletClient?: WalletClient;
1591
+ });
1592
+ /**
1593
+ * Get the contract address
1594
+ */
1595
+ get address(): Address;
1596
+ /**
1597
+ * Get the underlying viem contract instance
1598
+ */
1599
+ getContract(): LYTPool_jsonContract;
1600
+ /**
1601
+ * accounting
1602
+ * view
1603
+ */
1604
+ accounting(): Promise<ILYTPoolAccounting>;
1605
+ /**
1606
+ * admin
1607
+ * view
1608
+ */
1609
+ admin(): Promise<`0x${string}`>;
1610
+ /**
1611
+ * allowance
1612
+ * view
1613
+ */
1614
+ allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
1615
+ /**
1616
+ * asset
1617
+ * view
1618
+ */
1619
+ asset(): Promise<`0x${string}`>;
1620
+ /**
1621
+ * assetBalanceOf
1622
+ * view
1623
+ */
1624
+ assetBalanceOf(lender: `0x${string}`): Promise<bigint>;
1625
+ /**
1626
+ * balanceOf
1627
+ * view
1628
+ */
1629
+ balanceOf(account: `0x${string}`): Promise<bigint>;
1630
+ /**
1631
+ * convertToAssets
1632
+ * view
1633
+ */
1634
+ convertToAssets(shares: bigint): Promise<bigint>;
1635
+ /**
1636
+ * convertToShares
1637
+ * view
1638
+ */
1639
+ convertToShares(assets: bigint): Promise<bigint>;
1640
+ /**
1641
+ * decimals
1642
+ * view
1643
+ */
1644
+ decimals(): Promise<bigint>;
1645
+ /**
1646
+ * exchangeRate
1647
+ * view
1648
+ */
1649
+ exchangeRate(): Promise<bigint>;
1650
+ /**
1651
+ * getActiveWithdraws
1652
+ * view
1653
+ */
1654
+ getActiveWithdraws(): Promise<ILYTPoolWithdraw[]>;
1655
+ /**
1656
+ * getLYTPoolAccountState
1657
+ * view
1658
+ */
1659
+ getLYTPoolAccountState(lender: `0x${string}`): Promise<ILYTPoolAccountState>;
1660
+ /**
1661
+ * getLYTPoolConfigurationState
1662
+ * view
1663
+ */
1664
+ getLYTPoolConfigurationState(): Promise<ILYTPoolConfigurationState>;
1665
+ /**
1666
+ * getLYTPoolOverviewState
1667
+ * view
1668
+ */
1669
+ getLYTPoolOverviewState(): Promise<ILYTPoolOverviewState>;
1670
+ /**
1671
+ * issuerAddr
1672
+ * view
1673
+ */
1674
+ issuerAddr(): Promise<`0x${string}`>;
1675
+ /**
1676
+ * liquidityAssetAddr
1677
+ * view
1678
+ */
1679
+ liquidityAssetAddr(): Promise<`0x${string}`>;
1680
+ /**
1681
+ * lytPoolController
1682
+ * view
1683
+ */
1684
+ lytPoolController(): Promise<`0x${string}`>;
1685
+ /**
1686
+ * maxRedeemRequest
1687
+ * view
1688
+ */
1689
+ maxRedeemRequest(owner: `0x${string}`): Promise<bigint>;
1690
+ /**
1691
+ * maxWithdrawRequest
1692
+ * view
1693
+ */
1694
+ maxWithdrawRequest(owner: `0x${string}`): Promise<bigint>;
1695
+ /**
1696
+ * name
1697
+ * view
1698
+ */
1699
+ name(): Promise<string>;
1700
+ /**
1701
+ * poolAccessControl
1702
+ * view
1703
+ */
1704
+ poolAccessControl(): Promise<`0x${string}`>;
1705
+ /**
1706
+ * poolType
1707
+ * pure
1708
+ */
1709
+ poolType(): Promise<bigint>;
1710
+ /**
1711
+ * previewRedeemRequest
1712
+ * view
1713
+ */
1714
+ previewRedeemRequest(shares: bigint): Promise<bigint>;
1715
+ /**
1716
+ * previewWithdrawRequest
1717
+ * view
1718
+ */
1719
+ previewWithdrawRequest(assets: bigint): Promise<bigint>;
1720
+ /**
1721
+ * serviceConfiguration
1722
+ * view
1723
+ */
1724
+ serviceConfiguration(): Promise<`0x${string}`>;
1725
+ /**
1726
+ * settings
1727
+ * view
1728
+ */
1729
+ settings(): Promise<ILYTPoolConfigurableSettings>;
1730
+ /**
1731
+ * state
1732
+ * view
1733
+ */
1734
+ state(): Promise<bigint>;
1735
+ /**
1736
+ * symbol
1737
+ * view
1738
+ */
1739
+ symbol(): Promise<string>;
1740
+ /**
1741
+ * totalAssets
1742
+ * view
1743
+ */
1744
+ totalAssets(): Promise<bigint>;
1745
+ /**
1746
+ * totalAvailableAssets
1747
+ * view
1748
+ */
1749
+ totalAvailableAssets(): Promise<bigint>;
1750
+ /**
1751
+ * totalSupply
1752
+ * view
1753
+ */
1754
+ totalSupply(): Promise<bigint>;
1755
+ /**
1756
+ * treasuryWalletAddr
1757
+ * view
1758
+ */
1759
+ treasuryWalletAddr(): Promise<`0x${string}`>;
1760
+ /**
1761
+ * addAdjustmentAmount
1762
+ * nonpayable
1763
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1764
+ */
1765
+ addAdjustmentAmount(lender: `0x${string}`, debit: bigint, credit: bigint, options?: {
1766
+ accessList?: import('viem').AccessList;
1767
+ authorizationList?: import('viem').AuthorizationList;
1768
+ chain?: import('viem').Chain | null;
1769
+ dataSuffix?: `0x${string}`;
1770
+ gas?: bigint;
1771
+ gasPrice?: bigint;
1772
+ maxFeePerGas?: bigint;
1773
+ maxPriorityFeePerGas?: bigint;
1774
+ nonce?: number;
1775
+ value?: bigint;
1776
+ }): Promise<`0x${string}`>;
1777
+ /**
1778
+ * approve
1779
+ * nonpayable
1780
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1781
+ */
1782
+ approve(spender: `0x${string}`, value: bigint, options?: {
1783
+ accessList?: import('viem').AccessList;
1784
+ authorizationList?: import('viem').AuthorizationList;
1785
+ chain?: import('viem').Chain | null;
1786
+ dataSuffix?: `0x${string}`;
1787
+ gas?: bigint;
1788
+ gasPrice?: bigint;
1789
+ maxFeePerGas?: bigint;
1790
+ maxPriorityFeePerGas?: bigint;
1791
+ nonce?: number;
1792
+ value?: bigint;
1793
+ }): Promise<`0x${string}`>;
1794
+ /**
1795
+ * changeRedemptionDestination
1796
+ * nonpayable
1797
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1798
+ */
1799
+ changeRedemptionDestination(lender: `0x${string}`, uuid: `0x${string}`, fundsDestination: `0x${string}`, options?: {
1800
+ accessList?: import('viem').AccessList;
1801
+ authorizationList?: import('viem').AuthorizationList;
1802
+ chain?: import('viem').Chain | null;
1803
+ dataSuffix?: `0x${string}`;
1804
+ gas?: bigint;
1805
+ gasPrice?: bigint;
1806
+ maxFeePerGas?: bigint;
1807
+ maxPriorityFeePerGas?: bigint;
1808
+ nonce?: number;
1809
+ value?: bigint;
1810
+ }): Promise<`0x${string}`>;
1811
+ /**
1812
+ * deposit
1813
+ * nonpayable
1814
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1815
+ */
1816
+ deposit(assets: bigint, lender: `0x${string}`, options?: {
1817
+ accessList?: import('viem').AccessList;
1818
+ authorizationList?: import('viem').AuthorizationList;
1819
+ chain?: import('viem').Chain | null;
1820
+ dataSuffix?: `0x${string}`;
1821
+ gas?: bigint;
1822
+ gasPrice?: bigint;
1823
+ maxFeePerGas?: bigint;
1824
+ maxPriorityFeePerGas?: bigint;
1825
+ nonce?: number;
1826
+ value?: bigint;
1827
+ }): Promise<`0x${string}`>;
1828
+ /**
1829
+ * depositFromTransfer
1830
+ * nonpayable
1831
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1832
+ */
1833
+ depositFromTransfer(assets: bigint, lender: `0x${string}`, transferTxHash: `0x${string}`, options?: {
1834
+ accessList?: import('viem').AccessList;
1835
+ authorizationList?: import('viem').AuthorizationList;
1836
+ chain?: import('viem').Chain | null;
1837
+ dataSuffix?: `0x${string}`;
1838
+ gas?: bigint;
1839
+ gasPrice?: bigint;
1840
+ maxFeePerGas?: bigint;
1841
+ maxPriorityFeePerGas?: bigint;
1842
+ nonce?: number;
1843
+ value?: bigint;
1844
+ }): Promise<`0x${string}`>;
1845
+ /**
1846
+ * depositOffChain
1847
+ * nonpayable
1848
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1849
+ */
1850
+ depositOffChain(assets: bigint, lender: `0x${string}`, transferTxHash: `0x${string}`, options?: {
1851
+ accessList?: import('viem').AccessList;
1852
+ authorizationList?: import('viem').AuthorizationList;
1853
+ chain?: import('viem').Chain | null;
1854
+ dataSuffix?: `0x${string}`;
1855
+ gas?: bigint;
1856
+ gasPrice?: bigint;
1857
+ maxFeePerGas?: bigint;
1858
+ maxPriorityFeePerGas?: bigint;
1859
+ nonce?: number;
1860
+ value?: bigint;
1861
+ }): Promise<`0x${string}`>;
1862
+ /**
1863
+ * initialize
1864
+ * nonpayable
1865
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1866
+ */
1867
+ initialize(poolAddressList: LYTPoolAddressList, poolSettings: ILYTPoolConfigurableSettings, tokenName: string, tokenSymbol: string, options?: {
1868
+ accessList?: import('viem').AccessList;
1869
+ authorizationList?: import('viem').AuthorizationList;
1870
+ chain?: import('viem').Chain | null;
1871
+ dataSuffix?: `0x${string}`;
1872
+ gas?: bigint;
1873
+ gasPrice?: bigint;
1874
+ maxFeePerGas?: bigint;
1875
+ maxPriorityFeePerGas?: bigint;
1876
+ nonce?: number;
1877
+ value?: bigint;
1878
+ }): Promise<`0x${string}`>;
1879
+ /**
1880
+ * processRedemption
1881
+ * nonpayable
1882
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1883
+ */
1884
+ processRedemption(lender: `0x${string}`, repayment: bigint, fees: bigint, uuid: `0x${string}`, options?: {
1885
+ accessList?: import('viem').AccessList;
1886
+ authorizationList?: import('viem').AuthorizationList;
1887
+ chain?: import('viem').Chain | null;
1888
+ dataSuffix?: `0x${string}`;
1889
+ gas?: bigint;
1890
+ gasPrice?: bigint;
1891
+ maxFeePerGas?: bigint;
1892
+ maxPriorityFeePerGas?: bigint;
1893
+ nonce?: number;
1894
+ value?: bigint;
1895
+ }): Promise<`0x${string}`>;
1896
+ /**
1897
+ * requestRedeem
1898
+ * nonpayable
1899
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1900
+ */
1901
+ requestRedeem(shares: bigint, options?: {
1902
+ accessList?: import('viem').AccessList;
1903
+ authorizationList?: import('viem').AuthorizationList;
1904
+ chain?: import('viem').Chain | null;
1905
+ dataSuffix?: `0x${string}`;
1906
+ gas?: bigint;
1907
+ gasPrice?: bigint;
1908
+ maxFeePerGas?: bigint;
1909
+ maxPriorityFeePerGas?: bigint;
1910
+ nonce?: number;
1911
+ value?: bigint;
1912
+ }): Promise<`0x${string}`>;
1913
+ /**
1914
+ * setExchangeRate
1915
+ * nonpayable
1916
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1917
+ */
1918
+ setExchangeRate(_exchangeRate: bigint, _typeDependantChangeParam: bigint, _exchangeRateMaturityDay: bigint, _interestRate: bigint, options?: {
1919
+ accessList?: import('viem').AccessList;
1920
+ authorizationList?: import('viem').AuthorizationList;
1921
+ chain?: import('viem').Chain | null;
1922
+ dataSuffix?: `0x${string}`;
1923
+ gas?: bigint;
1924
+ gasPrice?: bigint;
1925
+ maxFeePerGas?: bigint;
1926
+ maxPriorityFeePerGas?: bigint;
1927
+ nonce?: number;
1928
+ value?: bigint;
1929
+ }): Promise<`0x${string}`>;
1930
+ /**
1931
+ * setIndicativeAndCollateralRates
1932
+ * nonpayable
1933
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1934
+ */
1935
+ setIndicativeAndCollateralRates(_indicativeInterestRate: bigint, _collateralRate: bigint, options?: {
1936
+ accessList?: import('viem').AccessList;
1937
+ authorizationList?: import('viem').AuthorizationList;
1938
+ chain?: import('viem').Chain | null;
1939
+ dataSuffix?: `0x${string}`;
1940
+ gas?: bigint;
1941
+ gasPrice?: bigint;
1942
+ maxFeePerGas?: bigint;
1943
+ maxPriorityFeePerGas?: bigint;
1944
+ nonce?: number;
1945
+ value?: bigint;
1946
+ }): Promise<`0x${string}`>;
1947
+ /**
1948
+ * transfer
1949
+ * nonpayable
1950
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1951
+ */
1952
+ transfer(to: `0x${string}`, value: bigint, options?: {
1953
+ accessList?: import('viem').AccessList;
1954
+ authorizationList?: import('viem').AuthorizationList;
1955
+ chain?: import('viem').Chain | null;
1956
+ dataSuffix?: `0x${string}`;
1957
+ gas?: bigint;
1958
+ gasPrice?: bigint;
1959
+ maxFeePerGas?: bigint;
1960
+ maxPriorityFeePerGas?: bigint;
1961
+ nonce?: number;
1962
+ value?: bigint;
1963
+ }): Promise<`0x${string}`>;
1964
+ /**
1965
+ * transferFrom
1966
+ * nonpayable
1967
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1968
+ */
1969
+ transferFrom(from: `0x${string}`, to: `0x${string}`, value: bigint, options?: {
1970
+ accessList?: import('viem').AccessList;
1971
+ authorizationList?: import('viem').AuthorizationList;
1972
+ chain?: import('viem').Chain | null;
1973
+ dataSuffix?: `0x${string}`;
1974
+ gas?: bigint;
1975
+ gasPrice?: bigint;
1976
+ maxFeePerGas?: bigint;
1977
+ maxPriorityFeePerGas?: bigint;
1978
+ nonce?: number;
1979
+ value?: bigint;
1980
+ }): Promise<`0x${string}`>;
1981
+ /**
1982
+ * transferToTreasuryWallet
1983
+ * nonpayable
1984
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1985
+ */
1986
+ transferToTreasuryWallet(assets: bigint, options?: {
1987
+ accessList?: import('viem').AccessList;
1988
+ authorizationList?: import('viem').AuthorizationList;
1989
+ chain?: import('viem').Chain | null;
1990
+ dataSuffix?: `0x${string}`;
1991
+ gas?: bigint;
1992
+ gasPrice?: bigint;
1993
+ maxFeePerGas?: bigint;
1994
+ maxPriorityFeePerGas?: bigint;
1995
+ nonce?: number;
1996
+ value?: bigint;
1997
+ }): Promise<`0x${string}`>;
1998
+ /**
1999
+ * Simulate contract write operations (dry-run without sending transaction)
2000
+ *
2001
+ * @example
2002
+ * const result = await contract.simulate.transfer('0x...', 1000n);
2003
+ * console.log('Gas estimate:', result.request.gas);
2004
+ * console.log('Would succeed:', result.result);
2005
+ */
2006
+ get simulate(): {
2007
+ /**
2008
+ * Simulate addAdjustmentAmount
2009
+ * Returns gas estimate and result without sending transaction
2010
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2011
+ */
2012
+ addAdjustmentAmount(lender: `0x${string}`, debit: bigint, credit: bigint, options?: {
2013
+ accessList?: import("viem").AccessList;
2014
+ authorizationList?: import("viem").AuthorizationList;
2015
+ chain?: import("viem").Chain | null;
2016
+ dataSuffix?: `0x${string}`;
2017
+ gas?: bigint;
2018
+ gasPrice?: bigint;
2019
+ maxFeePerGas?: bigint;
2020
+ maxPriorityFeePerGas?: bigint;
2021
+ nonce?: number;
2022
+ value?: bigint;
2023
+ }): Promise<void>;
2024
+ /**
2025
+ * Simulate approve
2026
+ * Returns gas estimate and result without sending transaction
2027
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2028
+ */
2029
+ approve(spender: `0x${string}`, value: bigint, options?: {
2030
+ accessList?: import("viem").AccessList;
2031
+ authorizationList?: import("viem").AuthorizationList;
2032
+ chain?: import("viem").Chain | null;
2033
+ dataSuffix?: `0x${string}`;
2034
+ gas?: bigint;
2035
+ gasPrice?: bigint;
2036
+ maxFeePerGas?: bigint;
2037
+ maxPriorityFeePerGas?: bigint;
2038
+ nonce?: number;
2039
+ value?: bigint;
2040
+ }): Promise<boolean>;
2041
+ /**
2042
+ * Simulate changeRedemptionDestination
2043
+ * Returns gas estimate and result without sending transaction
2044
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2045
+ */
2046
+ changeRedemptionDestination(lender: `0x${string}`, uuid: `0x${string}`, fundsDestination: `0x${string}`, options?: {
2047
+ accessList?: import("viem").AccessList;
2048
+ authorizationList?: import("viem").AuthorizationList;
2049
+ chain?: import("viem").Chain | null;
2050
+ dataSuffix?: `0x${string}`;
2051
+ gas?: bigint;
2052
+ gasPrice?: bigint;
2053
+ maxFeePerGas?: bigint;
2054
+ maxPriorityFeePerGas?: bigint;
2055
+ nonce?: number;
2056
+ value?: bigint;
2057
+ }): Promise<void>;
2058
+ /**
2059
+ * Simulate deposit
2060
+ * Returns gas estimate and result without sending transaction
2061
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2062
+ */
2063
+ deposit(assets: bigint, lender: `0x${string}`, options?: {
2064
+ accessList?: import("viem").AccessList;
2065
+ authorizationList?: import("viem").AuthorizationList;
2066
+ chain?: import("viem").Chain | null;
2067
+ dataSuffix?: `0x${string}`;
2068
+ gas?: bigint;
2069
+ gasPrice?: bigint;
2070
+ maxFeePerGas?: bigint;
2071
+ maxPriorityFeePerGas?: bigint;
2072
+ nonce?: number;
2073
+ value?: bigint;
2074
+ }): Promise<bigint>;
2075
+ /**
2076
+ * Simulate depositFromTransfer
2077
+ * Returns gas estimate and result without sending transaction
2078
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2079
+ */
2080
+ depositFromTransfer(assets: bigint, lender: `0x${string}`, transferTxHash: `0x${string}`, options?: {
2081
+ accessList?: import("viem").AccessList;
2082
+ authorizationList?: import("viem").AuthorizationList;
2083
+ chain?: import("viem").Chain | null;
2084
+ dataSuffix?: `0x${string}`;
2085
+ gas?: bigint;
2086
+ gasPrice?: bigint;
2087
+ maxFeePerGas?: bigint;
2088
+ maxPriorityFeePerGas?: bigint;
2089
+ nonce?: number;
2090
+ value?: bigint;
2091
+ }): Promise<bigint>;
2092
+ /**
2093
+ * Simulate depositOffChain
2094
+ * Returns gas estimate and result without sending transaction
2095
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2096
+ */
2097
+ depositOffChain(assets: bigint, lender: `0x${string}`, transferTxHash: `0x${string}`, options?: {
2098
+ accessList?: import("viem").AccessList;
2099
+ authorizationList?: import("viem").AuthorizationList;
2100
+ chain?: import("viem").Chain | null;
2101
+ dataSuffix?: `0x${string}`;
2102
+ gas?: bigint;
2103
+ gasPrice?: bigint;
2104
+ maxFeePerGas?: bigint;
2105
+ maxPriorityFeePerGas?: bigint;
2106
+ nonce?: number;
2107
+ value?: bigint;
2108
+ }): Promise<bigint>;
2109
+ /**
2110
+ * Simulate initialize
2111
+ * Returns gas estimate and result without sending transaction
2112
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2113
+ */
2114
+ initialize(poolAddressList: LYTPoolAddressList, poolSettings: ILYTPoolConfigurableSettings, tokenName: string, tokenSymbol: string, options?: {
2115
+ accessList?: import("viem").AccessList;
2116
+ authorizationList?: import("viem").AuthorizationList;
2117
+ chain?: import("viem").Chain | null;
2118
+ dataSuffix?: `0x${string}`;
2119
+ gas?: bigint;
2120
+ gasPrice?: bigint;
2121
+ maxFeePerGas?: bigint;
2122
+ maxPriorityFeePerGas?: bigint;
2123
+ nonce?: number;
2124
+ value?: bigint;
2125
+ }): Promise<void>;
2126
+ /**
2127
+ * Simulate processRedemption
2128
+ * Returns gas estimate and result without sending transaction
2129
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2130
+ */
2131
+ processRedemption(lender: `0x${string}`, repayment: bigint, fees: bigint, uuid: `0x${string}`, options?: {
2132
+ accessList?: import("viem").AccessList;
2133
+ authorizationList?: import("viem").AuthorizationList;
2134
+ chain?: import("viem").Chain | null;
2135
+ dataSuffix?: `0x${string}`;
2136
+ gas?: bigint;
2137
+ gasPrice?: bigint;
2138
+ maxFeePerGas?: bigint;
2139
+ maxPriorityFeePerGas?: bigint;
2140
+ nonce?: number;
2141
+ value?: bigint;
2142
+ }): Promise<void>;
2143
+ /**
2144
+ * Simulate requestRedeem
2145
+ * Returns gas estimate and result without sending transaction
2146
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2147
+ */
2148
+ requestRedeem(shares: bigint, options?: {
2149
+ accessList?: import("viem").AccessList;
2150
+ authorizationList?: import("viem").AuthorizationList;
2151
+ chain?: import("viem").Chain | null;
2152
+ dataSuffix?: `0x${string}`;
2153
+ gas?: bigint;
2154
+ gasPrice?: bigint;
2155
+ maxFeePerGas?: bigint;
2156
+ maxPriorityFeePerGas?: bigint;
2157
+ nonce?: number;
2158
+ value?: bigint;
2159
+ }): Promise<bigint>;
2160
+ /**
2161
+ * Simulate setExchangeRate
2162
+ * Returns gas estimate and result without sending transaction
2163
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2164
+ */
2165
+ setExchangeRate(_exchangeRate: bigint, _typeDependantChangeParam: bigint, _exchangeRateMaturityDay: bigint, _interestRate: bigint, options?: {
2166
+ accessList?: import("viem").AccessList;
2167
+ authorizationList?: import("viem").AuthorizationList;
2168
+ chain?: import("viem").Chain | null;
2169
+ dataSuffix?: `0x${string}`;
2170
+ gas?: bigint;
2171
+ gasPrice?: bigint;
2172
+ maxFeePerGas?: bigint;
2173
+ maxPriorityFeePerGas?: bigint;
2174
+ nonce?: number;
2175
+ value?: bigint;
2176
+ }): Promise<void>;
2177
+ /**
2178
+ * Simulate setIndicativeAndCollateralRates
2179
+ * Returns gas estimate and result without sending transaction
2180
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2181
+ */
2182
+ setIndicativeAndCollateralRates(_indicativeInterestRate: bigint, _collateralRate: bigint, options?: {
2183
+ accessList?: import("viem").AccessList;
2184
+ authorizationList?: import("viem").AuthorizationList;
2185
+ chain?: import("viem").Chain | null;
2186
+ dataSuffix?: `0x${string}`;
2187
+ gas?: bigint;
2188
+ gasPrice?: bigint;
2189
+ maxFeePerGas?: bigint;
2190
+ maxPriorityFeePerGas?: bigint;
2191
+ nonce?: number;
2192
+ value?: bigint;
2193
+ }): Promise<void>;
2194
+ /**
2195
+ * Simulate transfer
2196
+ * Returns gas estimate and result without sending transaction
2197
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2198
+ */
2199
+ transfer(to: `0x${string}`, value: bigint, options?: {
2200
+ accessList?: import("viem").AccessList;
2201
+ authorizationList?: import("viem").AuthorizationList;
2202
+ chain?: import("viem").Chain | null;
2203
+ dataSuffix?: `0x${string}`;
2204
+ gas?: bigint;
2205
+ gasPrice?: bigint;
2206
+ maxFeePerGas?: bigint;
2207
+ maxPriorityFeePerGas?: bigint;
2208
+ nonce?: number;
2209
+ value?: bigint;
2210
+ }): Promise<boolean>;
2211
+ /**
2212
+ * Simulate transferFrom
2213
+ * Returns gas estimate and result without sending transaction
2214
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2215
+ */
2216
+ transferFrom(from: `0x${string}`, to: `0x${string}`, value: bigint, options?: {
2217
+ accessList?: import("viem").AccessList;
2218
+ authorizationList?: import("viem").AuthorizationList;
2219
+ chain?: import("viem").Chain | null;
2220
+ dataSuffix?: `0x${string}`;
2221
+ gas?: bigint;
2222
+ gasPrice?: bigint;
2223
+ maxFeePerGas?: bigint;
2224
+ maxPriorityFeePerGas?: bigint;
2225
+ nonce?: number;
2226
+ value?: bigint;
2227
+ }): Promise<boolean>;
2228
+ /**
2229
+ * Simulate transferToTreasuryWallet
2230
+ * Returns gas estimate and result without sending transaction
2231
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
2232
+ */
2233
+ transferToTreasuryWallet(assets: bigint, options?: {
2234
+ accessList?: import("viem").AccessList;
2235
+ authorizationList?: import("viem").AuthorizationList;
2236
+ chain?: import("viem").Chain | null;
2237
+ dataSuffix?: `0x${string}`;
2238
+ gas?: bigint;
2239
+ gasPrice?: bigint;
2240
+ maxFeePerGas?: bigint;
2241
+ maxPriorityFeePerGas?: bigint;
2242
+ nonce?: number;
2243
+ value?: bigint;
2244
+ }): Promise<void>;
2245
+ };
2246
+ /**
2247
+ * Watch contract events
2248
+ *
2249
+ * @example
2250
+ * // Watch all Transfer events
2251
+ * const unwatch = contract.watch.Transfer((event) => {
2252
+ * console.log('Transfer:', event);
2253
+ * });
2254
+ *
2255
+ * // Stop watching
2256
+ * unwatch();
2257
+ */
2258
+ get watch(): {
2259
+ /**
2260
+ * Watch AccountCredit events
2261
+ * @param callback Function to call when event is emitted
2262
+ * @param filter Optional filter for indexed parameters
2263
+ * @returns Unwatch function to stop listening
2264
+ */
2265
+ AccountCredit: (callback: (event: {
2266
+ lender: `0x${string}`;
2267
+ amount: bigint;
2268
+ shares: bigint;
2269
+ }) => void, filter?: {
2270
+ lender: `0x${string}`;
2271
+ }) => () => void;
2272
+ /**
2273
+ * Watch AccountDebit events
2274
+ * @param callback Function to call when event is emitted
2275
+ * @param filter Optional filter for indexed parameters
2276
+ * @returns Unwatch function to stop listening
2277
+ */
2278
+ AccountDebit: (callback: (event: {
2279
+ lender: `0x${string}`;
2280
+ amount: bigint;
2281
+ }) => void, filter?: {
2282
+ lender: `0x${string}`;
2283
+ }) => () => void;
2284
+ /**
2285
+ * Watch Approval events
2286
+ * @param callback Function to call when event is emitted
2287
+ * @param filter Optional filter for indexed parameters
2288
+ * @returns Unwatch function to stop listening
2289
+ */
2290
+ Approval: (callback: (event: {
2291
+ owner: `0x${string}`;
2292
+ spender: `0x${string}`;
2293
+ value: bigint;
2294
+ }) => void, filter?: {
2295
+ owner: `0x${string}`;
2296
+ spender: `0x${string}`;
2297
+ }) => () => void;
2298
+ /**
2299
+ * Watch Deposit events
2300
+ * @param callback Function to call when event is emitted
2301
+ * @param filter Optional filter for indexed parameters
2302
+ * @returns Unwatch function to stop listening
2303
+ */
2304
+ Deposit: (callback: (event: {
2305
+ sender: `0x${string}`;
2306
+ owner: `0x${string}`;
2307
+ assets: bigint;
2308
+ shares: bigint;
2309
+ }) => void, filter?: {
2310
+ sender: `0x${string}`;
2311
+ owner: `0x${string}`;
2312
+ }) => () => void;
2313
+ /**
2314
+ * Watch ExchangeRateSet events
2315
+ * @param callback Function to call when event is emitted
2316
+ * @param filter Optional filter for indexed parameters
2317
+ * @returns Unwatch function to stop listening
2318
+ */
2319
+ ExchangeRateSet: (callback: (event: {
2320
+ _exchangeRate: bigint;
2321
+ interestRate: bigint;
2322
+ typeDependantChangeParam: bigint;
2323
+ exchangeRateMaturityDay: bigint;
2324
+ }) => void) => () => void;
2325
+ /**
2326
+ * Watch IndicativeAndCollateralRatesSet events
2327
+ * @param callback Function to call when event is emitted
2328
+ * @param filter Optional filter for indexed parameters
2329
+ * @returns Unwatch function to stop listening
2330
+ */
2331
+ IndicativeAndCollateralRatesSet: (callback: (event: {
2332
+ _indicativeInterestRate: bigint;
2333
+ _collateralRate: bigint;
2334
+ }) => void) => () => void;
2335
+ /**
2336
+ * Watch Initialized events
2337
+ * @param callback Function to call when event is emitted
2338
+ * @param filter Optional filter for indexed parameters
2339
+ * @returns Unwatch function to stop listening
2340
+ */
2341
+ Initialized: (callback: (event: {
2342
+ version: bigint;
2343
+ }) => void) => () => void;
2344
+ /**
2345
+ * Watch PoolCreated events
2346
+ * @param callback Function to call when event is emitted
2347
+ * @param filter Optional filter for indexed parameters
2348
+ * @returns Unwatch function to stop listening
2349
+ */
2350
+ PoolCreated: (callback: (event: {}) => void) => () => void;
2351
+ /**
2352
+ * Watch PoolDeposit events
2353
+ * @param callback Function to call when event is emitted
2354
+ * @param filter Optional filter for indexed parameters
2355
+ * @returns Unwatch function to stop listening
2356
+ */
2357
+ PoolDeposit: (callback: (event: {
2358
+ lender: `0x${string}`;
2359
+ assets: bigint;
2360
+ shares: bigint;
2361
+ depositType: bigint;
2362
+ transferTxHash: `0x${string}`;
2363
+ }) => void, filter?: {
2364
+ lender: `0x${string}`;
2365
+ }) => () => void;
2366
+ /**
2367
+ * Watch RedeemDestinationChanged events
2368
+ * @param callback Function to call when event is emitted
2369
+ * @param filter Optional filter for indexed parameters
2370
+ * @returns Unwatch function to stop listening
2371
+ */
2372
+ RedeemDestinationChanged: (callback: (event: {
2373
+ lender: `0x${string}`;
2374
+ assets: bigint;
2375
+ shares: bigint;
2376
+ uuid: `0x${string}`;
2377
+ fundsDestination: `0x${string}`;
2378
+ }) => void, filter?: {
2379
+ lender: `0x${string}`;
2380
+ }) => () => void;
2381
+ /**
2382
+ * Watch RedeemRepay events
2383
+ * @param callback Function to call when event is emitted
2384
+ * @param filter Optional filter for indexed parameters
2385
+ * @returns Unwatch function to stop listening
2386
+ */
2387
+ RedeemRepay: (callback: (event: {
2388
+ lender: `0x${string}`;
2389
+ shares: bigint;
2390
+ assets: bigint;
2391
+ fees: bigint;
2392
+ uuid: `0x${string}`;
2393
+ expectedAssets: bigint;
2394
+ fundsDestination: `0x${string}`;
2395
+ }) => void, filter?: {
2396
+ lender: `0x${string}`;
2397
+ }) => () => void;
2398
+ /**
2399
+ * Watch RedeemRequested events
2400
+ * @param callback Function to call when event is emitted
2401
+ * @param filter Optional filter for indexed parameters
2402
+ * @returns Unwatch function to stop listening
2403
+ */
2404
+ RedeemRequested: (callback: (event: {
2405
+ lender: `0x${string}`;
2406
+ assets: bigint;
2407
+ shares: bigint;
2408
+ uuid: `0x${string}`;
2409
+ }) => void, filter?: {
2410
+ lender: `0x${string}`;
2411
+ }) => () => void;
2412
+ /**
2413
+ * Watch Transfer events
2414
+ * @param callback Function to call when event is emitted
2415
+ * @param filter Optional filter for indexed parameters
2416
+ * @returns Unwatch function to stop listening
2417
+ */
2418
+ Transfer: (callback: (event: {
2419
+ from: `0x${string}`;
2420
+ to: `0x${string}`;
2421
+ value: bigint;
2422
+ }) => void, filter?: {
2423
+ from: `0x${string}`;
2424
+ to: `0x${string}`;
2425
+ }) => () => void;
2426
+ /**
2427
+ * Watch TransferAssets events
2428
+ * @param callback Function to call when event is emitted
2429
+ * @param filter Optional filter for indexed parameters
2430
+ * @returns Unwatch function to stop listening
2431
+ */
2432
+ TransferAssets: (callback: (event: {
2433
+ fundsDestination: `0x${string}`;
2434
+ amount: bigint;
2435
+ }) => void, filter?: {
2436
+ fundsDestination: `0x${string}`;
2437
+ }) => () => void;
2438
+ /**
2439
+ * Watch Withdraw events
2440
+ * @param callback Function to call when event is emitted
2441
+ * @param filter Optional filter for indexed parameters
2442
+ * @returns Unwatch function to stop listening
2443
+ */
2444
+ Withdraw: (callback: (event: {
2445
+ sender: `0x${string}`;
2446
+ receiver: `0x${string}`;
2447
+ owner: `0x${string}`;
2448
+ assets: bigint;
2449
+ shares: bigint;
2450
+ }) => void, filter?: {
2451
+ sender: `0x${string}`;
2452
+ receiver: `0x${string}`;
2453
+ owner: `0x${string}`;
2454
+ }) => () => void;
2455
+ };
2456
+ }