@defisaver/positions-sdk 0.0.199 → 0.0.201-fluid-dev

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 (100) hide show
  1. package/cjs/config/contracts.d.ts +169 -4
  2. package/cjs/config/contracts.js +20 -0
  3. package/cjs/contracts.d.ts +2 -0
  4. package/cjs/contracts.js +3 -1
  5. package/cjs/fluid/index.d.ts +38 -0
  6. package/cjs/fluid/index.js +163 -0
  7. package/cjs/helpers/fluidHelpers/index.d.ts +6 -0
  8. package/cjs/helpers/fluidHelpers/index.js +40 -0
  9. package/cjs/helpers/index.d.ts +2 -0
  10. package/cjs/helpers/index.js +3 -1
  11. package/cjs/helpers/liquityV2Helpers/index.d.ts +12 -0
  12. package/cjs/helpers/liquityV2Helpers/index.js +63 -0
  13. package/cjs/index.d.ts +3 -1
  14. package/cjs/index.js +5 -1
  15. package/cjs/liquityV2/index.d.ts +18 -0
  16. package/cjs/liquityV2/index.js +194 -0
  17. package/cjs/markets/aave/marketAssets.js +1 -1
  18. package/cjs/markets/fluid/index.d.ts +174 -0
  19. package/cjs/markets/fluid/index.js +1286 -0
  20. package/cjs/markets/index.d.ts +2 -0
  21. package/cjs/markets/index.js +5 -1
  22. package/cjs/markets/liquityV2/index.d.ts +10 -0
  23. package/cjs/markets/liquityV2/index.js +47 -0
  24. package/cjs/moneymarket/moneymarketCommonService.js +1 -1
  25. package/cjs/types/contracts/generated/FluidView.d.ts +318 -0
  26. package/cjs/types/contracts/generated/FluidView.js +5 -0
  27. package/cjs/types/contracts/generated/LiquityV2CollSurplusPool.d.ts +64 -0
  28. package/cjs/types/contracts/generated/LiquityV2CollSurplusPool.js +5 -0
  29. package/cjs/types/contracts/generated/LiquityV2TroveNFT.d.ts +73 -0
  30. package/cjs/types/contracts/generated/LiquityV2TroveNFT.js +5 -0
  31. package/cjs/types/contracts/generated/LiquityV2View.d.ts +244 -0
  32. package/cjs/types/contracts/generated/LiquityV2View.js +5 -0
  33. package/cjs/types/contracts/generated/index.d.ts +4 -0
  34. package/cjs/types/fluid.d.ts +225 -0
  35. package/cjs/types/fluid.js +129 -0
  36. package/cjs/types/index.d.ts +2 -0
  37. package/cjs/types/index.js +2 -0
  38. package/cjs/types/liquityV2.d.ts +111 -0
  39. package/cjs/types/liquityV2.js +24 -0
  40. package/esm/config/contracts.d.ts +169 -4
  41. package/esm/config/contracts.js +20 -0
  42. package/esm/contracts.d.ts +2 -0
  43. package/esm/contracts.js +2 -0
  44. package/esm/fluid/index.d.ts +38 -0
  45. package/esm/fluid/index.js +153 -0
  46. package/esm/helpers/fluidHelpers/index.d.ts +6 -0
  47. package/esm/helpers/fluidHelpers/index.js +33 -0
  48. package/esm/helpers/index.d.ts +2 -0
  49. package/esm/helpers/index.js +2 -0
  50. package/esm/helpers/liquityV2Helpers/index.d.ts +12 -0
  51. package/esm/helpers/liquityV2Helpers/index.js +55 -0
  52. package/esm/index.d.ts +3 -1
  53. package/esm/index.js +3 -1
  54. package/esm/liquityV2/index.d.ts +18 -0
  55. package/esm/liquityV2/index.js +183 -0
  56. package/esm/markets/aave/marketAssets.js +1 -1
  57. package/esm/markets/fluid/index.d.ts +174 -0
  58. package/esm/markets/fluid/index.js +1196 -0
  59. package/esm/markets/index.d.ts +2 -0
  60. package/esm/markets/index.js +2 -0
  61. package/esm/markets/liquityV2/index.d.ts +10 -0
  62. package/esm/markets/liquityV2/index.js +40 -0
  63. package/esm/moneymarket/moneymarketCommonService.js +1 -1
  64. package/esm/types/contracts/generated/FluidView.d.ts +318 -0
  65. package/esm/types/contracts/generated/FluidView.js +4 -0
  66. package/esm/types/contracts/generated/LiquityV2CollSurplusPool.d.ts +64 -0
  67. package/esm/types/contracts/generated/LiquityV2CollSurplusPool.js +4 -0
  68. package/esm/types/contracts/generated/LiquityV2TroveNFT.d.ts +73 -0
  69. package/esm/types/contracts/generated/LiquityV2TroveNFT.js +4 -0
  70. package/esm/types/contracts/generated/LiquityV2View.d.ts +244 -0
  71. package/esm/types/contracts/generated/LiquityV2View.js +4 -0
  72. package/esm/types/contracts/generated/index.d.ts +4 -0
  73. package/esm/types/fluid.d.ts +225 -0
  74. package/esm/types/fluid.js +126 -0
  75. package/esm/types/index.d.ts +2 -0
  76. package/esm/types/index.js +2 -0
  77. package/esm/types/liquityV2.d.ts +111 -0
  78. package/esm/types/liquityV2.js +21 -0
  79. package/package.json +2 -2
  80. package/src/config/contracts.js +20 -0
  81. package/src/contracts.ts +2 -0
  82. package/src/fluid/index.ts +220 -0
  83. package/src/helpers/fluidHelpers/index.ts +54 -0
  84. package/src/helpers/index.ts +3 -1
  85. package/src/helpers/liquityV2Helpers/index.ts +80 -0
  86. package/src/index.ts +4 -0
  87. package/src/liquityV2/index.ts +228 -0
  88. package/src/markets/aave/marketAssets.ts +1 -1
  89. package/src/markets/fluid/index.ts +1290 -0
  90. package/src/markets/index.ts +3 -2
  91. package/src/markets/liquityV2/index.ts +44 -0
  92. package/src/moneymarket/moneymarketCommonService.ts +1 -1
  93. package/src/types/contracts/generated/FluidView.ts +399 -0
  94. package/src/types/contracts/generated/LiquityV2CollSurplusPool.ts +130 -0
  95. package/src/types/contracts/generated/LiquityV2TroveNFT.ts +150 -0
  96. package/src/types/contracts/generated/LiquityV2View.ts +315 -0
  97. package/src/types/contracts/generated/index.ts +4 -0
  98. package/src/types/fluid.ts +240 -0
  99. package/src/types/index.ts +3 -1
  100. package/src/types/liquityV2.ts +119 -0
@@ -0,0 +1,240 @@
1
+ import { 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: string
11
+ hasSmartCollateral: boolean
12
+ hasSmartDebt: boolean
13
+ collateralAsset: string
14
+ debtAsset: string
15
+ }
16
+
17
+ export enum FluidMainnetVersion {
18
+ ETH_USDC_1 = 'ETH_USDC_1',
19
+ ETH_USDT_2 = 'ETH_USDT_2',
20
+ WSTETH_ETH_3 = 'WSTETH_ETH_3',
21
+ WSTETH_USDC_4 = 'WSTETH_USDC_4',
22
+ WSTETH_USDT_5 = 'WSTETH_USDT_5',
23
+ WEETH_WSTETH_6 = 'WEETH_WSTETH_6',
24
+ SUSDE_USDC_7 = 'SUSDE_USDC_7',
25
+ SUSDE_USDT_8 = 'SUSDE_USDT_8',
26
+ WEETH_USDC_9 = 'WEETH_USDC_9',
27
+ WEETH_USDT_10 = 'WEETH_USDT_10',
28
+ ETH_USDC_11 = 'ETH_USDC_11',
29
+ ETH_USDT_12 = 'ETH_USDT_12',
30
+ WSTETH_ETH_13 = 'WSTETH_ETH_13',
31
+ WSTETH_USDC_14 = 'WSTETH_USDC_14',
32
+ WSTETH_USDT_15 = 'WSTETH_USDT_15',
33
+ WEETH_WSTETH_16 = 'WEETH_WSTETH_16',
34
+ SUSDE_USDC_17 = 'SUSDE_USDC_17',
35
+ SUSDE_USDT_18 = 'SUSDE_USDT_18',
36
+ WEETH_USDC_19 = 'WEETH_USDC_19',
37
+ WEETH_USDT_20 = 'WEETH_USDT_20',
38
+ WBTC_USDC_21 = 'WBTC_USDC_21',
39
+ WBTC_USDT_22 = 'WBTC_USDT_22',
40
+ WBTC_ETH_23 = 'WBTC_ETH_23',
41
+ ETH_WBTC_24 = 'ETH_WBTC_24',
42
+ WSTETH_WBTC_25 = 'WSTETH_WBTC_25',
43
+ WEETH_WBTC_26 = 'WEETH_WBTC_26',
44
+ WEETHS_WSTETH_27 = 'WEETHS_WSTETH_27',
45
+ CBBTC_ETH_28 = 'CBBTC_ETH_28',
46
+ CBBTC_USDC_29 = 'CBBTC_USDC_29',
47
+ CBBTC_USDT_30 = 'CBBTC_USDT_30',
48
+ ETH_CBBTC_31 = 'ETH_CBBTC_31',
49
+ WEETH_CBBTC_32 = 'WEETH_CBBTC_32',
50
+ WSTETH_CBBTC_33 = 'WSTETH_CBBTC_33',
51
+ WSTETH_ETH_WSTETH_ETH_44 = 'WSTETH_ETH_WSTETH_ETH_44',
52
+ ETH_USDC_USDT_45 = 'ETH_USDC_USDT_45',
53
+ WSTETH_USDC_USDT_46 = 'WSTETH_USDC_USDT_46',
54
+ WEETH_USDC_USDT_47 = 'WEETH_USDC_USDT_47',
55
+ WBTC_USDC_USDT_48 = 'WBTC_USDC_USDT_48',
56
+ CBBTC_USDC_USDT_49 = 'CBBTC_USDC_USDT_49',
57
+ SUSDE_USDC_USDT_50 = 'SUSDE_USDC_USDT_50',
58
+ WBTC_CBBTC_WBTC_CBBTC_51 = 'WBTC_CBBTC_WBTC_CBBTC_51',
59
+ WBTC_CBBTC_USDC_52 = 'WBTC_CBBTC_USDC_52',
60
+ WBTC_CBBTC_USDT_53 = 'WBTC_CBBTC_USDT_53',
61
+ ETH_GHO_54 = 'ETH_GHO_54',
62
+ WSTETH_GHO_55 = 'WSTETH_GHO_55',
63
+ SUSDE_GHO_56 = 'SUSDE_GHO_56',
64
+ WEETH_GHO_57 = 'WEETH_GHO_57',
65
+ SUSDS_GHO_58 = 'SUSDS_GHO_58',
66
+ WBTC_GHO_59 = 'WBTC_GHO_59',
67
+ CBBTC_GHO_60 = 'CBBTC_GHO_60',
68
+ GHO_USDC_GHO_USDC_61 = 'GHO_USDC_GHO_USDC_61',
69
+ WEETH_ETH_WSTETH_74 = 'WEETH_ETH_WSTETH_74',
70
+ USDC_ETH_USDC_ETH_77 = 'USDC_ETH_USDC_ETH_77',
71
+ RSETH_ETH_WSTETH_78 = 'RSETH_ETH_WSTETH_78',
72
+ RSETH_WSTETH_79 = 'RSETH_WSTETH_79',
73
+ WEETHS_ETH_WSTETH_80 = 'WEETHS_ETH_WSTETH_80',
74
+ }
75
+
76
+ export enum FluidArbitrumVersion {
77
+ ETH_USDC_1_ARB = 'ETH_USDC_1_ARB',
78
+ ETH_USDT_2_ARB = 'ETH_USDT_2_ARB',
79
+ WSTETH_USDC_3_ARB = 'WSTETH_USDC_3_ARB',
80
+ WSTETH_USDT_4_ARB = 'WSTETH_USDT_4_ARB',
81
+ WSTETH_ETH_5_ARB = 'WSTETH_ETH_5_ARB',
82
+ WEETH_WSTETH_6_ARB = 'WEETH_WSTETH_6_ARB',
83
+ WEETH_USDC_7_ARB = 'WEETH_USDC_7_ARB',
84
+ WEETH_USDT_8_ARB = 'WEETH_USDT_8_ARB',
85
+ ETH_ARB_9_ARB = 'ETH_ARB_9_ARB',
86
+ ARB_USDC_10_ARB = 'ARB_USDC_10_ARB',
87
+ ARB_USDT_11_ARB = 'ARB_USDT_11_ARB',
88
+ WSTETH_ETH_WSTETH_ETH_16_ARB = 'WSTETH_ETH_WSTETH_ETH_16_ARB',
89
+ WEETH_ETH_WSTETH_17_ARB = 'WEETH_ETH_WSTETH_17_ARB',
90
+ }
91
+
92
+ export enum FluidBaseVersions {
93
+ ETH_USDC_1_BASE = 'ETH_USDC_1_BASE',
94
+ WSTETH_USDC_2_BASE = 'WSTETH_USDC_2_BASE',
95
+ WSTETH_ETH_3_BASE = 'WSTETH_ETH_3_BASE',
96
+ WEETH_WSTETH_4_BASE = 'WEETH_WSTETH_4_BASE',
97
+ WEETH_USDC_5_BASE = 'WEETH_USDC_5_BASE',
98
+ CBETH_USDC_6_BASE = 'CBETH_USDC_6_BASE',
99
+ CBBTC_USDC_7_BASE = 'CBBTC_USDC_7_BASE',
100
+ CBBTC_EURC_8_BASE = 'CBBTC_EURC_8_BASE',
101
+ CBETH_EURC_9_BASE = 'CBETH_EURC_9_BASE',
102
+ ETH_EURC_10_BASE = 'ETH_EURC_10_BASE',
103
+ WEETH_EURC_11_BASE = 'WEETH_EURC_11_BASE',
104
+ WSTETH_EURC_12_BASE = 'WSTETH_EURC_12_BASE',
105
+ CBBTC_ETH_13_BASE = 'CBBTC_ETH_13_BASE',
106
+ ETH_CBBTC_14_BASE = 'ETH_CBBTC_14_BASE',
107
+ WEETH_CBBTC_15_BASE = 'WEETH_CBBTC_15_BASE',
108
+ WSTETH_CBBTC_16_BASE = 'WSTETH_CBBTC_16_BASE',
109
+ }
110
+
111
+ export type FluidVersions = FluidArbitrumVersion | FluidBaseVersions | FluidMainnetVersion;
112
+
113
+ export enum FluidMainnetDepositToken {
114
+ ETH = 'ETH',
115
+ wstETH = 'wstETH',
116
+ USDC = 'USDC',
117
+ USDT = 'USDT',
118
+ GHO = 'GHO',
119
+ }
120
+
121
+ export enum FluidArbitrumDepositToken {
122
+ ETH = 'ETH',
123
+ wstETH = 'wstETH',
124
+ USDC = 'USDC',
125
+ USDT = 'USDT',
126
+ ARB = 'ARB',
127
+ }
128
+
129
+ export enum FluidBaseDepositToken {
130
+ ETH = 'ETH',
131
+ USDC = 'USDC',
132
+ wstETH = 'wstETH',
133
+ EURC = 'EURC',
134
+ }
135
+
136
+ export type FluidDepositTokenByNetwork = {
137
+ [NetworkNumber.Eth]: FluidMainnetDepositToken;
138
+ [NetworkNumber.Arb]: FluidArbitrumDepositToken;
139
+ [NetworkNumber.Base]: FluidBaseDepositToken;
140
+ };
141
+
142
+ export enum FluidVaultType {
143
+ T1 = 'T1',
144
+ T2 = 'T2',
145
+ T3 = 'T3',
146
+ T4 = 'T4',
147
+ Unknown = 'Unknown',
148
+ }
149
+
150
+ export interface FluidAssetData {
151
+ symbol: string,
152
+ address: string,
153
+ price: string,
154
+ incentiveSupplyApy?: string,
155
+ incentiveSupplyToken?: string,
156
+ totalSupply: string,
157
+ totalBorrow: string,
158
+ canBeSupplied: boolean,
159
+ canBeBorrowed: boolean,
160
+ supplyRate: string,
161
+ borrowRate: string,
162
+ }
163
+ export type FluidAssetsData = { [key: string]: FluidAssetData };
164
+
165
+ export interface InnerFluidMarketData {
166
+ // Market specific data
167
+ vaultId: number,
168
+ isSmartColl: boolean,
169
+ isSmartDebt: boolean,
170
+ marketAddress: string,
171
+ vaultType: FluidVaultType,
172
+ oracle: string,
173
+ liquidationPenaltyPercent: string,
174
+ collFactor: string,
175
+ liquidationRatio: string,
176
+ collAsset0: string,
177
+ collAsset1?: string,
178
+ debtAsset0: string,
179
+ debtAsset1?: string,
180
+ totalPositions: string,
181
+ totalSupplyVault: string,
182
+ totalBorrowVault: string,
183
+ withdrawalLimit: string,
184
+ withdrawableUntilLimit: string,
185
+ withdrawable: string,
186
+ borrowLimit: string,
187
+ borrowableUntilLimit: string,
188
+ borrowable: string,
189
+ borrowLimitUtilization: string,
190
+ maxBorrowLimit: string,
191
+ baseBorrowLimit: string,
192
+ minimumBorrowing: string,
193
+ }
194
+
195
+ export interface FluidMarketData {
196
+ assetsData: FluidAssetsData,
197
+ marketData: InnerFluidMarketData,
198
+ }
199
+
200
+ export interface FluidUsedAsset {
201
+ symbol: string,
202
+ collateral?: boolean,
203
+ supplied: string,
204
+ suppliedUsd: string,
205
+ borrowed: string,
206
+ borrowedUsd: string,
207
+ isSupplied: boolean,
208
+ isBorrowed: boolean,
209
+ }
210
+
211
+ export type FluidUsedAssets = { [key: string]: FluidUsedAsset };
212
+
213
+ export interface FluidAggregatedVaultData {
214
+ suppliedUsd: string,
215
+ borrowedUsd: string,
216
+ borrowLimitUsd: string,
217
+ liquidationLimitUsd: string,
218
+ leftToBorrowUsd: string,
219
+ netApy: string,
220
+ incentiveUsd: string,
221
+ ratio: string,
222
+ collRatio: string,
223
+ minRatio: string
224
+ totalInterestUsd: string,
225
+ leveragedType?: string,
226
+ leveragedAsset?: string,
227
+ liquidationPrice?: string,
228
+ leveragedLsdAssetRatio?: string,
229
+ }
230
+
231
+ export interface BaseFluidVaultData {
232
+ owner: string,
233
+ vaultId: number,
234
+ usedAssets: FluidUsedAssets,
235
+ isSubscribedToAutomation: boolean,
236
+ automationResubscribeRequired: boolean,
237
+ lastUpdated: number,
238
+ }
239
+
240
+ export type FluidVaultData = FluidAggregatedVaultData & BaseFluidVaultData;
@@ -3,8 +3,10 @@ export * from './compound';
3
3
  export * from './spark';
4
4
  export * from './curveUsd';
5
5
  export * from './liquity';
6
+ export * from './liquityV2';
6
7
  export * from './maker';
7
8
  export * from './chickenBonds';
8
9
  export * from './morphoBlue';
9
10
  export * from './llamaLend';
10
- export * from './euler';
11
+ export * from './euler';
12
+ export * from './fluid';
@@ -0,0 +1,119 @@
1
+ import { EthAddress, NetworkNumber } from './common';
2
+
3
+ export enum LiquityV2Versions {
4
+ LiquityV2Eth = 'liquityv2eth',
5
+ LiquityV2WstEth = 'liquityv2wsteth',
6
+ LiquityV2REth = 'liquityv2reth',
7
+ }
8
+
9
+ export enum LIQUITY_V2_TROVE_STATUS_ENUM {
10
+ nonExistent,
11
+ active,
12
+ closedByOwner,
13
+ closedByLiquidation,
14
+ zombie,
15
+ }
16
+
17
+ export const LIQUITY_V2_STATUS_MAPPING = {
18
+ nonExistent: 'Non existent',
19
+ active: 'Active',
20
+ closedByOwner: 'Closed',
21
+ closedByLiquidation: 'Liquidated',
22
+ zombie: 'Zombie',
23
+ };
24
+
25
+ export interface LiquityV2MarketInfo {
26
+ chainIds: NetworkNumber[],
27
+ label: string,
28
+ shortLabel: string,
29
+ url: string,
30
+ value: LiquityV2Versions,
31
+ debtToken: string,
32
+ collateralToken: string,
33
+ marketAddress: string,
34
+ protocolName: string,
35
+ }
36
+
37
+ export interface LiquityV2AssetData {
38
+ symbol: string,
39
+ address: string,
40
+ price: string,
41
+ incentiveSupplyApy?: string,
42
+ incentiveSupplyToken?: string,
43
+ totalSupply: string,
44
+ totalBorrow: string,
45
+ canBeSupplied: boolean,
46
+ canBeBorrowed: boolean,
47
+ leftToBorrowGlobal: string,
48
+ leftToWithdrawGlobal: string,
49
+ }
50
+
51
+ export type LiquityV2AssetsData = { [key: string]: LiquityV2AssetData };
52
+
53
+ export interface InnerLiquityV2MarketData {
54
+ minCollRatio: string,
55
+ totalCollRatio: string,
56
+ criticalCollRatio: string,
57
+ isUnderCollateralized: boolean,
58
+ hintHelperAddress: EthAddress,
59
+ troveNFTAddress: EthAddress,
60
+ borrowerOperationsAddress: EthAddress,
61
+ troveManagerAddress: EthAddress,
62
+ stabilityPoolAddress: EthAddress,
63
+ collSurplusPoolAddress: EthAddress,
64
+ activePoolAddress: EthAddress,
65
+ }
66
+
67
+ export interface LiquityV2MarketData {
68
+ assetsData: LiquityV2AssetsData,
69
+ marketData: InnerLiquityV2MarketData,
70
+ }
71
+
72
+ export interface LiquityV2UsedAsset {
73
+ symbol: string,
74
+ collateral?: boolean,
75
+ supplied: string,
76
+ suppliedUsd: string,
77
+ borrowed: string,
78
+ borrowedUsd: string,
79
+ isSupplied: boolean,
80
+ isBorrowed: boolean,
81
+ }
82
+
83
+ export type LiquityV2UsedAssets = { [key: string]: LiquityV2UsedAsset };
84
+
85
+ export interface LiquityV2AggregatedTroveData {
86
+ suppliedUsd: string,
87
+ borrowedUsd: string,
88
+ borrowLimitUsd: string,
89
+ leftToBorrowUsd: string,
90
+ netApy: string,
91
+ incentiveUsd: string,
92
+ totalInterestUsd: string,
93
+ leveragedType: string,
94
+ leveragedAsset: string,
95
+ liquidationPrice: string,
96
+ ratio: string,
97
+ collRatio: string,
98
+ }
99
+
100
+ export interface LiquityV2TroveData {
101
+ usedAssets: LiquityV2UsedAssets,
102
+ troveId: string,
103
+ ratio: string,
104
+ collRatio: string,
105
+ interestRate: string,
106
+ leftToBorrowUsd: string,
107
+ borrowLimitUsd: string,
108
+ suppliedUsd: string,
109
+ borrowedUsd: string,
110
+ netApy: string,
111
+ incentiveUsd: string,
112
+ totalInterestUsd: string,
113
+ interestBatchManager: EthAddress,
114
+ troveStatus: string,
115
+ leveragedType: string,
116
+ leveragedAsset: string,
117
+ liquidationPrice: string,
118
+ debtInFront: string,
119
+ }