@defisaver/positions-sdk 2.1.41 → 2.1.43-aave-v4-dev-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (145) hide show
  1. package/.mocharc.json +4 -4
  2. package/.nvmrc +1 -1
  3. package/README.md +64 -64
  4. package/cjs/aaveV4/index.d.ts +7 -0
  5. package/cjs/aaveV4/index.js +99 -0
  6. package/cjs/config/contracts.d.ts +1069 -0
  7. package/cjs/config/contracts.js +9 -0
  8. package/cjs/contracts.d.ts +18265 -0
  9. package/cjs/contracts.js +2 -1
  10. package/cjs/helpers/morphoBlueHelpers/index.js +66 -66
  11. package/cjs/index.d.ts +2 -1
  12. package/cjs/index.js +3 -1
  13. package/cjs/markets/aaveV4/index.d.ts +6 -0
  14. package/cjs/markets/aaveV4/index.js +20 -0
  15. package/cjs/markets/index.d.ts +1 -0
  16. package/cjs/markets/index.js +3 -1
  17. package/cjs/savings/morphoVaults/index.js +17 -17
  18. package/cjs/savings/morphoVaults/options.js +2 -2
  19. package/cjs/types/aaveV4.d.ts +73 -0
  20. package/cjs/types/aaveV4.js +11 -0
  21. package/cjs/types/index.d.ts +1 -0
  22. package/cjs/types/index.js +1 -0
  23. package/esm/aaveV4/index.d.ts +7 -0
  24. package/esm/aaveV4/index.js +90 -0
  25. package/esm/config/contracts.d.ts +1069 -0
  26. package/esm/config/contracts.js +8 -0
  27. package/esm/contracts.d.ts +18265 -0
  28. package/esm/contracts.js +1 -0
  29. package/esm/helpers/morphoBlueHelpers/index.js +66 -66
  30. package/esm/index.d.ts +2 -1
  31. package/esm/index.js +2 -1
  32. package/esm/markets/aaveV4/index.d.ts +6 -0
  33. package/esm/markets/aaveV4/index.js +15 -0
  34. package/esm/markets/index.d.ts +1 -0
  35. package/esm/markets/index.js +1 -0
  36. package/esm/savings/morphoVaults/index.js +17 -17
  37. package/esm/savings/morphoVaults/options.js +2 -2
  38. package/esm/types/aaveV4.d.ts +73 -0
  39. package/esm/types/aaveV4.js +8 -0
  40. package/esm/types/index.d.ts +1 -0
  41. package/esm/types/index.js +1 -0
  42. package/package.json +48 -48
  43. package/src/aaveV2/index.ts +240 -240
  44. package/src/aaveV3/index.ts +625 -625
  45. package/src/aaveV3/merit.ts +97 -97
  46. package/src/aaveV3/merkl.ts +74 -74
  47. package/src/aaveV4/index.ts +90 -0
  48. package/src/claiming/aaveV3.ts +154 -154
  49. package/src/claiming/compV3.ts +22 -22
  50. package/src/claiming/ethena.ts +61 -61
  51. package/src/claiming/index.ts +12 -12
  52. package/src/claiming/king.ts +66 -66
  53. package/src/claiming/morphoBlue.ts +118 -118
  54. package/src/claiming/spark.ts +225 -225
  55. package/src/compoundV2/index.ts +244 -244
  56. package/src/compoundV3/index.ts +274 -274
  57. package/src/config/contracts.ts +1303 -1295
  58. package/src/constants/index.ts +10 -10
  59. package/src/contracts.ts +174 -172
  60. package/src/curveUsd/index.ts +254 -254
  61. package/src/eulerV2/index.ts +324 -324
  62. package/src/exchange/index.ts +25 -25
  63. package/src/fluid/index.ts +1800 -1800
  64. package/src/helpers/aaveHelpers/index.ts +187 -187
  65. package/src/helpers/compoundHelpers/index.ts +283 -283
  66. package/src/helpers/curveUsdHelpers/index.ts +40 -40
  67. package/src/helpers/eulerHelpers/index.ts +222 -222
  68. package/src/helpers/fluidHelpers/index.ts +326 -326
  69. package/src/helpers/index.ts +10 -10
  70. package/src/helpers/liquityV2Helpers/index.ts +82 -82
  71. package/src/helpers/llamaLendHelpers/index.ts +53 -53
  72. package/src/helpers/makerHelpers/index.ts +52 -52
  73. package/src/helpers/morphoBlueHelpers/index.ts +396 -396
  74. package/src/helpers/sparkHelpers/index.ts +158 -158
  75. package/src/index.ts +51 -49
  76. package/src/liquity/index.ts +159 -159
  77. package/src/liquityV2/index.ts +703 -703
  78. package/src/llamaLend/index.ts +305 -305
  79. package/src/maker/index.ts +223 -223
  80. package/src/markets/aave/index.ts +118 -118
  81. package/src/markets/aave/marketAssets.ts +54 -54
  82. package/src/markets/aaveV4/index.ts +17 -0
  83. package/src/markets/compound/index.ts +243 -243
  84. package/src/markets/compound/marketsAssets.ts +97 -97
  85. package/src/markets/curveUsd/index.ts +69 -69
  86. package/src/markets/euler/index.ts +26 -26
  87. package/src/markets/fluid/index.ts +2900 -2900
  88. package/src/markets/index.ts +26 -25
  89. package/src/markets/liquityV2/index.ts +102 -102
  90. package/src/markets/llamaLend/contractAddresses.ts +141 -141
  91. package/src/markets/llamaLend/index.ts +235 -235
  92. package/src/markets/morphoBlue/index.ts +971 -971
  93. package/src/markets/spark/index.ts +29 -29
  94. package/src/markets/spark/marketAssets.ts +12 -12
  95. package/src/moneymarket/moneymarketCommonService.ts +85 -85
  96. package/src/morphoBlue/index.ts +274 -274
  97. package/src/portfolio/index.ts +598 -598
  98. package/src/savings/index.ts +95 -95
  99. package/src/savings/makerDsr/index.ts +53 -53
  100. package/src/savings/makerDsr/options.ts +9 -9
  101. package/src/savings/morphoVaults/index.ts +80 -80
  102. package/src/savings/morphoVaults/options.ts +193 -193
  103. package/src/savings/skyOptions/index.ts +95 -95
  104. package/src/savings/skyOptions/options.ts +10 -10
  105. package/src/savings/sparkSavingsVaults/index.ts +60 -60
  106. package/src/savings/sparkSavingsVaults/options.ts +35 -35
  107. package/src/savings/yearnV3Vaults/index.ts +61 -61
  108. package/src/savings/yearnV3Vaults/options.ts +55 -55
  109. package/src/savings/yearnVaults/index.ts +73 -73
  110. package/src/savings/yearnVaults/options.ts +32 -32
  111. package/src/services/priceService.ts +278 -278
  112. package/src/services/utils.ts +115 -115
  113. package/src/services/viem.ts +34 -34
  114. package/src/setup.ts +8 -8
  115. package/src/spark/index.ts +458 -458
  116. package/src/staking/eligibility.ts +53 -53
  117. package/src/staking/index.ts +1 -1
  118. package/src/staking/staking.ts +186 -186
  119. package/src/types/aave.ts +196 -196
  120. package/src/types/aaveV4.ts +81 -0
  121. package/src/types/claiming.ts +114 -114
  122. package/src/types/common.ts +107 -107
  123. package/src/types/compound.ts +144 -144
  124. package/src/types/curveUsd.ts +123 -123
  125. package/src/types/euler.ts +175 -175
  126. package/src/types/fluid.ts +483 -483
  127. package/src/types/index.ts +16 -15
  128. package/src/types/liquity.ts +30 -30
  129. package/src/types/liquityV2.ts +126 -126
  130. package/src/types/llamaLend.ts +159 -159
  131. package/src/types/maker.ts +63 -63
  132. package/src/types/merit.ts +1 -1
  133. package/src/types/merkl.ts +70 -70
  134. package/src/types/morphoBlue.ts +200 -200
  135. package/src/types/portfolio.ts +60 -60
  136. package/src/types/savings/index.ts +23 -23
  137. package/src/types/savings/makerDsr.ts +13 -13
  138. package/src/types/savings/morphoVaults.ts +32 -32
  139. package/src/types/savings/sky.ts +14 -14
  140. package/src/types/savings/sparkSavingsVaults.ts +15 -15
  141. package/src/types/savings/yearnV3Vaults.ts +17 -17
  142. package/src/types/savings/yearnVaults.ts +14 -14
  143. package/src/types/spark.ts +134 -134
  144. package/src/umbrella/index.ts +69 -69
  145. package/src/umbrella/umbrellaUtils.ts +29 -29
@@ -1,235 +1,235 @@
1
- import { LlamaLendMarketData, LlamaLendVersions, LlamaLendVersionsType } from '../../types';
2
- import { NetworkNumber } from '../../types/common';
3
- import { getLLamaLendAddresses } from './contractAddresses';
4
-
5
- export const LLAMALEND_WSTETH_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
6
- chainIds: [NetworkNumber.Eth],
7
- label: 'LlamaLend - wstETH/crvUSD',
8
- shortLabel: 'wstETH/crvUSD',
9
- value: LlamaLendVersions.LLWstethCrvusd,
10
- collAsset: 'wstETH',
11
- baseAsset: 'crvUSD',
12
- url: 'wstethcrvusd',
13
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWstethCrvusd),
14
- });
15
-
16
- export const LLAMALEND_WSTETH_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
17
- chainIds: [NetworkNumber.Eth],
18
- label: 'LlamaLend - wstETH/crvUSD #2',
19
- shortLabel: 'wstETH/crvUSD #2',
20
- value: LlamaLendVersions.LLWstethCrvusd2,
21
- collAsset: 'wstETH',
22
- baseAsset: 'crvUSD',
23
- url: 'wstethcrvusd2',
24
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWstethCrvusd2),
25
- });
26
-
27
- export const LLAMALEND_SUSDE_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
28
- chainIds: [NetworkNumber.Eth],
29
- label: 'LlamaLend - sUSDe/crvUSD',
30
- shortLabel: 'sUSDe/crvUSD',
31
- value: LlamaLendVersions.LLSusdeCrvusd,
32
- collAsset: 'sUSDe',
33
- baseAsset: 'crvUSD',
34
- url: 'susdecrvusd',
35
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLSusdeCrvusd),
36
- });
37
-
38
- export const LLAMALEND_SUSDE_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
39
- chainIds: [NetworkNumber.Eth],
40
- label: 'LlamaLend - sUSDe/crvUSD #2',
41
- shortLabel: 'sUSDe/crvUSD #2',
42
- value: LlamaLendVersions.LLSusdeCrvusd2,
43
- collAsset: 'sUSDe',
44
- baseAsset: 'crvUSD',
45
- url: 'susdecrvusd2',
46
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLSusdeCrvusd2),
47
- });
48
-
49
- export const LLAMALEND_CRV_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
50
- chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
51
- label: 'LlamaLend - CRV/crvUSD',
52
- shortLabel: 'CRV/crvUSD',
53
- value: LlamaLendVersions.LLCrvCrvusd,
54
- collAsset: 'CRV',
55
- baseAsset: 'crvUSD',
56
- url: 'crvcrvusd',
57
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvCrvusd),
58
- });
59
-
60
- export const LLAMALEND_CRVUSD_CRV_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
61
- chainIds: [NetworkNumber.Eth],
62
- label: 'LlamaLend - crvUSD/CRV',
63
- shortLabel: 'crvUSD/CRV',
64
- value: LlamaLendVersions.LLCrvusdCrv,
65
- collAsset: 'crvUSD',
66
- baseAsset: 'CRV',
67
- url: 'crvusdcrv',
68
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvusdCrv),
69
- });
70
-
71
-
72
- export const LLAMALEND_TBTC_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
73
- chainIds: [NetworkNumber.Eth],
74
- label: 'LlamaLend - tBTC/crvUSD',
75
- shortLabel: 'tBTC/crvUSD',
76
- value: LlamaLendVersions.LLTbtcCrvusd,
77
- collAsset: 'tBTC',
78
- baseAsset: 'crvUSD',
79
- url: 'tbtccrvusd',
80
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLTbtcCrvusd),
81
- });
82
-
83
- export const LLAMALEND_CRVUSD_TBTC_MARKET = (networkId:NetworkNumber): LlamaLendMarketData => ({
84
- chainIds: [NetworkNumber.Eth],
85
- label: 'LlamaLend - crvUSD/tBTC',
86
- shortLabel: 'crvUSD/tBTC',
87
- value: LlamaLendVersions.LLCrvusdTbtc,
88
- collAsset: 'crvUSD',
89
- baseAsset: 'tBTC',
90
- url: 'crvusdtbtc',
91
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvusdTbtc),
92
- });
93
-
94
- export const LLAMALEND_WETH_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
95
- chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
96
- label: 'LlamaLend - ETH/crvUSD',
97
- shortLabel: 'ETH/crvUSD',
98
- value: LlamaLendVersions.LLWethCrvusd,
99
- collAsset: 'ETH',
100
- baseAsset: 'crvUSD',
101
- url: 'wethcrvusd',
102
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWethCrvusd),
103
- });
104
-
105
- export const LLAMALEND_CRVUSD_WETH_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
106
- chainIds: [NetworkNumber.Eth],
107
- label: 'LlamaLend - crvUSD/ETH',
108
- shortLabel: 'crvUSD/ETH',
109
- value: LlamaLendVersions.LLCrvusdWeth,
110
- collAsset: 'crvUSD',
111
- baseAsset: 'ETH',
112
- url: 'crvusdweth',
113
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvusdWeth),
114
- });
115
-
116
- export const LLAMALEND_WETH_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
117
- chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
118
- label: 'LlamaLend - ETH/crvUSD #2',
119
- shortLabel: 'ETH/crvUSD #2',
120
- value: LlamaLendVersions.LLWethCrvusd2,
121
- collAsset: 'ETH',
122
- baseAsset: 'crvUSD',
123
- url: 'wethcrvusd2',
124
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWethCrvusd2),
125
- });
126
-
127
- export const LLAMALEND_ARB_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
128
- chainIds: [NetworkNumber.Arb],
129
- label: 'LlamaLend - ARB/crvUSD',
130
- shortLabel: 'ARB/crvUSD',
131
- value: LlamaLendVersions.LLArbCrvusd,
132
- collAsset: 'ARB',
133
- baseAsset: 'crvUSD',
134
- url: 'arbcrvusd',
135
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLArbCrvusd),
136
- });
137
-
138
- export const LLAMALEND_ARB_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
139
- chainIds: [NetworkNumber.Arb],
140
- label: 'LlamaLend - ARB/crvUSD #2',
141
- shortLabel: 'ARB/crvUSD #2',
142
- value: LlamaLendVersions.LLArbCrvusd2,
143
- collAsset: 'ARB',
144
- baseAsset: 'crvUSD',
145
- url: 'arbcrvusd2',
146
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLArbCrvusd2),
147
- });
148
-
149
- export const LLAMALEND_FXN_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
150
- chainIds: [NetworkNumber.Arb],
151
- label: 'LlamaLend - FXN/crvUSD',
152
- shortLabel: 'FXN/crvUSD',
153
- value: LlamaLendVersions.LLFxnCrvusd,
154
- collAsset: 'FXN',
155
- baseAsset: 'crvUSD',
156
- url: 'fxncrvusd',
157
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLFxnCrvusd),
158
- });
159
-
160
- export const LLAMALEND_WBTC_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
161
- chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
162
- label: 'LlamaLend - WBTC/crvUSD',
163
- shortLabel: 'WBTC/crvUSD',
164
- value: LlamaLendVersions.LLWbtcCrvusd,
165
- collAsset: 'WBTC',
166
- baseAsset: 'crvUSD',
167
- url: 'wbtcusd',
168
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWbtcCrvusd),
169
- });
170
-
171
- export const LLAMALEND_WBTC_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
172
- chainIds: [NetworkNumber.Arb],
173
- label: 'LlamaLend - WBTC/crvUSD #2',
174
- shortLabel: 'WBTC/crvUSD #2',
175
- value: LlamaLendVersions.LLWbtcCrvusd2,
176
- collAsset: 'WBTC',
177
- baseAsset: 'crvUSD',
178
- url: 'wbtcusd2',
179
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWbtcCrvusd2),
180
- });
181
-
182
- export const LLAMALEND_USDE_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
183
- chainIds: [NetworkNumber.Eth],
184
- label: 'LlamaLend - USDe/crvUSD',
185
- shortLabel: 'USDe/crvUSD',
186
- value: LlamaLendVersions.LLUsdeCrvusd,
187
- collAsset: 'USDe',
188
- baseAsset: 'crvUSD',
189
- url: 'usdecrvusd',
190
- ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLUsdeCrvusd),
191
- });
192
-
193
- // temp disabled
194
- // export const LLAMALEND_PUFETH_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
195
- // chainIds: [NetworkNumber.Eth],
196
- // label: 'LlamaLend - pufETH/crvUSD',
197
- // shortLabel: 'pufETH/crvUSD',
198
- // value: LlamaLendVersions.LLPufethCrvusd,
199
- // collAsset: 'pufETH',
200
- // baseAsset: 'crvUSD',
201
- // url: 'pufethcrvusd',
202
- // ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLPufethCrvusd),
203
- // });
204
-
205
- export const LlamaLendMarkets = (networkId: NetworkNumber):Record<LlamaLendVersionsType, LlamaLendMarketData> => ({
206
- [LlamaLendVersions.LLWstethCrvusd]: LLAMALEND_WSTETH_CRVUSD_MARKET(networkId),
207
- [LlamaLendVersions.LLWstethCrvusd2]: LLAMALEND_WSTETH_CRVUSD_MARKET_2(networkId),
208
- [LlamaLendVersions.LLCrvusdCrv]: LLAMALEND_CRVUSD_CRV_MARKET(networkId),
209
- [LlamaLendVersions.LLCrvCrvusd]: LLAMALEND_CRV_CRVUSD_MARKET(networkId),
210
- [LlamaLendVersions.LLTbtcCrvusd]: LLAMALEND_TBTC_CRVUSD_MARKET(networkId),
211
- [LlamaLendVersions.LLCrvusdTbtc]: LLAMALEND_CRVUSD_TBTC_MARKET(networkId),
212
- [LlamaLendVersions.LLWethCrvusd]: LLAMALEND_WETH_CRVUSD_MARKET(networkId),
213
- [LlamaLendVersions.LLCrvusdWeth]: LLAMALEND_CRVUSD_WETH_MARKET(networkId),
214
- [LlamaLendVersions.LLWethCrvusd2]: LLAMALEND_WETH_CRVUSD_MARKET_2(networkId),
215
- [LlamaLendVersions.LLArbCrvusd]: LLAMALEND_ARB_CRVUSD_MARKET(networkId),
216
- [LlamaLendVersions.LLArbCrvusd2]: LLAMALEND_ARB_CRVUSD_MARKET_2(networkId),
217
- [LlamaLendVersions.LLFxnCrvusd]: LLAMALEND_FXN_CRVUSD_MARKET(networkId),
218
- [LlamaLendVersions.LLWbtcCrvusd]: LLAMALEND_WBTC_CRVUSD_MARKET(networkId),
219
- [LlamaLendVersions.LLWbtcCrvusd2]: LLAMALEND_WBTC_CRVUSD_MARKET_2(networkId),
220
- [LlamaLendVersions.LLSusdeCrvusd]: LLAMALEND_SUSDE_CRVUSD_MARKET(networkId),
221
- [LlamaLendVersions.LLSusdeCrvusd2]: LLAMALEND_SUSDE_CRVUSD_MARKET_2(networkId),
222
- [LlamaLendVersions.LLUsdeCrvusd]: LLAMALEND_USDE_CRVUSD_MARKET(networkId),
223
- // [LlamaLendVersions.LLPufethCrvusd]: LLAMALEND_PUFETH_CRVUSD_MARKET(networkId), // temp disabled
224
- }) as const;
225
-
226
-
227
- export const getLlamaLendMarketData = (market: LlamaLendVersionsType, network: NetworkNumber = 1) => LlamaLendMarkets(network)[market];
228
-
229
-
230
- export const getLlamaLendMarketFromControllerAddress = (controllerAddress: string, network: NetworkNumber) => {
231
- const markets = LlamaLendMarkets(network);
232
- const market = Object.values(markets).find((tempMarket) => tempMarket.controllerAddress === controllerAddress);
233
- if (!market) throw new Error('Market not found');
234
- return market;
235
- };
1
+ import { LlamaLendMarketData, LlamaLendVersions, LlamaLendVersionsType } from '../../types';
2
+ import { NetworkNumber } from '../../types/common';
3
+ import { getLLamaLendAddresses } from './contractAddresses';
4
+
5
+ export const LLAMALEND_WSTETH_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
6
+ chainIds: [NetworkNumber.Eth],
7
+ label: 'LlamaLend - wstETH/crvUSD',
8
+ shortLabel: 'wstETH/crvUSD',
9
+ value: LlamaLendVersions.LLWstethCrvusd,
10
+ collAsset: 'wstETH',
11
+ baseAsset: 'crvUSD',
12
+ url: 'wstethcrvusd',
13
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWstethCrvusd),
14
+ });
15
+
16
+ export const LLAMALEND_WSTETH_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
17
+ chainIds: [NetworkNumber.Eth],
18
+ label: 'LlamaLend - wstETH/crvUSD #2',
19
+ shortLabel: 'wstETH/crvUSD #2',
20
+ value: LlamaLendVersions.LLWstethCrvusd2,
21
+ collAsset: 'wstETH',
22
+ baseAsset: 'crvUSD',
23
+ url: 'wstethcrvusd2',
24
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWstethCrvusd2),
25
+ });
26
+
27
+ export const LLAMALEND_SUSDE_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
28
+ chainIds: [NetworkNumber.Eth],
29
+ label: 'LlamaLend - sUSDe/crvUSD',
30
+ shortLabel: 'sUSDe/crvUSD',
31
+ value: LlamaLendVersions.LLSusdeCrvusd,
32
+ collAsset: 'sUSDe',
33
+ baseAsset: 'crvUSD',
34
+ url: 'susdecrvusd',
35
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLSusdeCrvusd),
36
+ });
37
+
38
+ export const LLAMALEND_SUSDE_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
39
+ chainIds: [NetworkNumber.Eth],
40
+ label: 'LlamaLend - sUSDe/crvUSD #2',
41
+ shortLabel: 'sUSDe/crvUSD #2',
42
+ value: LlamaLendVersions.LLSusdeCrvusd2,
43
+ collAsset: 'sUSDe',
44
+ baseAsset: 'crvUSD',
45
+ url: 'susdecrvusd2',
46
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLSusdeCrvusd2),
47
+ });
48
+
49
+ export const LLAMALEND_CRV_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
50
+ chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
51
+ label: 'LlamaLend - CRV/crvUSD',
52
+ shortLabel: 'CRV/crvUSD',
53
+ value: LlamaLendVersions.LLCrvCrvusd,
54
+ collAsset: 'CRV',
55
+ baseAsset: 'crvUSD',
56
+ url: 'crvcrvusd',
57
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvCrvusd),
58
+ });
59
+
60
+ export const LLAMALEND_CRVUSD_CRV_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
61
+ chainIds: [NetworkNumber.Eth],
62
+ label: 'LlamaLend - crvUSD/CRV',
63
+ shortLabel: 'crvUSD/CRV',
64
+ value: LlamaLendVersions.LLCrvusdCrv,
65
+ collAsset: 'crvUSD',
66
+ baseAsset: 'CRV',
67
+ url: 'crvusdcrv',
68
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvusdCrv),
69
+ });
70
+
71
+
72
+ export const LLAMALEND_TBTC_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
73
+ chainIds: [NetworkNumber.Eth],
74
+ label: 'LlamaLend - tBTC/crvUSD',
75
+ shortLabel: 'tBTC/crvUSD',
76
+ value: LlamaLendVersions.LLTbtcCrvusd,
77
+ collAsset: 'tBTC',
78
+ baseAsset: 'crvUSD',
79
+ url: 'tbtccrvusd',
80
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLTbtcCrvusd),
81
+ });
82
+
83
+ export const LLAMALEND_CRVUSD_TBTC_MARKET = (networkId:NetworkNumber): LlamaLendMarketData => ({
84
+ chainIds: [NetworkNumber.Eth],
85
+ label: 'LlamaLend - crvUSD/tBTC',
86
+ shortLabel: 'crvUSD/tBTC',
87
+ value: LlamaLendVersions.LLCrvusdTbtc,
88
+ collAsset: 'crvUSD',
89
+ baseAsset: 'tBTC',
90
+ url: 'crvusdtbtc',
91
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvusdTbtc),
92
+ });
93
+
94
+ export const LLAMALEND_WETH_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
95
+ chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
96
+ label: 'LlamaLend - ETH/crvUSD',
97
+ shortLabel: 'ETH/crvUSD',
98
+ value: LlamaLendVersions.LLWethCrvusd,
99
+ collAsset: 'ETH',
100
+ baseAsset: 'crvUSD',
101
+ url: 'wethcrvusd',
102
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWethCrvusd),
103
+ });
104
+
105
+ export const LLAMALEND_CRVUSD_WETH_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
106
+ chainIds: [NetworkNumber.Eth],
107
+ label: 'LlamaLend - crvUSD/ETH',
108
+ shortLabel: 'crvUSD/ETH',
109
+ value: LlamaLendVersions.LLCrvusdWeth,
110
+ collAsset: 'crvUSD',
111
+ baseAsset: 'ETH',
112
+ url: 'crvusdweth',
113
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLCrvusdWeth),
114
+ });
115
+
116
+ export const LLAMALEND_WETH_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
117
+ chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
118
+ label: 'LlamaLend - ETH/crvUSD #2',
119
+ shortLabel: 'ETH/crvUSD #2',
120
+ value: LlamaLendVersions.LLWethCrvusd2,
121
+ collAsset: 'ETH',
122
+ baseAsset: 'crvUSD',
123
+ url: 'wethcrvusd2',
124
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWethCrvusd2),
125
+ });
126
+
127
+ export const LLAMALEND_ARB_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
128
+ chainIds: [NetworkNumber.Arb],
129
+ label: 'LlamaLend - ARB/crvUSD',
130
+ shortLabel: 'ARB/crvUSD',
131
+ value: LlamaLendVersions.LLArbCrvusd,
132
+ collAsset: 'ARB',
133
+ baseAsset: 'crvUSD',
134
+ url: 'arbcrvusd',
135
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLArbCrvusd),
136
+ });
137
+
138
+ export const LLAMALEND_ARB_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
139
+ chainIds: [NetworkNumber.Arb],
140
+ label: 'LlamaLend - ARB/crvUSD #2',
141
+ shortLabel: 'ARB/crvUSD #2',
142
+ value: LlamaLendVersions.LLArbCrvusd2,
143
+ collAsset: 'ARB',
144
+ baseAsset: 'crvUSD',
145
+ url: 'arbcrvusd2',
146
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLArbCrvusd2),
147
+ });
148
+
149
+ export const LLAMALEND_FXN_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
150
+ chainIds: [NetworkNumber.Arb],
151
+ label: 'LlamaLend - FXN/crvUSD',
152
+ shortLabel: 'FXN/crvUSD',
153
+ value: LlamaLendVersions.LLFxnCrvusd,
154
+ collAsset: 'FXN',
155
+ baseAsset: 'crvUSD',
156
+ url: 'fxncrvusd',
157
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLFxnCrvusd),
158
+ });
159
+
160
+ export const LLAMALEND_WBTC_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
161
+ chainIds: [NetworkNumber.Eth, NetworkNumber.Arb],
162
+ label: 'LlamaLend - WBTC/crvUSD',
163
+ shortLabel: 'WBTC/crvUSD',
164
+ value: LlamaLendVersions.LLWbtcCrvusd,
165
+ collAsset: 'WBTC',
166
+ baseAsset: 'crvUSD',
167
+ url: 'wbtcusd',
168
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWbtcCrvusd),
169
+ });
170
+
171
+ export const LLAMALEND_WBTC_CRVUSD_MARKET_2 = (networkId: NetworkNumber): LlamaLendMarketData => ({
172
+ chainIds: [NetworkNumber.Arb],
173
+ label: 'LlamaLend - WBTC/crvUSD #2',
174
+ shortLabel: 'WBTC/crvUSD #2',
175
+ value: LlamaLendVersions.LLWbtcCrvusd2,
176
+ collAsset: 'WBTC',
177
+ baseAsset: 'crvUSD',
178
+ url: 'wbtcusd2',
179
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLWbtcCrvusd2),
180
+ });
181
+
182
+ export const LLAMALEND_USDE_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
183
+ chainIds: [NetworkNumber.Eth],
184
+ label: 'LlamaLend - USDe/crvUSD',
185
+ shortLabel: 'USDe/crvUSD',
186
+ value: LlamaLendVersions.LLUsdeCrvusd,
187
+ collAsset: 'USDe',
188
+ baseAsset: 'crvUSD',
189
+ url: 'usdecrvusd',
190
+ ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLUsdeCrvusd),
191
+ });
192
+
193
+ // temp disabled
194
+ // export const LLAMALEND_PUFETH_CRVUSD_MARKET = (networkId: NetworkNumber): LlamaLendMarketData => ({
195
+ // chainIds: [NetworkNumber.Eth],
196
+ // label: 'LlamaLend - pufETH/crvUSD',
197
+ // shortLabel: 'pufETH/crvUSD',
198
+ // value: LlamaLendVersions.LLPufethCrvusd,
199
+ // collAsset: 'pufETH',
200
+ // baseAsset: 'crvUSD',
201
+ // url: 'pufethcrvusd',
202
+ // ...getLLamaLendAddresses(networkId, LlamaLendVersions.LLPufethCrvusd),
203
+ // });
204
+
205
+ export const LlamaLendMarkets = (networkId: NetworkNumber):Record<LlamaLendVersionsType, LlamaLendMarketData> => ({
206
+ [LlamaLendVersions.LLWstethCrvusd]: LLAMALEND_WSTETH_CRVUSD_MARKET(networkId),
207
+ [LlamaLendVersions.LLWstethCrvusd2]: LLAMALEND_WSTETH_CRVUSD_MARKET_2(networkId),
208
+ [LlamaLendVersions.LLCrvusdCrv]: LLAMALEND_CRVUSD_CRV_MARKET(networkId),
209
+ [LlamaLendVersions.LLCrvCrvusd]: LLAMALEND_CRV_CRVUSD_MARKET(networkId),
210
+ [LlamaLendVersions.LLTbtcCrvusd]: LLAMALEND_TBTC_CRVUSD_MARKET(networkId),
211
+ [LlamaLendVersions.LLCrvusdTbtc]: LLAMALEND_CRVUSD_TBTC_MARKET(networkId),
212
+ [LlamaLendVersions.LLWethCrvusd]: LLAMALEND_WETH_CRVUSD_MARKET(networkId),
213
+ [LlamaLendVersions.LLCrvusdWeth]: LLAMALEND_CRVUSD_WETH_MARKET(networkId),
214
+ [LlamaLendVersions.LLWethCrvusd2]: LLAMALEND_WETH_CRVUSD_MARKET_2(networkId),
215
+ [LlamaLendVersions.LLArbCrvusd]: LLAMALEND_ARB_CRVUSD_MARKET(networkId),
216
+ [LlamaLendVersions.LLArbCrvusd2]: LLAMALEND_ARB_CRVUSD_MARKET_2(networkId),
217
+ [LlamaLendVersions.LLFxnCrvusd]: LLAMALEND_FXN_CRVUSD_MARKET(networkId),
218
+ [LlamaLendVersions.LLWbtcCrvusd]: LLAMALEND_WBTC_CRVUSD_MARKET(networkId),
219
+ [LlamaLendVersions.LLWbtcCrvusd2]: LLAMALEND_WBTC_CRVUSD_MARKET_2(networkId),
220
+ [LlamaLendVersions.LLSusdeCrvusd]: LLAMALEND_SUSDE_CRVUSD_MARKET(networkId),
221
+ [LlamaLendVersions.LLSusdeCrvusd2]: LLAMALEND_SUSDE_CRVUSD_MARKET_2(networkId),
222
+ [LlamaLendVersions.LLUsdeCrvusd]: LLAMALEND_USDE_CRVUSD_MARKET(networkId),
223
+ // [LlamaLendVersions.LLPufethCrvusd]: LLAMALEND_PUFETH_CRVUSD_MARKET(networkId), // temp disabled
224
+ }) as const;
225
+
226
+
227
+ export const getLlamaLendMarketData = (market: LlamaLendVersionsType, network: NetworkNumber = 1) => LlamaLendMarkets(network)[market];
228
+
229
+
230
+ export const getLlamaLendMarketFromControllerAddress = (controllerAddress: string, network: NetworkNumber) => {
231
+ const markets = LlamaLendMarkets(network);
232
+ const market = Object.values(markets).find((tempMarket) => tempMarket.controllerAddress === controllerAddress);
233
+ if (!market) throw new Error('Market not found');
234
+ return market;
235
+ };