@defisaver/positions-sdk 0.0.27 → 0.0.29

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 (80) hide show
  1. package/README.md +63 -63
  2. package/cjs/config/contracts.d.ts +18 -9
  3. package/cjs/config/contracts.js +8 -7
  4. package/cjs/contracts.d.ts +1 -1
  5. package/cjs/contracts.js +27 -4
  6. package/cjs/curveUsd/index.js +1 -1
  7. package/cjs/helpers/curveUsdHelpers/index.d.ts +1 -2
  8. package/cjs/helpers/curveUsdHelpers/index.js +17 -25
  9. package/cjs/markets/aave/marketAssets.d.ts +1 -1
  10. package/cjs/markets/aave/marketAssets.js +1 -1
  11. package/cjs/moneymarket/moneymarketCommonService.js +1 -1
  12. package/cjs/services/utils.d.ts +0 -4
  13. package/cjs/services/utils.js +1 -13
  14. package/cjs/types/contracts/generated/CrvUSDView.d.ts +4 -30
  15. package/cjs/types/curveUsd.d.ts +0 -6
  16. package/esm/config/contracts.d.ts +18 -9
  17. package/esm/config/contracts.js +8 -7
  18. package/esm/contracts.d.ts +1 -1
  19. package/esm/contracts.js +27 -4
  20. package/esm/curveUsd/index.js +1 -1
  21. package/esm/helpers/curveUsdHelpers/index.d.ts +1 -2
  22. package/esm/helpers/curveUsdHelpers/index.js +18 -26
  23. package/esm/markets/aave/marketAssets.d.ts +1 -1
  24. package/esm/markets/aave/marketAssets.js +1 -1
  25. package/esm/moneymarket/moneymarketCommonService.js +1 -1
  26. package/esm/services/utils.d.ts +0 -4
  27. package/esm/services/utils.js +0 -11
  28. package/esm/types/contracts/generated/CrvUSDView.d.ts +4 -30
  29. package/esm/types/curveUsd.d.ts +0 -6
  30. package/package.json +40 -40
  31. package/src/aaveV2/index.ts +226 -226
  32. package/src/aaveV3/index.ts +561 -561
  33. package/src/assets/index.ts +60 -60
  34. package/src/chickenBonds/index.ts +123 -123
  35. package/src/compoundV2/index.ts +219 -219
  36. package/src/compoundV3/index.ts +275 -275
  37. package/src/config/contracts.js +676 -675
  38. package/src/constants/index.ts +3 -3
  39. package/src/contracts.ts +126 -100
  40. package/src/curveUsd/index.ts +228 -228
  41. package/src/exchange/index.ts +17 -17
  42. package/src/helpers/aaveHelpers/index.ts +134 -134
  43. package/src/helpers/chickenBondsHelpers/index.ts +23 -23
  44. package/src/helpers/compoundHelpers/index.ts +181 -181
  45. package/src/helpers/curveUsdHelpers/index.ts +32 -40
  46. package/src/helpers/index.ts +5 -5
  47. package/src/helpers/makerHelpers/index.ts +94 -94
  48. package/src/helpers/sparkHelpers/index.ts +106 -106
  49. package/src/index.ts +40 -40
  50. package/src/liquity/index.ts +116 -116
  51. package/src/maker/index.ts +101 -101
  52. package/src/markets/aave/index.ts +80 -80
  53. package/src/markets/aave/marketAssets.ts +32 -32
  54. package/src/markets/compound/index.ts +141 -141
  55. package/src/markets/compound/marketsAssets.ts +46 -46
  56. package/src/markets/curveUsd/index.ts +69 -69
  57. package/src/markets/index.ts +3 -3
  58. package/src/markets/spark/index.ts +29 -29
  59. package/src/markets/spark/marketAssets.ts +9 -9
  60. package/src/moneymarket/moneymarketCommonService.ts +75 -75
  61. package/src/morpho/markets.ts +39 -39
  62. package/src/morphoAaveV2/index.ts +255 -255
  63. package/src/morphoAaveV3/index.ts +619 -619
  64. package/src/multicall/index.ts +22 -22
  65. package/src/services/dsrService.ts +15 -15
  66. package/src/services/priceService.ts +21 -21
  67. package/src/services/utils.ts +35 -48
  68. package/src/spark/index.ts +422 -422
  69. package/src/staking/staking.ts +167 -167
  70. package/src/types/aave.ts +256 -256
  71. package/src/types/chickenBonds.ts +45 -45
  72. package/src/types/common.ts +83 -83
  73. package/src/types/compound.ts +128 -128
  74. package/src/types/contracts/generated/CrvUSDView.ts +8 -43
  75. package/src/types/curveUsd.ts +112 -118
  76. package/src/types/index.ts +6 -6
  77. package/src/types/liquity.ts +30 -30
  78. package/src/types/maker.ts +50 -50
  79. package/src/types/spark.ts +106 -106
  80. package/yarn-error.log +0 -64
@@ -1,84 +1,84 @@
1
- // General
2
- export type EthAddress = string;
3
- export type Blockish = number | 'latest';
4
- export type AssetSymbol = string;
5
- export type Amount = string | number;
6
-
7
- export enum NetworkNumber {
8
- Eth = 1,
9
- Opt = 10,
10
- Arb = 42161,
11
- Base = 8453,
12
- }
13
- export type Networkish = string | NetworkNumber;
14
-
15
- // Common
16
- export interface MMAssetData {
17
- symbol: string,
18
- supplyRate: string,
19
- borrowRate: string,
20
- price: string,
21
- collateralFactor: string,
22
- underlyingTokenAddress: string,
23
- marketLiquidity: string,
24
- utilization: string,
25
- borrowCap: string,
26
- totalSupply: string,
27
- canBeBorrowed: boolean,
28
- canBeSupplied: boolean,
29
- totalBorrow: string,
30
- incentiveBorrowApy?: string,
31
- incentiveBorrowToken?: string,
32
- incentiveSupplyApy?: string,
33
- incentiveSupplyToken?: string,
34
- borrowRateP2P?: string,
35
- supplyRateP2P?: string,
36
- }
37
-
38
- export interface MMAssetsData {
39
- [token: string]: MMAssetData,
40
- }
41
- export interface MMMarketData {
42
- assetsData: MMAssetData[],
43
- }
44
- export interface MMUsedAsset {
45
- symbol: string,
46
- supplied: string,
47
- suppliedUsd: string,
48
- isSupplied: boolean,
49
- borrowed: string,
50
- borrowedUsd: string,
51
- isBorrowed: boolean,
52
- debt: string,
53
- supplyRate?: string,
54
- borrowRate?: string,
55
- discountedBorrowRate?: string,
56
- stableBorrowRate?: string,
57
- interestMode?: string,
58
- collateral?: boolean,
59
- }
60
- export interface MMUsedAssets {
61
- [token: string]: MMUsedAsset,
62
- }
63
- export interface MMUsedAssetWStableB extends MMUsedAsset {
64
- stableBorrowRate: string,
65
- borrowedStable: string,
66
- borrowedVariable: string,
67
- borrowedUsdStable: string,
68
- borrowedUsdVariable: string,
69
- interestMode: string,
70
- }
71
- export interface MMPositionData {
72
- usedAssets: any,
73
- netApy: string,
74
- lastUpdated: number,
75
- // ...
76
- }
77
-
78
- export type Balances = Record<AssetSymbol, Amount>;
79
- export interface PositionBalances {
80
- collateral?: Balances,
81
- debt?: Balances,
82
- selling?: Balances,
83
- deposited?: Balances,
1
+ // General
2
+ export type EthAddress = string;
3
+ export type Blockish = number | 'latest';
4
+ export type AssetSymbol = string;
5
+ export type Amount = string | number;
6
+
7
+ export enum NetworkNumber {
8
+ Eth = 1,
9
+ Opt = 10,
10
+ Arb = 42161,
11
+ Base = 8453,
12
+ }
13
+ export type Networkish = string | NetworkNumber;
14
+
15
+ // Common
16
+ export interface MMAssetData {
17
+ symbol: string,
18
+ supplyRate: string,
19
+ borrowRate: string,
20
+ price: string,
21
+ collateralFactor: string,
22
+ underlyingTokenAddress: string,
23
+ marketLiquidity: string,
24
+ utilization: string,
25
+ borrowCap: string,
26
+ totalSupply: string,
27
+ canBeBorrowed: boolean,
28
+ canBeSupplied: boolean,
29
+ totalBorrow: string,
30
+ incentiveBorrowApy?: string,
31
+ incentiveBorrowToken?: string,
32
+ incentiveSupplyApy?: string,
33
+ incentiveSupplyToken?: string,
34
+ borrowRateP2P?: string,
35
+ supplyRateP2P?: string,
36
+ }
37
+
38
+ export interface MMAssetsData {
39
+ [token: string]: MMAssetData,
40
+ }
41
+ export interface MMMarketData {
42
+ assetsData: MMAssetData[],
43
+ }
44
+ export interface MMUsedAsset {
45
+ symbol: string,
46
+ supplied: string,
47
+ suppliedUsd: string,
48
+ isSupplied: boolean,
49
+ borrowed: string,
50
+ borrowedUsd: string,
51
+ isBorrowed: boolean,
52
+ debt: string,
53
+ supplyRate?: string,
54
+ borrowRate?: string,
55
+ discountedBorrowRate?: string,
56
+ stableBorrowRate?: string,
57
+ interestMode?: string,
58
+ collateral?: boolean,
59
+ }
60
+ export interface MMUsedAssets {
61
+ [token: string]: MMUsedAsset,
62
+ }
63
+ export interface MMUsedAssetWStableB extends MMUsedAsset {
64
+ stableBorrowRate: string,
65
+ borrowedStable: string,
66
+ borrowedVariable: string,
67
+ borrowedUsdStable: string,
68
+ borrowedUsdVariable: string,
69
+ interestMode: string,
70
+ }
71
+ export interface MMPositionData {
72
+ usedAssets: any,
73
+ netApy: string,
74
+ lastUpdated: number,
75
+ // ...
76
+ }
77
+
78
+ export type Balances = Record<AssetSymbol, Amount>;
79
+ export interface PositionBalances {
80
+ collateral?: Balances,
81
+ debt?: Balances,
82
+ selling?: Balances,
83
+ deposited?: Balances,
84
84
  }
@@ -1,129 +1,129 @@
1
- import {
2
- MMAssetData, MMPositionData, MMUsedAsset, NetworkNumber,
3
- } from './common';
4
-
5
- export enum CompoundVersions {
6
- 'CompoundV2' = 'v2',
7
- 'CompoundV3USDC' = 'v3-USDC',
8
- 'CompoundV3USDCe' = 'v3-USDC.e',
9
- 'CompoundV3ETH' = 'v3-ETH',
10
- 'CompoundV3USDbC' = 'v3-USDbC',
11
- }
12
-
13
- export interface CompoundBulkerOptions {
14
- supply: number | string,
15
- withdraw: number | string,
16
- }
17
-
18
- export interface CompoundMarketData {
19
- chainIds: NetworkNumber[],
20
- label: string,
21
- shortLabel: string,
22
- value: CompoundVersions,
23
- baseAsset: string,
24
- collAssets: readonly string[],
25
- baseMarket: string,
26
- baseMarketAddress: string,
27
- secondLabel: string,
28
- bulkerName: string,
29
- bulkerAddress: string,
30
- bulkerOptions: CompoundBulkerOptions,
31
- // icon: Function,
32
- }
33
-
34
- export interface CompoundUsedAsset extends MMUsedAsset {
35
- collateral: boolean,
36
- limit?: string,
37
- }
38
-
39
- export interface CompoundV2UsedAsset extends CompoundUsedAsset {
40
- }
41
- export interface CompoundV3UsedAsset extends CompoundUsedAsset {
42
- }
43
-
44
- export interface CompoundUsedAssets<T> {
45
- [token: string]: T,
46
- }
47
-
48
- export type CompoundV2UsedAssets = CompoundUsedAssets<CompoundV2UsedAsset>;
49
- export type CompoundV3UsedAssets = CompoundUsedAssets<CompoundV3UsedAsset>;
50
-
51
- export interface CompoundAssetData extends MMAssetData {
52
- supplyCapAlternative?: string,
53
- totalSupplyAlternative?: string,
54
- priceAlternative?: string,
55
- sortIndex?: number,
56
- }
57
-
58
- export interface CompoundV2AssetData extends CompoundAssetData {
59
- }
60
- export interface CompoundV3AssetData extends CompoundAssetData {
61
- borrowCollateralFactor: string,
62
- liquidateCollateralFactor: string,
63
- minDebt: string,
64
- liquidationRatio: string,
65
- supplyCap: string,
66
- priceInBaseAsset: string,
67
- }
68
-
69
- export interface CompoundAssetsData<T> {
70
- [token: string]: T
71
- }
72
- export type CompoundV2AssetsData = CompoundAssetsData<CompoundV2AssetData>;
73
- export type CompoundV3AssetsData = CompoundAssetsData<CompoundV3AssetData>;
74
-
75
- export type CompoundMarketsData<T> = { assetsData: T };
76
- export type CompoundV2MarketsData = CompoundMarketsData<CompoundV2AssetsData>;
77
- export type CompoundV3MarketsData = CompoundMarketsData<CompoundV3AssetsData>;
78
-
79
- export interface BaseAdditionalAssetData {
80
- totalBorrow: string,
81
- utilization: string,
82
- marketLiquidity: string,
83
- rewardSupplySpeed: string,
84
- rewardBorrowSpeed: string,
85
- minDebt: string,
86
- isBase: boolean,
87
- }
88
-
89
- export interface CompoundAggregatedPositionData {
90
- suppliedUsd: string,
91
- suppliedCollateralUsd: string,
92
- borrowedUsd: string,
93
- borrowLimitUsd: string,
94
- liquidationLimitUsd: string,
95
- leftToBorrowUsd: string,
96
- ratio: string,
97
- collRatio: string,
98
- netApy: string,
99
- incentiveUsd: string,
100
- totalInterestUsd: string,
101
- liqRatio: string,
102
- liqPercent: string,
103
- leveragedType: string,
104
- leveragedAsset?: string,
105
- leveragedLsdAssetRatio?: string,
106
- liquidationPrice?: string,
107
- minRatio: string,
108
- debtTooLow: boolean,
109
- minDebt: string,
110
- }
111
-
112
- export interface CompoundPositionData extends MMPositionData {
113
- ratio: string,
114
- minRatio: string,
115
- borrowedUsd: string,
116
- borrowLimitUsd: string,
117
- incentiveUsd: string,
118
- totalInterestUsd: string,
119
- isSubscribedToAutomation?: boolean,
120
- automationResubscribeRequired?: boolean,
121
- }
122
-
123
- export interface CompoundV2PositionData extends CompoundPositionData {
124
- usedAssets: CompoundV2UsedAssets,
125
- }
126
-
127
- export interface CompoundV3PositionData extends CompoundPositionData {
128
- usedAssets: CompoundV3UsedAssets,
1
+ import {
2
+ MMAssetData, MMPositionData, MMUsedAsset, NetworkNumber,
3
+ } from './common';
4
+
5
+ export enum CompoundVersions {
6
+ 'CompoundV2' = 'v2',
7
+ 'CompoundV3USDC' = 'v3-USDC',
8
+ 'CompoundV3USDCe' = 'v3-USDC.e',
9
+ 'CompoundV3ETH' = 'v3-ETH',
10
+ 'CompoundV3USDbC' = 'v3-USDbC',
11
+ }
12
+
13
+ export interface CompoundBulkerOptions {
14
+ supply: number | string,
15
+ withdraw: number | string,
16
+ }
17
+
18
+ export interface CompoundMarketData {
19
+ chainIds: NetworkNumber[],
20
+ label: string,
21
+ shortLabel: string,
22
+ value: CompoundVersions,
23
+ baseAsset: string,
24
+ collAssets: readonly string[],
25
+ baseMarket: string,
26
+ baseMarketAddress: string,
27
+ secondLabel: string,
28
+ bulkerName: string,
29
+ bulkerAddress: string,
30
+ bulkerOptions: CompoundBulkerOptions,
31
+ // icon: Function,
32
+ }
33
+
34
+ export interface CompoundUsedAsset extends MMUsedAsset {
35
+ collateral: boolean,
36
+ limit?: string,
37
+ }
38
+
39
+ export interface CompoundV2UsedAsset extends CompoundUsedAsset {
40
+ }
41
+ export interface CompoundV3UsedAsset extends CompoundUsedAsset {
42
+ }
43
+
44
+ export interface CompoundUsedAssets<T> {
45
+ [token: string]: T,
46
+ }
47
+
48
+ export type CompoundV2UsedAssets = CompoundUsedAssets<CompoundV2UsedAsset>;
49
+ export type CompoundV3UsedAssets = CompoundUsedAssets<CompoundV3UsedAsset>;
50
+
51
+ export interface CompoundAssetData extends MMAssetData {
52
+ supplyCapAlternative?: string,
53
+ totalSupplyAlternative?: string,
54
+ priceAlternative?: string,
55
+ sortIndex?: number,
56
+ }
57
+
58
+ export interface CompoundV2AssetData extends CompoundAssetData {
59
+ }
60
+ export interface CompoundV3AssetData extends CompoundAssetData {
61
+ borrowCollateralFactor: string,
62
+ liquidateCollateralFactor: string,
63
+ minDebt: string,
64
+ liquidationRatio: string,
65
+ supplyCap: string,
66
+ priceInBaseAsset: string,
67
+ }
68
+
69
+ export interface CompoundAssetsData<T> {
70
+ [token: string]: T
71
+ }
72
+ export type CompoundV2AssetsData = CompoundAssetsData<CompoundV2AssetData>;
73
+ export type CompoundV3AssetsData = CompoundAssetsData<CompoundV3AssetData>;
74
+
75
+ export type CompoundMarketsData<T> = { assetsData: T };
76
+ export type CompoundV2MarketsData = CompoundMarketsData<CompoundV2AssetsData>;
77
+ export type CompoundV3MarketsData = CompoundMarketsData<CompoundV3AssetsData>;
78
+
79
+ export interface BaseAdditionalAssetData {
80
+ totalBorrow: string,
81
+ utilization: string,
82
+ marketLiquidity: string,
83
+ rewardSupplySpeed: string,
84
+ rewardBorrowSpeed: string,
85
+ minDebt: string,
86
+ isBase: boolean,
87
+ }
88
+
89
+ export interface CompoundAggregatedPositionData {
90
+ suppliedUsd: string,
91
+ suppliedCollateralUsd: string,
92
+ borrowedUsd: string,
93
+ borrowLimitUsd: string,
94
+ liquidationLimitUsd: string,
95
+ leftToBorrowUsd: string,
96
+ ratio: string,
97
+ collRatio: string,
98
+ netApy: string,
99
+ incentiveUsd: string,
100
+ totalInterestUsd: string,
101
+ liqRatio: string,
102
+ liqPercent: string,
103
+ leveragedType: string,
104
+ leveragedAsset?: string,
105
+ leveragedLsdAssetRatio?: string,
106
+ liquidationPrice?: string,
107
+ minRatio: string,
108
+ debtTooLow: boolean,
109
+ minDebt: string,
110
+ }
111
+
112
+ export interface CompoundPositionData extends MMPositionData {
113
+ ratio: string,
114
+ minRatio: string,
115
+ borrowedUsd: string,
116
+ borrowLimitUsd: string,
117
+ incentiveUsd: string,
118
+ totalInterestUsd: string,
119
+ isSubscribedToAutomation?: boolean,
120
+ automationResubscribeRequired?: boolean,
121
+ }
122
+
123
+ export interface CompoundV2PositionData extends CompoundPositionData {
124
+ usedAssets: CompoundV2UsedAssets,
125
+ }
126
+
127
+ export interface CompoundV3PositionData extends CompoundPositionData {
128
+ usedAssets: CompoundV3UsedAssets,
129
129
  }
@@ -159,9 +159,7 @@ export declare namespace CurveUsdView {
159
159
  number | string | BN,
160
160
  number | string | BN,
161
161
  [number | string | BN, number | string | BN],
162
- [number | string | BN[], number | string | BN[]],
163
- number | string | BN,
164
- boolean
162
+ [number | string | BN[], number | string | BN[]]
165
163
  ]
166
164
  | {
167
165
  loanExists: boolean;
@@ -176,8 +174,6 @@ export declare namespace CurveUsdView {
176
174
  health: number | string | BN;
177
175
  bandRange: [number | string | BN, number | string | BN];
178
176
  usersBands: [number | string | BN[], number | string | BN[]];
179
- collRatio: number | string | BN;
180
- isInSoftLiquidation: boolean;
181
177
  };
182
178
 
183
179
  export type UserDataStructOutputArray = [
@@ -192,9 +188,7 @@ export declare namespace CurveUsdView {
192
188
  string,
193
189
  string,
194
190
  [string, string],
195
- [string[], string[]],
196
- string,
197
- boolean
191
+ [string[], string[]]
198
192
  ];
199
193
  export type UserDataStructOutputStruct = {
200
194
  loanExists: boolean;
@@ -209,8 +203,6 @@ export declare namespace CurveUsdView {
209
203
  health: string;
210
204
  bandRange: [string, string];
211
205
  usersBands: [string[], string[]];
212
- collRatio: string;
213
- isInSoftLiquidation: boolean;
214
206
  };
215
207
  export type UserDataStructOutput = UserDataStructOutputArray &
216
208
  UserDataStructOutputStruct;
@@ -224,10 +216,6 @@ export interface CrvUSDView extends BaseContract {
224
216
  ): CrvUSDView;
225
217
  clone(): CrvUSDView;
226
218
  methods: {
227
- WBTC_HEALTH_ZAP(): NonPayableTransactionObject<string>;
228
-
229
- WBTC_MARKET(): NonPayableTransactionObject<string>;
230
-
231
219
  createLoanData(
232
220
  market: string,
233
221
  collateral: number | string | BN,
@@ -240,32 +228,18 @@ export interface CrvUSDView extends BaseContract {
240
228
  n: number | string | BN
241
229
  ): NonPayableTransactionObject<CurveUsdView.BandStructOutput>;
242
230
 
243
- getBandsData(
244
- market: string,
245
- from: number | string | BN,
246
- to: number | string | BN
247
- ): NonPayableTransactionObject<CurveUsdView.BandStructOutput[]>;
248
-
249
- getBandsDataForPosition(
231
+ "getBandsData(address,uint256,uint256,uint256)"(
250
232
  market: string,
251
233
  collateral: number | string | BN,
252
234
  debt: number | string | BN,
253
235
  N: number | string | BN
254
236
  ): NonPayableTransactionObject<CurveUsdView.BandStructOutput[]>;
255
237
 
256
- getCollAmountsFromAMM(
257
- _controllerAddress: string,
258
- _user: string
259
- ): NonPayableTransactionObject<
260
- [string, string] & { crvUsdAmount: string; collAmount: string }
261
- >;
262
-
263
- getCollateralRatio(
264
- _user: string,
265
- _controllerAddr: string
266
- ): NonPayableTransactionObject<
267
- [string, boolean] & { collRatio: string; isInSoftLiquidation: boolean }
268
- >;
238
+ "getBandsData(address,int256,int256)"(
239
+ market: string,
240
+ from: number | string | BN,
241
+ to: number | string | BN
242
+ ): NonPayableTransactionObject<CurveUsdView.BandStructOutput[]>;
269
243
 
270
244
  globalData(
271
245
  market: string
@@ -280,10 +254,6 @@ export interface CrvUSDView extends BaseContract {
280
254
  numBands: number | string | BN
281
255
  ): NonPayableTransactionObject<string>;
282
256
 
283
- isControllerValid(
284
- _controllerAddr: string
285
- ): NonPayableTransactionObject<boolean>;
286
-
287
257
  maxBorrow(
288
258
  market: string,
289
259
  collateral: number | string | BN,
@@ -300,11 +270,6 @@ export interface CrvUSDView extends BaseContract {
300
270
  market: string,
301
271
  user: string
302
272
  ): NonPayableTransactionObject<CurveUsdView.UserDataStructOutput>;
303
-
304
- userMaxWithdraw(
305
- _controllerAddress: string,
306
- _user: string
307
- ): NonPayableTransactionObject<string>;
308
273
  };
309
274
  events: {
310
275
  allEvents(options?: EventOptions, cb?: Callback<EventLog>): EventEmitter;