@pendle/core-v2 0.6.0 → 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -22,12 +22,127 @@ import type {
22
22
  OnEvent,
23
23
  } from "./common";
24
24
 
25
+ export type MarketStateStruct = {
26
+ totalPt: BigNumberish;
27
+ totalScy: BigNumberish;
28
+ totalLp: BigNumberish;
29
+ oracleRate: BigNumberish;
30
+ treasury: string;
31
+ scalarRoot: BigNumberish;
32
+ lnFeeRateRoot: BigNumberish;
33
+ rateOracleTimeWindow: BigNumberish;
34
+ expiry: BigNumberish;
35
+ reserveFeePercent: BigNumberish;
36
+ lastLnImpliedRate: BigNumberish;
37
+ lastTradeTime: BigNumberish;
38
+ };
39
+
40
+ export type MarketStateStructOutput = [
41
+ BigNumber,
42
+ BigNumber,
43
+ BigNumber,
44
+ BigNumber,
45
+ string,
46
+ BigNumber,
47
+ BigNumber,
48
+ BigNumber,
49
+ BigNumber,
50
+ BigNumber,
51
+ BigNumber,
52
+ BigNumber
53
+ ] & {
54
+ totalPt: BigNumber;
55
+ totalScy: BigNumber;
56
+ totalLp: BigNumber;
57
+ oracleRate: BigNumber;
58
+ treasury: string;
59
+ scalarRoot: BigNumber;
60
+ lnFeeRateRoot: BigNumber;
61
+ rateOracleTimeWindow: BigNumber;
62
+ expiry: BigNumber;
63
+ reserveFeePercent: BigNumber;
64
+ lastLnImpliedRate: BigNumber;
65
+ lastTradeTime: BigNumber;
66
+ };
67
+
68
+ export declare namespace IPRouterStatic {
69
+ export type RewardIndexStruct = { rewardToken: string; index: BigNumberish };
70
+
71
+ export type RewardIndexStructOutput = [string, BigNumber] & {
72
+ rewardToken: string;
73
+ index: BigNumber;
74
+ };
75
+
76
+ export type TokenAmountStruct = { token: string; amount: BigNumberish };
77
+
78
+ export type TokenAmountStructOutput = [string, BigNumber] & {
79
+ token: string;
80
+ amount: BigNumber;
81
+ };
82
+
83
+ export type UserMarketInfoStruct = {
84
+ market: string;
85
+ lpBalance: BigNumberish;
86
+ ptBalance: IPRouterStatic.TokenAmountStruct;
87
+ scyBalance: IPRouterStatic.TokenAmountStruct;
88
+ assetBalance: IPRouterStatic.TokenAmountStruct;
89
+ };
90
+
91
+ export type UserMarketInfoStructOutput = [
92
+ string,
93
+ BigNumber,
94
+ IPRouterStatic.TokenAmountStructOutput,
95
+ IPRouterStatic.TokenAmountStructOutput,
96
+ IPRouterStatic.TokenAmountStructOutput
97
+ ] & {
98
+ market: string;
99
+ lpBalance: BigNumber;
100
+ ptBalance: IPRouterStatic.TokenAmountStructOutput;
101
+ scyBalance: IPRouterStatic.TokenAmountStructOutput;
102
+ assetBalance: IPRouterStatic.TokenAmountStructOutput;
103
+ };
104
+
105
+ export type UserPYInfoStruct = {
106
+ yt: string;
107
+ pt: string;
108
+ ytBalance: BigNumberish;
109
+ ptBalance: BigNumberish;
110
+ unclaimedInterest: IPRouterStatic.TokenAmountStruct;
111
+ unclaimedRewards: IPRouterStatic.TokenAmountStruct[];
112
+ };
113
+
114
+ export type UserPYInfoStructOutput = [
115
+ string,
116
+ string,
117
+ BigNumber,
118
+ BigNumber,
119
+ IPRouterStatic.TokenAmountStructOutput,
120
+ IPRouterStatic.TokenAmountStructOutput[]
121
+ ] & {
122
+ yt: string;
123
+ pt: string;
124
+ ytBalance: BigNumber;
125
+ ptBalance: BigNumber;
126
+ unclaimedInterest: IPRouterStatic.TokenAmountStructOutput;
127
+ unclaimedRewards: IPRouterStatic.TokenAmountStructOutput[];
128
+ };
129
+ }
130
+
25
131
  export interface IPRouterStaticInterface extends utils.Interface {
26
132
  contractName: "IPRouterStatic";
27
133
  functions: {
28
134
  "addLiquidityStatic(address,uint256,uint256)": FunctionFragment;
135
+ "getMarketInfo(address)": FunctionFragment;
136
+ "getPY(address)": FunctionFragment;
137
+ "getPYInfo(address)": FunctionFragment;
29
138
  "getPendleTokenType(address)": FunctionFragment;
30
139
  "getPtImpliedYield(address)": FunctionFragment;
140
+ "getUserMarketInfo(address,address)": FunctionFragment;
141
+ "getUserMarketPositions(address,address[])": FunctionFragment;
142
+ "getUserPYInfo(address,address)": FunctionFragment;
143
+ "getUserPYPositionsByPYs(address,address[])": FunctionFragment;
144
+ "getUserSCYInfo(address,address)": FunctionFragment;
145
+ "hasPYPosition((address,address,uint256,uint256,(address,uint256),(address,uint256)[]))": FunctionFragment;
31
146
  "removeLiquidityStatic(address,uint256)": FunctionFragment;
32
147
  "scyIndex(address)": FunctionFragment;
33
148
  "swapPtForScyStatic(address,uint256)": FunctionFragment;
@@ -38,6 +153,12 @@ export interface IPRouterStaticInterface extends utils.Interface {
38
153
  functionFragment: "addLiquidityStatic",
39
154
  values: [string, BigNumberish, BigNumberish]
40
155
  ): string;
156
+ encodeFunctionData(
157
+ functionFragment: "getMarketInfo",
158
+ values: [string]
159
+ ): string;
160
+ encodeFunctionData(functionFragment: "getPY", values: [string]): string;
161
+ encodeFunctionData(functionFragment: "getPYInfo", values: [string]): string;
41
162
  encodeFunctionData(
42
163
  functionFragment: "getPendleTokenType",
43
164
  values: [string]
@@ -46,6 +167,30 @@ export interface IPRouterStaticInterface extends utils.Interface {
46
167
  functionFragment: "getPtImpliedYield",
47
168
  values: [string]
48
169
  ): string;
170
+ encodeFunctionData(
171
+ functionFragment: "getUserMarketInfo",
172
+ values: [string, string]
173
+ ): string;
174
+ encodeFunctionData(
175
+ functionFragment: "getUserMarketPositions",
176
+ values: [string, string[]]
177
+ ): string;
178
+ encodeFunctionData(
179
+ functionFragment: "getUserPYInfo",
180
+ values: [string, string]
181
+ ): string;
182
+ encodeFunctionData(
183
+ functionFragment: "getUserPYPositionsByPYs",
184
+ values: [string, string[]]
185
+ ): string;
186
+ encodeFunctionData(
187
+ functionFragment: "getUserSCYInfo",
188
+ values: [string, string]
189
+ ): string;
190
+ encodeFunctionData(
191
+ functionFragment: "hasPYPosition",
192
+ values: [IPRouterStatic.UserPYInfoStruct]
193
+ ): string;
49
194
  encodeFunctionData(
50
195
  functionFragment: "removeLiquidityStatic",
51
196
  values: [string, BigNumberish]
@@ -64,6 +209,12 @@ export interface IPRouterStaticInterface extends utils.Interface {
64
209
  functionFragment: "addLiquidityStatic",
65
210
  data: BytesLike
66
211
  ): Result;
212
+ decodeFunctionResult(
213
+ functionFragment: "getMarketInfo",
214
+ data: BytesLike
215
+ ): Result;
216
+ decodeFunctionResult(functionFragment: "getPY", data: BytesLike): Result;
217
+ decodeFunctionResult(functionFragment: "getPYInfo", data: BytesLike): Result;
67
218
  decodeFunctionResult(
68
219
  functionFragment: "getPendleTokenType",
69
220
  data: BytesLike
@@ -72,6 +223,30 @@ export interface IPRouterStaticInterface extends utils.Interface {
72
223
  functionFragment: "getPtImpliedYield",
73
224
  data: BytesLike
74
225
  ): Result;
226
+ decodeFunctionResult(
227
+ functionFragment: "getUserMarketInfo",
228
+ data: BytesLike
229
+ ): Result;
230
+ decodeFunctionResult(
231
+ functionFragment: "getUserMarketPositions",
232
+ data: BytesLike
233
+ ): Result;
234
+ decodeFunctionResult(
235
+ functionFragment: "getUserPYInfo",
236
+ data: BytesLike
237
+ ): Result;
238
+ decodeFunctionResult(
239
+ functionFragment: "getUserPYPositionsByPYs",
240
+ data: BytesLike
241
+ ): Result;
242
+ decodeFunctionResult(
243
+ functionFragment: "getUserSCYInfo",
244
+ data: BytesLike
245
+ ): Result;
246
+ decodeFunctionResult(
247
+ functionFragment: "hasPYPosition",
248
+ data: BytesLike
249
+ ): Result;
75
250
  decodeFunctionResult(
76
251
  functionFragment: "removeLiquidityStatic",
77
252
  data: BytesLike
@@ -124,6 +299,29 @@ export interface IPRouterStatic extends BaseContract {
124
299
  overrides?: Overrides & { from?: string | Promise<string> }
125
300
  ): Promise<ContractTransaction>;
126
301
 
302
+ getMarketInfo(
303
+ market: string,
304
+ overrides?: CallOverrides
305
+ ): Promise<
306
+ [string, string, MarketStateStructOutput, BigNumber, BigNumber] & {
307
+ pt: string;
308
+ scy: string;
309
+ state: MarketStateStructOutput;
310
+ impliedYield: BigNumber;
311
+ exchangeRate: BigNumber;
312
+ }
313
+ >;
314
+
315
+ getPY(
316
+ py: string,
317
+ overrides?: CallOverrides
318
+ ): Promise<[string, string] & { yt: string; pt: string }>;
319
+
320
+ getPYInfo(
321
+ py: string,
322
+ overrides?: Overrides & { from?: string | Promise<string> }
323
+ ): Promise<ContractTransaction>;
324
+
127
325
  getPendleTokenType(
128
326
  token: string,
129
327
  overrides?: CallOverrides
@@ -140,6 +338,62 @@ export interface IPRouterStatic extends BaseContract {
140
338
  overrides?: CallOverrides
141
339
  ): Promise<[BigNumber]>;
142
340
 
341
+ getUserMarketInfo(
342
+ market: string,
343
+ user: string,
344
+ overrides?: CallOverrides
345
+ ): Promise<
346
+ [IPRouterStatic.UserMarketInfoStructOutput] & {
347
+ userMarketInfo: IPRouterStatic.UserMarketInfoStructOutput;
348
+ }
349
+ >;
350
+
351
+ getUserMarketPositions(
352
+ user: string,
353
+ markets: string[],
354
+ overrides?: CallOverrides
355
+ ): Promise<
356
+ [IPRouterStatic.UserMarketInfoStructOutput[]] & {
357
+ userMarketPositions: IPRouterStatic.UserMarketInfoStructOutput[];
358
+ }
359
+ >;
360
+
361
+ getUserPYInfo(
362
+ py: string,
363
+ user: string,
364
+ overrides?: CallOverrides
365
+ ): Promise<
366
+ [IPRouterStatic.UserPYInfoStructOutput] & {
367
+ userPYInfo: IPRouterStatic.UserPYInfoStructOutput;
368
+ }
369
+ >;
370
+
371
+ getUserPYPositionsByPYs(
372
+ user: string,
373
+ pys: string[],
374
+ overrides?: CallOverrides
375
+ ): Promise<
376
+ [IPRouterStatic.UserPYInfoStructOutput[]] & {
377
+ userPYPositions: IPRouterStatic.UserPYInfoStructOutput[];
378
+ }
379
+ >;
380
+
381
+ getUserSCYInfo(
382
+ scy: string,
383
+ user: string,
384
+ overrides?: CallOverrides
385
+ ): Promise<
386
+ [BigNumber, IPRouterStatic.TokenAmountStructOutput[]] & {
387
+ balance: BigNumber;
388
+ rewards: IPRouterStatic.TokenAmountStructOutput[];
389
+ }
390
+ >;
391
+
392
+ hasPYPosition(
393
+ userPYInfo: IPRouterStatic.UserPYInfoStruct,
394
+ overrides?: CallOverrides
395
+ ): Promise<[boolean] & { hasPosition: boolean }>;
396
+
143
397
  removeLiquidityStatic(
144
398
  market: string,
145
399
  lpToRemove: BigNumberish,
@@ -173,6 +427,29 @@ export interface IPRouterStatic extends BaseContract {
173
427
  overrides?: Overrides & { from?: string | Promise<string> }
174
428
  ): Promise<ContractTransaction>;
175
429
 
430
+ getMarketInfo(
431
+ market: string,
432
+ overrides?: CallOverrides
433
+ ): Promise<
434
+ [string, string, MarketStateStructOutput, BigNumber, BigNumber] & {
435
+ pt: string;
436
+ scy: string;
437
+ state: MarketStateStructOutput;
438
+ impliedYield: BigNumber;
439
+ exchangeRate: BigNumber;
440
+ }
441
+ >;
442
+
443
+ getPY(
444
+ py: string,
445
+ overrides?: CallOverrides
446
+ ): Promise<[string, string] & { yt: string; pt: string }>;
447
+
448
+ getPYInfo(
449
+ py: string,
450
+ overrides?: Overrides & { from?: string | Promise<string> }
451
+ ): Promise<ContractTransaction>;
452
+
176
453
  getPendleTokenType(
177
454
  token: string,
178
455
  overrides?: CallOverrides
@@ -189,6 +466,46 @@ export interface IPRouterStatic extends BaseContract {
189
466
  overrides?: CallOverrides
190
467
  ): Promise<BigNumber>;
191
468
 
469
+ getUserMarketInfo(
470
+ market: string,
471
+ user: string,
472
+ overrides?: CallOverrides
473
+ ): Promise<IPRouterStatic.UserMarketInfoStructOutput>;
474
+
475
+ getUserMarketPositions(
476
+ user: string,
477
+ markets: string[],
478
+ overrides?: CallOverrides
479
+ ): Promise<IPRouterStatic.UserMarketInfoStructOutput[]>;
480
+
481
+ getUserPYInfo(
482
+ py: string,
483
+ user: string,
484
+ overrides?: CallOverrides
485
+ ): Promise<IPRouterStatic.UserPYInfoStructOutput>;
486
+
487
+ getUserPYPositionsByPYs(
488
+ user: string,
489
+ pys: string[],
490
+ overrides?: CallOverrides
491
+ ): Promise<IPRouterStatic.UserPYInfoStructOutput[]>;
492
+
493
+ getUserSCYInfo(
494
+ scy: string,
495
+ user: string,
496
+ overrides?: CallOverrides
497
+ ): Promise<
498
+ [BigNumber, IPRouterStatic.TokenAmountStructOutput[]] & {
499
+ balance: BigNumber;
500
+ rewards: IPRouterStatic.TokenAmountStructOutput[];
501
+ }
502
+ >;
503
+
504
+ hasPYPosition(
505
+ userPYInfo: IPRouterStatic.UserPYInfoStruct,
506
+ overrides?: CallOverrides
507
+ ): Promise<boolean>;
508
+
192
509
  removeLiquidityStatic(
193
510
  market: string,
194
511
  lpToRemove: BigNumberish,
@@ -228,6 +545,35 @@ export interface IPRouterStatic extends BaseContract {
228
545
  }
229
546
  >;
230
547
 
548
+ getMarketInfo(
549
+ market: string,
550
+ overrides?: CallOverrides
551
+ ): Promise<
552
+ [string, string, MarketStateStructOutput, BigNumber, BigNumber] & {
553
+ pt: string;
554
+ scy: string;
555
+ state: MarketStateStructOutput;
556
+ impliedYield: BigNumber;
557
+ exchangeRate: BigNumber;
558
+ }
559
+ >;
560
+
561
+ getPY(
562
+ py: string,
563
+ overrides?: CallOverrides
564
+ ): Promise<[string, string] & { yt: string; pt: string }>;
565
+
566
+ getPYInfo(
567
+ py: string,
568
+ overrides?: CallOverrides
569
+ ): Promise<
570
+ [BigNumber, BigNumber, IPRouterStatic.RewardIndexStructOutput[]] & {
571
+ exchangeRate: BigNumber;
572
+ totalSupply: BigNumber;
573
+ rewardIndexes: IPRouterStatic.RewardIndexStructOutput[];
574
+ }
575
+ >;
576
+
231
577
  getPendleTokenType(
232
578
  token: string,
233
579
  overrides?: CallOverrides
@@ -244,6 +590,46 @@ export interface IPRouterStatic extends BaseContract {
244
590
  overrides?: CallOverrides
245
591
  ): Promise<BigNumber>;
246
592
 
593
+ getUserMarketInfo(
594
+ market: string,
595
+ user: string,
596
+ overrides?: CallOverrides
597
+ ): Promise<IPRouterStatic.UserMarketInfoStructOutput>;
598
+
599
+ getUserMarketPositions(
600
+ user: string,
601
+ markets: string[],
602
+ overrides?: CallOverrides
603
+ ): Promise<IPRouterStatic.UserMarketInfoStructOutput[]>;
604
+
605
+ getUserPYInfo(
606
+ py: string,
607
+ user: string,
608
+ overrides?: CallOverrides
609
+ ): Promise<IPRouterStatic.UserPYInfoStructOutput>;
610
+
611
+ getUserPYPositionsByPYs(
612
+ user: string,
613
+ pys: string[],
614
+ overrides?: CallOverrides
615
+ ): Promise<IPRouterStatic.UserPYInfoStructOutput[]>;
616
+
617
+ getUserSCYInfo(
618
+ scy: string,
619
+ user: string,
620
+ overrides?: CallOverrides
621
+ ): Promise<
622
+ [BigNumber, IPRouterStatic.TokenAmountStructOutput[]] & {
623
+ balance: BigNumber;
624
+ rewards: IPRouterStatic.TokenAmountStructOutput[];
625
+ }
626
+ >;
627
+
628
+ hasPYPosition(
629
+ userPYInfo: IPRouterStatic.UserPYInfoStruct,
630
+ overrides?: CallOverrides
631
+ ): Promise<boolean>;
632
+
247
633
  removeLiquidityStatic(
248
634
  market: string,
249
635
  lpToRemove: BigNumberish,
@@ -281,6 +667,18 @@ export interface IPRouterStatic extends BaseContract {
281
667
  overrides?: Overrides & { from?: string | Promise<string> }
282
668
  ): Promise<BigNumber>;
283
669
 
670
+ getMarketInfo(
671
+ market: string,
672
+ overrides?: CallOverrides
673
+ ): Promise<BigNumber>;
674
+
675
+ getPY(py: string, overrides?: CallOverrides): Promise<BigNumber>;
676
+
677
+ getPYInfo(
678
+ py: string,
679
+ overrides?: Overrides & { from?: string | Promise<string> }
680
+ ): Promise<BigNumber>;
681
+
284
682
  getPendleTokenType(
285
683
  token: string,
286
684
  overrides?: CallOverrides
@@ -291,6 +689,41 @@ export interface IPRouterStatic extends BaseContract {
291
689
  overrides?: CallOverrides
292
690
  ): Promise<BigNumber>;
293
691
 
692
+ getUserMarketInfo(
693
+ market: string,
694
+ user: string,
695
+ overrides?: CallOverrides
696
+ ): Promise<BigNumber>;
697
+
698
+ getUserMarketPositions(
699
+ user: string,
700
+ markets: string[],
701
+ overrides?: CallOverrides
702
+ ): Promise<BigNumber>;
703
+
704
+ getUserPYInfo(
705
+ py: string,
706
+ user: string,
707
+ overrides?: CallOverrides
708
+ ): Promise<BigNumber>;
709
+
710
+ getUserPYPositionsByPYs(
711
+ user: string,
712
+ pys: string[],
713
+ overrides?: CallOverrides
714
+ ): Promise<BigNumber>;
715
+
716
+ getUserSCYInfo(
717
+ scy: string,
718
+ user: string,
719
+ overrides?: CallOverrides
720
+ ): Promise<BigNumber>;
721
+
722
+ hasPYPosition(
723
+ userPYInfo: IPRouterStatic.UserPYInfoStruct,
724
+ overrides?: CallOverrides
725
+ ): Promise<BigNumber>;
726
+
294
727
  removeLiquidityStatic(
295
728
  market: string,
296
729
  lpToRemove: BigNumberish,
@@ -323,6 +756,18 @@ export interface IPRouterStatic extends BaseContract {
323
756
  overrides?: Overrides & { from?: string | Promise<string> }
324
757
  ): Promise<PopulatedTransaction>;
325
758
 
759
+ getMarketInfo(
760
+ market: string,
761
+ overrides?: CallOverrides
762
+ ): Promise<PopulatedTransaction>;
763
+
764
+ getPY(py: string, overrides?: CallOverrides): Promise<PopulatedTransaction>;
765
+
766
+ getPYInfo(
767
+ py: string,
768
+ overrides?: Overrides & { from?: string | Promise<string> }
769
+ ): Promise<PopulatedTransaction>;
770
+
326
771
  getPendleTokenType(
327
772
  token: string,
328
773
  overrides?: CallOverrides
@@ -333,6 +778,41 @@ export interface IPRouterStatic extends BaseContract {
333
778
  overrides?: CallOverrides
334
779
  ): Promise<PopulatedTransaction>;
335
780
 
781
+ getUserMarketInfo(
782
+ market: string,
783
+ user: string,
784
+ overrides?: CallOverrides
785
+ ): Promise<PopulatedTransaction>;
786
+
787
+ getUserMarketPositions(
788
+ user: string,
789
+ markets: string[],
790
+ overrides?: CallOverrides
791
+ ): Promise<PopulatedTransaction>;
792
+
793
+ getUserPYInfo(
794
+ py: string,
795
+ user: string,
796
+ overrides?: CallOverrides
797
+ ): Promise<PopulatedTransaction>;
798
+
799
+ getUserPYPositionsByPYs(
800
+ user: string,
801
+ pys: string[],
802
+ overrides?: CallOverrides
803
+ ): Promise<PopulatedTransaction>;
804
+
805
+ getUserSCYInfo(
806
+ scy: string,
807
+ user: string,
808
+ overrides?: CallOverrides
809
+ ): Promise<PopulatedTransaction>;
810
+
811
+ hasPYPosition(
812
+ userPYInfo: IPRouterStatic.UserPYInfoStruct,
813
+ overrides?: CallOverrides
814
+ ): Promise<PopulatedTransaction>;
815
+
336
816
  removeLiquidityStatic(
337
817
  market: string,
338
818
  lpToRemove: BigNumberish,