@gearbox-protocol/sdk 3.0.0-prevfour.6 → 3.0.0-prevfour.7

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.
@@ -62,6 +62,8 @@ import {IPriceFeed} from "@gearbox-protocol/core-v2/contracts/interfaces/IPriceF
62
62
  import {ILPPriceFeed} from "@gearbox-protocol/oracles-v3/contracts/interfaces/ILPPriceFeed.sol";
63
63
  import {RedstonePriceFeed} from "@gearbox-protocol/oracles-v3/contracts/oracles/updatable/RedstonePriceFeed.sol";
64
64
  import {CompositePriceFeed} from "@gearbox-protocol/oracles-v3/contracts/oracles/CompositePriceFeed.sol";
65
+ // import {PendleTWAPPTPriceFeed} from "@gearbox-protocol/oracles-v3/contracts/oracles/pendle/PendleTWAPPTPriceFeed.sol";
66
+
65
67
 
66
68
  import {ICurveV1_2AssetsAdapter} from
67
69
  "@gearbox-protocol/integrations-v3/contracts/interfaces/curve/ICurveV1_2AssetsAdapter.sol";
@@ -74,6 +76,8 @@ import {ICurveV1_4AssetsAdapter} from
74
76
 
75
77
  import {IStakingRewardsAdapter} from
76
78
  "@gearbox-protocol/integrations-v3/contracts/interfaces/sky/IStakingRewardsAdapter.sol";
79
+
80
+
77
81
 
78
82
 
79
83
 
@@ -39,6 +39,11 @@ const NORMAL_TO_LAMA = {
39
39
  stkcvxcrvUSDTWBTCWETH: "3be97c90-d4a8-42b3-a0d0-2906ae4e9d27",
40
40
  stkcvxcrvUSDUSDC: "755fcec6-f4fd-4150-9184-60f099206694",
41
41
  stkcvxcrvUSDUSDT: "a3ffd3fe-b21c-44eb-94d5-22c80057a600",
42
+ PT_sUSDe_26DEC2024: "992d00f3-d43f-44fe-8b62-987e8610c9a8",
43
+ PT_ezETH_26DEC2024: "76953dd9-3132-49ad-ae88-b551c5b5c774",
44
+ PT_eETH_26DEC2024: "7bafc0e5-3789-4920-944f-d734d3ef0cef",
45
+ PT_LBTC_27MAR2025: "b1b3b3b4-1b3b-4b3b-8b3b-1b3b3b3b3b3b",
46
+ PT_eBTC_26DEC2024: "e093fa52-1f6a-4256-9e3e-a58490468c0e",
42
47
  },
43
48
  Optimism: { rETH: "d4b3c522-6127-4b89-bedf-83641cdcd2eb" },
44
49
  Arbitrum: {
@@ -1,7 +1,7 @@
1
1
  import { LPTokens, PartialRecord, SupportedToken } from "@gearbox-protocol/sdk-gov";
2
2
  import { Address } from "viem";
3
- type ExtraFarmTokens = Extract<SupportedToken, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "weETH" | "ezETH" | "sfrxETH" | "USDe" | "rsETH" | "rswETH" | "pufETH" | "pzETH" | "rstETH" | "steakLRT" | "amphrETH" | "LBTC" | "Re7LRT">;
4
- type ExtraTokensWithAPY = Extract<ExtraFarmTokens, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "sfrxETH" | "pzETH" | "ezETH" | "Re7LRT" | "rsETH" | "weETH" | "rswETH" | "rstETH" | "steakLRT" | "amphrETH" | "pufETH">;
3
+ type ExtraFarmTokens = Extract<SupportedToken, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "weETH" | "ezETH" | "sfrxETH" | "USDe" | "rsETH" | "rswETH" | "pufETH" | "pzETH" | "rstETH" | "steakLRT" | "amphrETH" | "LBTC" | "Re7LRT" | "PT_ezETH_26DEC2024" | "PT_eETH_26DEC2024" | "PT_sUSDe_26DEC2024" | "PT_eBTC_26DEC2024" | "PT_LBTC_27MAR2025" | "eBTC">;
4
+ type ExtraTokensWithAPY = Extract<ExtraFarmTokens, "STETH" | "rETH" | "osETH" | "cbETH" | "wstETH" | "sfrxETH" | "pzETH" | "ezETH" | "Re7LRT" | "rsETH" | "weETH" | "rswETH" | "rstETH" | "steakLRT" | "amphrETH" | "pufETH" | "PT_ezETH_26DEC2024" | "PT_eETH_26DEC2024" | "PT_sUSDe_26DEC2024" | "PT_eBTC_26DEC2024" | "PT_LBTC_27MAR2025">;
5
5
  type LRTAndLSTTokens = Exclude<ExtraFarmTokens, "USDe">;
6
6
  export declare const isExtraFarmToken: (t: unknown) => t is ExtraFarmTokens;
7
7
  export declare const isLRT_LSTToken: (t: unknown) => t is LRTAndLSTTokens;
@@ -13,4 +13,5 @@ export declare const isFarmToken: (t: unknown) => t is AllLPTokens;
13
13
  export * from "./curveAPY";
14
14
  export * from "./defiLamaAPY";
15
15
  export * from "./lidoAPY";
16
+ export * from "./skyAPY";
16
17
  export * from "./yearnAPY";
package/lib/apy/index.js CHANGED
@@ -35,6 +35,12 @@ const EXTRA_FARM_TOKENS = {
35
35
  amphrETH: true,
36
36
  LBTC: true,
37
37
  Re7LRT: true,
38
+ PT_ezETH_26DEC2024: true,
39
+ PT_eETH_26DEC2024: true,
40
+ PT_sUSDe_26DEC2024: true,
41
+ PT_eBTC_26DEC2024: true,
42
+ PT_LBTC_27MAR2025: true,
43
+ eBTC: true,
38
44
  };
39
45
  const isExtraFarmToken = (t) => {
40
46
  if (typeof t !== "string")
@@ -59,6 +65,11 @@ const EXTRA_TOKENS_WITH_APY = {
59
65
  steakLRT: true,
60
66
  amphrETH: true,
61
67
  pufETH: true,
68
+ PT_ezETH_26DEC2024: true,
69
+ PT_eETH_26DEC2024: true,
70
+ PT_sUSDe_26DEC2024: true,
71
+ PT_eBTC_26DEC2024: true,
72
+ PT_LBTC_27MAR2025: true,
62
73
  };
63
74
  const isExtraTokenWithAPY = (t) => {
64
75
  if (typeof t !== "string")
@@ -86,4 +97,5 @@ exports.isFarmToken = isFarmToken;
86
97
  __exportStar(require("./curveAPY"), exports);
87
98
  __exportStar(require("./defiLamaAPY"), exports);
88
99
  __exportStar(require("./lidoAPY"), exports);
100
+ __exportStar(require("./skyAPY"), exports);
89
101
  __exportStar(require("./yearnAPY"), exports);
@@ -0,0 +1,5 @@
1
+ import { PartialRecord, SupportedToken } from "@gearbox-protocol/sdk-gov";
2
+ type SkyTokens = Extract<SupportedToken, "sUSDS" | "stkUSDS">;
3
+ export type SkyAPYResult = PartialRecord<SkyTokens, number>;
4
+ export declare function getSkyAPY(): Promise<SkyAPYResult>;
5
+ export {};
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getSkyAPY = void 0;
7
+ const sdk_gov_1 = require("@gearbox-protocol/sdk-gov");
8
+ const axios_1 = __importDefault(require("axios"));
9
+ const getSavingsURL = () => `https://info-sky.blockanalitica.com/save/?format=json`;
10
+ const getFarmingURL = () => `https://info-sky.blockanalitica.com/farms/?format=json`;
11
+ async function getSkyAPY() {
12
+ try {
13
+ const [savings, farm] = await Promise.all([
14
+ axios_1.default.get(getSavingsURL()),
15
+ axios_1.default.get(getFarmingURL()),
16
+ ]);
17
+ const savingsRate = savings?.data?.ssr_rate || 0;
18
+ const farmRate = farm?.data?.sky_farm.apy || 0;
19
+ return {
20
+ sUSDS: numberToAPY(Number(savingsRate)),
21
+ stkUSDS: numberToAPY(Number(farmRate)),
22
+ };
23
+ }
24
+ catch (e) {
25
+ return {};
26
+ }
27
+ }
28
+ exports.getSkyAPY = getSkyAPY;
29
+ function numberToAPY(baseApy) {
30
+ return Math.round(baseApy * Number(sdk_gov_1.PERCENTAGE_FACTOR) * Number(sdk_gov_1.PERCENTAGE_DECIMALS));
31
+ }
@@ -22,7 +22,7 @@ async function getYearnAPY(network, currentTokens) {
22
22
  const { apr: apy } = data || {};
23
23
  const { netAPR } = apy || {};
24
24
  const netApy = netAPR || 0;
25
- const r = Math.round(netApy * Number(sdk_gov_1.PERCENTAGE_FACTOR) * Number(sdk_gov_1.PERCENTAGE_DECIMALS));
25
+ const r = numberToAPY(netApy);
26
26
  acc[address] = r;
27
27
  return acc;
28
28
  }, {});
@@ -33,3 +33,6 @@ async function getYearnAPY(network, currentTokens) {
33
33
  }
34
34
  }
35
35
  exports.getYearnAPY = getYearnAPY;
36
+ function numberToAPY(baseApy) {
37
+ return Math.round(baseApy * Number(sdk_gov_1.PERCENTAGE_FACTOR) * Number(sdk_gov_1.PERCENTAGE_DECIMALS));
38
+ }
@@ -7,6 +7,12 @@ const ALIASES = {
7
7
  dUSDC_eV3: "dUSDC.eV3",
8
8
  sdUSDC_eV3: "sdUSDC.eV3",
9
9
  sdWETHV3_OLD: "sdWETHV3 Old",
10
+ PT_rsETH_26SEP2024: "p.rsETH(26.09.24)",
11
+ PT_sUSDe_26DEC2024: "p.sUSDe(26.12.24)",
12
+ PT_eETH_26DEC2024: "p.eETH(26.12.24)",
13
+ PT_ezETH_26DEC2024: "p.ezETH(26.12.24)",
14
+ PT_eBTC_26DEC2024: "p.eBTC(26.12.24)",
15
+ PT_LBTC_27MAR2025: "p.LBTC(27.03.25)",
10
16
  };
11
17
  class TokenData {
12
18
  title;
@@ -0,0 +1,43 @@
1
+ export declare const iPendleMarketAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly inputs: readonly [];
4
+ readonly name: "expiry";
5
+ readonly outputs: readonly [{
6
+ readonly name: "";
7
+ readonly internalType: "uint256";
8
+ readonly type: "uint256";
9
+ }];
10
+ readonly stateMutability: "view";
11
+ }, {
12
+ readonly type: "function";
13
+ readonly inputs: readonly [{
14
+ readonly name: "secondsAgos";
15
+ readonly internalType: "uint32[]";
16
+ readonly type: "uint32[]";
17
+ }];
18
+ readonly name: "observe";
19
+ readonly outputs: readonly [{
20
+ readonly name: "";
21
+ readonly internalType: "uint216[]";
22
+ readonly type: "uint216[]";
23
+ }];
24
+ readonly stateMutability: "view";
25
+ }, {
26
+ readonly type: "function";
27
+ readonly inputs: readonly [];
28
+ readonly name: "readTokens";
29
+ readonly outputs: readonly [{
30
+ readonly name: "";
31
+ readonly internalType: "address";
32
+ readonly type: "address";
33
+ }, {
34
+ readonly name: "";
35
+ readonly internalType: "address";
36
+ readonly type: "address";
37
+ }, {
38
+ readonly name: "";
39
+ readonly internalType: "address";
40
+ readonly type: "address";
41
+ }];
42
+ readonly stateMutability: "view";
43
+ }];
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3
+ // IPendleMarket
4
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.iPendleMarketAbi = void 0;
7
+ exports.iPendleMarketAbi = [
8
+ {
9
+ type: "function",
10
+ inputs: [],
11
+ name: "expiry",
12
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
13
+ stateMutability: "view",
14
+ },
15
+ {
16
+ type: "function",
17
+ inputs: [
18
+ { name: "secondsAgos", internalType: "uint32[]", type: "uint32[]" },
19
+ ],
20
+ name: "observe",
21
+ outputs: [{ name: "", internalType: "uint216[]", type: "uint216[]" }],
22
+ stateMutability: "view",
23
+ },
24
+ {
25
+ type: "function",
26
+ inputs: [],
27
+ name: "readTokens",
28
+ outputs: [
29
+ { name: "", internalType: "address", type: "address" },
30
+ { name: "", internalType: "address", type: "address" },
31
+ { name: "", internalType: "address", type: "address" },
32
+ ],
33
+ stateMutability: "view",
34
+ },
35
+ ];
@@ -0,0 +1,11 @@
1
+ export declare const iPendleSyAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly inputs: readonly [];
4
+ readonly name: "exchangeRate";
5
+ readonly outputs: readonly [{
6
+ readonly name: "";
7
+ readonly internalType: "uint256";
8
+ readonly type: "uint256";
9
+ }];
10
+ readonly stateMutability: "view";
11
+ }];
@@ -0,0 +1,15 @@
1
+ "use strict";
2
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3
+ // IPendleSY
4
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.iPendleSyAbi = void 0;
7
+ exports.iPendleSyAbi = [
8
+ {
9
+ type: "function",
10
+ inputs: [],
11
+ name: "exchangeRate",
12
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
13
+ stateMutability: "view",
14
+ },
15
+ ];
@@ -0,0 +1,31 @@
1
+ export declare const iPendleYtAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly inputs: readonly [];
4
+ readonly name: "doCacheIndexSameBlock";
5
+ readonly outputs: readonly [{
6
+ readonly name: "";
7
+ readonly internalType: "bool";
8
+ readonly type: "bool";
9
+ }];
10
+ readonly stateMutability: "view";
11
+ }, {
12
+ readonly type: "function";
13
+ readonly inputs: readonly [];
14
+ readonly name: "pyIndexLastUpdatedBlock";
15
+ readonly outputs: readonly [{
16
+ readonly name: "";
17
+ readonly internalType: "uint256";
18
+ readonly type: "uint256";
19
+ }];
20
+ readonly stateMutability: "view";
21
+ }, {
22
+ readonly type: "function";
23
+ readonly inputs: readonly [];
24
+ readonly name: "pyIndexStored";
25
+ readonly outputs: readonly [{
26
+ readonly name: "";
27
+ readonly internalType: "uint256";
28
+ readonly type: "uint256";
29
+ }];
30
+ readonly stateMutability: "view";
31
+ }];
@@ -0,0 +1,29 @@
1
+ "use strict";
2
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3
+ // IPendleYT
4
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.iPendleYtAbi = void 0;
7
+ exports.iPendleYtAbi = [
8
+ {
9
+ type: "function",
10
+ inputs: [],
11
+ name: "doCacheIndexSameBlock",
12
+ outputs: [{ name: "", internalType: "bool", type: "bool" }],
13
+ stateMutability: "view",
14
+ },
15
+ {
16
+ type: "function",
17
+ inputs: [],
18
+ name: "pyIndexLastUpdatedBlock",
19
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
20
+ stateMutability: "view",
21
+ },
22
+ {
23
+ type: "function",
24
+ inputs: [],
25
+ name: "pyIndexStored",
26
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
27
+ stateMutability: "view",
28
+ },
29
+ ];
@@ -0,0 +1,201 @@
1
+ export declare const pendleTwapptPriceFeedAbi: readonly [{
2
+ readonly type: "constructor";
3
+ readonly inputs: readonly [{
4
+ readonly name: "_market";
5
+ readonly internalType: "address";
6
+ readonly type: "address";
7
+ }, {
8
+ readonly name: "_priceFeed";
9
+ readonly internalType: "address";
10
+ readonly type: "address";
11
+ }, {
12
+ readonly name: "_stalenessPeriod";
13
+ readonly internalType: "uint32";
14
+ readonly type: "uint32";
15
+ }, {
16
+ readonly name: "_twapWindow";
17
+ readonly internalType: "uint32";
18
+ readonly type: "uint32";
19
+ }];
20
+ readonly stateMutability: "nonpayable";
21
+ }, {
22
+ readonly type: "function";
23
+ readonly inputs: readonly [];
24
+ readonly name: "decimals";
25
+ readonly outputs: readonly [{
26
+ readonly name: "";
27
+ readonly internalType: "uint8";
28
+ readonly type: "uint8";
29
+ }];
30
+ readonly stateMutability: "view";
31
+ }, {
32
+ readonly type: "function";
33
+ readonly inputs: readonly [];
34
+ readonly name: "description";
35
+ readonly outputs: readonly [{
36
+ readonly name: "";
37
+ readonly internalType: "string";
38
+ readonly type: "string";
39
+ }];
40
+ readonly stateMutability: "view";
41
+ }, {
42
+ readonly type: "function";
43
+ readonly inputs: readonly [];
44
+ readonly name: "expiry";
45
+ readonly outputs: readonly [{
46
+ readonly name: "";
47
+ readonly internalType: "uint256";
48
+ readonly type: "uint256";
49
+ }];
50
+ readonly stateMutability: "view";
51
+ }, {
52
+ readonly type: "function";
53
+ readonly inputs: readonly [];
54
+ readonly name: "latestRoundData";
55
+ readonly outputs: readonly [{
56
+ readonly name: "";
57
+ readonly internalType: "uint80";
58
+ readonly type: "uint80";
59
+ }, {
60
+ readonly name: "";
61
+ readonly internalType: "int256";
62
+ readonly type: "int256";
63
+ }, {
64
+ readonly name: "";
65
+ readonly internalType: "uint256";
66
+ readonly type: "uint256";
67
+ }, {
68
+ readonly name: "";
69
+ readonly internalType: "uint256";
70
+ readonly type: "uint256";
71
+ }, {
72
+ readonly name: "";
73
+ readonly internalType: "uint80";
74
+ readonly type: "uint80";
75
+ }];
76
+ readonly stateMutability: "view";
77
+ }, {
78
+ readonly type: "function";
79
+ readonly inputs: readonly [];
80
+ readonly name: "market";
81
+ readonly outputs: readonly [{
82
+ readonly name: "";
83
+ readonly internalType: "address";
84
+ readonly type: "address";
85
+ }];
86
+ readonly stateMutability: "view";
87
+ }, {
88
+ readonly type: "function";
89
+ readonly inputs: readonly [];
90
+ readonly name: "priceFeed";
91
+ readonly outputs: readonly [{
92
+ readonly name: "";
93
+ readonly internalType: "address";
94
+ readonly type: "address";
95
+ }];
96
+ readonly stateMutability: "view";
97
+ }, {
98
+ readonly type: "function";
99
+ readonly inputs: readonly [];
100
+ readonly name: "priceFeedType";
101
+ readonly outputs: readonly [{
102
+ readonly name: "";
103
+ readonly internalType: "enum PriceFeedType";
104
+ readonly type: "uint8";
105
+ }];
106
+ readonly stateMutability: "view";
107
+ }, {
108
+ readonly type: "function";
109
+ readonly inputs: readonly [];
110
+ readonly name: "skipCheck";
111
+ readonly outputs: readonly [{
112
+ readonly name: "";
113
+ readonly internalType: "bool";
114
+ readonly type: "bool";
115
+ }];
116
+ readonly stateMutability: "view";
117
+ }, {
118
+ readonly type: "function";
119
+ readonly inputs: readonly [];
120
+ readonly name: "skipPriceCheck";
121
+ readonly outputs: readonly [{
122
+ readonly name: "";
123
+ readonly internalType: "bool";
124
+ readonly type: "bool";
125
+ }];
126
+ readonly stateMutability: "view";
127
+ }, {
128
+ readonly type: "function";
129
+ readonly inputs: readonly [];
130
+ readonly name: "stalenessPeriod";
131
+ readonly outputs: readonly [{
132
+ readonly name: "";
133
+ readonly internalType: "uint32";
134
+ readonly type: "uint32";
135
+ }];
136
+ readonly stateMutability: "view";
137
+ }, {
138
+ readonly type: "function";
139
+ readonly inputs: readonly [];
140
+ readonly name: "sy";
141
+ readonly outputs: readonly [{
142
+ readonly name: "";
143
+ readonly internalType: "address";
144
+ readonly type: "address";
145
+ }];
146
+ readonly stateMutability: "view";
147
+ }, {
148
+ readonly type: "function";
149
+ readonly inputs: readonly [];
150
+ readonly name: "twapWindow";
151
+ readonly outputs: readonly [{
152
+ readonly name: "";
153
+ readonly internalType: "uint32";
154
+ readonly type: "uint32";
155
+ }];
156
+ readonly stateMutability: "view";
157
+ }, {
158
+ readonly type: "function";
159
+ readonly inputs: readonly [];
160
+ readonly name: "version";
161
+ readonly outputs: readonly [{
162
+ readonly name: "";
163
+ readonly internalType: "uint256";
164
+ readonly type: "uint256";
165
+ }];
166
+ readonly stateMutability: "view";
167
+ }, {
168
+ readonly type: "function";
169
+ readonly inputs: readonly [];
170
+ readonly name: "yt";
171
+ readonly outputs: readonly [{
172
+ readonly name: "";
173
+ readonly internalType: "address";
174
+ readonly type: "address";
175
+ }];
176
+ readonly stateMutability: "view";
177
+ }, {
178
+ readonly type: "error";
179
+ readonly inputs: readonly [{
180
+ readonly name: "";
181
+ readonly internalType: "address";
182
+ readonly type: "address";
183
+ }];
184
+ readonly name: "AddressIsNotContractException";
185
+ }, {
186
+ readonly type: "error";
187
+ readonly inputs: readonly [];
188
+ readonly name: "IncorrectParameterException";
189
+ }, {
190
+ readonly type: "error";
191
+ readonly inputs: readonly [];
192
+ readonly name: "IncorrectPriceException";
193
+ }, {
194
+ readonly type: "error";
195
+ readonly inputs: readonly [];
196
+ readonly name: "IncorrectPriceFeedException";
197
+ }, {
198
+ readonly type: "error";
199
+ readonly inputs: readonly [];
200
+ readonly name: "StalePriceException";
201
+ }];
@@ -0,0 +1,131 @@
1
+ "use strict";
2
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
3
+ // PendleTWAPPTPriceFeed
4
+ //////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.pendleTwapptPriceFeedAbi = void 0;
7
+ exports.pendleTwapptPriceFeedAbi = [
8
+ {
9
+ type: "constructor",
10
+ inputs: [
11
+ { name: "_market", internalType: "address", type: "address" },
12
+ { name: "_priceFeed", internalType: "address", type: "address" },
13
+ { name: "_stalenessPeriod", internalType: "uint32", type: "uint32" },
14
+ { name: "_twapWindow", internalType: "uint32", type: "uint32" },
15
+ ],
16
+ stateMutability: "nonpayable",
17
+ },
18
+ {
19
+ type: "function",
20
+ inputs: [],
21
+ name: "decimals",
22
+ outputs: [{ name: "", internalType: "uint8", type: "uint8" }],
23
+ stateMutability: "view",
24
+ },
25
+ {
26
+ type: "function",
27
+ inputs: [],
28
+ name: "description",
29
+ outputs: [{ name: "", internalType: "string", type: "string" }],
30
+ stateMutability: "view",
31
+ },
32
+ {
33
+ type: "function",
34
+ inputs: [],
35
+ name: "expiry",
36
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
37
+ stateMutability: "view",
38
+ },
39
+ {
40
+ type: "function",
41
+ inputs: [],
42
+ name: "latestRoundData",
43
+ outputs: [
44
+ { name: "", internalType: "uint80", type: "uint80" },
45
+ { name: "", internalType: "int256", type: "int256" },
46
+ { name: "", internalType: "uint256", type: "uint256" },
47
+ { name: "", internalType: "uint256", type: "uint256" },
48
+ { name: "", internalType: "uint80", type: "uint80" },
49
+ ],
50
+ stateMutability: "view",
51
+ },
52
+ {
53
+ type: "function",
54
+ inputs: [],
55
+ name: "market",
56
+ outputs: [{ name: "", internalType: "address", type: "address" }],
57
+ stateMutability: "view",
58
+ },
59
+ {
60
+ type: "function",
61
+ inputs: [],
62
+ name: "priceFeed",
63
+ outputs: [{ name: "", internalType: "address", type: "address" }],
64
+ stateMutability: "view",
65
+ },
66
+ {
67
+ type: "function",
68
+ inputs: [],
69
+ name: "priceFeedType",
70
+ outputs: [{ name: "", internalType: "enum PriceFeedType", type: "uint8" }],
71
+ stateMutability: "view",
72
+ },
73
+ {
74
+ type: "function",
75
+ inputs: [],
76
+ name: "skipCheck",
77
+ outputs: [{ name: "", internalType: "bool", type: "bool" }],
78
+ stateMutability: "view",
79
+ },
80
+ {
81
+ type: "function",
82
+ inputs: [],
83
+ name: "skipPriceCheck",
84
+ outputs: [{ name: "", internalType: "bool", type: "bool" }],
85
+ stateMutability: "view",
86
+ },
87
+ {
88
+ type: "function",
89
+ inputs: [],
90
+ name: "stalenessPeriod",
91
+ outputs: [{ name: "", internalType: "uint32", type: "uint32" }],
92
+ stateMutability: "view",
93
+ },
94
+ {
95
+ type: "function",
96
+ inputs: [],
97
+ name: "sy",
98
+ outputs: [{ name: "", internalType: "address", type: "address" }],
99
+ stateMutability: "view",
100
+ },
101
+ {
102
+ type: "function",
103
+ inputs: [],
104
+ name: "twapWindow",
105
+ outputs: [{ name: "", internalType: "uint32", type: "uint32" }],
106
+ stateMutability: "view",
107
+ },
108
+ {
109
+ type: "function",
110
+ inputs: [],
111
+ name: "version",
112
+ outputs: [{ name: "", internalType: "uint256", type: "uint256" }],
113
+ stateMutability: "view",
114
+ },
115
+ {
116
+ type: "function",
117
+ inputs: [],
118
+ name: "yt",
119
+ outputs: [{ name: "", internalType: "address", type: "address" }],
120
+ stateMutability: "view",
121
+ },
122
+ {
123
+ type: "error",
124
+ inputs: [{ name: "", internalType: "address", type: "address" }],
125
+ name: "AddressIsNotContractException",
126
+ },
127
+ { type: "error", inputs: [], name: "IncorrectParameterException" },
128
+ { type: "error", inputs: [], name: "IncorrectPriceException" },
129
+ { type: "error", inputs: [], name: "IncorrectPriceFeedException" },
130
+ { type: "error", inputs: [], name: "StalePriceException" },
131
+ ];
@@ -34,6 +34,9 @@ export * from "./ILidoV1Adapter";
34
34
  export * from "./IMulticall3";
35
35
  export * from "./IOffchainOracle";
36
36
  export * from "./IPartialLiquidationBotV3";
37
+ export * from "./IPendleMarket";
38
+ export * from "./IPendleSY";
39
+ export * from "./IPendleYT";
37
40
  export * from "./IPoolV3";
38
41
  export * from "./IPriceFeed";
39
42
  export * from "./IPriceOracleBase";
@@ -48,5 +51,6 @@ export * from "./IwstETH";
48
51
  export * from "./IwstETHV1Adapter";
49
52
  export * from "./IYearnV2Adapter";
50
53
  export * from "./IZapper";
54
+ export * from "./PendleTWAPPTPriceFeed";
51
55
  export * from "./RedstonePriceFeed";
52
56
  export * from "./SignUpRepository";
@@ -50,6 +50,9 @@ __exportStar(require("./ILidoV1Adapter"), exports);
50
50
  __exportStar(require("./IMulticall3"), exports);
51
51
  __exportStar(require("./IOffchainOracle"), exports);
52
52
  __exportStar(require("./IPartialLiquidationBotV3"), exports);
53
+ __exportStar(require("./IPendleMarket"), exports);
54
+ __exportStar(require("./IPendleSY"), exports);
55
+ __exportStar(require("./IPendleYT"), exports);
53
56
  __exportStar(require("./IPoolV3"), exports);
54
57
  __exportStar(require("./IPriceFeed"), exports);
55
58
  __exportStar(require("./IPriceOracleBase"), exports);
@@ -64,5 +67,6 @@ __exportStar(require("./IwstETH"), exports);
64
67
  __exportStar(require("./IwstETHV1Adapter"), exports);
65
68
  __exportStar(require("./IYearnV2Adapter"), exports);
66
69
  __exportStar(require("./IZapper"), exports);
70
+ __exportStar(require("./PendleTWAPPTPriceFeed"), exports);
67
71
  __exportStar(require("./RedstonePriceFeed"), exports);
68
72
  __exportStar(require("./SignUpRepository"), exports);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@gearbox-protocol/sdk",
3
- "version": "3.0.0-prevfour.6",
3
+ "version": "3.0.0-prevfour.7",
4
4
  "description": "Gearbox SDK",
5
5
  "main": "./lib/index.js",
6
6
  "types": "./lib/index.d.ts",
@@ -29,7 +29,7 @@
29
29
  },
30
30
  "dependencies": {
31
31
  "@gearbox-protocol/bots-v3": "^1.5.1",
32
- "@gearbox-protocol/sdk-gov": "^2.25.2",
32
+ "@gearbox-protocol/sdk-gov": "^2.26.0",
33
33
  "@wagmi/cli": "^2.1.13",
34
34
  "axios": "^1.2.6",
35
35
  "decimal.js-light": "^2.5.1",
@@ -49,7 +49,7 @@
49
49
  "@gearbox-protocol/periphery-v3": "^1.6.1",
50
50
  "@gearbox-protocol/prettier-config": "^1.4.1",
51
51
  "@gearbox-protocol/router": "^1.5.5",
52
- "@gearbox-protocol/router-v3": "^1.36.1",
52
+ "@gearbox-protocol/router-v3": "^1.37.0",
53
53
  "@openzeppelin/contracts": "^4.9.3",
54
54
  "@redstone-finance/evm-connector": "^0.5.4",
55
55
  "@types/chai": "^4.3.3",