@defisaver/positions-sdk 2.0.0 → 2.0.4

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 (84) hide show
  1. package/.mocharc.json +4 -4
  2. package/.nvmrc +1 -1
  3. package/README.md +64 -64
  4. package/cjs/fluid/index.js +2 -1
  5. package/cjs/helpers/compoundHelpers/index.js +2 -2
  6. package/cjs/helpers/morphoBlueHelpers/index.js +156 -139
  7. package/cjs/markets/aave/marketAssets.js +1 -1
  8. package/cjs/services/utils.d.ts +1 -0
  9. package/cjs/services/utils.js +2 -1
  10. package/cjs/staking/staking.js +43 -23
  11. package/cjs/types/compound.d.ts +2 -0
  12. package/esm/fluid/index.js +3 -2
  13. package/esm/helpers/compoundHelpers/index.js +2 -2
  14. package/esm/helpers/morphoBlueHelpers/index.js +157 -140
  15. package/esm/markets/aave/marketAssets.js +1 -1
  16. package/esm/services/utils.d.ts +1 -0
  17. package/esm/services/utils.js +1 -0
  18. package/esm/staking/staking.js +43 -23
  19. package/esm/types/compound.d.ts +2 -0
  20. package/package.json +47 -47
  21. package/src/aaveV2/index.ts +236 -236
  22. package/src/aaveV3/index.ts +489 -489
  23. package/src/compoundV2/index.ts +240 -240
  24. package/src/compoundV3/index.ts +270 -270
  25. package/src/config/contracts.ts +1082 -1082
  26. package/src/constants/index.ts +6 -6
  27. package/src/contracts.ts +107 -107
  28. package/src/curveUsd/index.ts +250 -250
  29. package/src/eulerV2/index.ts +314 -314
  30. package/src/exchange/index.ts +25 -25
  31. package/src/fluid/index.ts +1568 -1564
  32. package/src/helpers/aaveHelpers/index.ts +170 -170
  33. package/src/helpers/compoundHelpers/index.ts +261 -250
  34. package/src/helpers/curveUsdHelpers/index.ts +40 -40
  35. package/src/helpers/eulerHelpers/index.ts +259 -259
  36. package/src/helpers/fluidHelpers/index.ts +324 -324
  37. package/src/helpers/index.ts +10 -10
  38. package/src/helpers/liquityV2Helpers/index.ts +80 -80
  39. package/src/helpers/llamaLendHelpers/index.ts +53 -53
  40. package/src/helpers/makerHelpers/index.ts +52 -52
  41. package/src/helpers/morphoBlueHelpers/index.ts +390 -375
  42. package/src/helpers/sparkHelpers/index.ts +155 -155
  43. package/src/index.ts +45 -45
  44. package/src/liquity/index.ts +104 -104
  45. package/src/liquityV2/index.ts +408 -408
  46. package/src/llamaLend/index.ts +296 -296
  47. package/src/maker/index.ts +223 -223
  48. package/src/markets/aave/index.ts +116 -116
  49. package/src/markets/aave/marketAssets.ts +44 -44
  50. package/src/markets/compound/index.ts +216 -216
  51. package/src/markets/compound/marketsAssets.ts +83 -83
  52. package/src/markets/curveUsd/index.ts +69 -69
  53. package/src/markets/euler/index.ts +26 -26
  54. package/src/markets/fluid/index.ts +2456 -2456
  55. package/src/markets/index.ts +25 -25
  56. package/src/markets/liquityV2/index.ts +102 -102
  57. package/src/markets/llamaLend/contractAddresses.ts +141 -141
  58. package/src/markets/llamaLend/index.ts +235 -235
  59. package/src/markets/morphoBlue/index.ts +895 -895
  60. package/src/markets/spark/index.ts +29 -29
  61. package/src/markets/spark/marketAssets.ts +10 -10
  62. package/src/moneymarket/moneymarketCommonService.ts +80 -80
  63. package/src/morphoBlue/index.ts +222 -222
  64. package/src/portfolio/index.ts +285 -285
  65. package/src/services/priceService.ts +159 -159
  66. package/src/services/utils.ts +64 -62
  67. package/src/services/viem.ts +30 -30
  68. package/src/setup.ts +8 -8
  69. package/src/spark/index.ts +456 -456
  70. package/src/staking/staking.ts +192 -173
  71. package/src/types/aave.ts +194 -194
  72. package/src/types/common.ts +87 -87
  73. package/src/types/compound.ts +136 -134
  74. package/src/types/curveUsd.ts +121 -121
  75. package/src/types/euler.ts +174 -174
  76. package/src/types/fluid.ts +450 -450
  77. package/src/types/index.ts +11 -11
  78. package/src/types/liquity.ts +30 -30
  79. package/src/types/liquityV2.ts +126 -126
  80. package/src/types/llamaLend.ts +157 -157
  81. package/src/types/maker.ts +63 -63
  82. package/src/types/morphoBlue.ts +194 -194
  83. package/src/types/portfolio.ts +60 -60
  84. package/src/types/spark.ts +137 -137
@@ -1,116 +1,116 @@
1
- // @ts-nocheck
2
- import { getConfigContractAddress } from '../../contracts';
3
- import { compareAddresses } from '../../services/utils';
4
- import {
5
- AaveMarketInfo, AaveVersions,
6
- } from '../../types';
7
- import { NetworkNumber } from '../../types/common';
8
- import {
9
- aaveV1AssetsDefaultMarket, aaveV2AssetsDefaultMarket, aaveV3AssetsDefaultMarket, aaveV3AssetsEtherfiMarket, aaveV3AssetsLidoMarket,
10
- } from './marketAssets';
11
-
12
- export {
13
- aaveV1AssetsDefaultMarket,
14
- aaveV2AssetsDefaultMarket,
15
- aaveV3AssetsDefaultMarket,
16
- aaveV3AssetsLidoMarket,
17
- };
18
-
19
- export const AAVE_V1: AaveMarketInfo = {
20
- chainIds: [NetworkNumber.Eth],
21
- label: 'Aave v1',
22
- shortLabel: 'v1',
23
- url: '',
24
- value: AaveVersions.AaveV1,
25
- assets: aaveV1AssetsDefaultMarket.map((a) => a.underlyingAsset),
26
- provider: '',
27
- providerAddress: '',
28
- lendingPool: '',
29
- lendingPoolAddress: '',
30
- protocolData: '',
31
- protocolDataAddress: '',
32
- // icon: SvgAdapter(protocolIcons.aave),
33
- disabled: true,
34
- protocolName: 'aave',
35
- };
36
-
37
- export const AAVE_V2: AaveMarketInfo = {
38
- chainIds: [NetworkNumber.Eth],
39
- label: 'Aave v2',
40
- shortLabel: 'v2',
41
- value: AaveVersions.AaveV2,
42
- url: 'default',
43
- assets: aaveV2AssetsDefaultMarket,
44
- provider: 'LendingPoolAddressesProvider',
45
- providerAddress: getConfigContractAddress('LendingPoolAddressesProvider', 1), // rename
46
- lendingPool: 'AaveLendingPoolV2',
47
- lendingPoolAddress: getConfigContractAddress('AaveLendingPoolV2', 1),
48
- protocolData: 'AaveProtocolDataProvider',
49
- protocolDataAddress: getConfigContractAddress('AaveProtocolDataProvider', 1),
50
- // icon: SvgAdapter(protocolIcons.aave),
51
- protocolName: 'aave',
52
- };
53
-
54
- export const AAVE_V3 = (networkId: NetworkNumber): AaveMarketInfo => ({
55
- chainIds: [NetworkNumber.Eth, NetworkNumber.Opt, NetworkNumber.Arb, NetworkNumber.Base],
56
- label: networkId === 1 ? 'Aave v3 Core' : 'Aave v3',
57
- shortLabel: 'v3',
58
- value: AaveVersions.AaveV3,
59
- url: 'default',
60
- assets: networkId ? aaveV3AssetsDefaultMarket[networkId] : [],
61
- provider: 'AaveV3PoolAddressesProvider',
62
- providerAddress: getConfigContractAddress('AaveV3PoolAddressesProvider', networkId),
63
- lendingPool: 'AaveV3LendingPool',
64
- lendingPoolAddress: getConfigContractAddress('AaveV3LendingPool', networkId),
65
- protocolData: 'AaveV3ProtocolDataProvider',
66
- protocolDataAddress: getConfigContractAddress('AaveV3ProtocolDataProvider', networkId),
67
- // icon: SvgAdapter(protocolIcons.aave),
68
- protocolName: 'aave',
69
- });
70
-
71
- export const AAVE_V3_LIDO = (networkId: NetworkNumber): AaveMarketInfo => ({
72
- chainIds: [NetworkNumber.Eth],
73
- label: 'Aave v3 Prime',
74
- shortLabel: 'v3',
75
- value: AaveVersions.AaveV3Lido,
76
- url: 'lido',
77
- assets: networkId ? aaveV3AssetsLidoMarket[networkId] : [],
78
- provider: 'AaveV3LidoPoolAddressesProvider',
79
- providerAddress: getConfigContractAddress('AaveV3LidoPoolAddressesProvider', networkId),
80
- lendingPool: 'AaveV3LidoLendingPool',
81
- lendingPoolAddress: getConfigContractAddress('AaveV3LidoLendingPool', networkId),
82
- protocolData: 'AaveV3LidoProtocolDataProvider',
83
- protocolDataAddress: getConfigContractAddress('AaveV3LidoProtocolDataProvider', networkId),
84
- // icon: SvgAdapter(protocolIcons.aave),
85
- protocolName: 'aave',
86
- });
87
-
88
- export const AAVE_V3_ETHERFI = (networkId: NetworkNumber): AaveMarketInfo => ({
89
- chainIds: [NetworkNumber.Eth],
90
- label: 'Aave v3 EtherFi',
91
- shortLabel: 'v3',
92
- value: AaveVersions.AaveV3Etherfi,
93
- url: 'etherfi',
94
- assets: networkId ? aaveV3AssetsEtherfiMarket[networkId] : [],
95
- provider: 'AaveV3EtherfiPoolAddressesProvider',
96
- providerAddress: getConfigContractAddress('AaveV3EtherfiPoolAddressesProvider', networkId),
97
- lendingPool: 'AaveV3EtherfiLendingPool',
98
- lendingPoolAddress: getConfigContractAddress('AaveV3EtherfiLendingPool', networkId),
99
- protocolData: 'AaveV3EtherfiProtocolDataProvider',
100
- protocolDataAddress: getConfigContractAddress('AaveV3EtherfiProtocolDataProvider', networkId),
101
- // icon: SvgAdapter(protocolIcons.aave),
102
- protocolName: 'aave',
103
- });
104
-
105
- export const AaveMarkets = (networkId: NetworkNumber) => ({
106
- [AaveVersions.AaveV1]: AAVE_V1,
107
- [AaveVersions.AaveV2]: AAVE_V2,
108
- [AaveVersions.AaveV3]: AAVE_V3(networkId),
109
- [AaveVersions.AaveV3Lido]: AAVE_V3_LIDO(networkId),
110
- [AaveVersions.AaveV3Etherfi]: AAVE_V3_ETHERFI(networkId),
111
- }) as const;
112
-
113
- export const getAaveV3MarketByMarketAddress = (marketAddress: string, network = NetworkNumber.Eth): AaveMarketInfo | undefined => {
114
- const markets = AaveMarkets(network);
115
- return Object.values(markets).find((m) => compareAddresses(m.providerAddress, marketAddress));
116
- };
1
+ // @ts-nocheck
2
+ import { getConfigContractAddress } from '../../contracts';
3
+ import { compareAddresses } from '../../services/utils';
4
+ import {
5
+ AaveMarketInfo, AaveVersions,
6
+ } from '../../types';
7
+ import { NetworkNumber } from '../../types/common';
8
+ import {
9
+ aaveV1AssetsDefaultMarket, aaveV2AssetsDefaultMarket, aaveV3AssetsDefaultMarket, aaveV3AssetsEtherfiMarket, aaveV3AssetsLidoMarket,
10
+ } from './marketAssets';
11
+
12
+ export {
13
+ aaveV1AssetsDefaultMarket,
14
+ aaveV2AssetsDefaultMarket,
15
+ aaveV3AssetsDefaultMarket,
16
+ aaveV3AssetsLidoMarket,
17
+ };
18
+
19
+ export const AAVE_V1: AaveMarketInfo = {
20
+ chainIds: [NetworkNumber.Eth],
21
+ label: 'Aave v1',
22
+ shortLabel: 'v1',
23
+ url: '',
24
+ value: AaveVersions.AaveV1,
25
+ assets: aaveV1AssetsDefaultMarket.map((a) => a.underlyingAsset),
26
+ provider: '',
27
+ providerAddress: '',
28
+ lendingPool: '',
29
+ lendingPoolAddress: '',
30
+ protocolData: '',
31
+ protocolDataAddress: '',
32
+ // icon: SvgAdapter(protocolIcons.aave),
33
+ disabled: true,
34
+ protocolName: 'aave',
35
+ };
36
+
37
+ export const AAVE_V2: AaveMarketInfo = {
38
+ chainIds: [NetworkNumber.Eth],
39
+ label: 'Aave v2',
40
+ shortLabel: 'v2',
41
+ value: AaveVersions.AaveV2,
42
+ url: 'default',
43
+ assets: aaveV2AssetsDefaultMarket,
44
+ provider: 'LendingPoolAddressesProvider',
45
+ providerAddress: getConfigContractAddress('LendingPoolAddressesProvider', 1), // rename
46
+ lendingPool: 'AaveLendingPoolV2',
47
+ lendingPoolAddress: getConfigContractAddress('AaveLendingPoolV2', 1),
48
+ protocolData: 'AaveProtocolDataProvider',
49
+ protocolDataAddress: getConfigContractAddress('AaveProtocolDataProvider', 1),
50
+ // icon: SvgAdapter(protocolIcons.aave),
51
+ protocolName: 'aave',
52
+ };
53
+
54
+ export const AAVE_V3 = (networkId: NetworkNumber): AaveMarketInfo => ({
55
+ chainIds: [NetworkNumber.Eth, NetworkNumber.Opt, NetworkNumber.Arb, NetworkNumber.Base],
56
+ label: networkId === 1 ? 'Aave v3 Core' : 'Aave v3',
57
+ shortLabel: 'v3',
58
+ value: AaveVersions.AaveV3,
59
+ url: 'default',
60
+ assets: networkId ? aaveV3AssetsDefaultMarket[networkId] : [],
61
+ provider: 'AaveV3PoolAddressesProvider',
62
+ providerAddress: getConfigContractAddress('AaveV3PoolAddressesProvider', networkId),
63
+ lendingPool: 'AaveV3LendingPool',
64
+ lendingPoolAddress: getConfigContractAddress('AaveV3LendingPool', networkId),
65
+ protocolData: 'AaveV3ProtocolDataProvider',
66
+ protocolDataAddress: getConfigContractAddress('AaveV3ProtocolDataProvider', networkId),
67
+ // icon: SvgAdapter(protocolIcons.aave),
68
+ protocolName: 'aave',
69
+ });
70
+
71
+ export const AAVE_V3_LIDO = (networkId: NetworkNumber): AaveMarketInfo => ({
72
+ chainIds: [NetworkNumber.Eth],
73
+ label: 'Aave v3 Prime',
74
+ shortLabel: 'v3',
75
+ value: AaveVersions.AaveV3Lido,
76
+ url: 'lido',
77
+ assets: networkId ? aaveV3AssetsLidoMarket[networkId] : [],
78
+ provider: 'AaveV3LidoPoolAddressesProvider',
79
+ providerAddress: getConfigContractAddress('AaveV3LidoPoolAddressesProvider', networkId),
80
+ lendingPool: 'AaveV3LidoLendingPool',
81
+ lendingPoolAddress: getConfigContractAddress('AaveV3LidoLendingPool', networkId),
82
+ protocolData: 'AaveV3LidoProtocolDataProvider',
83
+ protocolDataAddress: getConfigContractAddress('AaveV3LidoProtocolDataProvider', networkId),
84
+ // icon: SvgAdapter(protocolIcons.aave),
85
+ protocolName: 'aave',
86
+ });
87
+
88
+ export const AAVE_V3_ETHERFI = (networkId: NetworkNumber): AaveMarketInfo => ({
89
+ chainIds: [NetworkNumber.Eth],
90
+ label: 'Aave v3 EtherFi',
91
+ shortLabel: 'v3',
92
+ value: AaveVersions.AaveV3Etherfi,
93
+ url: 'etherfi',
94
+ assets: networkId ? aaveV3AssetsEtherfiMarket[networkId] : [],
95
+ provider: 'AaveV3EtherfiPoolAddressesProvider',
96
+ providerAddress: getConfigContractAddress('AaveV3EtherfiPoolAddressesProvider', networkId),
97
+ lendingPool: 'AaveV3EtherfiLendingPool',
98
+ lendingPoolAddress: getConfigContractAddress('AaveV3EtherfiLendingPool', networkId),
99
+ protocolData: 'AaveV3EtherfiProtocolDataProvider',
100
+ protocolDataAddress: getConfigContractAddress('AaveV3EtherfiProtocolDataProvider', networkId),
101
+ // icon: SvgAdapter(protocolIcons.aave),
102
+ protocolName: 'aave',
103
+ });
104
+
105
+ export const AaveMarkets = (networkId: NetworkNumber) => ({
106
+ [AaveVersions.AaveV1]: AAVE_V1,
107
+ [AaveVersions.AaveV2]: AAVE_V2,
108
+ [AaveVersions.AaveV3]: AAVE_V3(networkId),
109
+ [AaveVersions.AaveV3Lido]: AAVE_V3_LIDO(networkId),
110
+ [AaveVersions.AaveV3Etherfi]: AAVE_V3_ETHERFI(networkId),
111
+ }) as const;
112
+
113
+ export const getAaveV3MarketByMarketAddress = (marketAddress: string, network = NetworkNumber.Eth): AaveMarketInfo | undefined => {
114
+ const markets = AaveMarkets(network);
115
+ return Object.values(markets).find((m) => compareAddresses(m.providerAddress, marketAddress));
116
+ };
@@ -1,45 +1,45 @@
1
- import { AssetData, getAssetInfo } from '@defisaver/tokens';
2
- import { NetworkNumber } from '../../types/common';
3
-
4
- export const aaveV1AssetsDefaultMarket: AssetData[] = [
5
- 'aETH', 'aDAI', 'aUSDC', 'aSUSD', 'aTUSD', 'aUSDT', 'aBUSD', 'aBAT', 'aLEND',
6
- 'aLINK', 'aMANA', 'aMKR', 'aREP', 'aSNX', 'aWBTC', 'aZRX', 'aENJ', 'aREN', 'aYFI', 'aUNI', 'aAAVE',
7
- ].map((symbol) => getAssetInfo(symbol));
8
-
9
- export const aaveV2AssetsDefaultMarket = ['USDT', 'WBTC', 'ETH', 'YFI', 'ZRX', 'UNI', 'AAVE', 'BAT', 'BUSD', 'DAI', 'ENJ', 'KNCL', 'LINK', 'MANA', 'MKR', 'REN', 'SNX', 'SUSD', 'TUSD', 'USDC', 'CRV', 'GUSD', 'BAL', 'xSUSHI', 'RENFIL', 'RAI', 'AMPL', 'USDP', 'DPI', 'FRAX', 'FEI', 'stETH', 'ENS', 'UST', 'CVX', '1INCH', 'LUSD'];
10
-
11
- export const aaveV3AssetsDefaultMarketEth = [
12
- 'ETH', 'wstETH', 'WBTC', 'USDC', 'DAI', 'LINK', 'AAVE', 'cbETH', 'USDT', 'rETH', 'LUSD', 'CRV', 'MKR', 'SNX', 'BAL', 'UNI', 'LDO', 'ENS', '1INCH', 'FRAX', 'GHO', 'RPL', 'sDAI', 'STG', 'KNC', 'FXS', 'crvUSD', 'PYUSD', 'weETH', 'osETH', 'USDe', 'ETHx', 'sUSDe', 'tBTC', 'cbBTC', 'USDS', 'rsETH', 'LBTC', 'eBTC', 'RLUSD', 'PT eUSDe May', 'PT sUSDe July', 'USDtb',
13
- 'eUSDe', 'PT USDe July', 'PT eUSDe Aug', 'EURC', 'FBTC', 'PT sUSDe Sep', 'PT USDe Sep',
14
- ];
15
- export const aaveV3AssetsDefaultMarketOpt = [
16
- 'DAI', 'USDC.e', 'USDT', 'SUSD', 'AAVE', 'LINK', 'WBTC', 'ETH', 'OP', 'wstETH', 'LUSD', 'MAI', 'rETH', 'USDC',
17
- ];
18
- export const aaveV3AssetsDefaultMarketArb = ['DAI', 'LINK', 'USDC.e', 'WBTC', 'ETH', 'USDT', 'AAVE', 'EURS', 'wstETH', 'MAI', 'rETH', 'LUSD', 'USDC', 'FRAX', 'ARB', 'weETH', 'GHO', 'ezETH', 'rsETH'];
19
- export const aaveV3AssetsDefaultMarketBase = ['ETH', 'cbETH', 'USDbC', 'wstETH', 'USDC', 'weETH', 'cbBTC', 'ezETH', 'GHO', 'wrsETH', 'LBTC', 'EURC', 'AAVE'];
20
-
21
- // @dev Keep assets in array, do not assign directly, so we can parse it and edit it programmatically with `scripts/updateMarkets`
22
- export const aaveV3AssetsDefaultMarket = {
23
- [NetworkNumber.Eth]: aaveV3AssetsDefaultMarketEth,
24
- [NetworkNumber.Opt]: aaveV3AssetsDefaultMarketOpt,
25
- [NetworkNumber.Arb]: aaveV3AssetsDefaultMarketArb,
26
- [NetworkNumber.Base]: aaveV3AssetsDefaultMarketBase,
27
- } as const;
28
-
29
- export const aaveV3AssetsLidoMarketEth = ['ETH', 'wstETH', 'USDS', 'USDC', 'ezETH', 'sUSDe', 'GHO', 'rsETH', 'tETH'];
30
-
31
- export const aaveV3AssetsLidoMarket = {
32
- [NetworkNumber.Eth]: aaveV3AssetsLidoMarketEth,
33
- [NetworkNumber.Opt]: [],
34
- [NetworkNumber.Arb]: [],
35
- [NetworkNumber.Base]: [],
36
- } as const;
37
-
38
- export const aaveV3AssetsEtherfiMarketEth = ['weETH', 'USDC', 'PYUSD', 'FRAX'];
39
-
40
- export const aaveV3AssetsEtherfiMarket = {
41
- [NetworkNumber.Eth]: aaveV3AssetsEtherfiMarketEth,
42
- [NetworkNumber.Opt]: [],
43
- [NetworkNumber.Arb]: [],
44
- [NetworkNumber.Base]: [],
1
+ import { AssetData, getAssetInfo } from '@defisaver/tokens';
2
+ import { NetworkNumber } from '../../types/common';
3
+
4
+ export const aaveV1AssetsDefaultMarket: AssetData[] = [
5
+ 'aETH', 'aDAI', 'aUSDC', 'aSUSD', 'aTUSD', 'aUSDT', 'aBUSD', 'aBAT', 'aLEND',
6
+ 'aLINK', 'aMANA', 'aMKR', 'aREP', 'aSNX', 'aWBTC', 'aZRX', 'aENJ', 'aREN', 'aYFI', 'aUNI', 'aAAVE',
7
+ ].map((symbol) => getAssetInfo(symbol));
8
+
9
+ export const aaveV2AssetsDefaultMarket = ['USDT', 'WBTC', 'ETH', 'YFI', 'ZRX', 'UNI', 'AAVE', 'BAT', 'BUSD', 'DAI', 'ENJ', 'KNCL', 'LINK', 'MANA', 'MKR', 'REN', 'SNX', 'SUSD', 'TUSD', 'USDC', 'CRV', 'GUSD', 'BAL', 'xSUSHI', 'RENFIL', 'RAI', 'AMPL', 'USDP', 'DPI', 'FRAX', 'FEI', 'stETH', 'ENS', 'UST', 'CVX', '1INCH', 'LUSD'];
10
+
11
+ export const aaveV3AssetsDefaultMarketEth = [
12
+ 'ETH', 'wstETH', 'WBTC', 'USDC', 'DAI', 'LINK', 'AAVE', 'cbETH', 'USDT', 'rETH', 'LUSD', 'CRV', 'MKR', 'SNX', 'BAL', 'UNI', 'LDO', 'ENS', '1INCH', 'FRAX', 'GHO', 'RPL', 'sDAI', 'STG', 'KNC', 'FXS', 'crvUSD', 'PYUSD', 'weETH', 'osETH', 'USDe', 'ETHx', 'sUSDe', 'tBTC', 'cbBTC', 'USDS', 'rsETH', 'LBTC', 'eBTC', 'RLUSD', 'PT eUSDe May', 'PT sUSDe July', 'USDtb',
13
+ 'eUSDe', 'PT USDe July', 'PT eUSDe Aug', 'EURC', 'FBTC', 'PT sUSDe Sep', 'PT USDe Sep', 'tETH', 'ezETH',
14
+ ];
15
+ export const aaveV3AssetsDefaultMarketOpt = [
16
+ 'DAI', 'USDC.e', 'USDT', 'SUSD', 'AAVE', 'LINK', 'WBTC', 'ETH', 'OP', 'wstETH', 'LUSD', 'MAI', 'rETH', 'USDC',
17
+ ];
18
+ export const aaveV3AssetsDefaultMarketArb = ['DAI', 'LINK', 'USDC.e', 'WBTC', 'ETH', 'USDT', 'AAVE', 'EURS', 'wstETH', 'MAI', 'rETH', 'LUSD', 'USDC', 'FRAX', 'ARB', 'weETH', 'GHO', 'ezETH', 'rsETH'];
19
+ export const aaveV3AssetsDefaultMarketBase = ['ETH', 'cbETH', 'USDbC', 'wstETH', 'USDC', 'weETH', 'cbBTC', 'ezETH', 'GHO', 'wrsETH', 'LBTC', 'EURC', 'AAVE'];
20
+
21
+ // @dev Keep assets in array, do not assign directly, so we can parse it and edit it programmatically with `scripts/updateMarkets`
22
+ export const aaveV3AssetsDefaultMarket = {
23
+ [NetworkNumber.Eth]: aaveV3AssetsDefaultMarketEth,
24
+ [NetworkNumber.Opt]: aaveV3AssetsDefaultMarketOpt,
25
+ [NetworkNumber.Arb]: aaveV3AssetsDefaultMarketArb,
26
+ [NetworkNumber.Base]: aaveV3AssetsDefaultMarketBase,
27
+ } as const;
28
+
29
+ export const aaveV3AssetsLidoMarketEth = ['ETH', 'wstETH', 'USDS', 'USDC', 'ezETH', 'sUSDe', 'GHO', 'rsETH', 'tETH'];
30
+
31
+ export const aaveV3AssetsLidoMarket = {
32
+ [NetworkNumber.Eth]: aaveV3AssetsLidoMarketEth,
33
+ [NetworkNumber.Opt]: [],
34
+ [NetworkNumber.Arb]: [],
35
+ [NetworkNumber.Base]: [],
36
+ } as const;
37
+
38
+ export const aaveV3AssetsEtherfiMarketEth = ['weETH', 'USDC', 'PYUSD', 'FRAX'];
39
+
40
+ export const aaveV3AssetsEtherfiMarket = {
41
+ [NetworkNumber.Eth]: aaveV3AssetsEtherfiMarketEth,
42
+ [NetworkNumber.Opt]: [],
43
+ [NetworkNumber.Arb]: [],
44
+ [NetworkNumber.Base]: [],
45
45
  } as const;