@suilend/sdk 1.1.4 → 1.1.7

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 (120) hide show
  1. package/core/client.d.ts +117 -0
  2. package/{client.js → core/client.js} +97 -93
  3. package/{constants.d.ts → core/constants.d.ts} +4 -0
  4. package/{constants.js → core/constants.js} +6 -1
  5. package/core/parsers/deps.d.ts +15 -0
  6. package/core/parsers/deps.js +2 -0
  7. package/{parsers → core/parsers}/lendingMarket.d.ts +37 -38
  8. package/{parsers → core/parsers}/lendingMarket.js +4 -14
  9. package/{parsers → core/parsers}/obligation.d.ts +60 -60
  10. package/{parsers → core/parsers}/obligation.js +1 -1
  11. package/core/parsers/rateLimiter.d.ts +19 -0
  12. package/{parsers → core/parsers}/rateLimiter.js +3 -3
  13. package/{parsers → core/parsers}/reserve.d.ts +46 -47
  14. package/{parsers → core/parsers}/reserve.js +8 -32
  15. package/core/types.d.ts +882 -0
  16. package/core/types.js +132 -0
  17. package/core/utils/simulate.d.ts +56 -0
  18. package/core/utils/simulate.js +312 -0
  19. package/index.d.ts +1 -7
  20. package/index.js +1 -7
  21. package/{_generated → mainnet/_generated}/suilend/index.d.ts +1 -2
  22. package/{_generated → mainnet/_generated}/suilend/index.js +1 -5
  23. package/mainnet/api/events.d.ts +1 -0
  24. package/mainnet/api/events.js +17 -0
  25. package/mainnet/client.d.ts +18 -0
  26. package/mainnet/client.js +110 -0
  27. package/mainnet/constants.d.ts +3 -0
  28. package/mainnet/constants.js +20 -0
  29. package/mainnet/index.d.ts +6 -0
  30. package/mainnet/index.js +22 -0
  31. package/mainnet/parsers/apiReserveAssetDataEvent.d.ts +1 -0
  32. package/mainnet/parsers/apiReserveAssetDataEvent.js +17 -0
  33. package/{parsers → mainnet/parsers}/index.d.ts +0 -1
  34. package/{parsers → mainnet/parsers}/index.js +0 -1
  35. package/mainnet/parsers/lendingMarket.d.ts +127 -0
  36. package/mainnet/parsers/lendingMarket.js +41 -0
  37. package/mainnet/parsers/obligation.d.ts +10 -0
  38. package/mainnet/parsers/obligation.js +30 -0
  39. package/{parsers → mainnet/parsers}/rateLimiter.d.ts +9 -10
  40. package/mainnet/parsers/rateLimiter.js +32 -0
  41. package/mainnet/parsers/reserve.d.ts +166 -0
  42. package/mainnet/parsers/reserve.js +38 -0
  43. package/mainnet/types.d.ts +1 -0
  44. package/{api/index.js → mainnet/types.js} +1 -1
  45. package/mainnet/utils/events.d.ts +1 -0
  46. package/mainnet/utils/events.js +17 -0
  47. package/mainnet/utils/simulate.js +78 -0
  48. package/mainnet/utils.d.ts +1 -0
  49. package/mainnet/utils.js +17 -0
  50. package/package.json +1 -1
  51. package/api/index.d.ts +0 -1
  52. package/client.d.ts +0 -64
  53. package/types.d.ts +0 -200
  54. package/types.js +0 -15
  55. package/utils/simulate.js +0 -316
  56. /package/{api → core/api}/events.d.ts +0 -0
  57. /package/{api → core/api}/events.js +0 -0
  58. /package/{parsers → core/parsers}/apiReserveAssetDataEvent.d.ts +0 -0
  59. /package/{parsers → core/parsers}/apiReserveAssetDataEvent.js +0 -0
  60. /package/{utils → core/utils}/events.d.ts +0 -0
  61. /package/{utils → core/utils}/events.js +0 -0
  62. /package/{utils.d.ts → core/utils.d.ts} +0 -0
  63. /package/{utils.js → core/utils.js} +0 -0
  64. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/ascii/structs.d.ts +0 -0
  65. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/ascii/structs.js +0 -0
  66. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/index.d.ts +0 -0
  67. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/index.js +0 -0
  68. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/option/structs.d.ts +0 -0
  69. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/option/structs.js +0 -0
  70. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/type-name/structs.d.ts +0 -0
  71. /package/{_generated → mainnet/_generated}/_dependencies/source/0x1/type-name/structs.js +0 -0
  72. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/bag/structs.d.ts +0 -0
  73. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/bag/structs.js +0 -0
  74. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/balance/structs.d.ts +0 -0
  75. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/balance/structs.js +0 -0
  76. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/index.d.ts +0 -0
  77. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/index.js +0 -0
  78. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/object/structs.d.ts +0 -0
  79. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/object/structs.js +0 -0
  80. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/object-table/structs.d.ts +0 -0
  81. /package/{_generated → mainnet/_generated}/_dependencies/source/0x2/object-table/structs.js +0 -0
  82. /package/{_generated → mainnet/_generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.d.ts +0 -0
  83. /package/{_generated → mainnet/_generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/index.js +0 -0
  84. /package/{_generated → mainnet/_generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.d.ts +0 -0
  85. /package/{_generated → mainnet/_generated}/_dependencies/source/0x8d97f1cd6ac663735be08d1d2b6d02a159e711586461306ce60a2b7a6a565a9e/price-identifier/structs.js +0 -0
  86. /package/{_generated → mainnet/_generated}/_framework/reified.d.ts +0 -0
  87. /package/{_generated → mainnet/_generated}/_framework/reified.js +0 -0
  88. /package/{_generated → mainnet/_generated}/_framework/util.d.ts +0 -0
  89. /package/{_generated → mainnet/_generated}/_framework/util.js +0 -0
  90. /package/{_generated → mainnet/_generated}/_framework/vector.d.ts +0 -0
  91. /package/{_generated → mainnet/_generated}/_framework/vector.js +0 -0
  92. /package/{_generated → mainnet/_generated}/suilend/cell/structs.d.ts +0 -0
  93. /package/{_generated → mainnet/_generated}/suilend/cell/structs.js +0 -0
  94. /package/{_generated → mainnet/_generated}/suilend/decimal/structs.d.ts +0 -0
  95. /package/{_generated → mainnet/_generated}/suilend/decimal/structs.js +0 -0
  96. /package/{_generated → mainnet/_generated}/suilend/lending-market/functions.d.ts +0 -0
  97. /package/{_generated → mainnet/_generated}/suilend/lending-market/functions.js +0 -0
  98. /package/{_generated → mainnet/_generated}/suilend/lending-market/structs.d.ts +0 -0
  99. /package/{_generated → mainnet/_generated}/suilend/lending-market/structs.js +0 -0
  100. /package/{_generated → mainnet/_generated}/suilend/lending-market-registry/functions.d.ts +0 -0
  101. /package/{_generated → mainnet/_generated}/suilend/lending-market-registry/functions.js +0 -0
  102. /package/{_generated → mainnet/_generated}/suilend/liquidity-mining/structs.d.ts +0 -0
  103. /package/{_generated → mainnet/_generated}/suilend/liquidity-mining/structs.js +0 -0
  104. /package/{_generated → mainnet/_generated}/suilend/obligation/structs.d.ts +0 -0
  105. /package/{_generated → mainnet/_generated}/suilend/obligation/structs.js +0 -0
  106. /package/{_generated → mainnet/_generated}/suilend/rate-limiter/functions.d.ts +0 -0
  107. /package/{_generated → mainnet/_generated}/suilend/rate-limiter/functions.js +0 -0
  108. /package/{_generated → mainnet/_generated}/suilend/rate-limiter/structs.d.ts +0 -0
  109. /package/{_generated → mainnet/_generated}/suilend/rate-limiter/structs.js +0 -0
  110. /package/{_generated → mainnet/_generated}/suilend/reserve/structs.d.ts +0 -0
  111. /package/{_generated → mainnet/_generated}/suilend/reserve/structs.js +0 -0
  112. /package/{_generated → mainnet/_generated}/suilend/reserve-config/functions.d.ts +0 -0
  113. /package/{_generated → mainnet/_generated}/suilend/reserve-config/functions.js +0 -0
  114. /package/{_generated → mainnet/_generated}/suilend/reserve-config/structs.d.ts +0 -0
  115. /package/{_generated → mainnet/_generated}/suilend/reserve-config/structs.js +0 -0
  116. /package/{utils → mainnet/utils}/index.d.ts +0 -0
  117. /package/{utils → mainnet/utils}/index.js +0 -0
  118. /package/{utils → mainnet/utils}/obligation.d.ts +0 -0
  119. /package/{utils → mainnet/utils}/obligation.js +0 -0
  120. /package/{utils → mainnet/utils}/simulate.d.ts +0 -0
@@ -1,17 +1,16 @@
1
1
  import { CoinMetadata } from "@mysten/sui/client";
2
2
  import BigNumber from "bignumber.js";
3
- import { LendingMarket } from "../_generated/suilend/lending-market/structs";
4
- import { Reserve } from "../_generated/suilend/reserve/structs";
3
+ import { Deps } from "./deps";
5
4
  export type ParsedLendingMarket = ReturnType<typeof parseLendingMarket>;
6
- export declare const parseLendingMarket: (lendingMarket: LendingMarket<string>, reserves: Reserve<string>[], coinMetadataMap: Record<string, CoinMetadata>, currentTime: number) => {
7
- id: string;
8
- version: bigint;
5
+ export declare const parseLendingMarket: ({ LendingMarket, Reserve, PoolRewardManager, PoolReward, simulate, RateLimiter, }: Pick<Deps, "LendingMarket" | "Reserve" | "PoolRewardManager" | "PoolReward" | "simulate" | "RateLimiter">, lendingMarket: any, reserves: any[], coinMetadataMap: Record<string, CoinMetadata>, currentTime: number) => {
6
+ id: any;
7
+ version: any;
9
8
  reserves: {
10
9
  config: {
11
- $typeName: string;
12
- openLtvPct: number;
13
- closeLtvPct: number;
14
- maxCloseLtvPct: number;
10
+ $typeName: any;
11
+ openLtvPct: any;
12
+ closeLtvPct: any;
13
+ maxCloseLtvPct: any;
15
14
  borrowWeightBps: number;
16
15
  depositLimit: BigNumber;
17
16
  borrowLimit: BigNumber;
@@ -31,65 +30,65 @@ export declare const parseLendingMarket: (lendingMarket: LendingMarket<string>,
31
30
  aprPercent: BigNumber;
32
31
  }[];
33
32
  };
34
- $typeName: string;
35
- id: string;
33
+ $typeName: any;
34
+ id: any;
36
35
  arrayIndex: bigint;
37
36
  coinType: string;
38
- mintDecimals: number;
37
+ mintDecimals: any;
39
38
  priceIdentifier: string;
40
39
  price: BigNumber;
41
40
  smoothedPrice: BigNumber;
42
41
  minPrice: BigNumber;
43
42
  maxPrice: BigNumber;
44
- priceLastUpdateTimestampS: bigint;
43
+ priceLastUpdateTimestampS: any;
45
44
  availableAmount: BigNumber;
46
45
  ctokenSupply: BigNumber;
47
46
  borrowedAmount: BigNumber;
48
47
  cumulativeBorrowRate: BigNumber;
49
- interestLastUpdateTimestampS: bigint;
48
+ interestLastUpdateTimestampS: any;
50
49
  unclaimedSpreadFees: BigNumber;
51
50
  attributedBorrowValue: BigNumber;
52
51
  depositsPoolRewardManager: {
53
- $typeName: string;
54
- id: string;
55
- totalShares: bigint;
52
+ $typeName: any;
53
+ id: any;
54
+ totalShares: any;
56
55
  poolRewards: {
57
- $typeName: string;
58
- id: string;
59
- poolRewardManagerId: string;
56
+ $typeName: any;
57
+ id: any;
58
+ poolRewardManagerId: any;
60
59
  coinType: string;
61
60
  startTimeMs: number;
62
61
  endTimeMs: number;
63
62
  totalRewards: BigNumber;
64
63
  allocatedRewards: BigNumber;
65
64
  cumulativeRewardsPerShare: BigNumber;
66
- numUserRewardManagers: bigint;
65
+ numUserRewardManagers: any;
67
66
  rewardIndex: number;
68
67
  symbol: string;
69
68
  mintDecimals: number;
70
69
  }[];
71
- lastUpdateTimeMs: bigint;
70
+ lastUpdateTimeMs: any;
72
71
  };
73
72
  borrowsPoolRewardManager: {
74
- $typeName: string;
75
- id: string;
76
- totalShares: bigint;
73
+ $typeName: any;
74
+ id: any;
75
+ totalShares: any;
77
76
  poolRewards: {
78
- $typeName: string;
79
- id: string;
80
- poolRewardManagerId: string;
77
+ $typeName: any;
78
+ id: any;
79
+ poolRewardManagerId: any;
81
80
  coinType: string;
82
81
  startTimeMs: number;
83
82
  endTimeMs: number;
84
83
  totalRewards: BigNumber;
85
84
  allocatedRewards: BigNumber;
86
85
  cumulativeRewardsPerShare: BigNumber;
87
- numUserRewardManagers: bigint;
86
+ numUserRewardManagers: any;
88
87
  rewardIndex: number;
89
88
  symbol: string;
90
89
  mintDecimals: number;
91
90
  }[];
92
- lastUpdateTimeMs: bigint;
91
+ lastUpdateTimeMs: any;
93
92
  };
94
93
  availableAmountUsd: BigNumber;
95
94
  borrowedAmountUsd: BigNumber;
@@ -105,19 +104,19 @@ export declare const parseLendingMarket: (lendingMarket: LendingMarket<string>,
105
104
  description: string;
106
105
  totalDeposits: BigNumber;
107
106
  }[];
108
- obligations: import("../_generated/_dependencies/source/0x2/object-table/structs").ObjectTable<"0x2::object::ID", `0xf95b06141ed4a174f239417323bde3f209b972f5930d8521ea38a52aff3a6ddf::obligation::Obligation<${string}>`>;
107
+ obligations: any;
109
108
  rateLimiter: {
110
109
  config: {
111
- windowDuration: bigint;
112
- maxOutflow: bigint;
110
+ windowDuration: any;
111
+ maxOutflow: any;
113
112
  };
114
- $typeName: string;
115
- prevQty: bigint;
116
- windowStart: bigint;
117
- curQty: bigint;
113
+ $typeName: any;
114
+ prevQty: any;
115
+ windowStart: any;
116
+ curQty: any;
118
117
  remainingOutflow: BigNumber;
119
118
  };
120
- feeReceiver: string;
119
+ feeReceiver: any;
121
120
  badDebtUsd: BigNumber;
122
121
  badDebtLimitUsd: BigNumber;
123
122
  depositedAmountUsd: BigNumber;
@@ -7,23 +7,13 @@ exports.parseLendingMarket = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
8
  const rateLimiter_1 = require("./rateLimiter");
9
9
  const reserve_1 = require("./reserve");
10
- const parseLendingMarket = (lendingMarket, reserves, coinMetadataMap, currentTime) => {
10
+ const parseLendingMarket = ({ LendingMarket, Reserve, PoolRewardManager, PoolReward, simulate, RateLimiter, }, lendingMarket, reserves, coinMetadataMap, currentTime) => {
11
11
  const id = lendingMarket.id;
12
12
  const version = lendingMarket.version;
13
13
  const parsedReserves = reserves
14
- .map((reserve) => (0, reserve_1.parseReserve)(reserve, coinMetadataMap))
14
+ .map((reserve) => (0, reserve_1.parseReserve)({ Reserve, PoolRewardManager, PoolReward, simulate }, reserve, coinMetadataMap))
15
15
  .sort((a, b) => {
16
- const customOrder = [
17
- "SUI",
18
- "USDC",
19
- "wUSDC",
20
- "USDT",
21
- "ETH",
22
- "SOL",
23
- "AUSD",
24
- "DEEP",
25
- "FUD",
26
- ];
16
+ const customOrder = ["SUI", "USDC", "wUSDC", "DEEP", "FUD"];
27
17
  const aCustomOrderIndex = customOrder.indexOf(a.symbol);
28
18
  const bCustomOrderIndex = customOrder.indexOf(b.symbol);
29
19
  if (aCustomOrderIndex > -1 && bCustomOrderIndex > -1)
@@ -34,7 +24,7 @@ const parseLendingMarket = (lendingMarket, reserves, coinMetadataMap, currentTim
34
24
  return aCustomOrderIndex > -1 ? -1 : 1;
35
25
  });
36
26
  const obligations = lendingMarket.obligations;
37
- const parsedRateLimiter = (0, rateLimiter_1.parseRateLimiter)(lendingMarket.rateLimiter, currentTime);
27
+ const parsedRateLimiter = (0, rateLimiter_1.parseRateLimiter)({ RateLimiter }, lendingMarket.rateLimiter, currentTime);
38
28
  const feeReceiver = lendingMarket.feeReceiver;
39
29
  const badDebtUsd = new bignumber_js_1.default(lendingMarket.badDebtUsd.value.toString());
40
30
  const badDebtLimitUsd = new bignumber_js_1.default(lendingMarket.badDebtLimitUsd.value.toString());
@@ -1,12 +1,12 @@
1
1
  import BigNumber from "bignumber.js";
2
- import { Obligation } from "../_generated/suilend/obligation/structs";
2
+ import { Deps } from "./deps";
3
3
  import { ParsedReserve } from "./reserve";
4
4
  export type ParsedObligation = ReturnType<typeof parseObligation>;
5
5
  export type ParsedPosition = ParsedObligation["deposits"][0] | ParsedObligation["borrows"][0];
6
- export declare const parseObligation: (obligation: Obligation<string>, parsedReserveMap: {
6
+ export declare const parseObligation: ({ Obligation }: Pick<Deps, "Obligation">, obligation: any, parsedReserveMap: {
7
7
  [coinType: string]: ParsedReserve;
8
8
  }) => {
9
- id: string;
9
+ id: any;
10
10
  depositedAmountUsd: BigNumber;
11
11
  borrowedAmountUsd: BigNumber;
12
12
  netValueUsd: BigNumber;
@@ -20,18 +20,18 @@ export declare const parseObligation: (obligation: Obligation<string>, parsedRes
20
20
  positionCount: number;
21
21
  deposits: {
22
22
  coinType: string;
23
- reserveArrayIndex: bigint;
23
+ reserveArrayIndex: any;
24
24
  userRewardManagerIndex: number;
25
- userRewardManager: import("../_generated/suilend/liquidity-mining/structs").UserRewardManager;
25
+ userRewardManager: any;
26
26
  depositedAmount: BigNumber;
27
27
  depositedAmountUsd: BigNumber;
28
28
  depositedCtokenAmount: BigNumber;
29
29
  reserve: {
30
30
  config: {
31
- $typeName: string;
32
- openLtvPct: number;
33
- closeLtvPct: number;
34
- maxCloseLtvPct: number;
31
+ $typeName: any;
32
+ openLtvPct: any;
33
+ closeLtvPct: any;
34
+ maxCloseLtvPct: any;
35
35
  borrowWeightBps: number;
36
36
  depositLimit: BigNumber;
37
37
  borrowLimit: BigNumber;
@@ -51,65 +51,65 @@ export declare const parseObligation: (obligation: Obligation<string>, parsedRes
51
51
  aprPercent: BigNumber;
52
52
  }[];
53
53
  };
54
- $typeName: string;
55
- id: string;
54
+ $typeName: any;
55
+ id: any;
56
56
  arrayIndex: bigint;
57
57
  coinType: string;
58
- mintDecimals: number;
58
+ mintDecimals: any;
59
59
  priceIdentifier: string;
60
60
  price: BigNumber;
61
61
  smoothedPrice: BigNumber;
62
62
  minPrice: BigNumber;
63
63
  maxPrice: BigNumber;
64
- priceLastUpdateTimestampS: bigint;
64
+ priceLastUpdateTimestampS: any;
65
65
  availableAmount: BigNumber;
66
66
  ctokenSupply: BigNumber;
67
67
  borrowedAmount: BigNumber;
68
68
  cumulativeBorrowRate: BigNumber;
69
- interestLastUpdateTimestampS: bigint;
69
+ interestLastUpdateTimestampS: any;
70
70
  unclaimedSpreadFees: BigNumber;
71
71
  attributedBorrowValue: BigNumber;
72
72
  depositsPoolRewardManager: {
73
- $typeName: string;
74
- id: string;
75
- totalShares: bigint;
73
+ $typeName: any;
74
+ id: any;
75
+ totalShares: any;
76
76
  poolRewards: {
77
- $typeName: string;
78
- id: string;
79
- poolRewardManagerId: string;
77
+ $typeName: any;
78
+ id: any;
79
+ poolRewardManagerId: any;
80
80
  coinType: string;
81
81
  startTimeMs: number;
82
82
  endTimeMs: number;
83
83
  totalRewards: BigNumber;
84
84
  allocatedRewards: BigNumber;
85
85
  cumulativeRewardsPerShare: BigNumber;
86
- numUserRewardManagers: bigint;
86
+ numUserRewardManagers: any;
87
87
  rewardIndex: number;
88
88
  symbol: string;
89
89
  mintDecimals: number;
90
90
  }[];
91
- lastUpdateTimeMs: bigint;
91
+ lastUpdateTimeMs: any;
92
92
  };
93
93
  borrowsPoolRewardManager: {
94
- $typeName: string;
95
- id: string;
96
- totalShares: bigint;
94
+ $typeName: any;
95
+ id: any;
96
+ totalShares: any;
97
97
  poolRewards: {
98
- $typeName: string;
99
- id: string;
100
- poolRewardManagerId: string;
98
+ $typeName: any;
99
+ id: any;
100
+ poolRewardManagerId: any;
101
101
  coinType: string;
102
102
  startTimeMs: number;
103
103
  endTimeMs: number;
104
104
  totalRewards: BigNumber;
105
105
  allocatedRewards: BigNumber;
106
106
  cumulativeRewardsPerShare: BigNumber;
107
- numUserRewardManagers: bigint;
107
+ numUserRewardManagers: any;
108
108
  rewardIndex: number;
109
109
  symbol: string;
110
110
  mintDecimals: number;
111
111
  }[];
112
- lastUpdateTimeMs: bigint;
112
+ lastUpdateTimeMs: any;
113
113
  };
114
114
  availableAmountUsd: BigNumber;
115
115
  borrowedAmountUsd: BigNumber;
@@ -125,21 +125,21 @@ export declare const parseObligation: (obligation: Obligation<string>, parsedRes
125
125
  description: string;
126
126
  totalDeposits: BigNumber;
127
127
  };
128
- original: Obligation<string>;
128
+ original: any;
129
129
  }[];
130
130
  borrows: {
131
131
  coinType: string;
132
- reserveArrayIndex: bigint;
132
+ reserveArrayIndex: any;
133
133
  userRewardManagerIndex: number;
134
- userRewardManager: import("../_generated/suilend/liquidity-mining/structs").UserRewardManager;
134
+ userRewardManager: any;
135
135
  borrowedAmount: BigNumber;
136
136
  borrowedAmountUsd: BigNumber;
137
137
  reserve: {
138
138
  config: {
139
- $typeName: string;
140
- openLtvPct: number;
141
- closeLtvPct: number;
142
- maxCloseLtvPct: number;
139
+ $typeName: any;
140
+ openLtvPct: any;
141
+ closeLtvPct: any;
142
+ maxCloseLtvPct: any;
143
143
  borrowWeightBps: number;
144
144
  depositLimit: BigNumber;
145
145
  borrowLimit: BigNumber;
@@ -159,65 +159,65 @@ export declare const parseObligation: (obligation: Obligation<string>, parsedRes
159
159
  aprPercent: BigNumber;
160
160
  }[];
161
161
  };
162
- $typeName: string;
163
- id: string;
162
+ $typeName: any;
163
+ id: any;
164
164
  arrayIndex: bigint;
165
165
  coinType: string;
166
- mintDecimals: number;
166
+ mintDecimals: any;
167
167
  priceIdentifier: string;
168
168
  price: BigNumber;
169
169
  smoothedPrice: BigNumber;
170
170
  minPrice: BigNumber;
171
171
  maxPrice: BigNumber;
172
- priceLastUpdateTimestampS: bigint;
172
+ priceLastUpdateTimestampS: any;
173
173
  availableAmount: BigNumber;
174
174
  ctokenSupply: BigNumber;
175
175
  borrowedAmount: BigNumber;
176
176
  cumulativeBorrowRate: BigNumber;
177
- interestLastUpdateTimestampS: bigint;
177
+ interestLastUpdateTimestampS: any;
178
178
  unclaimedSpreadFees: BigNumber;
179
179
  attributedBorrowValue: BigNumber;
180
180
  depositsPoolRewardManager: {
181
- $typeName: string;
182
- id: string;
183
- totalShares: bigint;
181
+ $typeName: any;
182
+ id: any;
183
+ totalShares: any;
184
184
  poolRewards: {
185
- $typeName: string;
186
- id: string;
187
- poolRewardManagerId: string;
185
+ $typeName: any;
186
+ id: any;
187
+ poolRewardManagerId: any;
188
188
  coinType: string;
189
189
  startTimeMs: number;
190
190
  endTimeMs: number;
191
191
  totalRewards: BigNumber;
192
192
  allocatedRewards: BigNumber;
193
193
  cumulativeRewardsPerShare: BigNumber;
194
- numUserRewardManagers: bigint;
194
+ numUserRewardManagers: any;
195
195
  rewardIndex: number;
196
196
  symbol: string;
197
197
  mintDecimals: number;
198
198
  }[];
199
- lastUpdateTimeMs: bigint;
199
+ lastUpdateTimeMs: any;
200
200
  };
201
201
  borrowsPoolRewardManager: {
202
- $typeName: string;
203
- id: string;
204
- totalShares: bigint;
202
+ $typeName: any;
203
+ id: any;
204
+ totalShares: any;
205
205
  poolRewards: {
206
- $typeName: string;
207
- id: string;
208
- poolRewardManagerId: string;
206
+ $typeName: any;
207
+ id: any;
208
+ poolRewardManagerId: any;
209
209
  coinType: string;
210
210
  startTimeMs: number;
211
211
  endTimeMs: number;
212
212
  totalRewards: BigNumber;
213
213
  allocatedRewards: BigNumber;
214
214
  cumulativeRewardsPerShare: BigNumber;
215
- numUserRewardManagers: bigint;
215
+ numUserRewardManagers: any;
216
216
  rewardIndex: number;
217
217
  symbol: string;
218
218
  mintDecimals: number;
219
219
  }[];
220
- lastUpdateTimeMs: bigint;
220
+ lastUpdateTimeMs: any;
221
221
  };
222
222
  availableAmountUsd: BigNumber;
223
223
  borrowedAmountUsd: BigNumber;
@@ -233,10 +233,10 @@ export declare const parseObligation: (obligation: Obligation<string>, parsedRes
233
233
  description: string;
234
234
  totalDeposits: BigNumber;
235
235
  };
236
- original: Obligation<string>;
236
+ original: any;
237
237
  }[];
238
238
  weightedConservativeBorrowUtilizationPercent: BigNumber;
239
- original: Obligation<string>;
239
+ original: any;
240
240
  /**
241
241
  * @deprecated since version 1.0.3. Use `depositedAmountUsd` instead.
242
242
  */
@@ -7,7 +7,7 @@ exports.parseObligation = void 0;
7
7
  const utils_1 = require("@mysten/sui/utils");
8
8
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
9
9
  const constants_1 = require("../constants");
10
- const parseObligation = (obligation, parsedReserveMap) => {
10
+ const parseObligation = ({ Obligation }, obligation, parsedReserveMap) => {
11
11
  let totalDepositedAmountUsd = new bignumber_js_1.default(0);
12
12
  let totalBorrowedAmountUsd = new bignumber_js_1.default(0);
13
13
  let weightedBorrowsUsd = new bignumber_js_1.default(0);
@@ -0,0 +1,19 @@
1
+ import BigNumber from "bignumber.js";
2
+ import { Deps } from "./deps";
3
+ export type ParsedRateLimiter = ReturnType<typeof parseRateLimiter>;
4
+ export type ParsedRateLimiterConfig = ReturnType<typeof parseRateLimiterConfig>;
5
+ export declare const parseRateLimiter: ({ RateLimiter }: Pick<Deps, "RateLimiter">, rateLimiter: any, currentTime: number) => {
6
+ config: {
7
+ windowDuration: any;
8
+ maxOutflow: any;
9
+ };
10
+ $typeName: any;
11
+ prevQty: any;
12
+ windowStart: any;
13
+ curQty: any;
14
+ remainingOutflow: BigNumber;
15
+ };
16
+ export declare const parseRateLimiterConfig: ({ RateLimiter }: Pick<Deps, "RateLimiter">, rateLimiter: any) => {
17
+ windowDuration: any;
18
+ maxOutflow: any;
19
+ };
@@ -6,8 +6,8 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.parseRateLimiterConfig = exports.parseRateLimiter = void 0;
7
7
  const bignumber_js_1 = __importDefault(require("bignumber.js"));
8
8
  const constants_1 = require("../constants");
9
- const parseRateLimiter = (rateLimiter, currentTime) => {
10
- const config = (0, exports.parseRateLimiterConfig)(rateLimiter);
9
+ const parseRateLimiter = ({ RateLimiter }, rateLimiter, currentTime) => {
10
+ const config = (0, exports.parseRateLimiterConfig)({ RateLimiter }, rateLimiter);
11
11
  const $typeName = rateLimiter.$typeName;
12
12
  const prevQty = rateLimiter.prevQty.value;
13
13
  const windowStart = rateLimiter.windowStart;
@@ -33,7 +33,7 @@ const parseRateLimiter = (rateLimiter, currentTime) => {
33
33
  };
34
34
  };
35
35
  exports.parseRateLimiter = parseRateLimiter;
36
- const parseRateLimiterConfig = (rateLimiter) => {
36
+ const parseRateLimiterConfig = ({ RateLimiter }, rateLimiter) => {
37
37
  const config = rateLimiter.config;
38
38
  if (!config)
39
39
  throw new Error("Rate limiter config not found");
@@ -1,17 +1,16 @@
1
1
  import { CoinMetadata } from "@mysten/sui/client";
2
2
  import BigNumber from "bignumber.js";
3
- import { PoolReward, PoolRewardManager } from "../_generated/suilend/liquidity-mining/structs";
4
- import { Reserve } from "../_generated/suilend/reserve/structs";
3
+ import { Deps } from "./deps";
5
4
  export type ParsedReserve = ReturnType<typeof parseReserve>;
6
5
  export type ParsedReserveConfig = ReturnType<typeof parseReserveConfig>;
7
6
  export type ParsedPoolRewardManager = ReturnType<typeof parsePoolRewardManager>;
8
7
  export type ParsedPoolReward = NonNullable<ReturnType<typeof parsePoolReward>>;
9
- export declare const parseReserve: (reserve: Reserve<string>, coinMetadataMap: Record<string, CoinMetadata>) => {
8
+ export declare const parseReserve: ({ Reserve, PoolRewardManager, PoolReward, simulate, }: Pick<Deps, "Reserve" | "PoolRewardManager" | "PoolReward" | "simulate">, reserve: any, coinMetadataMap: Record<string, CoinMetadata>) => {
10
9
  config: {
11
- $typeName: string;
12
- openLtvPct: number;
13
- closeLtvPct: number;
14
- maxCloseLtvPct: number;
10
+ $typeName: any;
11
+ openLtvPct: any;
12
+ closeLtvPct: any;
13
+ maxCloseLtvPct: any;
15
14
  borrowWeightBps: number;
16
15
  depositLimit: BigNumber;
17
16
  borrowLimit: BigNumber;
@@ -31,65 +30,65 @@ export declare const parseReserve: (reserve: Reserve<string>, coinMetadataMap: R
31
30
  aprPercent: BigNumber;
32
31
  }[];
33
32
  };
34
- $typeName: string;
35
- id: string;
33
+ $typeName: any;
34
+ id: any;
36
35
  arrayIndex: bigint;
37
36
  coinType: string;
38
- mintDecimals: number;
37
+ mintDecimals: any;
39
38
  priceIdentifier: string;
40
39
  price: BigNumber;
41
40
  smoothedPrice: BigNumber;
42
41
  minPrice: BigNumber;
43
42
  maxPrice: BigNumber;
44
- priceLastUpdateTimestampS: bigint;
43
+ priceLastUpdateTimestampS: any;
45
44
  availableAmount: BigNumber;
46
45
  ctokenSupply: BigNumber;
47
46
  borrowedAmount: BigNumber;
48
47
  cumulativeBorrowRate: BigNumber;
49
- interestLastUpdateTimestampS: bigint;
48
+ interestLastUpdateTimestampS: any;
50
49
  unclaimedSpreadFees: BigNumber;
51
50
  attributedBorrowValue: BigNumber;
52
51
  depositsPoolRewardManager: {
53
- $typeName: string;
54
- id: string;
55
- totalShares: bigint;
52
+ $typeName: any;
53
+ id: any;
54
+ totalShares: any;
56
55
  poolRewards: {
57
- $typeName: string;
58
- id: string;
59
- poolRewardManagerId: string;
56
+ $typeName: any;
57
+ id: any;
58
+ poolRewardManagerId: any;
60
59
  coinType: string;
61
60
  startTimeMs: number;
62
61
  endTimeMs: number;
63
62
  totalRewards: BigNumber;
64
63
  allocatedRewards: BigNumber;
65
64
  cumulativeRewardsPerShare: BigNumber;
66
- numUserRewardManagers: bigint;
65
+ numUserRewardManagers: any;
67
66
  rewardIndex: number;
68
67
  symbol: string;
69
68
  mintDecimals: number;
70
69
  }[];
71
- lastUpdateTimeMs: bigint;
70
+ lastUpdateTimeMs: any;
72
71
  };
73
72
  borrowsPoolRewardManager: {
74
- $typeName: string;
75
- id: string;
76
- totalShares: bigint;
73
+ $typeName: any;
74
+ id: any;
75
+ totalShares: any;
77
76
  poolRewards: {
78
- $typeName: string;
79
- id: string;
80
- poolRewardManagerId: string;
77
+ $typeName: any;
78
+ id: any;
79
+ poolRewardManagerId: any;
81
80
  coinType: string;
82
81
  startTimeMs: number;
83
82
  endTimeMs: number;
84
83
  totalRewards: BigNumber;
85
84
  allocatedRewards: BigNumber;
86
85
  cumulativeRewardsPerShare: BigNumber;
87
- numUserRewardManagers: bigint;
86
+ numUserRewardManagers: any;
88
87
  rewardIndex: number;
89
88
  symbol: string;
90
89
  mintDecimals: number;
91
90
  }[];
92
- lastUpdateTimeMs: bigint;
91
+ lastUpdateTimeMs: any;
93
92
  };
94
93
  availableAmountUsd: BigNumber;
95
94
  borrowedAmountUsd: BigNumber;
@@ -108,11 +107,11 @@ export declare const parseReserve: (reserve: Reserve<string>, coinMetadataMap: R
108
107
  */
109
108
  totalDeposits: BigNumber;
110
109
  };
111
- export declare const parseReserveConfig: (reserve: Reserve<string>) => {
112
- $typeName: string;
113
- openLtvPct: number;
114
- closeLtvPct: number;
115
- maxCloseLtvPct: number;
110
+ export declare const parseReserveConfig: ({ Reserve }: Pick<Deps, "Reserve">, reserve: any) => {
111
+ $typeName: any;
112
+ openLtvPct: any;
113
+ closeLtvPct: any;
114
+ maxCloseLtvPct: any;
116
115
  borrowWeightBps: number;
117
116
  depositLimit: BigNumber;
118
117
  borrowLimit: BigNumber;
@@ -132,38 +131,38 @@ export declare const parseReserveConfig: (reserve: Reserve<string>) => {
132
131
  aprPercent: BigNumber;
133
132
  }[];
134
133
  };
135
- export declare const parsePoolRewardManager: (poolRewardManager: PoolRewardManager, coinMetadataMap: Record<string, CoinMetadata>) => {
136
- $typeName: string;
137
- id: string;
138
- totalShares: bigint;
134
+ export declare const parsePoolRewardManager: ({ PoolRewardManager, PoolReward, }: Pick<Deps, "PoolRewardManager" | "PoolReward">, poolRewardManager: any, coinMetadataMap: Record<string, CoinMetadata>) => {
135
+ $typeName: any;
136
+ id: any;
137
+ totalShares: any;
139
138
  poolRewards: {
140
- $typeName: string;
141
- id: string;
142
- poolRewardManagerId: string;
139
+ $typeName: any;
140
+ id: any;
141
+ poolRewardManagerId: any;
143
142
  coinType: string;
144
143
  startTimeMs: number;
145
144
  endTimeMs: number;
146
145
  totalRewards: BigNumber;
147
146
  allocatedRewards: BigNumber;
148
147
  cumulativeRewardsPerShare: BigNumber;
149
- numUserRewardManagers: bigint;
148
+ numUserRewardManagers: any;
150
149
  rewardIndex: number;
151
150
  symbol: string;
152
151
  mintDecimals: number;
153
152
  }[];
154
- lastUpdateTimeMs: bigint;
153
+ lastUpdateTimeMs: any;
155
154
  };
156
- export declare const parsePoolReward: (poolReward: PoolReward | null, rewardIndex: number, coinMetadataMap: Record<string, CoinMetadata>) => {
157
- $typeName: string;
158
- id: string;
159
- poolRewardManagerId: string;
155
+ export declare const parsePoolReward: ({ PoolReward }: Pick<Deps, "PoolReward">, poolReward: any, rewardIndex: number, coinMetadataMap: Record<string, CoinMetadata>) => {
156
+ $typeName: any;
157
+ id: any;
158
+ poolRewardManagerId: any;
160
159
  coinType: string;
161
160
  startTimeMs: number;
162
161
  endTimeMs: number;
163
162
  totalRewards: BigNumber;
164
163
  allocatedRewards: BigNumber;
165
164
  cumulativeRewardsPerShare: BigNumber;
166
- numUserRewardManagers: bigint;
165
+ numUserRewardManagers: any;
167
166
  rewardIndex: number;
168
167
  symbol: string;
169
168
  mintDecimals: number;