@defisaver/positions-sdk 2.1.52 → 2.1.53

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 (157) hide show
  1. package/.mocharc.json +4 -4
  2. package/.nvmrc +1 -1
  3. package/README.md +64 -64
  4. package/cjs/fluid/index.d.ts +6 -6
  5. package/cjs/helpers/aaveHelpers/index.d.ts +2 -2
  6. package/cjs/helpers/aaveHelpers/index.js +16 -5
  7. package/cjs/helpers/compoundHelpers/index.js +15 -18
  8. package/cjs/helpers/eulerHelpers/index.d.ts +2 -2
  9. package/cjs/helpers/eulerHelpers/index.js +21 -13
  10. package/cjs/helpers/fluidHelpers/index.js +16 -5
  11. package/cjs/helpers/morphoBlueHelpers/index.js +81 -71
  12. package/cjs/helpers/sparkHelpers/index.d.ts +2 -2
  13. package/cjs/helpers/sparkHelpers/index.js +15 -5
  14. package/cjs/moneymarket/moneymarketCommonService.d.ts +3 -3
  15. package/cjs/moneymarket/moneymarketCommonService.js +9 -9
  16. package/cjs/savings/morphoVaults/index.js +17 -17
  17. package/cjs/types/aave.d.ts +3 -3
  18. package/cjs/types/common.d.ts +7 -0
  19. package/cjs/types/common.js +9 -1
  20. package/cjs/types/compound.d.ts +3 -3
  21. package/cjs/types/curveUsd.d.ts +2 -2
  22. package/cjs/types/euler.d.ts +3 -3
  23. package/cjs/types/fluid.d.ts +3 -3
  24. package/cjs/types/index.d.ts +1 -0
  25. package/cjs/types/index.js +1 -0
  26. package/cjs/types/liquityV2.d.ts +3 -3
  27. package/cjs/types/llamaLend.d.ts +2 -2
  28. package/cjs/types/morphoBlue.d.ts +5 -5
  29. package/cjs/types/spark.d.ts +3 -3
  30. package/esm/fluid/index.d.ts +6 -6
  31. package/esm/helpers/aaveHelpers/index.d.ts +2 -2
  32. package/esm/helpers/aaveHelpers/index.js +16 -5
  33. package/esm/helpers/compoundHelpers/index.js +16 -19
  34. package/esm/helpers/eulerHelpers/index.d.ts +2 -2
  35. package/esm/helpers/eulerHelpers/index.js +21 -13
  36. package/esm/helpers/fluidHelpers/index.js +16 -5
  37. package/esm/helpers/morphoBlueHelpers/index.js +82 -72
  38. package/esm/helpers/sparkHelpers/index.d.ts +2 -2
  39. package/esm/helpers/sparkHelpers/index.js +16 -6
  40. package/esm/moneymarket/moneymarketCommonService.d.ts +3 -3
  41. package/esm/moneymarket/moneymarketCommonService.js +9 -9
  42. package/esm/savings/morphoVaults/index.js +17 -17
  43. package/esm/types/aave.d.ts +3 -3
  44. package/esm/types/common.d.ts +7 -0
  45. package/esm/types/common.js +8 -0
  46. package/esm/types/compound.d.ts +3 -3
  47. package/esm/types/curveUsd.d.ts +2 -2
  48. package/esm/types/euler.d.ts +3 -3
  49. package/esm/types/fluid.d.ts +3 -3
  50. package/esm/types/fluid.js +1 -1
  51. package/esm/types/index.d.ts +1 -0
  52. package/esm/types/index.js +1 -0
  53. package/esm/types/liquityV2.d.ts +3 -3
  54. package/esm/types/llamaLend.d.ts +2 -2
  55. package/esm/types/morphoBlue.d.ts +5 -5
  56. package/esm/types/spark.d.ts +3 -3
  57. package/package.json +48 -48
  58. package/src/aaveV2/index.ts +240 -240
  59. package/src/aaveV3/index.ts +635 -635
  60. package/src/aaveV3/merit.ts +97 -97
  61. package/src/aaveV3/merkl.ts +74 -74
  62. package/src/claiming/aaveV3.ts +154 -154
  63. package/src/claiming/compV3.ts +22 -22
  64. package/src/claiming/ethena.ts +61 -61
  65. package/src/claiming/index.ts +12 -12
  66. package/src/claiming/king.ts +66 -66
  67. package/src/claiming/morphoBlue.ts +118 -118
  68. package/src/claiming/spark.ts +225 -225
  69. package/src/compoundV2/index.ts +244 -244
  70. package/src/compoundV3/index.ts +274 -274
  71. package/src/config/contracts.ts +1320 -1320
  72. package/src/constants/index.ts +10 -10
  73. package/src/contracts.ts +171 -171
  74. package/src/curveUsd/index.ts +254 -254
  75. package/src/eulerV2/index.ts +324 -324
  76. package/src/exchange/index.ts +25 -25
  77. package/src/fluid/index.ts +1800 -1800
  78. package/src/helpers/aaveHelpers/index.ts +202 -191
  79. package/src/helpers/compoundHelpers/index.ts +276 -283
  80. package/src/helpers/curveUsdHelpers/index.ts +40 -40
  81. package/src/helpers/eulerHelpers/index.ts +229 -222
  82. package/src/helpers/fluidHelpers/index.ts +335 -326
  83. package/src/helpers/index.ts +10 -10
  84. package/src/helpers/liquityV2Helpers/index.ts +82 -82
  85. package/src/helpers/llamaLendHelpers/index.ts +53 -53
  86. package/src/helpers/makerHelpers/index.ts +52 -52
  87. package/src/helpers/morphoBlueHelpers/index.ts +405 -396
  88. package/src/helpers/sparkHelpers/index.ts +169 -158
  89. package/src/index.ts +49 -49
  90. package/src/liquity/index.ts +159 -159
  91. package/src/liquityV2/index.ts +703 -703
  92. package/src/llamaLend/index.ts +305 -305
  93. package/src/maker/index.ts +223 -223
  94. package/src/markets/aave/index.ts +118 -118
  95. package/src/markets/aave/marketAssets.ts +54 -54
  96. package/src/markets/compound/index.ts +243 -243
  97. package/src/markets/compound/marketsAssets.ts +97 -97
  98. package/src/markets/curveUsd/index.ts +69 -69
  99. package/src/markets/euler/index.ts +26 -26
  100. package/src/markets/fluid/index.ts +2900 -2900
  101. package/src/markets/index.ts +25 -25
  102. package/src/markets/liquityV2/index.ts +102 -102
  103. package/src/markets/llamaLend/contractAddresses.ts +141 -141
  104. package/src/markets/llamaLend/index.ts +235 -235
  105. package/src/markets/morphoBlue/index.ts +988 -988
  106. package/src/markets/spark/index.ts +29 -29
  107. package/src/markets/spark/marketAssets.ts +12 -12
  108. package/src/moneymarket/moneymarketCommonService.ts +84 -85
  109. package/src/morphoBlue/index.ts +274 -274
  110. package/src/portfolio/index.ts +586 -586
  111. package/src/savings/index.ts +95 -95
  112. package/src/savings/makerDsr/index.ts +53 -53
  113. package/src/savings/makerDsr/options.ts +9 -9
  114. package/src/savings/morphoVaults/index.ts +80 -80
  115. package/src/savings/morphoVaults/options.ts +193 -193
  116. package/src/savings/skyOptions/index.ts +95 -95
  117. package/src/savings/skyOptions/options.ts +10 -10
  118. package/src/savings/sparkSavingsVaults/index.ts +60 -60
  119. package/src/savings/sparkSavingsVaults/options.ts +35 -35
  120. package/src/savings/yearnV3Vaults/index.ts +61 -61
  121. package/src/savings/yearnV3Vaults/options.ts +55 -55
  122. package/src/savings/yearnVaults/index.ts +73 -73
  123. package/src/savings/yearnVaults/options.ts +32 -32
  124. package/src/services/priceService.ts +278 -278
  125. package/src/services/utils.ts +115 -115
  126. package/src/services/viem.ts +57 -57
  127. package/src/setup.ts +8 -8
  128. package/src/spark/index.ts +459 -459
  129. package/src/staking/eligibility.ts +53 -53
  130. package/src/staking/index.ts +1 -1
  131. package/src/staking/staking.ts +192 -192
  132. package/src/types/aave.ts +199 -198
  133. package/src/types/claiming.ts +114 -114
  134. package/src/types/common.ts +115 -107
  135. package/src/types/compound.ts +145 -144
  136. package/src/types/curveUsd.ts +123 -123
  137. package/src/types/euler.ts +176 -175
  138. package/src/types/fluid.ts +485 -483
  139. package/src/types/index.ts +16 -15
  140. package/src/types/liquity.ts +30 -30
  141. package/src/types/liquityV2.ts +128 -126
  142. package/src/types/llamaLend.ts +161 -159
  143. package/src/types/maker.ts +63 -63
  144. package/src/types/merit.ts +1 -1
  145. package/src/types/merkl.ts +70 -70
  146. package/src/types/morphoBlue.ts +202 -202
  147. package/src/types/portfolio.ts +60 -60
  148. package/src/types/savings/index.ts +23 -23
  149. package/src/types/savings/makerDsr.ts +13 -13
  150. package/src/types/savings/morphoVaults.ts +32 -32
  151. package/src/types/savings/sky.ts +14 -14
  152. package/src/types/savings/sparkSavingsVaults.ts +15 -15
  153. package/src/types/savings/yearnV3Vaults.ts +17 -17
  154. package/src/types/savings/yearnVaults.ts +14 -14
  155. package/src/types/spark.ts +135 -134
  156. package/src/umbrella/index.ts +69 -69
  157. package/src/umbrella/umbrellaUtils.ts +29 -29
@@ -1,484 +1,486 @@
1
- import { EthAddress, IncentiveData, NetworkNumber } from './common';
2
-
3
- export interface FluidMarketInfo {
4
- chainIds: number[]
5
- label: string
6
- shortLabel: string
7
- value: FluidVersions
8
- url: string
9
- id?: number
10
- marketAddress: EthAddress
11
- hasSmartCollateral: boolean
12
- hasSmartDebt: boolean
13
- collateralAsset0: string
14
- collateralAsset1?: string
15
- debtAsset0: string
16
- debtAsset1?: string
17
- ethBased?: boolean,
18
- btcBased?: boolean,
19
- wstETHBased?: boolean,
20
- stableBased?: boolean,
21
- type: FluidVaultType,
22
- isDeprecatingSoon?: boolean,
23
- }
24
-
25
- export enum FluidMainnetVersion {
26
- FLUID_ETH_USDC_1 = 'FLUID_ETH_USDC_1',
27
- FLUID_ETH_USDT_2 = 'FLUID_ETH_USDT_2',
28
- FLUID_WSTETH_ETH_3 = 'FLUID_WSTETH_ETH_3',
29
- FLUID_WSTETH_USDC_4 = 'FLUID_WSTETH_USDC_4',
30
- FLUID_WSTETH_USDT_5 = 'FLUID_WSTETH_USDT_5',
31
- FLUID_WEETH_WSTETH_6 = 'FLUID_WEETH_WSTETH_6',
32
- FLUID_SUSDE_USDC_7 = 'FLUID_SUSDE_USDC_7',
33
- FLUID_SUSDE_USDT_8 = 'FLUID_SUSDE_USDT_8',
34
- FLUID_WEETH_USDC_9 = 'FLUID_WEETH_USDC_9',
35
- FLUID_WEETH_USDT_10 = 'FLUID_WEETH_USDT_10',
36
- FLUID_ETH_USDC_11 = 'FLUID_ETH_USDC_11',
37
- FLUID_ETH_USDT_12 = 'FLUID_ETH_USDT_12',
38
- FLUID_WSTETH_ETH_13 = 'FLUID_WSTETH_ETH_13',
39
- FLUID_WSTETH_USDC_14 = 'FLUID_WSTETH_USDC_14',
40
- FLUID_WSTETH_USDT_15 = 'FLUID_WSTETH_USDT_15',
41
- FLUID_WEETH_WSTETH_16 = 'FLUID_WEETH_WSTETH_16',
42
- FLUID_SUSDE_USDC_17 = 'FLUID_SUSDE_USDC_17',
43
- FLUID_SUSDE_USDT_18 = 'FLUID_SUSDE_USDT_18',
44
- FLUID_WEETH_USDC_19 = 'FLUID_WEETH_USDC_19',
45
- FLUID_WEETH_USDT_20 = 'FLUID_WEETH_USDT_20',
46
- FLUID_WBTC_USDC_21 = 'FLUID_WBTC_USDC_21',
47
- FLUID_WBTC_USDT_22 = 'FLUID_WBTC_USDT_22',
48
- FLUID_WBTC_ETH_23 = 'FLUID_WBTC_ETH_23',
49
- FLUID_ETH_WBTC_24 = 'FLUID_ETH_WBTC_24',
50
- FLUID_WSTETH_WBTC_25 = 'FLUID_WSTETH_WBTC_25',
51
- FLUID_WEETH_WBTC_26 = 'FLUID_WEETH_WBTC_26',
52
- FLUID_WEETHS_WSTETH_27 = 'FLUID_WEETHS_WSTETH_27',
53
- FLUID_CBBTC_ETH_28 = 'FLUID_CBBTC_ETH_28',
54
- FLUID_CBBTC_USDC_29 = 'FLUID_CBBTC_USDC_29',
55
- FLUID_CBBTC_USDT_30 = 'FLUID_CBBTC_USDT_30',
56
- FLUID_ETH_CBBTC_31 = 'FLUID_ETH_CBBTC_31',
57
- FLUID_WEETH_CBBTC_32 = 'FLUID_WEETH_CBBTC_32',
58
- FLUID_WSTETH_CBBTC_33 = 'FLUID_WSTETH_CBBTC_33',
59
- FLUID_WSTETH_ETH_WSTETH_ETH_44 = 'FLUID_WSTETH_ETH_WSTETH_ETH_44',
60
- FLUID_ETH_USDC_USDT_45 = 'FLUID_ETH_USDC_USDT_45',
61
- FLUID_WSTETH_USDC_USDT_46 = 'FLUID_WSTETH_USDC_USDT_46',
62
- FLUID_WEETH_USDC_USDT_47 = 'FLUID_WEETH_USDC_USDT_47',
63
- FLUID_WBTC_USDC_USDT_48 = 'FLUID_WBTC_USDC_USDT_48',
64
- FLUID_CBBTC_USDC_USDT_49 = 'FLUID_CBBTC_USDC_USDT_49',
65
- FLUID_SUSDE_USDC_USDT_50 = 'FLUID_SUSDE_USDC_USDT_50',
66
- FLUID_WBTC_CBBTC_WBTC_CBBTC_51 = 'FLUID_WBTC_CBBTC_WBTC_CBBTC_51',
67
- FLUID_WBTC_CBBTC_USDC_52 = 'FLUID_WBTC_CBBTC_USDC_52',
68
- FLUID_WBTC_CBBTC_USDT_53 = 'FLUID_WBTC_CBBTC_USDT_53',
69
- FLUID_ETH_GHO_54 = 'FLUID_ETH_GHO_54',
70
- FLUID_WSTETH_GHO_55 = 'FLUID_WSTETH_GHO_55',
71
- FLUID_SUSDE_GHO_56 = 'FLUID_SUSDE_GHO_56',
72
- FLUID_WEETH_GHO_57 = 'FLUID_WEETH_GHO_57',
73
- FLUID_SUSDS_GHO_58 = 'FLUID_SUSDS_GHO_58',
74
- FLUID_WBTC_GHO_59 = 'FLUID_WBTC_GHO_59',
75
- FLUID_CBBTC_GHO_60 = 'FLUID_CBBTC_GHO_60',
76
- FLUID_GHO_USDC_GHO_USDC_61 = 'FLUID_GHO_USDC_GHO_USDC_61',
77
- FLUID_WEETH_ETH_WSTETH_74 = 'FLUID_WEETH_ETH_WSTETH_74',
78
- FLUID_USDC_ETH_USDC_ETH_77 = 'FLUID_USDC_ETH_USDC_ETH_77',
79
- FLUID_RSETH_ETH_WSTETH_78 = 'FLUID_RSETH_ETH_WSTETH_78',
80
- FLUID_RSETH_WSTETH_79 = 'FLUID_RSETH_WSTETH_79',
81
- FLUID_WEETHS_ETH_WSTETH_80 = 'FLUID_WEETHS_ETH_WSTETH_80',
82
- FLUID_SUSDE_USDT_USDT_92 = 'FLUID_SUSDE_USDT_USDT_92',
83
- FLUID_USDE_USDT_USDT_93 = 'FLUID_USDE_USDT_USDT_93',
84
- FLUID_LBTC_CBBTC_WBTC_97 = 'FLUID_LBTC_CBBTC_WBTC_97',
85
- FLUID_SUSDE_USDT_USDC_USDT_98 = 'FLUID_SUSDE_USDT_USDC_USDT_98',
86
- FLUID_USDE_USDT_USDC_USDT_99 = 'FLUID_USDE_USDT_USDC_USDT_99',
87
- FLUID_USDC_ETH_100 = 'FLUID_USDC_ETH_100',
88
- FLUID_USDC_WBTC_101 = 'FLUID_USDC_WBTC_101',
89
- FLUID_USDC_CBBTC_102 = 'FLUID_USDC_CBBTC_102',
90
- FLUID_EZETH_WSTETH_103 = 'FLUID_EZETH_WSTETH_103',
91
- FLUID_EZETH_ETH_WSTETH_104 = 'FLUID_EZETH_ETH_WSTETH_104',
92
- FLUID_LBTC_USDC_107 = 'FLUID_LBTC_USDC_107',
93
- FLUID_LBTC_USDT_108 = 'FLUID_LBTC_USDT_108',
94
- FLUID_LBTC_GHO_109 = 'FLUID_LBTC_GHO_109',
95
- FLUID_LBTC_CBBTC_CBBTC_114 = 'FLUID_LBTC_CBBTC_CBBTC_114',
96
- FLUID_WBTC_LBTC_WBTC_115 = 'FLUID_WBTC_LBTC_WBTC_115',
97
- }
98
-
99
- export enum FluidArbitrumVersion {
100
- FLUID_ETH_USDC_1_ARB = 'FLUID_ETH_USDC_1_ARB',
101
- FLUID_ETH_USDT_2_ARB = 'FLUID_ETH_USDT_2_ARB',
102
- FLUID_WSTETH_USDC_3_ARB = 'FLUID_WSTETH_USDC_3_ARB',
103
- FLUID_WSTETH_USDT_4_ARB = 'FLUID_WSTETH_USDT_4_ARB',
104
- FLUID_WSTETH_ETH_5_ARB = 'FLUID_WSTETH_ETH_5_ARB',
105
- FLUID_WEETH_WSTETH_6_ARB = 'FLUID_WEETH_WSTETH_6_ARB',
106
- FLUID_WEETH_USDC_7_ARB = 'FLUID_WEETH_USDC_7_ARB',
107
- FLUID_WEETH_USDT_8_ARB = 'FLUID_WEETH_USDT_8_ARB',
108
- FLUID_ETH_ARB_9_ARB = 'FLUID_ETH_ARB_9_ARB',
109
- FLUID_ARB_USDC_10_ARB = 'FLUID_ARB_USDC_10_ARB',
110
- FLUID_ARB_USDT_11_ARB = 'FLUID_ARB_USDT_11_ARB',
111
- FLUID_WBTC_USDC_12_ARB = 'FLUID_WBTC_USDC_12_ARB',
112
- FLUID_WBTC_USDT_13_ARB = 'FLUID_WBTC_USDT_13_ARB',
113
- FLUID_WSTETH_ETH_WSTETH_ETH_16_ARB = 'FLUID_WSTETH_ETH_WSTETH_ETH_16_ARB',
114
- FLUID_WEETH_ETH_WSTETH_17_ARB = 'FLUID_WEETH_ETH_WSTETH_17_ARB',
115
- FLUID_WBTC_ETH_18_ARB = 'FLUID_WBTC_ETH_18_ARB',
116
- FLUID_ETH_WBTC_19_ARB = 'FLUID_ETH_WBTC_19_ARB',
117
- FLUID_WSTETH_WBTC_20_ARB = 'FLUID_WSTETH_WBTC_20_ARB',
118
- FLUID_WEETH_WBTC_21_ARB = 'FLUID_WEETH_WBTC_21_ARB',
119
- FLUID_USDC_ETH_USDC_ETH_22_ARB = 'FLUID_USDC_ETH_USDC_ETH_22_ARB',
120
- FLUID_ETH_USDC_USDT_23_ARB = 'FLUID_ETH_USDC_USDT_23_ARB',
121
- FLUID_WSTETH_USDC_USDT_24_ARB = 'FLUID_WSTETH_USDC_USDT_24_ARB',
122
- FLUID_WEETH_USDC_USDT_25_ARB = 'FLUID_WEETH_USDC_USDT_25_ARB',
123
- FLUID_WBTC_USDC_USDT_26_ARB = 'FLUID_WBTC_USDC_USDT_26_ARB',
124
- // FLUID_SUSDS_USDC_USDT_30_ARB = 'FLUID_SUSDS_USDC_USDT_30_ARB',
125
- }
126
-
127
- export enum FluidBaseVersions {
128
- FLUID_ETH_USDC_1_BASE = 'FLUID_ETH_USDC_1_BASE',
129
- FLUID_WSTETH_USDC_2_BASE = 'FLUID_WSTETH_USDC_2_BASE',
130
- FLUID_WSTETH_ETH_3_BASE = 'FLUID_WSTETH_ETH_3_BASE',
131
- FLUID_WEETH_WSTETH_4_BASE = 'FLUID_WEETH_WSTETH_4_BASE',
132
- FLUID_WEETH_USDC_5_BASE = 'FLUID_WEETH_USDC_5_BASE',
133
- FLUID_CBETH_USDC_6_BASE = 'FLUID_CBETH_USDC_6_BASE',
134
- FLUID_CBBTC_USDC_7_BASE = 'FLUID_CBBTC_USDC_7_BASE',
135
- FLUID_CBBTC_EURC_8_BASE = 'FLUID_CBBTC_EURC_8_BASE',
136
- FLUID_CBETH_EURC_9_BASE = 'FLUID_CBETH_EURC_9_BASE',
137
- FLUID_ETH_EURC_10_BASE = 'FLUID_ETH_EURC_10_BASE',
138
- FLUID_WEETH_EURC_11_BASE = 'FLUID_WEETH_EURC_11_BASE',
139
- FLUID_WSTETH_EURC_12_BASE = 'FLUID_WSTETH_EURC_12_BASE',
140
- FLUID_CBBTC_ETH_13_BASE = 'FLUID_CBBTC_ETH_13_BASE',
141
- FLUID_ETH_CBBTC_14_BASE = 'FLUID_ETH_CBBTC_14_BASE',
142
- FLUID_WEETH_CBBTC_15_BASE = 'FLUID_WEETH_CBBTC_15_BASE',
143
- FLUID_WSTETH_CBBTC_16_BASE = 'FLUID_WSTETH_CBBTC_16_BASE',
144
- FLUID_ETH_SUSDS_17_BASE = 'FLUID_ETH_SUSDS_17_BASE',
145
- FLUID_WSTETH_SUSDS_18_BASE = 'FLUID_WSTETH_SUSDS_18_BASE',
146
- FLUID_CBBTC_SUSDS_19_BASE = 'FLUID_CBBTC_SUSDS_19_BASE',
147
- FLUID_LBTC_USDC_21_BASE = 'FLUID_LBTC_USDC_21_BASE',
148
- FLUID_LBTC_SUSDS_22_BASE = 'FLUID_LBTC_SUSDS_22_BASE',
149
- }
150
-
151
- export enum FluidPlasmaVersions {
152
- FLUID_ETH_USDT_1_PLASMA = 'FLUID_ETH_USDT_1_PLASMA',
153
- FLUID_ETH_USDE_2_PLASMA = 'FLUID_ETH_USDE_2_PLASMA',
154
- FLUID_WEETH_ETH_3_PLASMA = 'FLUID_WEETH_ETH_3_PLASMA',
155
- FLUID_SUSDE_USDT_4_PLASMA = 'FLUID_SUSDE_USDT_4_PLASMA',
156
- FLUID_WEETH_USDT_5_PLASMA = 'FLUID_WEETH_USDT_5_PLASMA',
157
- FLUID_WEETH_USDE_6_PLASMA = 'FLUID_WEETH_USDE_6_PLASMA',
158
- FLUID_XAUT_USDT_7_PLASMA = 'FLUID_XAUT_USDT_7_PLASMA',
159
- FLUID_XAUT_USDE_8_PLASMA = 'FLUID_XAUT_USDE_8_PLASMA',
160
- FLUID_USDE_USDT_9_PLASMA = 'FLUID_USDE_USDT_9_PLASMA',
161
- FLUID_USDAI_USDT_10_PLASMA = 'FLUID_USDAI_USDT_10_PLASMA',
162
- FLUID_ETH_WEETH_ETH_11_PLASMA = 'FLUID_ETH_WEETH_ETH_11_PLASMA',
163
- FLUID_SUSDE_USDT_USDT_12_PLASMA = 'FLUID_SUSDE_USDT_USDT_12_PLASMA',
164
- FLUID_USDE_USDT_USDT_13_PLASMA = 'FLUID_USDE_USDT_USDT_13_PLASMA',
165
- FLUID_USDAI_USDT_USDT_14_PLASMA = 'FLUID_USDAI_USDT_USDT_14_PLASMA',
166
- FLUID_USDT_SYRUPUSDT_USDT_15_PLASMA = 'FLUID_USDT_SYRUPUSDT_USDT_15_PLASMA',
167
- FLUID_XPL_USDT_16_PLASMA = 'FLUID_XPL_USDT_16_PLASMA',
168
- FLUID_XPL_USDE_17_PLASMA = 'FLUID_XPL_USDE_17_PLASMA',
169
- FLUID_WSTUSR_USDT_18_PLASMA = 'FLUID_WSTUSR_USDT_18_PLASMA',
170
- FLUID_WSTUSR_USDT_USDT_19_PLASMA = 'FLUID_WSTUSR_USDT_USDT_19_PLASMA',
171
- FLUID_SYRUPUSDT_USDT_20_PLASMA = 'FLUID_SYRUPUSDT_USDT_20_PLASMA',
172
- FLUID_ETH_WRSETH_ETH_21_PLASMA = 'FLUID_ETH_WRSETH_ETH_21_PLASMA',
173
- }
174
-
175
- export type FluidVersions = FluidArbitrumVersion | FluidBaseVersions | FluidMainnetVersion | FluidPlasmaVersions;
176
-
177
- export enum FluidMainnetDepositToken {
178
- ETH = 'ETH',
179
- wstETH = 'wstETH',
180
- USDC = 'USDC',
181
- USDT = 'USDT',
182
- GHO = 'GHO',
183
- sUSDS = 'sUSDS',
184
- USDtb = 'USDtb',
185
- }
186
-
187
- export enum FluidArbitrumDepositToken {
188
- ETH = 'ETH',
189
- wstETH = 'wstETH',
190
- USDC = 'USDC',
191
- USDT = 'USDT',
192
- ARB = 'ARB',
193
- GHO = 'GHO',
194
- sUSDS = 'sUSDS',
195
- }
196
-
197
- export enum FluidBaseDepositToken {
198
- ETH = 'ETH',
199
- USDC = 'USDC',
200
- wstETH = 'wstETH',
201
- EURC = 'EURC',
202
- sUSDS = 'sUSDS',
203
- GHO = 'GHO',
204
- }
205
-
206
- export enum FluidPlasmaDepositToken {
207
- USDe = 'USDe',
208
- USDT = 'USDT',
209
- ETH = 'ETH',
210
- }
211
-
212
- export type FluidDepositTokenByNetwork = {
213
- [NetworkNumber.Eth]: FluidMainnetDepositToken;
214
- [NetworkNumber.Arb]: FluidArbitrumDepositToken;
215
- [NetworkNumber.Base]: FluidBaseDepositToken;
216
- [NetworkNumber.Plasma]: FluidPlasmaDepositToken;
217
- };
218
-
219
- export enum FluidVaultType {
220
- T1 = 'T1',
221
- T2 = 'T2',
222
- T3 = 'T3',
223
- T4 = 'T4',
224
- Unknown = 'Unknown',
225
- }
226
-
227
- export interface FluidAssetData {
228
- symbol: string,
229
- address: string,
230
- price: string,
231
- supplyIncentives: IncentiveData[],
232
- borrowIncentives: IncentiveData[],
233
- totalSupply: string,
234
- totalBorrow: string,
235
- canBeSupplied: boolean,
236
- canBeBorrowed: boolean,
237
- supplyRate: string,
238
- borrowRate: string,
239
- utilization?: string,
240
- withdrawable?: string,
241
- borrowable?: string,
242
- tokenPerSupplyShare?: string,
243
- tokenPerBorrowShare?: string,
244
- supplyReserves?: string,
245
- borrowReserves?: string,
246
- }
247
- export type FluidAssetsData = { [key: string]: FluidAssetData };
248
-
249
- export interface InnerFluidMarketData {
250
- // Market specific data
251
- vaultId: number,
252
- isSmartColl: boolean,
253
- isSmartDebt: boolean,
254
- marketAddress: string,
255
- vaultType: FluidVaultType,
256
- vaultValue?: FluidVersions
257
- oracle: EthAddress,
258
- liquidationPenaltyPercent: string,
259
- collFactor: string,
260
- liquidationRatio: string,
261
- liqFactor: string,
262
- minRatio: string,
263
- collAsset0: string,
264
- collAsset1?: string,
265
- debtAsset0: string,
266
- debtAsset1?: string,
267
- totalPositions: string,
268
- totalSupplyVault: string,
269
- totalSupplyVaultUsd: string,
270
- totalBorrowVault: string,
271
- totalBorrowVaultUsd: string,
272
- withdrawalLimit?: string,
273
- withdrawableUntilLimit?: string,
274
- withdrawable: string,
275
- withdrawableDex?: string,
276
- borrowLimit?: string,
277
- borrowableUntilLimit?: string,
278
- borrowable: string,
279
- borrowableDex?: string,
280
- borrowLimitUtilization?: string,
281
- maxBorrowLimit?: string,
282
- baseBorrowLimit?: string,
283
- minimumBorrowing?: string,
284
- supplyRate: string,
285
- borrowRate: string,
286
- liquidationMaxLimit: string,
287
- oraclePrice: string,
288
- incentiveBorrowRate?: string,
289
- incentiveSupplyRate?: string,
290
- // T2 and T4 vaults
291
- collSharePrice?: string,
292
- maxSupplyShares?: string,
293
- maxSupplySharesUsd?: string,
294
- withdrawableUSD?: string,
295
- totalSupplyToken0?: string,
296
- totalSupplyToken1?: string,
297
- withdrawableToken0?: string,
298
- withdrawableToken1?: string,
299
- collDexFee?: string
300
- // T3 and T4 vaults
301
- debtSharePrice?: string,
302
- maxBorrowShares?: string,
303
- maxBorrowSharesUsd?: string,
304
- borrowableUSD?: string,
305
- borrowableToken0?: string,
306
- borrowableToken1?: string,
307
- totalBorrowToken0?: string,
308
- totalBorrowToken1?: string,
309
- borrowDexFee?: string,
310
- // Dex vault
311
- tradingBorrowRate?: string,
312
- tradingSupplyRate?: string,
313
- }
314
-
315
- export interface FluidMarketData {
316
- assetsData: FluidAssetsData,
317
- marketData: InnerFluidMarketData,
318
- }
319
-
320
- export interface FluidUsedAsset {
321
- symbol: string,
322
- collateral?: boolean,
323
- supplied: string,
324
- suppliedUsd: string,
325
- borrowed: string,
326
- borrowedUsd: string,
327
- isSupplied: boolean,
328
- isBorrowed: boolean,
329
- }
330
-
331
- export type FluidUsedAssets = { [key: string]: FluidUsedAsset };
332
-
333
- export interface FluidAggregatedVaultData {
334
- suppliedUsd: string,
335
- borrowedUsd: string,
336
- borrowLimitUsd: string,
337
- liquidationLimitUsd: string,
338
- leftToBorrowUsd: string,
339
- netApy: string,
340
- incentiveUsd: string,
341
- ratio: string,
342
- collRatio: string,
343
- minRatio: string
344
- totalInterestUsd: string,
345
- leveragedType?: string,
346
- leveragedAsset?: string,
347
- liquidationPrice?: string,
348
- leveragedLsdAssetRatio?: string,
349
- minCollRatio?: string,
350
- collLiquidationRatio?: string,
351
- }
352
-
353
- export interface BaseFluidVaultData {
354
- owner: string,
355
- vaultId: number,
356
- usedAssets: FluidUsedAssets,
357
- isSubscribedToAutomation: boolean,
358
- automationResubscribeRequired: boolean,
359
- lastUpdated: number,
360
- supplyShares?: string;
361
- borrowShares?: string;
362
- nftId: string;
363
- }
364
-
365
- export type FluidVaultData = FluidAggregatedVaultData & BaseFluidVaultData;
366
-
367
- export interface FluidDexSupplyDataStructOutput {
368
- dexPool: EthAddress;
369
- dexId: bigint;
370
- fee: bigint;
371
- lastStoredPrice: bigint;
372
- centerPrice: bigint;
373
- token0Utilization: bigint;
374
- token1Utilization: bigint;
375
- totalSupplyShares: bigint;
376
- maxSupplyShares: bigint;
377
- token0Supplied: bigint;
378
- token1Supplied: bigint;
379
- sharesWithdrawable: bigint;
380
- token0Withdrawable: bigint;
381
- token1Withdrawable: bigint;
382
- token0PerSupplyShare: bigint;
383
- token1PerSupplyShare: bigint;
384
- token0SupplyRate: bigint;
385
- token1SupplyRate: bigint;
386
- supplyToken0Reserves: bigint;
387
- supplyToken1Reserves: bigint;
388
- }
389
-
390
- export interface FluidDexBorrowDataStructOutput {
391
- quoteToken: EthAddress;
392
- dexPool: EthAddress;
393
- dexId: bigint;
394
- fee: bigint;
395
- lastStoredPrice: bigint;
396
- centerPrice: bigint;
397
- token0Utilization: bigint;
398
- token1Utilization: bigint;
399
- totalBorrowShares: bigint;
400
- maxBorrowShares: bigint;
401
- token0Borrowed: bigint;
402
- token1Borrowed: bigint;
403
- sharesBorrowable: bigint;
404
- token0Borrowable: bigint;
405
- token1Borrowable: bigint;
406
- token0PerBorrowShare: bigint;
407
- token1PerBorrowShare: bigint;
408
- token0BorrowRate: bigint;
409
- token1BorrowRate: bigint;
410
- quoteTokensPerShare: bigint;
411
- borrowToken0Reserves: bigint;
412
- borrowToken1Reserves: bigint;
413
- }
414
-
415
- export interface FluidVaultDataStructOutputStruct {
416
- vault: EthAddress;
417
- vaultId: bigint;
418
- vaultType: bigint;
419
- isSmartColl: boolean;
420
- isSmartDebt: boolean;
421
- supplyToken0: EthAddress;
422
- supplyToken1: EthAddress;
423
- borrowToken0: EthAddress;
424
- borrowToken1: EthAddress;
425
- supplyRateVault: bigint;
426
- borrowRateVault: bigint;
427
- oraclePriceOperate: bigint;
428
- totalSupplyVault: bigint;
429
- totalBorrowVault: bigint;
430
- liquidationThreshold: number;
431
- liquidationMaxLimit: number;
432
- oracle: EthAddress;
433
- liquidationPenalty: number;
434
- collateralFactor: number;
435
- totalPositions: bigint;
436
- withdrawalLimit: bigint;
437
- withdrawableUntilLimit: bigint;
438
- withdrawable: bigint;
439
- borrowLimit: bigint;
440
- borrowableUntilLimit: bigint;
441
- borrowable: bigint;
442
- borrowLimitUtilization: bigint;
443
- maxBorrowLimit: bigint;
444
- baseBorrowLimit: bigint;
445
- minimumBorrowing: bigint;
446
- dexSupplyData: FluidDexSupplyDataStructOutput;
447
- dexBorrowData: FluidDexBorrowDataStructOutput;
448
- }
449
-
450
- export interface FluidUserPositionStructOutputStruct {
451
- nftId: bigint;
452
- owner: EthAddress;
453
- isLiquidated: boolean;
454
- isSupplyPosition: boolean;
455
- supply: bigint;
456
- borrow: bigint;
457
- ratio: bigint;
458
- tick: bigint;
459
- tickId: bigint;
460
- }
461
-
462
- export interface FluidUserEarnPositionStructOutput {
463
- fTokenShares: bigint;
464
- underlyingAssets: bigint;
465
- underlyingBalance: bigint;
466
- allowance: bigint;
467
- }
468
-
469
- export interface FluidFTokenDataStructOutput {
470
- tokenAddress: EthAddress;
471
- isNativeUnderlying: boolean;
472
- name: string;
473
- symbol: string;
474
- decimals: bigint;
475
- asset: EthAddress;
476
- totalAssets: bigint;
477
- totalSupply: bigint;
478
- convertToShares: bigint;
479
- convertToAssets: bigint;
480
- expandDuration: bigint;
481
- supplyRate: bigint;
482
- rewardsRate: bigint;
483
- withdrawable: bigint;
1
+ import {
2
+ EthAddress, IncentiveData, LeverageType, NetworkNumber,
3
+ } from './common';
4
+
5
+ export interface FluidMarketInfo {
6
+ chainIds: number[]
7
+ label: string
8
+ shortLabel: string
9
+ value: FluidVersions
10
+ url: string
11
+ id?: number
12
+ marketAddress: EthAddress
13
+ hasSmartCollateral: boolean
14
+ hasSmartDebt: boolean
15
+ collateralAsset0: string
16
+ collateralAsset1?: string
17
+ debtAsset0: string
18
+ debtAsset1?: string
19
+ ethBased?: boolean,
20
+ btcBased?: boolean,
21
+ wstETHBased?: boolean,
22
+ stableBased?: boolean,
23
+ type: FluidVaultType,
24
+ isDeprecatingSoon?: boolean,
25
+ }
26
+
27
+ export enum FluidMainnetVersion {
28
+ FLUID_ETH_USDC_1 = 'FLUID_ETH_USDC_1',
29
+ FLUID_ETH_USDT_2 = 'FLUID_ETH_USDT_2',
30
+ FLUID_WSTETH_ETH_3 = 'FLUID_WSTETH_ETH_3',
31
+ FLUID_WSTETH_USDC_4 = 'FLUID_WSTETH_USDC_4',
32
+ FLUID_WSTETH_USDT_5 = 'FLUID_WSTETH_USDT_5',
33
+ FLUID_WEETH_WSTETH_6 = 'FLUID_WEETH_WSTETH_6',
34
+ FLUID_SUSDE_USDC_7 = 'FLUID_SUSDE_USDC_7',
35
+ FLUID_SUSDE_USDT_8 = 'FLUID_SUSDE_USDT_8',
36
+ FLUID_WEETH_USDC_9 = 'FLUID_WEETH_USDC_9',
37
+ FLUID_WEETH_USDT_10 = 'FLUID_WEETH_USDT_10',
38
+ FLUID_ETH_USDC_11 = 'FLUID_ETH_USDC_11',
39
+ FLUID_ETH_USDT_12 = 'FLUID_ETH_USDT_12',
40
+ FLUID_WSTETH_ETH_13 = 'FLUID_WSTETH_ETH_13',
41
+ FLUID_WSTETH_USDC_14 = 'FLUID_WSTETH_USDC_14',
42
+ FLUID_WSTETH_USDT_15 = 'FLUID_WSTETH_USDT_15',
43
+ FLUID_WEETH_WSTETH_16 = 'FLUID_WEETH_WSTETH_16',
44
+ FLUID_SUSDE_USDC_17 = 'FLUID_SUSDE_USDC_17',
45
+ FLUID_SUSDE_USDT_18 = 'FLUID_SUSDE_USDT_18',
46
+ FLUID_WEETH_USDC_19 = 'FLUID_WEETH_USDC_19',
47
+ FLUID_WEETH_USDT_20 = 'FLUID_WEETH_USDT_20',
48
+ FLUID_WBTC_USDC_21 = 'FLUID_WBTC_USDC_21',
49
+ FLUID_WBTC_USDT_22 = 'FLUID_WBTC_USDT_22',
50
+ FLUID_WBTC_ETH_23 = 'FLUID_WBTC_ETH_23',
51
+ FLUID_ETH_WBTC_24 = 'FLUID_ETH_WBTC_24',
52
+ FLUID_WSTETH_WBTC_25 = 'FLUID_WSTETH_WBTC_25',
53
+ FLUID_WEETH_WBTC_26 = 'FLUID_WEETH_WBTC_26',
54
+ FLUID_WEETHS_WSTETH_27 = 'FLUID_WEETHS_WSTETH_27',
55
+ FLUID_CBBTC_ETH_28 = 'FLUID_CBBTC_ETH_28',
56
+ FLUID_CBBTC_USDC_29 = 'FLUID_CBBTC_USDC_29',
57
+ FLUID_CBBTC_USDT_30 = 'FLUID_CBBTC_USDT_30',
58
+ FLUID_ETH_CBBTC_31 = 'FLUID_ETH_CBBTC_31',
59
+ FLUID_WEETH_CBBTC_32 = 'FLUID_WEETH_CBBTC_32',
60
+ FLUID_WSTETH_CBBTC_33 = 'FLUID_WSTETH_CBBTC_33',
61
+ FLUID_WSTETH_ETH_WSTETH_ETH_44 = 'FLUID_WSTETH_ETH_WSTETH_ETH_44',
62
+ FLUID_ETH_USDC_USDT_45 = 'FLUID_ETH_USDC_USDT_45',
63
+ FLUID_WSTETH_USDC_USDT_46 = 'FLUID_WSTETH_USDC_USDT_46',
64
+ FLUID_WEETH_USDC_USDT_47 = 'FLUID_WEETH_USDC_USDT_47',
65
+ FLUID_WBTC_USDC_USDT_48 = 'FLUID_WBTC_USDC_USDT_48',
66
+ FLUID_CBBTC_USDC_USDT_49 = 'FLUID_CBBTC_USDC_USDT_49',
67
+ FLUID_SUSDE_USDC_USDT_50 = 'FLUID_SUSDE_USDC_USDT_50',
68
+ FLUID_WBTC_CBBTC_WBTC_CBBTC_51 = 'FLUID_WBTC_CBBTC_WBTC_CBBTC_51',
69
+ FLUID_WBTC_CBBTC_USDC_52 = 'FLUID_WBTC_CBBTC_USDC_52',
70
+ FLUID_WBTC_CBBTC_USDT_53 = 'FLUID_WBTC_CBBTC_USDT_53',
71
+ FLUID_ETH_GHO_54 = 'FLUID_ETH_GHO_54',
72
+ FLUID_WSTETH_GHO_55 = 'FLUID_WSTETH_GHO_55',
73
+ FLUID_SUSDE_GHO_56 = 'FLUID_SUSDE_GHO_56',
74
+ FLUID_WEETH_GHO_57 = 'FLUID_WEETH_GHO_57',
75
+ FLUID_SUSDS_GHO_58 = 'FLUID_SUSDS_GHO_58',
76
+ FLUID_WBTC_GHO_59 = 'FLUID_WBTC_GHO_59',
77
+ FLUID_CBBTC_GHO_60 = 'FLUID_CBBTC_GHO_60',
78
+ FLUID_GHO_USDC_GHO_USDC_61 = 'FLUID_GHO_USDC_GHO_USDC_61',
79
+ FLUID_WEETH_ETH_WSTETH_74 = 'FLUID_WEETH_ETH_WSTETH_74',
80
+ FLUID_USDC_ETH_USDC_ETH_77 = 'FLUID_USDC_ETH_USDC_ETH_77',
81
+ FLUID_RSETH_ETH_WSTETH_78 = 'FLUID_RSETH_ETH_WSTETH_78',
82
+ FLUID_RSETH_WSTETH_79 = 'FLUID_RSETH_WSTETH_79',
83
+ FLUID_WEETHS_ETH_WSTETH_80 = 'FLUID_WEETHS_ETH_WSTETH_80',
84
+ FLUID_SUSDE_USDT_USDT_92 = 'FLUID_SUSDE_USDT_USDT_92',
85
+ FLUID_USDE_USDT_USDT_93 = 'FLUID_USDE_USDT_USDT_93',
86
+ FLUID_LBTC_CBBTC_WBTC_97 = 'FLUID_LBTC_CBBTC_WBTC_97',
87
+ FLUID_SUSDE_USDT_USDC_USDT_98 = 'FLUID_SUSDE_USDT_USDC_USDT_98',
88
+ FLUID_USDE_USDT_USDC_USDT_99 = 'FLUID_USDE_USDT_USDC_USDT_99',
89
+ FLUID_USDC_ETH_100 = 'FLUID_USDC_ETH_100',
90
+ FLUID_USDC_WBTC_101 = 'FLUID_USDC_WBTC_101',
91
+ FLUID_USDC_CBBTC_102 = 'FLUID_USDC_CBBTC_102',
92
+ FLUID_EZETH_WSTETH_103 = 'FLUID_EZETH_WSTETH_103',
93
+ FLUID_EZETH_ETH_WSTETH_104 = 'FLUID_EZETH_ETH_WSTETH_104',
94
+ FLUID_LBTC_USDC_107 = 'FLUID_LBTC_USDC_107',
95
+ FLUID_LBTC_USDT_108 = 'FLUID_LBTC_USDT_108',
96
+ FLUID_LBTC_GHO_109 = 'FLUID_LBTC_GHO_109',
97
+ FLUID_LBTC_CBBTC_CBBTC_114 = 'FLUID_LBTC_CBBTC_CBBTC_114',
98
+ FLUID_WBTC_LBTC_WBTC_115 = 'FLUID_WBTC_LBTC_WBTC_115',
99
+ }
100
+
101
+ export enum FluidArbitrumVersion {
102
+ FLUID_ETH_USDC_1_ARB = 'FLUID_ETH_USDC_1_ARB',
103
+ FLUID_ETH_USDT_2_ARB = 'FLUID_ETH_USDT_2_ARB',
104
+ FLUID_WSTETH_USDC_3_ARB = 'FLUID_WSTETH_USDC_3_ARB',
105
+ FLUID_WSTETH_USDT_4_ARB = 'FLUID_WSTETH_USDT_4_ARB',
106
+ FLUID_WSTETH_ETH_5_ARB = 'FLUID_WSTETH_ETH_5_ARB',
107
+ FLUID_WEETH_WSTETH_6_ARB = 'FLUID_WEETH_WSTETH_6_ARB',
108
+ FLUID_WEETH_USDC_7_ARB = 'FLUID_WEETH_USDC_7_ARB',
109
+ FLUID_WEETH_USDT_8_ARB = 'FLUID_WEETH_USDT_8_ARB',
110
+ FLUID_ETH_ARB_9_ARB = 'FLUID_ETH_ARB_9_ARB',
111
+ FLUID_ARB_USDC_10_ARB = 'FLUID_ARB_USDC_10_ARB',
112
+ FLUID_ARB_USDT_11_ARB = 'FLUID_ARB_USDT_11_ARB',
113
+ FLUID_WBTC_USDC_12_ARB = 'FLUID_WBTC_USDC_12_ARB',
114
+ FLUID_WBTC_USDT_13_ARB = 'FLUID_WBTC_USDT_13_ARB',
115
+ FLUID_WSTETH_ETH_WSTETH_ETH_16_ARB = 'FLUID_WSTETH_ETH_WSTETH_ETH_16_ARB',
116
+ FLUID_WEETH_ETH_WSTETH_17_ARB = 'FLUID_WEETH_ETH_WSTETH_17_ARB',
117
+ FLUID_WBTC_ETH_18_ARB = 'FLUID_WBTC_ETH_18_ARB',
118
+ FLUID_ETH_WBTC_19_ARB = 'FLUID_ETH_WBTC_19_ARB',
119
+ FLUID_WSTETH_WBTC_20_ARB = 'FLUID_WSTETH_WBTC_20_ARB',
120
+ FLUID_WEETH_WBTC_21_ARB = 'FLUID_WEETH_WBTC_21_ARB',
121
+ FLUID_USDC_ETH_USDC_ETH_22_ARB = 'FLUID_USDC_ETH_USDC_ETH_22_ARB',
122
+ FLUID_ETH_USDC_USDT_23_ARB = 'FLUID_ETH_USDC_USDT_23_ARB',
123
+ FLUID_WSTETH_USDC_USDT_24_ARB = 'FLUID_WSTETH_USDC_USDT_24_ARB',
124
+ FLUID_WEETH_USDC_USDT_25_ARB = 'FLUID_WEETH_USDC_USDT_25_ARB',
125
+ FLUID_WBTC_USDC_USDT_26_ARB = 'FLUID_WBTC_USDC_USDT_26_ARB',
126
+ // FLUID_SUSDS_USDC_USDT_30_ARB = 'FLUID_SUSDS_USDC_USDT_30_ARB',
127
+ }
128
+
129
+ export enum FluidBaseVersions {
130
+ FLUID_ETH_USDC_1_BASE = 'FLUID_ETH_USDC_1_BASE',
131
+ FLUID_WSTETH_USDC_2_BASE = 'FLUID_WSTETH_USDC_2_BASE',
132
+ FLUID_WSTETH_ETH_3_BASE = 'FLUID_WSTETH_ETH_3_BASE',
133
+ FLUID_WEETH_WSTETH_4_BASE = 'FLUID_WEETH_WSTETH_4_BASE',
134
+ FLUID_WEETH_USDC_5_BASE = 'FLUID_WEETH_USDC_5_BASE',
135
+ FLUID_CBETH_USDC_6_BASE = 'FLUID_CBETH_USDC_6_BASE',
136
+ FLUID_CBBTC_USDC_7_BASE = 'FLUID_CBBTC_USDC_7_BASE',
137
+ FLUID_CBBTC_EURC_8_BASE = 'FLUID_CBBTC_EURC_8_BASE',
138
+ FLUID_CBETH_EURC_9_BASE = 'FLUID_CBETH_EURC_9_BASE',
139
+ FLUID_ETH_EURC_10_BASE = 'FLUID_ETH_EURC_10_BASE',
140
+ FLUID_WEETH_EURC_11_BASE = 'FLUID_WEETH_EURC_11_BASE',
141
+ FLUID_WSTETH_EURC_12_BASE = 'FLUID_WSTETH_EURC_12_BASE',
142
+ FLUID_CBBTC_ETH_13_BASE = 'FLUID_CBBTC_ETH_13_BASE',
143
+ FLUID_ETH_CBBTC_14_BASE = 'FLUID_ETH_CBBTC_14_BASE',
144
+ FLUID_WEETH_CBBTC_15_BASE = 'FLUID_WEETH_CBBTC_15_BASE',
145
+ FLUID_WSTETH_CBBTC_16_BASE = 'FLUID_WSTETH_CBBTC_16_BASE',
146
+ FLUID_ETH_SUSDS_17_BASE = 'FLUID_ETH_SUSDS_17_BASE',
147
+ FLUID_WSTETH_SUSDS_18_BASE = 'FLUID_WSTETH_SUSDS_18_BASE',
148
+ FLUID_CBBTC_SUSDS_19_BASE = 'FLUID_CBBTC_SUSDS_19_BASE',
149
+ FLUID_LBTC_USDC_21_BASE = 'FLUID_LBTC_USDC_21_BASE',
150
+ FLUID_LBTC_SUSDS_22_BASE = 'FLUID_LBTC_SUSDS_22_BASE',
151
+ }
152
+
153
+ export enum FluidPlasmaVersions {
154
+ FLUID_ETH_USDT_1_PLASMA = 'FLUID_ETH_USDT_1_PLASMA',
155
+ FLUID_ETH_USDE_2_PLASMA = 'FLUID_ETH_USDE_2_PLASMA',
156
+ FLUID_WEETH_ETH_3_PLASMA = 'FLUID_WEETH_ETH_3_PLASMA',
157
+ FLUID_SUSDE_USDT_4_PLASMA = 'FLUID_SUSDE_USDT_4_PLASMA',
158
+ FLUID_WEETH_USDT_5_PLASMA = 'FLUID_WEETH_USDT_5_PLASMA',
159
+ FLUID_WEETH_USDE_6_PLASMA = 'FLUID_WEETH_USDE_6_PLASMA',
160
+ FLUID_XAUT_USDT_7_PLASMA = 'FLUID_XAUT_USDT_7_PLASMA',
161
+ FLUID_XAUT_USDE_8_PLASMA = 'FLUID_XAUT_USDE_8_PLASMA',
162
+ FLUID_USDE_USDT_9_PLASMA = 'FLUID_USDE_USDT_9_PLASMA',
163
+ FLUID_USDAI_USDT_10_PLASMA = 'FLUID_USDAI_USDT_10_PLASMA',
164
+ FLUID_ETH_WEETH_ETH_11_PLASMA = 'FLUID_ETH_WEETH_ETH_11_PLASMA',
165
+ FLUID_SUSDE_USDT_USDT_12_PLASMA = 'FLUID_SUSDE_USDT_USDT_12_PLASMA',
166
+ FLUID_USDE_USDT_USDT_13_PLASMA = 'FLUID_USDE_USDT_USDT_13_PLASMA',
167
+ FLUID_USDAI_USDT_USDT_14_PLASMA = 'FLUID_USDAI_USDT_USDT_14_PLASMA',
168
+ FLUID_USDT_SYRUPUSDT_USDT_15_PLASMA = 'FLUID_USDT_SYRUPUSDT_USDT_15_PLASMA',
169
+ FLUID_XPL_USDT_16_PLASMA = 'FLUID_XPL_USDT_16_PLASMA',
170
+ FLUID_XPL_USDE_17_PLASMA = 'FLUID_XPL_USDE_17_PLASMA',
171
+ FLUID_WSTUSR_USDT_18_PLASMA = 'FLUID_WSTUSR_USDT_18_PLASMA',
172
+ FLUID_WSTUSR_USDT_USDT_19_PLASMA = 'FLUID_WSTUSR_USDT_USDT_19_PLASMA',
173
+ FLUID_SYRUPUSDT_USDT_20_PLASMA = 'FLUID_SYRUPUSDT_USDT_20_PLASMA',
174
+ FLUID_ETH_WRSETH_ETH_21_PLASMA = 'FLUID_ETH_WRSETH_ETH_21_PLASMA',
175
+ }
176
+
177
+ export type FluidVersions = FluidArbitrumVersion | FluidBaseVersions | FluidMainnetVersion | FluidPlasmaVersions;
178
+
179
+ export enum FluidMainnetDepositToken {
180
+ ETH = 'ETH',
181
+ wstETH = 'wstETH',
182
+ USDC = 'USDC',
183
+ USDT = 'USDT',
184
+ GHO = 'GHO',
185
+ sUSDS = 'sUSDS',
186
+ USDtb = 'USDtb',
187
+ }
188
+
189
+ export enum FluidArbitrumDepositToken {
190
+ ETH = 'ETH',
191
+ wstETH = 'wstETH',
192
+ USDC = 'USDC',
193
+ USDT = 'USDT',
194
+ ARB = 'ARB',
195
+ GHO = 'GHO',
196
+ sUSDS = 'sUSDS',
197
+ }
198
+
199
+ export enum FluidBaseDepositToken {
200
+ ETH = 'ETH',
201
+ USDC = 'USDC',
202
+ wstETH = 'wstETH',
203
+ EURC = 'EURC',
204
+ sUSDS = 'sUSDS',
205
+ GHO = 'GHO',
206
+ }
207
+
208
+ export enum FluidPlasmaDepositToken {
209
+ USDe = 'USDe',
210
+ USDT = 'USDT',
211
+ ETH = 'ETH',
212
+ }
213
+
214
+ export type FluidDepositTokenByNetwork = {
215
+ [NetworkNumber.Eth]: FluidMainnetDepositToken;
216
+ [NetworkNumber.Arb]: FluidArbitrumDepositToken;
217
+ [NetworkNumber.Base]: FluidBaseDepositToken;
218
+ [NetworkNumber.Plasma]: FluidPlasmaDepositToken;
219
+ };
220
+
221
+ export enum FluidVaultType {
222
+ T1 = 'T1',
223
+ T2 = 'T2',
224
+ T3 = 'T3',
225
+ T4 = 'T4',
226
+ Unknown = 'Unknown',
227
+ }
228
+
229
+ export interface FluidAssetData {
230
+ symbol: string,
231
+ address: string,
232
+ price: string,
233
+ supplyIncentives: IncentiveData[],
234
+ borrowIncentives: IncentiveData[],
235
+ totalSupply: string,
236
+ totalBorrow: string,
237
+ canBeSupplied: boolean,
238
+ canBeBorrowed: boolean,
239
+ supplyRate: string,
240
+ borrowRate: string,
241
+ utilization?: string,
242
+ withdrawable?: string,
243
+ borrowable?: string,
244
+ tokenPerSupplyShare?: string,
245
+ tokenPerBorrowShare?: string,
246
+ supplyReserves?: string,
247
+ borrowReserves?: string,
248
+ }
249
+ export type FluidAssetsData = { [key: string]: FluidAssetData };
250
+
251
+ export interface InnerFluidMarketData {
252
+ // Market specific data
253
+ vaultId: number,
254
+ isSmartColl: boolean,
255
+ isSmartDebt: boolean,
256
+ marketAddress: string,
257
+ vaultType: FluidVaultType,
258
+ vaultValue?: FluidVersions
259
+ oracle: EthAddress,
260
+ liquidationPenaltyPercent: string,
261
+ collFactor: string,
262
+ liquidationRatio: string,
263
+ liqFactor: string,
264
+ minRatio: string,
265
+ collAsset0: string,
266
+ collAsset1?: string,
267
+ debtAsset0: string,
268
+ debtAsset1?: string,
269
+ totalPositions: string,
270
+ totalSupplyVault: string,
271
+ totalSupplyVaultUsd: string,
272
+ totalBorrowVault: string,
273
+ totalBorrowVaultUsd: string,
274
+ withdrawalLimit?: string,
275
+ withdrawableUntilLimit?: string,
276
+ withdrawable: string,
277
+ withdrawableDex?: string,
278
+ borrowLimit?: string,
279
+ borrowableUntilLimit?: string,
280
+ borrowable: string,
281
+ borrowableDex?: string,
282
+ borrowLimitUtilization?: string,
283
+ maxBorrowLimit?: string,
284
+ baseBorrowLimit?: string,
285
+ minimumBorrowing?: string,
286
+ supplyRate: string,
287
+ borrowRate: string,
288
+ liquidationMaxLimit: string,
289
+ oraclePrice: string,
290
+ incentiveBorrowRate?: string,
291
+ incentiveSupplyRate?: string,
292
+ // T2 and T4 vaults
293
+ collSharePrice?: string,
294
+ maxSupplyShares?: string,
295
+ maxSupplySharesUsd?: string,
296
+ withdrawableUSD?: string,
297
+ totalSupplyToken0?: string,
298
+ totalSupplyToken1?: string,
299
+ withdrawableToken0?: string,
300
+ withdrawableToken1?: string,
301
+ collDexFee?: string
302
+ // T3 and T4 vaults
303
+ debtSharePrice?: string,
304
+ maxBorrowShares?: string,
305
+ maxBorrowSharesUsd?: string,
306
+ borrowableUSD?: string,
307
+ borrowableToken0?: string,
308
+ borrowableToken1?: string,
309
+ totalBorrowToken0?: string,
310
+ totalBorrowToken1?: string,
311
+ borrowDexFee?: string,
312
+ // Dex vault
313
+ tradingBorrowRate?: string,
314
+ tradingSupplyRate?: string,
315
+ }
316
+
317
+ export interface FluidMarketData {
318
+ assetsData: FluidAssetsData,
319
+ marketData: InnerFluidMarketData,
320
+ }
321
+
322
+ export interface FluidUsedAsset {
323
+ symbol: string,
324
+ collateral?: boolean,
325
+ supplied: string,
326
+ suppliedUsd: string,
327
+ borrowed: string,
328
+ borrowedUsd: string,
329
+ isSupplied: boolean,
330
+ isBorrowed: boolean,
331
+ }
332
+
333
+ export type FluidUsedAssets = { [key: string]: FluidUsedAsset };
334
+
335
+ export interface FluidAggregatedVaultData {
336
+ suppliedUsd: string,
337
+ borrowedUsd: string,
338
+ borrowLimitUsd: string,
339
+ liquidationLimitUsd: string,
340
+ leftToBorrowUsd: string,
341
+ netApy: string,
342
+ incentiveUsd: string,
343
+ ratio: string,
344
+ collRatio: string,
345
+ minRatio: string
346
+ totalInterestUsd: string,
347
+ leveragedType?: LeverageType,
348
+ leveragedAsset?: string,
349
+ liquidationPrice?: string,
350
+ currentVolatilePairRatio?: string,
351
+ minCollRatio?: string,
352
+ collLiquidationRatio?: string,
353
+ }
354
+
355
+ export interface BaseFluidVaultData {
356
+ owner: string,
357
+ vaultId: number,
358
+ usedAssets: FluidUsedAssets,
359
+ isSubscribedToAutomation: boolean,
360
+ automationResubscribeRequired: boolean,
361
+ lastUpdated: number,
362
+ supplyShares?: string;
363
+ borrowShares?: string;
364
+ nftId: string;
365
+ }
366
+
367
+ export type FluidVaultData = FluidAggregatedVaultData & BaseFluidVaultData;
368
+
369
+ export interface FluidDexSupplyDataStructOutput {
370
+ dexPool: EthAddress;
371
+ dexId: bigint;
372
+ fee: bigint;
373
+ lastStoredPrice: bigint;
374
+ centerPrice: bigint;
375
+ token0Utilization: bigint;
376
+ token1Utilization: bigint;
377
+ totalSupplyShares: bigint;
378
+ maxSupplyShares: bigint;
379
+ token0Supplied: bigint;
380
+ token1Supplied: bigint;
381
+ sharesWithdrawable: bigint;
382
+ token0Withdrawable: bigint;
383
+ token1Withdrawable: bigint;
384
+ token0PerSupplyShare: bigint;
385
+ token1PerSupplyShare: bigint;
386
+ token0SupplyRate: bigint;
387
+ token1SupplyRate: bigint;
388
+ supplyToken0Reserves: bigint;
389
+ supplyToken1Reserves: bigint;
390
+ }
391
+
392
+ export interface FluidDexBorrowDataStructOutput {
393
+ quoteToken: EthAddress;
394
+ dexPool: EthAddress;
395
+ dexId: bigint;
396
+ fee: bigint;
397
+ lastStoredPrice: bigint;
398
+ centerPrice: bigint;
399
+ token0Utilization: bigint;
400
+ token1Utilization: bigint;
401
+ totalBorrowShares: bigint;
402
+ maxBorrowShares: bigint;
403
+ token0Borrowed: bigint;
404
+ token1Borrowed: bigint;
405
+ sharesBorrowable: bigint;
406
+ token0Borrowable: bigint;
407
+ token1Borrowable: bigint;
408
+ token0PerBorrowShare: bigint;
409
+ token1PerBorrowShare: bigint;
410
+ token0BorrowRate: bigint;
411
+ token1BorrowRate: bigint;
412
+ quoteTokensPerShare: bigint;
413
+ borrowToken0Reserves: bigint;
414
+ borrowToken1Reserves: bigint;
415
+ }
416
+
417
+ export interface FluidVaultDataStructOutputStruct {
418
+ vault: EthAddress;
419
+ vaultId: bigint;
420
+ vaultType: bigint;
421
+ isSmartColl: boolean;
422
+ isSmartDebt: boolean;
423
+ supplyToken0: EthAddress;
424
+ supplyToken1: EthAddress;
425
+ borrowToken0: EthAddress;
426
+ borrowToken1: EthAddress;
427
+ supplyRateVault: bigint;
428
+ borrowRateVault: bigint;
429
+ oraclePriceOperate: bigint;
430
+ totalSupplyVault: bigint;
431
+ totalBorrowVault: bigint;
432
+ liquidationThreshold: number;
433
+ liquidationMaxLimit: number;
434
+ oracle: EthAddress;
435
+ liquidationPenalty: number;
436
+ collateralFactor: number;
437
+ totalPositions: bigint;
438
+ withdrawalLimit: bigint;
439
+ withdrawableUntilLimit: bigint;
440
+ withdrawable: bigint;
441
+ borrowLimit: bigint;
442
+ borrowableUntilLimit: bigint;
443
+ borrowable: bigint;
444
+ borrowLimitUtilization: bigint;
445
+ maxBorrowLimit: bigint;
446
+ baseBorrowLimit: bigint;
447
+ minimumBorrowing: bigint;
448
+ dexSupplyData: FluidDexSupplyDataStructOutput;
449
+ dexBorrowData: FluidDexBorrowDataStructOutput;
450
+ }
451
+
452
+ export interface FluidUserPositionStructOutputStruct {
453
+ nftId: bigint;
454
+ owner: EthAddress;
455
+ isLiquidated: boolean;
456
+ isSupplyPosition: boolean;
457
+ supply: bigint;
458
+ borrow: bigint;
459
+ ratio: bigint;
460
+ tick: bigint;
461
+ tickId: bigint;
462
+ }
463
+
464
+ export interface FluidUserEarnPositionStructOutput {
465
+ fTokenShares: bigint;
466
+ underlyingAssets: bigint;
467
+ underlyingBalance: bigint;
468
+ allowance: bigint;
469
+ }
470
+
471
+ export interface FluidFTokenDataStructOutput {
472
+ tokenAddress: EthAddress;
473
+ isNativeUnderlying: boolean;
474
+ name: string;
475
+ symbol: string;
476
+ decimals: bigint;
477
+ asset: EthAddress;
478
+ totalAssets: bigint;
479
+ totalSupply: bigint;
480
+ convertToShares: bigint;
481
+ convertToAssets: bigint;
482
+ expandDuration: bigint;
483
+ supplyRate: bigint;
484
+ rewardsRate: bigint;
485
+ withdrawable: bigint;
484
486
  }