@scallop-io/sui-scallop-sdk 1.4.15-rc.2 → 1.4.16

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 (69) hide show
  1. package/dist/constants/common.d.ts +6 -6
  2. package/dist/constants/enum.d.ts +2 -2
  3. package/dist/constants/index.d.ts +0 -1
  4. package/dist/constants/poolAddress.d.ts +2 -0
  5. package/dist/constants/queryKeys.d.ts +3 -4
  6. package/dist/index.d.ts +0 -1
  7. package/dist/index.js +2087 -1617
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.mjs +2054 -1579
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/models/scallop.d.ts +1 -2
  12. package/dist/models/scallopBuilder.d.ts +2 -1
  13. package/dist/models/scallopCache.d.ts +18 -12
  14. package/dist/models/scallopQuery.d.ts +98 -11
  15. package/dist/models/scallopUtils.d.ts +4 -4
  16. package/dist/queries/borrowIncentiveQuery.d.ts +6 -1
  17. package/dist/queries/coreQuery.d.ts +2 -0
  18. package/dist/queries/objectsQuery.d.ts +1 -2
  19. package/dist/queries/poolAddressesQuery.d.ts +5 -1
  20. package/dist/queries/portfolioQuery.d.ts +71 -5
  21. package/dist/queries/priceQuery.d.ts +4 -0
  22. package/dist/queries/sCoinQuery.d.ts +1 -1
  23. package/dist/types/builder/core.d.ts +6 -6
  24. package/dist/types/model.d.ts +8 -2
  25. package/dist/utils/index.d.ts +0 -2
  26. package/package.json +7 -7
  27. package/src/builders/borrowIncentiveBuilder.ts +11 -5
  28. package/src/builders/coreBuilder.ts +62 -33
  29. package/src/builders/loyaltyProgramBuilder.ts +3 -2
  30. package/src/builders/referralBuilder.ts +16 -6
  31. package/src/builders/sCoinBuilder.ts +6 -4
  32. package/src/builders/spoolBuilder.ts +14 -7
  33. package/src/builders/vescaBuilder.ts +13 -7
  34. package/src/constants/coinGecko.ts +2 -0
  35. package/src/constants/common.ts +7 -1
  36. package/src/constants/enum.ts +46 -20
  37. package/src/constants/index.ts +0 -1
  38. package/src/constants/poolAddress.ts +252 -66
  39. package/src/constants/pyth.ts +2 -0
  40. package/src/constants/queryKeys.ts +7 -9
  41. package/src/constants/testAddress.ts +24 -0
  42. package/src/index.ts +0 -1
  43. package/src/models/scallop.ts +9 -13
  44. package/src/models/scallopAddress.ts +2 -9
  45. package/src/models/scallopBuilder.ts +62 -8
  46. package/src/models/scallopCache.ts +236 -82
  47. package/src/models/scallopClient.ts +4 -6
  48. package/src/models/scallopIndexer.ts +1 -5
  49. package/src/models/scallopQuery.ts +62 -25
  50. package/src/models/scallopUtils.ts +9 -13
  51. package/src/queries/borrowIncentiveQuery.ts +6 -13
  52. package/src/queries/coreQuery.ts +88 -54
  53. package/src/queries/loyaltyProgramQuery.ts +1 -3
  54. package/src/queries/objectsQuery.ts +1 -3
  55. package/src/queries/poolAddressesQuery.ts +16 -7
  56. package/src/queries/portfolioQuery.ts +253 -21
  57. package/src/queries/priceQuery.ts +2 -7
  58. package/src/queries/sCoinQuery.ts +2 -2
  59. package/src/queries/spoolQuery.ts +21 -20
  60. package/src/queries/vescaQuery.ts +3 -7
  61. package/src/types/builder/core.ts +24 -5
  62. package/src/types/model.ts +13 -2
  63. package/src/utils/index.ts +0 -2
  64. package/src/utils/indexer.ts +3 -1
  65. package/src/utils/query.ts +2 -2
  66. package/dist/constants/tokenBucket.d.ts +0 -2
  67. package/dist/utils/tokenBucket.d.ts +0 -11
  68. package/src/constants/tokenBucket.ts +0 -2
  69. package/src/utils/tokenBucket.ts +0 -68
@@ -17,9 +17,70 @@ export const POOL_ADDRESSES: OptionalKeys<
17
17
  supplyLimitKey?: string;
18
18
  borrowLimitKey?: string;
19
19
  isolatedAssetKey?: string;
20
+ coinMetadataId?: string;
21
+ sCoinType?: string;
20
22
  }
21
23
  >
22
24
  > = {
25
+ usdc: {
26
+ lendingPoolAddress:
27
+ '0xd3be98bf540f7603eeb550c0c0a19dbfc78822f25158b5fa84ebd9609def415f',
28
+ collateralPoolAddress:
29
+ '0x8f0d529ba179c5b3d508213003eab813aaae31f78226099639b9a69d1aec17af',
30
+ borrowDynamic:
31
+ '0x77837ecd4f26fac9a410fff594f2c0bd3288904a15492ca77cb8a52684dbb866',
32
+ interestModel:
33
+ '0xaae3f179d63009380cbdcb9acb12907afc9c3cb79cc3460be296a9c6d28f3ff3',
34
+ riskModel:
35
+ '0x198b24db213bfeb8b3c80ae63dde92e32fd24984d25da8233ff777b851edd574',
36
+ borrowFeeKey:
37
+ '0xd37c5316cfe0a5967d14264fa6b423f880518b294a1ee6581ccbb49ccc401fb8',
38
+ supplyLimitKey:
39
+ '0x4be9ae54ac4d320f4f9c14cae78cb85c8e0e67791dd9bdba6d2db20614a28a24',
40
+ borrowLimitKey:
41
+ '0x6b01093cba95b835181f00e3a2c31ed8dfc8d64fe3db0fb80933a09f66e1ccf1',
42
+ isolatedAssetKey: undefined,
43
+ spool: '0x0b5f5f413bd3799e4052c37311966c77f3a4545eb125d2e93e67a68478021918',
44
+ spoolReward:
45
+ '0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166',
46
+ sCoinTreasury:
47
+ '0xbe6b63021f3d82e0e7e977cdd718ed7c019cf2eba374b7b546220402452f938e',
48
+ sCoinType:
49
+ '0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC',
50
+ coinMetadataId:
51
+ '0x69b7a7c3c200439c1b5f3b19d7d495d5966d5f08de66c69276152f8db3992ec6',
52
+ coinType:
53
+ 'dba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7::usdc::USDC',
54
+ },
55
+ sbusdt: {
56
+ lendingPoolAddress:
57
+ '0x958ca02058a7dd8b00e26ed6988f45d7c2834ae2a47ee4c4a8fdedea155f18ca',
58
+ collateralPoolAddress:
59
+ '0x63c861f97192ceab2dabb1e74649ae87a9e36c33aaedcc43e40a811d3a39e653',
60
+ borrowDynamic:
61
+ '0xf1ef9a19881ed6ddeb88f361c83f37c592ec5b9c64fe715383f63ccc094be205',
62
+ interestModel:
63
+ '0x62c46e4667c4fa69a29030ecbc0f661c61365d02adc3810b08b11cfd8f42ca1c',
64
+ riskModel:
65
+ '0x59d5f3dbcd14a0aab6ee6e2879803e10b0a752119d19c4ac0bd389d71dc8c2bf',
66
+ borrowFeeKey:
67
+ '0xa418990ad042e97cca61830476483933b9e026970fc33451072b2627ccb31da2',
68
+ supplyLimitKey:
69
+ '0x93641bfb62ea40760f0c15911b4ec0eb866f8725e36b0ca9a786775d93629139',
70
+ borrowLimitKey:
71
+ '0x953a9b8d5353abb38db21a2cbbc5c54f8f23348895acb26cbe2c0ab61b54635d',
72
+ isolatedAssetKey: undefined,
73
+ spool: undefined,
74
+ spoolReward: undefined,
75
+ sCoinTreasury:
76
+ '0x58bdf6a9752e3a60144d0b70e8608d630dfd971513e2b2bfa7282f5eaa7d04d8',
77
+ sCoinType:
78
+ '0xb1d7df34829d1513b73ba17cb7ad90c88d1e104bb65ab8f62f13e0cc103783d3::scallop_sb_usdt::SCALLOP_SB_USDT',
79
+ coinMetadataId:
80
+ '0xda61b33ac61ed4c084bbda65a2229459ed4eb2185729e70498538f0688bec3cc',
81
+ coinType:
82
+ '0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068::usdt::USDT',
83
+ },
23
84
  sbeth: {
24
85
  lendingPoolAddress:
25
86
  '0xaa34c938e0394e5186c7dc626ad69be96af2194b23fdc6ac1c63090e399f5ba4',
@@ -40,28 +101,44 @@ export const POOL_ADDRESSES: OptionalKeys<
40
101
  isolatedAssetKey: undefined,
41
102
  spool: undefined,
42
103
  spoolReward: undefined,
104
+ sCoinTreasury:
105
+ '0xfd0f02def6358a1f266acfa1493d4707ee8387460d434fb667d63d755ff907ed',
106
+ sCoinType:
107
+ '0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH',
108
+ coinMetadataId:
109
+ '0x89b04ba87f8832d4d76e17a1c9dce72eb3e64d372cf02012b8d2de5384faeef0',
110
+ coinType:
111
+ 'd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH',
43
112
  },
44
- usdc: {
113
+ weth: {
45
114
  lendingPoolAddress:
46
- '0xd3be98bf540f7603eeb550c0c0a19dbfc78822f25158b5fa84ebd9609def415f',
115
+ '0xc8fcdff48efc265740ae0b74aae3faccae9ec00034039a113f3339798035108c',
47
116
  collateralPoolAddress:
48
- '0x8f0d529ba179c5b3d508213003eab813aaae31f78226099639b9a69d1aec17af',
117
+ '0xad7ced91ed6e7f2b81805561eee27fa6f3e72fdae561077334c7248583db4dbf',
49
118
  borrowDynamic:
50
- '0x77837ecd4f26fac9a410fff594f2c0bd3288904a15492ca77cb8a52684dbb866',
119
+ '0xd1578e1d1c9c82eb4c5bf14beece8142a67a683b2647d7276e92984119fc1445',
51
120
  interestModel:
52
- '0xaae3f179d63009380cbdcb9acb12907afc9c3cb79cc3460be296a9c6d28f3ff3',
121
+ '0xa1dc08541cd2cb7cfb4e56272292d5c6a4780e80fd210c58abffae98268b5ed9',
53
122
  riskModel:
54
- '0x198b24db213bfeb8b3c80ae63dde92e32fd24984d25da8233ff777b851edd574',
123
+ '0x9f05a25fd33a9e8cf33962126b175d038e184f0ee1b87dc41d4cedbe6abebbe5',
55
124
  borrowFeeKey:
56
- '0xd37c5316cfe0a5967d14264fa6b423f880518b294a1ee6581ccbb49ccc401fb8',
125
+ '0x29672ba8ab4625b8181d8ed739e5344de22a97d417748c4d1276c7379283d7a3',
57
126
  supplyLimitKey:
58
- '0x4be9ae54ac4d320f4f9c14cae78cb85c8e0e67791dd9bdba6d2db20614a28a24',
127
+ '0x2b957941bdc9432bbc83ab74dc194b6ebb7c927bc4c6926a5492b5503499e509',
59
128
  borrowLimitKey:
60
- '0x6b01093cba95b835181f00e3a2c31ed8dfc8d64fe3db0fb80933a09f66e1ccf1',
129
+ '0x51f256d87e51a7ca2b1c482923096f4b6dac6beac89d8ecf4c65b7d5764115d6',
61
130
  isolatedAssetKey: undefined,
62
- spool: '0x0b5f5f413bd3799e4052c37311966c77f3a4545eb125d2e93e67a68478021918',
131
+ spool: '0xeec40beccb07c575bebd842eeaabb835f77cd3dab73add433477e57f583a6787',
63
132
  spoolReward:
64
- '0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166',
133
+ '0x957de68a18d87817de8309b30c1ec269a4d87ae513abbeed86b5619cb9ce1077',
134
+ sCoinTreasury:
135
+ '0x4b7f5da0e306c9d52490a0c1d4091e653d6b89778b9b4f23c877e534e4d9cd21',
136
+ sCoinType:
137
+ '0x67540ceb850d418679e69f1fb6b2093d6df78a2a699ffc733f7646096d552e9b::scallop_wormhole_eth::SCALLOP_WORMHOLE_ETH',
138
+ coinMetadataId:
139
+ '0x8900e4ceede3363bef086d6b50ca89d816d0e90bf6bc46efefe1f8455e08f50f',
140
+ coinType:
141
+ 'af8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5::coin::COIN',
65
142
  },
66
143
  wbtc: {
67
144
  lendingPoolAddress:
@@ -83,6 +160,14 @@ export const POOL_ADDRESSES: OptionalKeys<
83
160
  isolatedAssetKey: undefined,
84
161
  spool: undefined,
85
162
  spoolReward: undefined,
163
+ sCoinTreasury:
164
+ '0xe2883934ea42c99bc998bbe0f01dd6d27aa0e27a56455707b1b34e6a41c20baa',
165
+ sCoinType:
166
+ '0x2cf76a9cf5d3337961d1154283234f94da2dcff18544dfe5cbdef65f319591b5::scallop_wormhole_btc::SCALLOP_WORMHOLE_BTC',
167
+ coinMetadataId:
168
+ '0x5d3c6e60eeff8a05b693b481539e7847dfe33013e7070cdcb387f5c0cac05dfd',
169
+ coinType:
170
+ '027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN',
86
171
  },
87
172
  wusdc: {
88
173
  lendingPoolAddress:
@@ -105,28 +190,14 @@ export const POOL_ADDRESSES: OptionalKeys<
105
190
  spool: '0x4ace6648ddc64e646ba47a957c562c32c9599b3bba8f5ac1aadb2ae23a2f8ca0',
106
191
  spoolReward:
107
192
  '0xf4268cc9b9413b9bfe09e8966b8de650494c9e5784bf0930759cfef4904daff8',
108
- },
109
- weth: {
110
- lendingPoolAddress:
111
- '0xc8fcdff48efc265740ae0b74aae3faccae9ec00034039a113f3339798035108c',
112
- collateralPoolAddress:
113
- '0xad7ced91ed6e7f2b81805561eee27fa6f3e72fdae561077334c7248583db4dbf',
114
- borrowDynamic:
115
- '0xd1578e1d1c9c82eb4c5bf14beece8142a67a683b2647d7276e92984119fc1445',
116
- interestModel:
117
- '0xa1dc08541cd2cb7cfb4e56272292d5c6a4780e80fd210c58abffae98268b5ed9',
118
- riskModel:
119
- '0x9f05a25fd33a9e8cf33962126b175d038e184f0ee1b87dc41d4cedbe6abebbe5',
120
- borrowFeeKey:
121
- '0x29672ba8ab4625b8181d8ed739e5344de22a97d417748c4d1276c7379283d7a3',
122
- supplyLimitKey:
123
- '0x2b957941bdc9432bbc83ab74dc194b6ebb7c927bc4c6926a5492b5503499e509',
124
- borrowLimitKey:
125
- '0x51f256d87e51a7ca2b1c482923096f4b6dac6beac89d8ecf4c65b7d5764115d6',
126
- isolatedAssetKey: undefined,
127
- spool: '0xeec40beccb07c575bebd842eeaabb835f77cd3dab73add433477e57f583a6787',
128
- spoolReward:
129
- '0x957de68a18d87817de8309b30c1ec269a4d87ae513abbeed86b5619cb9ce1077',
193
+ sCoinTreasury:
194
+ '0x50c5cfcbcca3aaacab0984e4d7ad9a6ad034265bebb440f0d1cd688ec20b2548',
195
+ sCoinType:
196
+ '0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC',
197
+ coinMetadataId:
198
+ '0x4fbf84f3029bd0c0b77164b587963be957f853eccf834a67bb9ecba6ec80f189',
199
+ coinType:
200
+ '5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN',
130
201
  },
131
202
  wusdt: {
132
203
  lendingPoolAddress:
@@ -149,6 +220,14 @@ export const POOL_ADDRESSES: OptionalKeys<
149
220
  spool: '0xcb328f7ffa7f9342ed85af3fdb2f22919e1a06dfb2f713c04c73543870d7548f',
150
221
  spoolReward:
151
222
  '0x2c9f934d67a5baa586ceec2cc24163a2f049a6af3d5ba36b84d8ac40f25c4080',
223
+ sCoinTreasury:
224
+ '0x1f02e2fed702b477732d4ad6044aaed04f2e8e586a169153694861a901379df0',
225
+ sCoinType:
226
+ '0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT',
227
+ coinMetadataId:
228
+ '0xfb0e3eb97dd158a5ae979dddfa24348063843c5b20eb8381dd5fa7c93699e45c',
229
+ coinType:
230
+ 'c060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c::coin::COIN',
152
231
  },
153
232
  sui: {
154
233
  lendingPoolAddress:
@@ -171,6 +250,14 @@ export const POOL_ADDRESSES: OptionalKeys<
171
250
  spool: '0x4f0ba970d3c11db05c8f40c64a15b6a33322db3702d634ced6536960ab6f3ee4',
172
251
  spoolReward:
173
252
  '0x162250ef72393a4ad3d46294c4e1bdfcb03f04c869d390e7efbfc995353a7ee9',
253
+ sCoinTreasury:
254
+ '0x5c1678c8261ac9eec024d4d630006a9f55c80dc0b1aa38a003fcb1d425818c6b',
255
+ sCoinType:
256
+ '0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI',
257
+ coinMetadataId:
258
+ '0x9258181f5ceac8dbffb7030890243caed69a9599d2886d957a9cb7656af3bdb3',
259
+ coinType:
260
+ '0000000000000000000000000000000000000000000000000000000000000002::sui::SUI',
174
261
  },
175
262
  wapt: {
176
263
  lendingPoolAddress:
@@ -190,28 +277,42 @@ export const POOL_ADDRESSES: OptionalKeys<
190
277
  isolatedAssetKey: undefined,
191
278
  spool: undefined,
192
279
  spoolReward: undefined,
280
+ sCoinTreasury: undefined,
281
+ sCoinType: undefined,
282
+ coinMetadataId:
283
+ '0xc969c5251f372c0f34c32759f1d315cf1ea0ee5e4454b52aea08778eacfdd0a8',
284
+ coinType:
285
+ '3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37::coin::COIN',
193
286
  },
194
- afsui: {
287
+ cetus: {
195
288
  lendingPoolAddress:
196
- '0x9b942a24ce390b7f5016d34a0217057bf9487b92aa6d7cc9894271dbbe62471a',
289
+ '0xc09858f60e74a1b671635bec4e8a2c84a0ff313eb87f525fba3258e88c6b6282',
197
290
  collateralPoolAddress:
198
- '0xe5e56f5c0e3072760b21f9d49a5cc793f37d736c412a9065c16e1265c74e6341',
291
+ '0xe363967e29b7b9c1245d6d46d63e719de8f90b37e3358c545b55d945ea0b676a',
199
292
  borrowDynamic:
200
- '0x1c76d4df9506154a117bbac0f5e005d8a9c0d9ca60e3fe0c9d080006f6f54e81',
293
+ '0xcc725fd5d71990cdccc7e16c88a2abde6dbcd0bf6e805ccc1c0cb83a106bbf4e',
201
294
  interestModel:
202
- '0xb155c536b37c9601baaa734ad1dd0ef335b2b597aceb8d3ecee41a43f94dcd70',
295
+ '0x2f1258aab89d04d11834121599ab1317dfecb582b4246f106df399911125845a',
203
296
  riskModel:
204
- '0x75371b1d04b5bebc0738af548ba64ea658e74f78228ec8014336d8eebb992312',
297
+ '0x03fed312dbba624dff5edaf4736891a1c7d864445fd268e7572b42ec7381132e',
205
298
  borrowFeeKey:
206
- '0xabc6422db2d4ee01635ddaeaa44ba68370eebd785d2c4632515f841ae9bc47d9',
299
+ '0xdf5fb0cc4ebbf5eebfae23dfa5b266f6a58c18a894a13054ae60c0eb6e79c382',
207
300
  supplyLimitKey:
208
- '0x61a2054eb37f543c0d774da57f2c9542aad8d79a197f748ac08ef5df6cc47028',
301
+ '0xa5ea3d4bf663d7bc667e82b40a98923590ff3851b9ea8e7afbc26c588c7007d3',
209
302
  borrowLimitKey:
210
- '0x4459498a043872cd107ea917493fee0baf2d37a273c7538e1d6581cc61b92af8',
303
+ '0xf44218a5f0feb128e6fbe74b91d1e7e9ef859bd23a576ff0de151829e015a157',
211
304
  isolatedAssetKey: undefined,
212
- spool: '0xeedf438abcaa6ce4d9625ffca110920592d5867e4c5637d84ad9f466c4feb800',
305
+ spool: '0xac1bb13bf4472a637c18c2415fb0e3c1227ea2bcf35242e50563c98215bd298e',
213
306
  spoolReward:
214
- '0x89255a2f86ed7fbfef35ab8b7be48cc7667015975be2685dd9a55a9a64baf76e',
307
+ '0x6835c1224126a45086fc6406adc249e3f30df18d779ca4f4e570e38716a17f3f',
308
+ sCoinTreasury:
309
+ '0xa283c63488773c916cb3d6c64109536160d5eb496caddc721eb39aad2977d735',
310
+ sCoinType:
311
+ '0xea346ce428f91ab007210443efcea5f5cdbbb3aae7e9affc0ca93f9203c31f0c::scallop_cetus::SCALLOP_CETUS',
312
+ coinMetadataId:
313
+ '0x4c0dce55eff2db5419bbd2d239d1aa22b4a400c01bbb648b058a9883989025da',
314
+ coinType:
315
+ '06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS',
215
316
  },
216
317
  wsol: {
217
318
  lendingPoolAddress:
@@ -233,28 +334,44 @@ export const POOL_ADDRESSES: OptionalKeys<
233
334
  isolatedAssetKey: undefined,
234
335
  spool: undefined,
235
336
  spoolReward: undefined,
337
+ sCoinTreasury:
338
+ '0x760fd66f5be869af4382fa32b812b3c67f0eca1bb1ed7a5578b21d56e1848819',
339
+ sCoinType:
340
+ '0x1392650f2eca9e3f6ffae3ff89e42a3590d7102b80e2b430f674730bc30d3259::scallop_wormhole_sol::SCALLOP_WORMHOLE_SOL',
341
+ coinMetadataId:
342
+ '0x4d2c39082b4477e3e79dc4562d939147ab90c42fc5f3e4acf03b94383cd69b6e',
343
+ coinType:
344
+ 'b7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8::coin::COIN',
236
345
  },
237
- cetus: {
346
+ afsui: {
238
347
  lendingPoolAddress:
239
- '0xc09858f60e74a1b671635bec4e8a2c84a0ff313eb87f525fba3258e88c6b6282',
348
+ '0x9b942a24ce390b7f5016d34a0217057bf9487b92aa6d7cc9894271dbbe62471a',
240
349
  collateralPoolAddress:
241
- '0xe363967e29b7b9c1245d6d46d63e719de8f90b37e3358c545b55d945ea0b676a',
350
+ '0xe5e56f5c0e3072760b21f9d49a5cc793f37d736c412a9065c16e1265c74e6341',
242
351
  borrowDynamic:
243
- '0xcc725fd5d71990cdccc7e16c88a2abde6dbcd0bf6e805ccc1c0cb83a106bbf4e',
352
+ '0x1c76d4df9506154a117bbac0f5e005d8a9c0d9ca60e3fe0c9d080006f6f54e81',
244
353
  interestModel:
245
- '0x2f1258aab89d04d11834121599ab1317dfecb582b4246f106df399911125845a',
354
+ '0xb155c536b37c9601baaa734ad1dd0ef335b2b597aceb8d3ecee41a43f94dcd70',
246
355
  riskModel:
247
- '0x03fed312dbba624dff5edaf4736891a1c7d864445fd268e7572b42ec7381132e',
356
+ '0x75371b1d04b5bebc0738af548ba64ea658e74f78228ec8014336d8eebb992312',
248
357
  borrowFeeKey:
249
- '0xdf5fb0cc4ebbf5eebfae23dfa5b266f6a58c18a894a13054ae60c0eb6e79c382',
358
+ '0xabc6422db2d4ee01635ddaeaa44ba68370eebd785d2c4632515f841ae9bc47d9',
250
359
  supplyLimitKey:
251
- '0xa5ea3d4bf663d7bc667e82b40a98923590ff3851b9ea8e7afbc26c588c7007d3',
360
+ '0x61a2054eb37f543c0d774da57f2c9542aad8d79a197f748ac08ef5df6cc47028',
252
361
  borrowLimitKey:
253
- '0xf44218a5f0feb128e6fbe74b91d1e7e9ef859bd23a576ff0de151829e015a157',
362
+ '0x4459498a043872cd107ea917493fee0baf2d37a273c7538e1d6581cc61b92af8',
254
363
  isolatedAssetKey: undefined,
255
- spool: '0xac1bb13bf4472a637c18c2415fb0e3c1227ea2bcf35242e50563c98215bd298e',
364
+ spool: '0xeedf438abcaa6ce4d9625ffca110920592d5867e4c5637d84ad9f466c4feb800',
256
365
  spoolReward:
257
- '0x6835c1224126a45086fc6406adc249e3f30df18d779ca4f4e570e38716a17f3f',
366
+ '0x89255a2f86ed7fbfef35ab8b7be48cc7667015975be2685dd9a55a9a64baf76e',
367
+ sCoinTreasury:
368
+ '0x55f4dfe9e40bc4cc11c70fcb1f3daefa2bdc330567c58d4f0792fbd9f9175a62',
369
+ sCoinType:
370
+ '0x00671b1fa2a124f5be8bdae8b91ee711462c5d9e31bda232e70fd9607b523c88::scallop_af_sui::SCALLOP_AF_SUI',
371
+ coinMetadataId:
372
+ '0x2f9217f533e51334873a39b8026a4aa6919497b47f49d0986a4f1aec66f8a34d',
373
+ coinType:
374
+ 'f325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI',
258
375
  },
259
376
  hasui: {
260
377
  lendingPoolAddress:
@@ -277,6 +394,14 @@ export const POOL_ADDRESSES: OptionalKeys<
277
394
  spool: '0xa6148bc1b623e936d39a952ceb5bea79e8b37228a8f595067bf1852efd3c34aa',
278
395
  spoolReward:
279
396
  '0x6f3563644d3e2ef13176dbf9d865bd93479df60ccbe07b7e66db57f6309f5a66',
397
+ sCoinTreasury:
398
+ '0x404ccc1404d74a90eb6f9c9d4b6cda6d417fb03189f80d9070a35e5dab1df0f5',
399
+ sCoinType:
400
+ '0x9a2376943f7d22f88087c259c5889925f332ca4347e669dc37d54c2bf651af3c::scallop_ha_sui::SCALLOP_HA_SUI',
401
+ coinMetadataId:
402
+ '0x2c5f33af93f6511df699aaaa5822d823aac6ed99d4a0de2a4a50b3afa0172e24',
403
+ coinType:
404
+ 'bde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI',
280
405
  },
281
406
  vsui: {
282
407
  lendingPoolAddress:
@@ -299,6 +424,14 @@ export const POOL_ADDRESSES: OptionalKeys<
299
424
  spool: '0x69ce8e537e750a95381e6040794afa5ab1758353a1a2e1de7760391b01f91670',
300
425
  spoolReward:
301
426
  '0xbca914adce058ad0902c7f3cfcd698392a475f00dcfdc3f76001d0370b98777a',
427
+ sCoinTreasury:
428
+ '0xc06688ee1af25abc286ffb1d18ce273d1d5907cd1064c25f4e8ca61ea989c1d1',
429
+ sCoinType:
430
+ '0xe1a1cc6bcf0001a015eab84bcc6713393ce20535f55b8b6f35c142e057a25fbe::scallop_v_sui::SCALLOP_V_SUI',
431
+ coinMetadataId:
432
+ '0xabd84a23467b33854ab25cf862006fd97479f8f6f53e50fe732c43a274d939bd',
433
+ coinType:
434
+ '549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT',
302
435
  },
303
436
  sca: {
304
437
  lendingPoolAddress:
@@ -320,6 +453,42 @@ export const POOL_ADDRESSES: OptionalKeys<
320
453
  isolatedAssetKey: undefined,
321
454
  spool: undefined,
322
455
  spoolReward: undefined,
456
+ sCoinTreasury:
457
+ '0xe04bfc95e00252bd654ee13c08edef9ac5e4b6ae4074e8390db39e9a0109c529',
458
+ sCoinType:
459
+ '0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA',
460
+ coinMetadataId:
461
+ '0x5d26a1e9a55c88147ac870bfa31b729d7f49f8804b8b3adfdf3582d301cca844',
462
+ coinType:
463
+ '7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6::sca::SCA',
464
+ },
465
+ fud: {
466
+ lendingPoolAddress:
467
+ '0xefed2cbe76b344792ac724523c8b2236740d1cea2100d46a0ed0dc760c7f4231',
468
+ collateralPoolAddress: undefined,
469
+ borrowDynamic:
470
+ '0x14367ddca30e2860cb89ed4eaca20c7ece260c5d59dd9990d2c85a8321326acb',
471
+ interestModel:
472
+ '0x2600ac100ef154eb2329ffd3aad47aca308ff9f9348de3e8e94aaeb906ec2303',
473
+ riskModel: undefined,
474
+ borrowFeeKey:
475
+ '0xa87e8b26e07ff35ac9fb57adcc779be2883080fc7d12de2d9e7e16d8d8d5e529',
476
+ supplyLimitKey:
477
+ '0xf98419aecc37a3c5de716f8ec590f8991a5be34da72ce1a2da09531ff45adf7d',
478
+ borrowLimitKey:
479
+ '0x3d928a001c453c50004baa54e14b0a0e1b0907d9c613dfd76064fd7ed4e8beb8',
480
+ isolatedAssetKey:
481
+ '0xfcb533e9e4e31f9c9f32d6cbf7fbb3425f1d60474e229a363a2dc7f835d587e2',
482
+ spool: undefined,
483
+ spoolReward: undefined,
484
+ sCoinTreasury:
485
+ '0xf25212f11d182decff7a86165699a73e3d5787aced203ca539f43cfbc10db867',
486
+ sCoinType:
487
+ '0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD',
488
+ coinMetadataId:
489
+ '0x01087411ef48aaac1eb6e24803213e3a60a03b147dac930e5e341f17a85e524e',
490
+ coinType:
491
+ '76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1::fud::FUD',
323
492
  },
324
493
  deep: {
325
494
  lendingPoolAddress:
@@ -340,25 +509,42 @@ export const POOL_ADDRESSES: OptionalKeys<
340
509
  '0x208d3a24ba369dcfc8f0387333d1512b98199eb150d2f2a69359ff708cf761e3',
341
510
  spool: undefined,
342
511
  spoolReward: undefined,
512
+ sCoinTreasury:
513
+ '0xc63838fabe37b25ad897392d89876d920f5e0c6a406bf3abcb84753d2829bc88',
514
+ sCoinType:
515
+ '0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP',
516
+ coinMetadataId:
517
+ '0x6e60b051a08fa836f5a7acd7c464c8d9825bc29c44657fe170fe9b8e1e4770c0',
518
+ coinType:
519
+ 'deeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP',
343
520
  },
344
- fud: {
521
+ fdusd: {
345
522
  lendingPoolAddress:
346
- '0xefed2cbe76b344792ac724523c8b2236740d1cea2100d46a0ed0dc760c7f4231',
347
- collateralPoolAddress: undefined,
523
+ '0x4f46051a01f05c3ad9aecf29a771aad5c884e1a1888e08d7709085e3a095bc9c',
524
+ collateralPoolAddress:
525
+ '0x4f6647a9afcfdb62bb9b27e4d1cb7bd7130aca1b4f13fa7164453c869c1681ae',
348
526
  borrowDynamic:
349
- '0x14367ddca30e2860cb89ed4eaca20c7ece260c5d59dd9990d2c85a8321326acb',
527
+ '0x4ddcf19b6290a8b048ecb314b14ef7f52c1c5b9ddc9259a2a242cd91d681a085',
350
528
  interestModel:
351
- '0x2600ac100ef154eb2329ffd3aad47aca308ff9f9348de3e8e94aaeb906ec2303',
352
- riskModel: undefined,
529
+ '0xb57a33706b29d2d253c74c1c0869e6e20da99036338d2b0b7235ab41621ee9dd',
530
+ riskModel:
531
+ '0xd65fb21758dc1e6184940a1a27efb13228d7cf5e19f6dcca06cc2d996af4a6b9',
353
532
  borrowFeeKey:
354
- '0xa87e8b26e07ff35ac9fb57adcc779be2883080fc7d12de2d9e7e16d8d8d5e529',
533
+ '0xafe673a27747b063fa918d2dfe47794e44af553737ac562c2a63186539a07f45',
355
534
  supplyLimitKey:
356
- '0xf98419aecc37a3c5de716f8ec590f8991a5be34da72ce1a2da09531ff45adf7d',
535
+ '0x730e0785ba056a7a95f4a6959371a598d7fe782e81c40785c79982ced4cf4e35',
357
536
  borrowLimitKey:
358
- '0x3d928a001c453c50004baa54e14b0a0e1b0907d9c613dfd76064fd7ed4e8beb8',
359
- isolatedAssetKey:
360
- '0xfcb533e9e4e31f9c9f32d6cbf7fbb3425f1d60474e229a363a2dc7f835d587e2',
537
+ '0x1630c6954918a06fe56312afb8958366c5ed7af653dae0e32c09d088da38577e',
538
+ isolatedAssetKey: undefined,
361
539
  spool: undefined,
362
540
  spoolReward: undefined,
541
+ sCoinTreasury:
542
+ '0xdad9bc6293e694f67a5274ea51b596e0bdabfafc585ae6d7e82888e65f1a03e0',
543
+ sCoinType:
544
+ '0x6711551c1e7652a270d9fbf0eee25d99594c157cde3cb5fbb49035eb59b1b001::scallop_fdusd::SCALLOP_FDUSD',
545
+ coinMetadataId:
546
+ '0xdebee5265a67c186ed87fe93303d33dfe1de53e3b4fd7d9329c2852860acd3e7',
547
+ coinType:
548
+ 'f16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a::fdusd::FDUSD',
363
549
  },
364
550
  };
@@ -10,6 +10,7 @@ export const PYTH_ENDPOINTS: {
10
10
  export const PYTH_FEED_IDS: Record<SupportPoolCoins, string> = {
11
11
  usdc: 'eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a',
12
12
  sbeth: 'ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace',
13
+ sbusdt: '2b89b9dc8fdf9f34709a5b106b472f0f39bb6ca9ce04b0fd7f2e971688e2e53b',
13
14
  weth: 'ff61491a931112ddf1bd8147cd1b641375f79f5825126d665480874634fd0ace',
14
15
  wbtc: 'e62df6c8b4a85fe1a67db44dc12de5db330f7ac66b72dc658afedf0f4a415b43',
15
16
  wusdc: 'eaa020c61cc479712813461ce153894a96a6c00b21ed0cfc2798d1f9a9e9c94a',
@@ -22,6 +23,7 @@ export const PYTH_FEED_IDS: Record<SupportPoolCoins, string> = {
22
23
  hasui: '23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744',
23
24
  vsui: '23d7315113f5b1d3ba7a83604c44b94d79f4fd69af77f804fc7f920a6dc65744',
24
25
  sca: '7e17f0ac105abe9214deb9944c30264f5986bf292869c6bd8e8da3ccd92d79bc',
26
+ fdusd: '0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979',
25
27
  deep: '29bdd5248234e33bd93d3b81100b5fa32eaa5997843847e2c2cb16d7c6d9f7ff',
26
28
  fud: '6a4090703da959247727f2b490eb21aea95c8684ecfac675f432008830890c75',
27
29
  };
@@ -37,19 +37,13 @@ export const queryKeys = {
37
37
  getObject: (objectId?: string, options?: SuiObjectDataOptions) => [
38
38
  'rpc',
39
39
  'getObject',
40
- { options, objectId },
40
+ { objectId, options },
41
41
  ],
42
- getObjects: (
43
- objectIds?: string[],
44
- walletAddress?: string,
45
- options?: SuiObjectDataOptions
46
- ) => [
42
+ getObjects: (objectIds?: string[]) => [
47
43
  'rpc',
48
44
  'getObjects',
49
45
  {
50
- walletAddress,
51
- options,
52
- objectIds: JSON.stringify(objectIds ?? []),
46
+ objectIds: JSON.stringify(objectIds ?? undefined),
53
47
  },
54
48
  ],
55
49
  getOwnedObjects: (input?: Partial<GetOwnedObjectsParams>) => [
@@ -97,6 +91,10 @@ export const queryKeys = {
97
91
  'getAllCoinBalances',
98
92
  { owner },
99
93
  ],
94
+
95
+ getNormalizedMoveFunction: (target?: string) => {
96
+ return ['rpc', 'getNormalizedMoveCall', target];
97
+ },
100
98
  },
101
99
  oracle: {
102
100
  getPythLatestPriceFeeds: () => ['oracle', 'getPythPriceIds'],
@@ -236,6 +236,24 @@ export const TEST_ADDRESSES: AddressesInterface = {
236
236
  },
237
237
  },
238
238
  },
239
+ // @TODO: add test address
240
+ // @ts-ignore
241
+ sbusdt: {},
242
+ fdusd: {
243
+ id: '0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a',
244
+ metaData:
245
+ '0xdebee5265a67c186ed87fe93303d33dfe1de53e3b4fd7d9329c2852860acd3e7',
246
+ treasury: '',
247
+ oracle: {
248
+ supra: '',
249
+ switchboard: '',
250
+ pyth: {
251
+ feed: '0xccdc1a08923e2e4f4b1e6ea89de6acbc5fe1948e9706f5604b8cb50bc1ed3979',
252
+ feedObject:
253
+ '0x5f6583b2b0fe1ecf94aaffeaab8a838794693960cea48c0da282d5f4a24be027',
254
+ },
255
+ },
256
+ },
239
257
  deep: {
240
258
  id: '0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270',
241
259
  metaData:
@@ -543,6 +561,12 @@ export const TEST_ADDRESSES: AddressesInterface = {
543
561
  treasury:
544
562
  '0xfd0f02def6358a1f266acfa1493d4707ee8387460d434fb667d63d755ff907ed',
545
563
  },
564
+ sfdusd: {
565
+ coinType:
566
+ '0x6711551c1e7652a270d9fbf0eee25d99594c157cde3cb5fbb49035eb59b1b001::scallop_fdusd::SCALLOP_FDUSD',
567
+ treasury:
568
+ '0xdad9bc6293e694f67a5274ea51b596e0bdabfafc585ae6d7e82888e65f1a03e0',
569
+ },
546
570
  sdeep: {
547
571
  coinType:
548
572
  '0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP',
package/src/index.ts CHANGED
@@ -1,4 +1,3 @@
1
1
  export * from './constants';
2
2
  export * from './models';
3
3
  export type * from './types';
4
- export * from './utils/tokenBucket';
@@ -15,12 +15,6 @@ import type {
15
15
  import { ScallopIndexer } from './scallopIndexer';
16
16
  import { ScallopCache } from './scallopCache';
17
17
  import { QueryClientConfig } from '@tanstack/query-core';
18
- import { DEFAULT_CACHE_OPTIONS } from 'src/constants/cache';
19
- import { TokenBucket } from 'src/utils';
20
- import {
21
- DEFAULT_INTERVAL_IN_MS,
22
- DEFAULT_TOKENS_PER_INTERVAL,
23
- } from 'src/constants/tokenBucket';
24
18
  import type { QueryClient } from '@tanstack/query-core';
25
19
  import { newSuiKit } from './suiKit';
26
20
 
@@ -51,18 +45,19 @@ export class Scallop {
51
45
  public constructor(
52
46
  params: ScallopParams,
53
47
  cacheOptions?: QueryClientConfig,
54
- tokenBucket?: TokenBucket,
55
48
  queryClient?: QueryClient
56
49
  ) {
57
50
  this.params = params;
58
51
  this.suiKit = newSuiKit(params);
59
52
  this.cache = new ScallopCache(
60
- this.suiKit,
61
- params.walletAddress,
62
- cacheOptions ?? DEFAULT_CACHE_OPTIONS,
63
- tokenBucket ??
64
- new TokenBucket(DEFAULT_TOKENS_PER_INTERVAL, DEFAULT_INTERVAL_IN_MS),
65
- queryClient
53
+ {
54
+ ...this.params,
55
+ cacheOptions,
56
+ },
57
+ {
58
+ suiKit: this.suiKit,
59
+ queryClient,
60
+ }
66
61
  );
67
62
  this.address = new ScallopAddress(
68
63
  {
@@ -168,6 +163,7 @@ export class Scallop {
168
163
  },
169
164
  {
170
165
  address: this.address,
166
+ suiKit: this.suiKit,
171
167
  }
172
168
  );
173
169
 
@@ -1,5 +1,5 @@
1
1
  import { API_BASE_URL, USE_TEST_ADDRESS } from '../constants';
2
- import { SuiKit, type NetworkType } from '@scallop-io/sui-kit';
2
+ import { type NetworkType } from '@scallop-io/sui-kit';
3
3
  import type {
4
4
  ScallopAddressParams,
5
5
  AddressesInterface,
@@ -7,7 +7,6 @@ import type {
7
7
  ScallopAddressInstanceParams,
8
8
  } from '../types';
9
9
  import { ScallopCache } from './scallopCache';
10
- import { DEFAULT_CACHE_OPTIONS } from 'src/constants/cache';
11
10
  import axios, { AxiosInstance } from 'axios';
12
11
  import { TEST_ADDRESSES } from 'src/constants/testAddress';
13
12
  import { queryKeys } from 'src/constants';
@@ -379,13 +378,7 @@ export class ScallopAddress {
379
378
  instance?: ScallopAddressInstanceParams
380
379
  ) {
381
380
  const { id, auth, network, forceInterface } = params;
382
- this.cache =
383
- instance?.cache ??
384
- new ScallopCache(
385
- instance?.suiKit ?? new SuiKit({}),
386
- undefined,
387
- DEFAULT_CACHE_OPTIONS
388
- );
381
+ this.cache = instance?.cache ?? new ScallopCache({});
389
382
 
390
383
  this._requestClient = axios.create({
391
384
  baseURL: API_BASE_URL,