@strkfarm/sdk 2.0.0-dev.4 → 2.0.0-dev.41

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 (78) hide show
  1. package/dist/cli.js +190 -36
  2. package/dist/cli.mjs +188 -34
  3. package/dist/index.browser.global.js +116250 -90801
  4. package/dist/index.browser.mjs +13050 -10957
  5. package/dist/index.d.ts +2232 -1933
  6. package/dist/index.js +13380 -11084
  7. package/dist/index.mjs +13280 -11007
  8. package/package.json +6 -7
  9. package/src/data/avnu.abi.json +840 -0
  10. package/src/data/ekubo-price-fethcer.abi.json +265 -0
  11. package/src/data/redeem-request-nft.abi.json +752 -0
  12. package/src/data/universal-vault.abi.json +8 -7
  13. package/src/dataTypes/_bignumber.ts +13 -4
  14. package/src/dataTypes/bignumber.browser.ts +10 -1
  15. package/src/dataTypes/bignumber.node.ts +10 -1
  16. package/src/dataTypes/index.ts +3 -2
  17. package/src/dataTypes/mynumber.ts +141 -0
  18. package/src/global.ts +93 -36
  19. package/src/index.browser.ts +2 -1
  20. package/src/interfaces/common.tsx +218 -5
  21. package/src/modules/apollo-client-config.ts +28 -0
  22. package/src/modules/avnu.ts +21 -12
  23. package/src/modules/ekubo-pricer.ts +79 -0
  24. package/src/modules/ekubo-quoter.ts +48 -30
  25. package/src/modules/erc20.ts +17 -0
  26. package/src/modules/harvests.ts +43 -29
  27. package/src/modules/index.ts +2 -1
  28. package/src/modules/pragma.ts +23 -8
  29. package/src/modules/pricer-avnu-api.ts +114 -0
  30. package/src/modules/pricer-from-api.ts +156 -15
  31. package/src/modules/pricer-lst.ts +1 -1
  32. package/src/modules/pricer.ts +94 -40
  33. package/src/modules/pricerBase.ts +2 -1
  34. package/src/node/deployer.ts +36 -1
  35. package/src/node/pricer-redis.ts +3 -1
  36. package/src/strategies/base-strategy.ts +168 -16
  37. package/src/strategies/constants.ts +8 -3
  38. package/src/strategies/ekubo-cl-vault.tsx +1047 -351
  39. package/src/strategies/factory.ts +199 -0
  40. package/src/strategies/index.ts +5 -3
  41. package/src/strategies/registry.ts +262 -0
  42. package/src/strategies/sensei.ts +353 -9
  43. package/src/strategies/svk-strategy.ts +283 -31
  44. package/src/strategies/token-boosted-xstrk-carry-strategy.tsx +1262 -0
  45. package/src/strategies/types.ts +4 -0
  46. package/src/strategies/universal-adapters/adapter-utils.ts +4 -1
  47. package/src/strategies/universal-adapters/avnu-adapter.ts +196 -272
  48. package/src/strategies/universal-adapters/baseAdapter.ts +263 -251
  49. package/src/strategies/universal-adapters/common-adapter.ts +206 -203
  50. package/src/strategies/universal-adapters/index.ts +10 -8
  51. package/src/strategies/universal-adapters/svk-troves-adapter.ts +511 -0
  52. package/src/strategies/universal-adapters/token-transfer-adapter.ts +200 -0
  53. package/src/strategies/universal-adapters/vesu-adapter.ts +120 -82
  54. package/src/strategies/universal-adapters/vesu-modify-position-adapter.ts +525 -0
  55. package/src/strategies/universal-adapters/vesu-multiply-adapter.ts +1098 -712
  56. package/src/strategies/universal-adapters/vesu-position-common.ts +258 -0
  57. package/src/strategies/universal-adapters/vesu-supply-only-adapter.ts +18 -3
  58. package/src/strategies/universal-lst-muliplier-strategy.tsx +631 -414
  59. package/src/strategies/universal-strategy.tsx +1331 -1173
  60. package/src/strategies/vesu-rebalance.tsx +252 -152
  61. package/src/strategies/yoloVault.ts +1087 -0
  62. package/src/utils/cacheClass.ts +11 -2
  63. package/src/utils/health-factor-math.ts +33 -1
  64. package/src/utils/index.ts +3 -1
  65. package/src/utils/logger.browser.ts +22 -4
  66. package/src/utils/logger.node.ts +259 -24
  67. package/src/utils/starknet-call-parser.ts +1036 -0
  68. package/src/utils/strategy-utils.ts +61 -0
  69. package/src/modules/ExtendedWrapperSDk/index.ts +0 -62
  70. package/src/modules/ExtendedWrapperSDk/types.ts +0 -311
  71. package/src/modules/ExtendedWrapperSDk/wrapper.ts +0 -395
  72. package/src/strategies/universal-adapters/extended-adapter.ts +0 -661
  73. package/src/strategies/universal-adapters/unused-balance-adapter.ts +0 -109
  74. package/src/strategies/vesu-extended-strategy/services/operationService.ts +0 -34
  75. package/src/strategies/vesu-extended-strategy/utils/config.runtime.ts +0 -77
  76. package/src/strategies/vesu-extended-strategy/utils/constants.ts +0 -49
  77. package/src/strategies/vesu-extended-strategy/utils/helper.ts +0 -372
  78. package/src/strategies/vesu-extended-strategy/vesu-extended-strategy.tsx +0 -1140
@@ -0,0 +1,265 @@
1
+ [
2
+ {
3
+ "type": "impl",
4
+ "name": "PriceFetcherImpl",
5
+ "interface_name": "ekubo_oracle_extension::price_fetcher::IPriceFetcher"
6
+ },
7
+ {
8
+ "type": "struct",
9
+ "name": "core::array::Span::<core::starknet::contract_address::ContractAddress>",
10
+ "members": [
11
+ {
12
+ "name": "snapshot",
13
+ "type": "@core::array::Array::<core::starknet::contract_address::ContractAddress>"
14
+ }
15
+ ]
16
+ },
17
+ {
18
+ "type": "struct",
19
+ "name": "core::integer::u256",
20
+ "members": [
21
+ {
22
+ "name": "low",
23
+ "type": "core::integer::u128"
24
+ },
25
+ {
26
+ "name": "high",
27
+ "type": "core::integer::u128"
28
+ }
29
+ ]
30
+ },
31
+ {
32
+ "type": "enum",
33
+ "name": "ekubo_oracle_extension::price_fetcher::PriceResult",
34
+ "variants": [
35
+ {
36
+ "name": "NotInitialized",
37
+ "type": "()"
38
+ },
39
+ {
40
+ "name": "InsufficientLiquidity",
41
+ "type": "()"
42
+ },
43
+ {
44
+ "name": "PeriodTooLong",
45
+ "type": "()"
46
+ },
47
+ {
48
+ "name": "Price",
49
+ "type": "core::integer::u256"
50
+ }
51
+ ]
52
+ },
53
+ {
54
+ "type": "struct",
55
+ "name": "core::array::Span::<ekubo_oracle_extension::price_fetcher::PriceResult>",
56
+ "members": [
57
+ {
58
+ "name": "snapshot",
59
+ "type": "@core::array::Array::<ekubo_oracle_extension::price_fetcher::PriceResult>"
60
+ }
61
+ ]
62
+ },
63
+ {
64
+ "type": "struct",
65
+ "name": "ekubo_oracle_extension::price_fetcher::CandlestickPoint",
66
+ "members": [
67
+ {
68
+ "name": "time",
69
+ "type": "core::integer::u64"
70
+ },
71
+ {
72
+ "name": "low",
73
+ "type": "core::integer::u256"
74
+ },
75
+ {
76
+ "name": "high",
77
+ "type": "core::integer::u256"
78
+ },
79
+ {
80
+ "name": "open",
81
+ "type": "core::integer::u256"
82
+ },
83
+ {
84
+ "name": "close",
85
+ "type": "core::integer::u256"
86
+ }
87
+ ]
88
+ },
89
+ {
90
+ "type": "struct",
91
+ "name": "core::array::Span::<ekubo_oracle_extension::price_fetcher::CandlestickPoint>",
92
+ "members": [
93
+ {
94
+ "name": "snapshot",
95
+ "type": "@core::array::Array::<ekubo_oracle_extension::price_fetcher::CandlestickPoint>"
96
+ }
97
+ ]
98
+ },
99
+ {
100
+ "type": "interface",
101
+ "name": "ekubo_oracle_extension::price_fetcher::IPriceFetcher",
102
+ "items": [
103
+ {
104
+ "type": "function",
105
+ "name": "get_prices",
106
+ "inputs": [
107
+ {
108
+ "name": "quote_token",
109
+ "type": "core::starknet::contract_address::ContractAddress"
110
+ },
111
+ {
112
+ "name": "base_tokens",
113
+ "type": "core::array::Span::<core::starknet::contract_address::ContractAddress>"
114
+ },
115
+ {
116
+ "name": "period",
117
+ "type": "core::integer::u64"
118
+ },
119
+ {
120
+ "name": "min_token",
121
+ "type": "core::integer::u128"
122
+ }
123
+ ],
124
+ "outputs": [
125
+ {
126
+ "type": "core::array::Span::<ekubo_oracle_extension::price_fetcher::PriceResult>"
127
+ }
128
+ ],
129
+ "state_mutability": "view"
130
+ },
131
+ {
132
+ "type": "function",
133
+ "name": "get_prices_in_oracle_tokens",
134
+ "inputs": [
135
+ {
136
+ "name": "base_tokens",
137
+ "type": "core::array::Span::<core::starknet::contract_address::ContractAddress>"
138
+ },
139
+ {
140
+ "name": "period",
141
+ "type": "core::integer::u64"
142
+ },
143
+ {
144
+ "name": "min_token",
145
+ "type": "core::integer::u128"
146
+ }
147
+ ],
148
+ "outputs": [
149
+ {
150
+ "type": "(core::starknet::contract_address::ContractAddress, core::array::Span::<ekubo_oracle_extension::price_fetcher::PriceResult>)"
151
+ }
152
+ ],
153
+ "state_mutability": "view"
154
+ },
155
+ {
156
+ "type": "function",
157
+ "name": "get_candlestick_chart_data",
158
+ "inputs": [
159
+ {
160
+ "name": "base_token",
161
+ "type": "core::starknet::contract_address::ContractAddress"
162
+ },
163
+ {
164
+ "name": "quote_token",
165
+ "type": "core::starknet::contract_address::ContractAddress"
166
+ },
167
+ {
168
+ "name": "interval_seconds",
169
+ "type": "core::integer::u32"
170
+ },
171
+ {
172
+ "name": "num_intervals",
173
+ "type": "core::integer::u32"
174
+ },
175
+ {
176
+ "name": "max_resolution",
177
+ "type": "core::integer::u8"
178
+ },
179
+ {
180
+ "name": "end_time",
181
+ "type": "core::integer::u64"
182
+ }
183
+ ],
184
+ "outputs": [
185
+ {
186
+ "type": "core::array::Span::<ekubo_oracle_extension::price_fetcher::CandlestickPoint>"
187
+ }
188
+ ],
189
+ "state_mutability": "view"
190
+ },
191
+ {
192
+ "type": "function",
193
+ "name": "get_candlestick_chart_data_now",
194
+ "inputs": [
195
+ {
196
+ "name": "base_token",
197
+ "type": "core::starknet::contract_address::ContractAddress"
198
+ },
199
+ {
200
+ "name": "quote_token",
201
+ "type": "core::starknet::contract_address::ContractAddress"
202
+ },
203
+ {
204
+ "name": "interval_seconds",
205
+ "type": "core::integer::u32"
206
+ },
207
+ {
208
+ "name": "num_intervals",
209
+ "type": "core::integer::u32"
210
+ },
211
+ {
212
+ "name": "max_resolution",
213
+ "type": "core::integer::u8"
214
+ }
215
+ ],
216
+ "outputs": [
217
+ {
218
+ "type": "(core::integer::u64, core::array::Span::<ekubo_oracle_extension::price_fetcher::CandlestickPoint>)"
219
+ }
220
+ ],
221
+ "state_mutability": "view"
222
+ }
223
+ ]
224
+ },
225
+ {
226
+ "type": "struct",
227
+ "name": "ekubo::interfaces::core::ICoreDispatcher",
228
+ "members": [
229
+ {
230
+ "name": "contract_address",
231
+ "type": "core::starknet::contract_address::ContractAddress"
232
+ }
233
+ ]
234
+ },
235
+ {
236
+ "type": "struct",
237
+ "name": "ekubo_oracle_extension::oracle::IOracleDispatcher",
238
+ "members": [
239
+ {
240
+ "name": "contract_address",
241
+ "type": "core::starknet::contract_address::ContractAddress"
242
+ }
243
+ ]
244
+ },
245
+ {
246
+ "type": "constructor",
247
+ "name": "constructor",
248
+ "inputs": [
249
+ {
250
+ "name": "core",
251
+ "type": "ekubo::interfaces::core::ICoreDispatcher"
252
+ },
253
+ {
254
+ "name": "oracle",
255
+ "type": "ekubo_oracle_extension::oracle::IOracleDispatcher"
256
+ }
257
+ ]
258
+ },
259
+ {
260
+ "type": "event",
261
+ "name": "ekubo_oracle_extension::price_fetcher::PriceFetcher::Event",
262
+ "kind": "enum",
263
+ "variants": []
264
+ }
265
+ ]