@scallop-io/sui-scallop-sdk 1.4.15-rc.3 → 1.4.17

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 (71) 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 -1
  5. package/dist/constants/queryKeys.d.ts +3 -4
  6. package/dist/index.d.ts +0 -1
  7. package/dist/index.js +2019 -1634
  8. package/dist/index.js.map +1 -1
  9. package/dist/index.mjs +2087 -1697
  10. package/dist/index.mjs.map +1 -1
  11. package/dist/models/scallop.d.ts +1 -2
  12. package/dist/models/scallopBuilder.d.ts +3 -2
  13. package/dist/models/scallopCache.d.ts +18 -12
  14. package/dist/models/scallopClient.d.ts +1 -1
  15. package/dist/models/scallopIndexer.d.ts +1 -1
  16. package/dist/models/scallopQuery.d.ts +96 -11
  17. package/dist/models/scallopUtils.d.ts +4 -4
  18. package/dist/queries/borrowIncentiveQuery.d.ts +6 -1
  19. package/dist/queries/coreQuery.d.ts +2 -0
  20. package/dist/queries/objectsQuery.d.ts +1 -2
  21. package/dist/queries/poolAddressesQuery.d.ts +4 -2
  22. package/dist/queries/portfolioQuery.d.ts +71 -5
  23. package/dist/queries/priceQuery.d.ts +4 -0
  24. package/dist/queries/sCoinQuery.d.ts +1 -1
  25. package/dist/types/builder/core.d.ts +3 -3
  26. package/dist/types/model.d.ts +8 -2
  27. package/dist/utils/index.d.ts +0 -2
  28. package/package.json +7 -7
  29. package/src/builders/borrowIncentiveBuilder.ts +11 -5
  30. package/src/builders/coreBuilder.ts +61 -32
  31. package/src/builders/loyaltyProgramBuilder.ts +3 -2
  32. package/src/builders/referralBuilder.ts +16 -6
  33. package/src/builders/sCoinBuilder.ts +6 -4
  34. package/src/builders/spoolBuilder.ts +14 -7
  35. package/src/builders/vescaBuilder.ts +13 -7
  36. package/src/constants/coinGecko.ts +2 -0
  37. package/src/constants/common.ts +7 -1
  38. package/src/constants/enum.ts +46 -20
  39. package/src/constants/index.ts +0 -1
  40. package/src/constants/poolAddress.ts +163 -41
  41. package/src/constants/pyth.ts +2 -0
  42. package/src/constants/queryKeys.ts +7 -9
  43. package/src/constants/testAddress.ts +24 -0
  44. package/src/index.ts +0 -1
  45. package/src/models/scallop.ts +9 -13
  46. package/src/models/scallopAddress.ts +2 -9
  47. package/src/models/scallopBuilder.ts +63 -9
  48. package/src/models/scallopCache.ts +220 -114
  49. package/src/models/scallopClient.ts +4 -7
  50. package/src/models/scallopIndexer.ts +2 -6
  51. package/src/models/scallopQuery.ts +54 -20
  52. package/src/models/scallopUtils.ts +9 -13
  53. package/src/queries/borrowIncentiveQuery.ts +6 -13
  54. package/src/queries/coreQuery.ts +62 -48
  55. package/src/queries/loyaltyProgramQuery.ts +1 -3
  56. package/src/queries/objectsQuery.ts +3 -5
  57. package/src/queries/poolAddressesQuery.ts +13 -10
  58. package/src/queries/portfolioQuery.ts +256 -21
  59. package/src/queries/priceQuery.ts +2 -7
  60. package/src/queries/sCoinQuery.ts +2 -2
  61. package/src/queries/spoolQuery.ts +21 -20
  62. package/src/queries/vescaQuery.ts +3 -7
  63. package/src/types/builder/core.ts +21 -3
  64. package/src/types/model.ts +13 -2
  65. package/src/utils/index.ts +0 -2
  66. package/src/utils/indexer.ts +3 -1
  67. package/src/utils/query.ts +2 -2
  68. package/dist/constants/tokenBucket.d.ts +0 -2
  69. package/dist/utils/tokenBucket.d.ts +0 -11
  70. package/src/constants/tokenBucket.ts +0 -2
  71. package/src/utils/tokenBucket.ts +0 -68
@@ -90,7 +90,8 @@ const generateNormalVeScaMethod: GenerateVeScaNormalMethod = ({
90
90
 
91
91
  return {
92
92
  lockSca: (scaCoin, unlockAtInSecondTimestamp) => {
93
- return txBlock.moveCall(
93
+ return builder.moveCall(
94
+ txBlock,
94
95
  `${veScaIds.pkgId}::ve_sca::mint_ve_sca_key`,
95
96
  [
96
97
  veScaIds.config,
@@ -104,7 +105,8 @@ const generateNormalVeScaMethod: GenerateVeScaNormalMethod = ({
104
105
  );
105
106
  },
106
107
  extendLockPeriod: (veScaKey, newUnlockAtInSecondTimestamp) => {
107
- txBlock.moveCall(
108
+ builder.moveCall(
109
+ txBlock,
108
110
  `${veScaIds.pkgId}::ve_sca::extend_lock_period`,
109
111
  [
110
112
  veScaIds.config,
@@ -118,7 +120,8 @@ const generateNormalVeScaMethod: GenerateVeScaNormalMethod = ({
118
120
  );
119
121
  },
120
122
  extendLockAmount: (veScaKey, scaCoin) => {
121
- txBlock.moveCall(
123
+ builder.moveCall(
124
+ txBlock,
122
125
  `${veScaIds.pkgId}::ve_sca::lock_more_sca`,
123
126
  [
124
127
  veScaIds.config,
@@ -132,7 +135,8 @@ const generateNormalVeScaMethod: GenerateVeScaNormalMethod = ({
132
135
  );
133
136
  },
134
137
  renewExpiredVeSca: (veScaKey, scaCoin, newUnlockAtInSecondTimestamp) => {
135
- txBlock.moveCall(
138
+ builder.moveCall(
139
+ txBlock,
136
140
  `${veScaIds.pkgId}::ve_sca::renew_expired_ve_sca`,
137
141
  [
138
142
  veScaIds.config,
@@ -147,7 +151,8 @@ const generateNormalVeScaMethod: GenerateVeScaNormalMethod = ({
147
151
  );
148
152
  },
149
153
  redeemSca: (veScaKey) => {
150
- return txBlock.moveCall(
154
+ return builder.moveCall(
155
+ txBlock,
151
156
  `${veScaIds.pkgId}::ve_sca::redeem`,
152
157
  [
153
158
  veScaIds.config,
@@ -160,7 +165,8 @@ const generateNormalVeScaMethod: GenerateVeScaNormalMethod = ({
160
165
  );
161
166
  },
162
167
  mintEmptyVeSca: () => {
163
- return txBlock.moveCall(
168
+ return builder.moveCall(
169
+ txBlock,
164
170
  `${veScaIds.pkgId}::ve_sca::mint_ve_sca_placeholder_key`,
165
171
  [veScaIds.config, veScaIds.table],
166
172
  []
@@ -346,7 +352,7 @@ const generateQuickVeScaMethod: GenerateVeScaQuickMethod = ({
346
352
  checkVesca(veSca?.unlockAt);
347
353
 
348
354
  if (veSca) {
349
- const sca = txBlock.redeemSca(veSca.keyId);
355
+ const sca = await txBlock.redeemSca(veSca.keyId);
350
356
  if (transferSca) {
351
357
  txBlock.transferObjects([sca], sender);
352
358
  return;
@@ -3,6 +3,7 @@ import { SupportPoolCoins } from 'src/types/constant/common';
3
3
  export const COIN_GECKGO_IDS: Record<SupportPoolCoins, string> = {
4
4
  usdc: 'usdc',
5
5
  sbeth: 'ethereum',
6
+ sbusdt: 'tether',
6
7
  weth: 'ethereum',
7
8
  wbtc: 'bitcoin',
8
9
  wusdc: 'usdc',
@@ -15,6 +16,7 @@ export const COIN_GECKGO_IDS: Record<SupportPoolCoins, string> = {
15
16
  hasui: 'sui',
16
17
  vsui: 'sui',
17
18
  sca: 'scallop-2',
19
+ fdusd: 'first-digital-usd',
18
20
  deep: 'deepbook',
19
21
  fud: 'fud-the-pug',
20
22
  };
@@ -32,6 +32,7 @@ export const OLD_BORROW_INCENTIVE_PROTOCOL_ID =
32
32
  export const SUPPORT_POOLS = [
33
33
  'usdc', // native USDC
34
34
  'sbeth', // sui bridge ETH
35
+ 'sbusdt', // sui bridge USDT
35
36
  'weth',
36
37
  'wbtc',
37
38
  'wusdc',
@@ -46,11 +47,13 @@ export const SUPPORT_POOLS = [
46
47
  'sca',
47
48
  'fud',
48
49
  'deep',
50
+ 'fdusd',
49
51
  ] as const;
50
52
 
51
53
  export const SUPPORT_COLLATERALS = [
52
54
  'usdc', // native USDC
53
55
  'sbeth', // sui bridge ETH
56
+ 'sbusdt', // sui bridge USDT
54
57
  'weth',
55
58
  'wbtc',
56
59
  'wusdc',
@@ -63,6 +66,7 @@ export const SUPPORT_COLLATERALS = [
63
66
  'hasui',
64
67
  'vsui',
65
68
  'sca',
69
+ 'fdusd',
66
70
  ] as const;
67
71
 
68
72
  export const SUPPORT_SPOOLS = [
@@ -80,6 +84,7 @@ export const SUPPORT_SPOOLS = [
80
84
  export const SUPPORT_SCOIN = [
81
85
  'susdc',
82
86
  'ssbeth',
87
+ 'ssbusdt',
83
88
  'ssui',
84
89
  'swusdc',
85
90
  'swusdt',
@@ -93,9 +98,10 @@ export const SUPPORT_SCOIN = [
93
98
  'swbtc',
94
99
  'sdeep',
95
100
  'sfud',
101
+ 'sfdusd',
96
102
  ] as const;
97
103
 
98
- export const SUPPORT_SUI_BRIDGE = ['sbeth'] as const;
104
+ export const SUPPORT_SUI_BRIDGE = ['sbeth', 'sbusdt'] as const;
99
105
  export const SUPPORT_WORMHOLE = [
100
106
  'wusdc',
101
107
  'wusdt',
@@ -4,6 +4,7 @@ import { IS_VE_SCA_TEST } from './common';
4
4
  export const coinDecimals: types.SupportCoinDecimals = {
5
5
  usdc: 6,
6
6
  sbeth: 8,
7
+ sbusdt: 6,
7
8
  weth: 8,
8
9
  wbtc: 8,
9
10
  wusdc: 6,
@@ -16,11 +17,13 @@ export const coinDecimals: types.SupportCoinDecimals = {
16
17
  hasui: 9,
17
18
  vsui: 9,
18
19
  sca: 9,
20
+ fdusd: 6,
19
21
  deep: 6,
20
22
  fud: 5,
21
23
  susdc: 6,
22
24
  sweth: 8,
23
25
  ssbeth: 8,
26
+ ssbusdt: 6,
24
27
  swbtc: 8,
25
28
  swusdc: 6,
26
29
  swusdt: 6,
@@ -32,6 +35,7 @@ export const coinDecimals: types.SupportCoinDecimals = {
32
35
  shasui: 9,
33
36
  svsui: 9,
34
37
  ssca: 9,
38
+ sfdusd: 6,
35
39
  sdeep: 6,
36
40
  sfud: 5,
37
41
  };
@@ -39,6 +43,7 @@ export const coinDecimals: types.SupportCoinDecimals = {
39
43
  export const assetCoins: types.AssetCoins = {
40
44
  usdc: 'usdc',
41
45
  sbeth: 'sbeth',
46
+ sbusdt: 'sbusdt',
42
47
  weth: 'weth',
43
48
  wbtc: 'wbtc',
44
49
  wusdc: 'wusdc',
@@ -51,6 +56,7 @@ export const assetCoins: types.AssetCoins = {
51
56
  hasui: 'hasui',
52
57
  vsui: 'vsui',
53
58
  sca: 'sca',
59
+ fdusd: 'fdusd',
54
60
  deep: 'deep',
55
61
  fud: 'fud',
56
62
  };
@@ -58,6 +64,7 @@ export const assetCoins: types.AssetCoins = {
58
64
  export const marketCoins: types.MarketCoins = {
59
65
  susdc: 'susdc',
60
66
  ssbeth: 'ssbeth',
67
+ ssbusdt: 'ssbusdt',
61
68
  sweth: 'sweth',
62
69
  swbtc: 'swbtc',
63
70
  swusdc: 'swusdc',
@@ -70,6 +77,7 @@ export const marketCoins: types.MarketCoins = {
70
77
  shasui: 'shasui',
71
78
  svsui: 'svsui',
72
79
  ssca: 'ssca',
80
+ sfdusd: 'sfdusd',
73
81
  sdeep: 'sdeep',
74
82
  sfud: 'sfud',
75
83
  };
@@ -77,6 +85,7 @@ export const marketCoins: types.MarketCoins = {
77
85
  export const sCoins: types.SCoins = {
78
86
  susdc: 'susdc',
79
87
  ssbeth: 'ssbeth',
88
+ ssbusdt: 'ssbusdt',
80
89
  sweth: 'sweth',
81
90
  swusdc: 'swusdc',
82
91
  swusdt: 'swusdt',
@@ -88,6 +97,7 @@ export const sCoins: types.SCoins = {
88
97
  ssca: 'ssca',
89
98
  swsol: 'swsol',
90
99
  swbtc: 'swbtc',
100
+ sfdusd: 'sfdusd',
91
101
  sfud: 'sfud',
92
102
  sdeep: 'sdeep',
93
103
  };
@@ -118,28 +128,35 @@ export const spoolRewardCoins: types.StakeRewardCoins = {
118
128
 
119
129
  export const suiBridgeCoins: types.SuiBridgeCoins = {
120
130
  sbeth: 'sbeth',
131
+ sbusdt: 'sbusdt',
121
132
  };
122
133
 
123
134
  export const coinIds: types.AssetCoinIds = {
124
- usdc: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7',
125
135
  sui: '0x0000000000000000000000000000000000000000000000000000000000000002',
126
- sbeth: '0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29',
136
+ cetus: '0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b',
137
+ sca: IS_VE_SCA_TEST
138
+ ? '0x6cd813061a3adf3602b76545f076205f0c8e7ec1d3b1eab9a1da7992c18c0524'
139
+ : '0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6',
140
+ // Wormhole assets
127
141
  weth: '0xaf8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5',
128
142
  wbtc: '0x027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881',
129
- wusdc: '0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf',
130
- wusdt: '0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c',
131
143
  wapt: '0x3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37',
132
144
  wsol: '0xb7844e289a8410e50fb3ca48d69eb9cf29e27d223ef90353fe1bd8e27ff8f3f8',
133
- cetus: '0x06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b',
145
+ // Sui LST
134
146
  afsui: '0xf325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc',
135
147
  hasui: '0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d',
136
148
  vsui: '0x549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55',
137
- sca: IS_VE_SCA_TEST
138
- ? '0x6cd813061a3adf3602b76545f076205f0c8e7ec1d3b1eab9a1da7992c18c0524'
139
- : '0x7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6',
149
+ // stable coins
150
+ usdc: '0xdba34672e30cb065b1f93e3ab55318768fd6fef66c15942c9f7cb846e2f900e7',
151
+ wusdc: '0x5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf',
152
+ wusdt: '0xc060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c',
153
+ fdusd: '0xf16e6b723f242ec745dfd7634ad072c42d5c1d9ac9d62a39c381303eaa57693a',
140
154
  // isolated assets
141
155
  deep: '0xdeeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270',
142
156
  fud: '0x76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1',
157
+ // Sui bridge assets
158
+ sbeth: '0xd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29',
159
+ sbusdt: '0x375f70cf2ae4c00bf37117d0c85a2c71545e6ee05c4a5c7d282cd66a4504b068',
143
160
  };
144
161
 
145
162
  export const wormholeCoinIds: types.WormholeCoinIds = {
@@ -157,33 +174,42 @@ export const voloCoinIds: types.VoloCoinIds = {
157
174
 
158
175
  // PROD VERSION
159
176
  export const sCoinIds: types.SCoinIds = {
160
- susdc:
161
- '0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC',
162
- ssbeth:
163
- '0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH',
164
177
  ssui: '0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI',
165
- swusdc:
166
- '0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC',
167
- swusdt:
168
- '0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT',
169
178
  ssca: '0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA',
170
179
  scetus:
171
180
  '0xea346ce428f91ab007210443efcea5f5cdbbb3aae7e9affc0ca93f9203c31f0c::scallop_cetus::SCALLOP_CETUS',
181
+ // Wormhole assets
172
182
  sweth:
173
183
  '0x67540ceb850d418679e69f1fb6b2093d6df78a2a699ffc733f7646096d552e9b::scallop_wormhole_eth::SCALLOP_WORMHOLE_ETH',
184
+ swsol:
185
+ '0x1392650f2eca9e3f6ffae3ff89e42a3590d7102b80e2b430f674730bc30d3259::scallop_wormhole_sol::SCALLOP_WORMHOLE_SOL',
186
+ swbtc:
187
+ '0x2cf76a9cf5d3337961d1154283234f94da2dcff18544dfe5cbdef65f319591b5::scallop_wormhole_btc::SCALLOP_WORMHOLE_BTC',
188
+ // Sui LST
174
189
  safsui:
175
190
  '0x00671b1fa2a124f5be8bdae8b91ee711462c5d9e31bda232e70fd9607b523c88::scallop_af_sui::SCALLOP_AF_SUI',
176
191
  shasui:
177
192
  '0x9a2376943f7d22f88087c259c5889925f332ca4347e669dc37d54c2bf651af3c::scallop_ha_sui::SCALLOP_HA_SUI',
178
193
  svsui:
179
194
  '0xe1a1cc6bcf0001a015eab84bcc6713393ce20535f55b8b6f35c142e057a25fbe::scallop_v_sui::SCALLOP_V_SUI',
180
- swsol:
181
- '0x1392650f2eca9e3f6ffae3ff89e42a3590d7102b80e2b430f674730bc30d3259::scallop_wormhole_sol::SCALLOP_WORMHOLE_SOL',
182
- swbtc:
183
- '0x2cf76a9cf5d3337961d1154283234f94da2dcff18544dfe5cbdef65f319591b5::scallop_wormhole_btc::SCALLOP_WORMHOLE_BTC',
195
+ // stable coins
196
+ susdc:
197
+ '0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC',
198
+ swusdc:
199
+ '0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC',
200
+ swusdt:
201
+ '0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT',
202
+ sfdusd:
203
+ '0x6711551c1e7652a270d9fbf0eee25d99594c157cde3cb5fbb49035eb59b1b001::scallop_fdusd::SCALLOP_FDUSD',
204
+ // isolated assets
184
205
  sdeep:
185
206
  '0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP',
186
207
  sfud: '0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD',
208
+ // Sui bridge assets
209
+ ssbeth:
210
+ '0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH',
211
+ ssbusdt:
212
+ '0xb1d7df34829d1513b73ba17cb7ad90c88d1e104bb65ab8f62f13e0cc103783d3::scallop_sb_usdt::SCALLOP_SB_USDT',
187
213
  } as const;
188
214
 
189
215
  export const sCoinTypeToName = Object.entries(sCoinIds).reduce(
@@ -8,6 +8,5 @@ export * from './pyth';
8
8
  export * from './queryKeys';
9
9
  export * from './rpc';
10
10
  export * from './testAddress';
11
- export * from './tokenBucket';
12
11
  export * from './vesca';
13
12
  export * from './testAddress';
@@ -17,7 +17,8 @@ export const POOL_ADDRESSES: OptionalKeys<
17
17
  supplyLimitKey?: string;
18
18
  borrowLimitKey?: string;
19
19
  isolatedAssetKey?: string;
20
- coinDecimalId?: string;
20
+ coinMetadataId?: string;
21
+ sCoinType?: string;
21
22
  }
22
23
  >
23
24
  > = {
@@ -44,8 +45,41 @@ export const POOL_ADDRESSES: OptionalKeys<
44
45
  '0x85ed6ed72ea97c35dbf0cdc7ed6fbc48d8ec15de9b17c74bf4512df8a6d7f166',
45
46
  sCoinTreasury:
46
47
  '0xbe6b63021f3d82e0e7e977cdd718ed7c019cf2eba374b7b546220402452f938e',
47
- coinDecimalId:
48
+ sCoinType:
49
+ '0x854950aa624b1df59fe64e630b2ba7c550642e9342267a33061d59fb31582da5::scallop_usdc::SCALLOP_USDC',
50
+ coinMetadataId:
48
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',
49
83
  },
50
84
  sbeth: {
51
85
  lendingPoolAddress:
@@ -69,8 +103,12 @@ export const POOL_ADDRESSES: OptionalKeys<
69
103
  spoolReward: undefined,
70
104
  sCoinTreasury:
71
105
  '0xfd0f02def6358a1f266acfa1493d4707ee8387460d434fb667d63d755ff907ed',
72
- coinDecimalId:
106
+ sCoinType:
107
+ '0xb14f82d8506d139eacef109688d1b71e7236bcce9b2c0ad526abcd6aa5be7de0::scallop_sb_eth::SCALLOP_SB_ETH',
108
+ coinMetadataId:
73
109
  '0x89b04ba87f8832d4d76e17a1c9dce72eb3e64d372cf02012b8d2de5384faeef0',
110
+ coinType:
111
+ 'd0e89b2af5e4910726fbcd8b8dd37bb79b29e5f83f7491bca830e94f7f226d29::eth::ETH',
74
112
  },
75
113
  weth: {
76
114
  lendingPoolAddress:
@@ -95,8 +133,12 @@ export const POOL_ADDRESSES: OptionalKeys<
95
133
  '0x957de68a18d87817de8309b30c1ec269a4d87ae513abbeed86b5619cb9ce1077',
96
134
  sCoinTreasury:
97
135
  '0x4b7f5da0e306c9d52490a0c1d4091e653d6b89778b9b4f23c877e534e4d9cd21',
98
- coinDecimalId:
136
+ sCoinType:
137
+ '0x67540ceb850d418679e69f1fb6b2093d6df78a2a699ffc733f7646096d552e9b::scallop_wormhole_eth::SCALLOP_WORMHOLE_ETH',
138
+ coinMetadataId:
99
139
  '0x8900e4ceede3363bef086d6b50ca89d816d0e90bf6bc46efefe1f8455e08f50f',
140
+ coinType:
141
+ 'af8cd5edc19c4512f4259f0bee101a40d41ebed738ade5874359610ef8eeced5::coin::COIN',
100
142
  },
101
143
  wbtc: {
102
144
  lendingPoolAddress:
@@ -120,8 +162,12 @@ export const POOL_ADDRESSES: OptionalKeys<
120
162
  spoolReward: undefined,
121
163
  sCoinTreasury:
122
164
  '0xe2883934ea42c99bc998bbe0f01dd6d27aa0e27a56455707b1b34e6a41c20baa',
123
- coinDecimalId:
165
+ sCoinType:
166
+ '0x2cf76a9cf5d3337961d1154283234f94da2dcff18544dfe5cbdef65f319591b5::scallop_wormhole_btc::SCALLOP_WORMHOLE_BTC',
167
+ coinMetadataId:
124
168
  '0x5d3c6e60eeff8a05b693b481539e7847dfe33013e7070cdcb387f5c0cac05dfd',
169
+ coinType:
170
+ '027792d9fed7f9844eb4839566001bb6f6cb4804f66aa2da6fe1ee242d896881::coin::COIN',
125
171
  },
126
172
  wusdc: {
127
173
  lendingPoolAddress:
@@ -146,8 +192,12 @@ export const POOL_ADDRESSES: OptionalKeys<
146
192
  '0xf4268cc9b9413b9bfe09e8966b8de650494c9e5784bf0930759cfef4904daff8',
147
193
  sCoinTreasury:
148
194
  '0x50c5cfcbcca3aaacab0984e4d7ad9a6ad034265bebb440f0d1cd688ec20b2548',
149
- coinDecimalId:
195
+ sCoinType:
196
+ '0xad4d71551d31092230db1fd482008ea42867dbf27b286e9c70a79d2a6191d58d::scallop_wormhole_usdc::SCALLOP_WORMHOLE_USDC',
197
+ coinMetadataId:
150
198
  '0x4fbf84f3029bd0c0b77164b587963be957f853eccf834a67bb9ecba6ec80f189',
199
+ coinType:
200
+ '5d4b302506645c37ff133b98c4b50a5ae14841659738d6d733d59d0d217a93bf::coin::COIN',
151
201
  },
152
202
  wusdt: {
153
203
  lendingPoolAddress:
@@ -172,8 +222,12 @@ export const POOL_ADDRESSES: OptionalKeys<
172
222
  '0x2c9f934d67a5baa586ceec2cc24163a2f049a6af3d5ba36b84d8ac40f25c4080',
173
223
  sCoinTreasury:
174
224
  '0x1f02e2fed702b477732d4ad6044aaed04f2e8e586a169153694861a901379df0',
175
- coinDecimalId:
225
+ sCoinType:
226
+ '0xe6e5a012ec20a49a3d1d57bd2b67140b96cd4d3400b9d79e541f7bdbab661f95::scallop_wormhole_usdt::SCALLOP_WORMHOLE_USDT',
227
+ coinMetadataId:
176
228
  '0xfb0e3eb97dd158a5ae979dddfa24348063843c5b20eb8381dd5fa7c93699e45c',
229
+ coinType:
230
+ 'c060006111016b8a020ad5b33834984a437aaa7d3c74c18e09a95d48aceab08c::coin::COIN',
177
231
  },
178
232
  sui: {
179
233
  lendingPoolAddress:
@@ -198,8 +252,12 @@ export const POOL_ADDRESSES: OptionalKeys<
198
252
  '0x162250ef72393a4ad3d46294c4e1bdfcb03f04c869d390e7efbfc995353a7ee9',
199
253
  sCoinTreasury:
200
254
  '0x5c1678c8261ac9eec024d4d630006a9f55c80dc0b1aa38a003fcb1d425818c6b',
201
- coinDecimalId:
255
+ sCoinType:
256
+ '0xaafc4f740de0dd0dde642a31148fb94517087052f19afb0f7bed1dc41a50c77b::scallop_sui::SCALLOP_SUI',
257
+ coinMetadataId:
202
258
  '0x9258181f5ceac8dbffb7030890243caed69a9599d2886d957a9cb7656af3bdb3',
259
+ coinType:
260
+ '0000000000000000000000000000000000000000000000000000000000000002::sui::SUI',
203
261
  },
204
262
  wapt: {
205
263
  lendingPoolAddress:
@@ -220,33 +278,11 @@ export const POOL_ADDRESSES: OptionalKeys<
220
278
  spool: undefined,
221
279
  spoolReward: undefined,
222
280
  sCoinTreasury: undefined,
223
- coinDecimalId:
281
+ sCoinType: undefined,
282
+ coinMetadataId:
224
283
  '0xc969c5251f372c0f34c32759f1d315cf1ea0ee5e4454b52aea08778eacfdd0a8',
225
- },
226
- wsol: {
227
- lendingPoolAddress:
228
- '0x985682c42984cdfb03f9ff7d8923344c2fe096b1ae4b82ea17721af19d22a21f',
229
- collateralPoolAddress:
230
- '0xdc1cc2c371a043ae8e3c3fe2d013c35f1346960b7dbb4c072982c5b794ed144f',
231
- borrowDynamic:
232
- '0xe3f301e16d4f1273ea659dd82c5c3f124ca5a5883a5726c7ec0f77bf43b70895',
233
- interestModel:
234
- '0xd95affaee077006b8dbb4b108c1b087e95fc6e5143ef0682da345d5b35bc6356',
235
- riskModel:
236
- '0x8e0da6358073144ec3557400c87f04991ba3a13ca7e0d0a19daed45260b32f16',
237
- borrowFeeKey:
238
- '0x604bffbc817e8e12db15f2373a9e15b2c7adbc510649cdf2cc62a594af90671c',
239
- supplyLimitKey:
240
- '0xbd419b536b3f9c9d4adfc20372ca6feedc53cc31798ac860dbfc847bcf05f54b',
241
- borrowLimitKey:
242
- '0x77d453c51948f32564c810bc73f9ba7abde880657b7f89e1c8a3bc28fa36ee87',
243
- isolatedAssetKey: undefined,
244
- spool: undefined,
245
- spoolReward: undefined,
246
- sCoinTreasury:
247
- '0x760fd66f5be869af4382fa32b812b3c67f0eca1bb1ed7a5578b21d56e1848819',
248
- coinDecimalId:
249
- '0x4d2c39082b4477e3e79dc4562d939147ab90c42fc5f3e4acf03b94383cd69b6e',
284
+ coinType:
285
+ '3a5143bb1196e3bcdfab6203d1683ae29edd26294fc8bfeafe4aaa9d2704df37::coin::COIN',
250
286
  },
251
287
  cetus: {
252
288
  lendingPoolAddress:
@@ -271,8 +307,41 @@ export const POOL_ADDRESSES: OptionalKeys<
271
307
  '0x6835c1224126a45086fc6406adc249e3f30df18d779ca4f4e570e38716a17f3f',
272
308
  sCoinTreasury:
273
309
  '0xa283c63488773c916cb3d6c64109536160d5eb496caddc721eb39aad2977d735',
274
- coinDecimalId:
310
+ sCoinType:
311
+ '0xea346ce428f91ab007210443efcea5f5cdbbb3aae7e9affc0ca93f9203c31f0c::scallop_cetus::SCALLOP_CETUS',
312
+ coinMetadataId:
275
313
  '0x4c0dce55eff2db5419bbd2d239d1aa22b4a400c01bbb648b058a9883989025da',
314
+ coinType:
315
+ '06864a6f921804860930db6ddbe2e16acdf8504495ea7481637a1c8b9a8fe54b::cetus::CETUS',
316
+ },
317
+ wsol: {
318
+ lendingPoolAddress:
319
+ '0x985682c42984cdfb03f9ff7d8923344c2fe096b1ae4b82ea17721af19d22a21f',
320
+ collateralPoolAddress:
321
+ '0xdc1cc2c371a043ae8e3c3fe2d013c35f1346960b7dbb4c072982c5b794ed144f',
322
+ borrowDynamic:
323
+ '0xe3f301e16d4f1273ea659dd82c5c3f124ca5a5883a5726c7ec0f77bf43b70895',
324
+ interestModel:
325
+ '0xd95affaee077006b8dbb4b108c1b087e95fc6e5143ef0682da345d5b35bc6356',
326
+ riskModel:
327
+ '0x8e0da6358073144ec3557400c87f04991ba3a13ca7e0d0a19daed45260b32f16',
328
+ borrowFeeKey:
329
+ '0x604bffbc817e8e12db15f2373a9e15b2c7adbc510649cdf2cc62a594af90671c',
330
+ supplyLimitKey:
331
+ '0xbd419b536b3f9c9d4adfc20372ca6feedc53cc31798ac860dbfc847bcf05f54b',
332
+ borrowLimitKey:
333
+ '0x77d453c51948f32564c810bc73f9ba7abde880657b7f89e1c8a3bc28fa36ee87',
334
+ isolatedAssetKey: undefined,
335
+ spool: undefined,
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',
276
345
  },
277
346
  afsui: {
278
347
  lendingPoolAddress:
@@ -297,8 +366,12 @@ export const POOL_ADDRESSES: OptionalKeys<
297
366
  '0x89255a2f86ed7fbfef35ab8b7be48cc7667015975be2685dd9a55a9a64baf76e',
298
367
  sCoinTreasury:
299
368
  '0x55f4dfe9e40bc4cc11c70fcb1f3daefa2bdc330567c58d4f0792fbd9f9175a62',
300
- coinDecimalId:
369
+ sCoinType:
370
+ '0x00671b1fa2a124f5be8bdae8b91ee711462c5d9e31bda232e70fd9607b523c88::scallop_af_sui::SCALLOP_AF_SUI',
371
+ coinMetadataId:
301
372
  '0x2f9217f533e51334873a39b8026a4aa6919497b47f49d0986a4f1aec66f8a34d',
373
+ coinType:
374
+ 'f325ce1300e8dac124071d3152c5c5ee6174914f8bc2161e88329cf579246efc::afsui::AFSUI',
302
375
  },
303
376
  hasui: {
304
377
  lendingPoolAddress:
@@ -323,8 +396,12 @@ export const POOL_ADDRESSES: OptionalKeys<
323
396
  '0x6f3563644d3e2ef13176dbf9d865bd93479df60ccbe07b7e66db57f6309f5a66',
324
397
  sCoinTreasury:
325
398
  '0x404ccc1404d74a90eb6f9c9d4b6cda6d417fb03189f80d9070a35e5dab1df0f5',
326
- coinDecimalId:
399
+ sCoinType:
400
+ '0x9a2376943f7d22f88087c259c5889925f332ca4347e669dc37d54c2bf651af3c::scallop_ha_sui::SCALLOP_HA_SUI',
401
+ coinMetadataId:
327
402
  '0x2c5f33af93f6511df699aaaa5822d823aac6ed99d4a0de2a4a50b3afa0172e24',
403
+ coinType:
404
+ 'bde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d::hasui::HASUI',
328
405
  },
329
406
  vsui: {
330
407
  lendingPoolAddress:
@@ -349,8 +426,12 @@ export const POOL_ADDRESSES: OptionalKeys<
349
426
  '0xbca914adce058ad0902c7f3cfcd698392a475f00dcfdc3f76001d0370b98777a',
350
427
  sCoinTreasury:
351
428
  '0xc06688ee1af25abc286ffb1d18ce273d1d5907cd1064c25f4e8ca61ea989c1d1',
352
- coinDecimalId:
429
+ sCoinType:
430
+ '0xe1a1cc6bcf0001a015eab84bcc6713393ce20535f55b8b6f35c142e057a25fbe::scallop_v_sui::SCALLOP_V_SUI',
431
+ coinMetadataId:
353
432
  '0xabd84a23467b33854ab25cf862006fd97479f8f6f53e50fe732c43a274d939bd',
433
+ coinType:
434
+ '549e8b69270defbfafd4f94e17ec44cdbdd99820b33bda2278dea3b9a32d3f55::cert::CERT',
354
435
  },
355
436
  sca: {
356
437
  lendingPoolAddress:
@@ -374,8 +455,12 @@ export const POOL_ADDRESSES: OptionalKeys<
374
455
  spoolReward: undefined,
375
456
  sCoinTreasury:
376
457
  '0xe04bfc95e00252bd654ee13c08edef9ac5e4b6ae4074e8390db39e9a0109c529',
377
- coinDecimalId:
458
+ sCoinType:
459
+ '0x5ca17430c1d046fae9edeaa8fd76c7b4193a00d764a0ecfa9418d733ad27bc1e::scallop_sca::SCALLOP_SCA',
460
+ coinMetadataId:
378
461
  '0x5d26a1e9a55c88147ac870bfa31b729d7f49f8804b8b3adfdf3582d301cca844',
462
+ coinType:
463
+ '7016aae72cfc67f2fadf55769c0a7dd54291a583b63051a5ed71081cce836ac6::sca::SCA',
379
464
  },
380
465
  fud: {
381
466
  lendingPoolAddress:
@@ -398,8 +483,12 @@ export const POOL_ADDRESSES: OptionalKeys<
398
483
  spoolReward: undefined,
399
484
  sCoinTreasury:
400
485
  '0xf25212f11d182decff7a86165699a73e3d5787aced203ca539f43cfbc10db867',
401
- coinDecimalId:
486
+ sCoinType:
487
+ '0xe56d5167f427cbe597da9e8150ef5c337839aaf46891d62468dcf80bdd8e10d1::scallop_fud::SCALLOP_FUD',
488
+ coinMetadataId:
402
489
  '0x01087411ef48aaac1eb6e24803213e3a60a03b147dac930e5e341f17a85e524e',
490
+ coinType:
491
+ '76cb819b01abed502bee8a702b4c2d547532c12f25001c9dea795a5e631c26f1::fud::FUD',
403
492
  },
404
493
  deep: {
405
494
  lendingPoolAddress:
@@ -422,7 +511,40 @@ export const POOL_ADDRESSES: OptionalKeys<
422
511
  spoolReward: undefined,
423
512
  sCoinTreasury:
424
513
  '0xc63838fabe37b25ad897392d89876d920f5e0c6a406bf3abcb84753d2829bc88',
425
- coinDecimalId:
514
+ sCoinType:
515
+ '0xeb7a05a3224837c5e5503575aed0be73c091d1ce5e43aa3c3e716e0ae614608f::scallop_deep::SCALLOP_DEEP',
516
+ coinMetadataId:
426
517
  '0x6e60b051a08fa836f5a7acd7c464c8d9825bc29c44657fe170fe9b8e1e4770c0',
518
+ coinType:
519
+ 'deeb7a4662eec9f2f3def03fb937a663dddaa2e215b8078a284d026b7946c270::deep::DEEP',
520
+ },
521
+ fdusd: {
522
+ lendingPoolAddress:
523
+ '0x4f46051a01f05c3ad9aecf29a771aad5c884e1a1888e08d7709085e3a095bc9c',
524
+ collateralPoolAddress:
525
+ '0x4f6647a9afcfdb62bb9b27e4d1cb7bd7130aca1b4f13fa7164453c869c1681ae',
526
+ borrowDynamic:
527
+ '0x4ddcf19b6290a8b048ecb314b14ef7f52c1c5b9ddc9259a2a242cd91d681a085',
528
+ interestModel:
529
+ '0xb57a33706b29d2d253c74c1c0869e6e20da99036338d2b0b7235ab41621ee9dd',
530
+ riskModel:
531
+ '0xd65fb21758dc1e6184940a1a27efb13228d7cf5e19f6dcca06cc2d996af4a6b9',
532
+ borrowFeeKey:
533
+ '0xafe673a27747b063fa918d2dfe47794e44af553737ac562c2a63186539a07f45',
534
+ supplyLimitKey:
535
+ '0x730e0785ba056a7a95f4a6959371a598d7fe782e81c40785c79982ced4cf4e35',
536
+ borrowLimitKey:
537
+ '0x1630c6954918a06fe56312afb8958366c5ed7af653dae0e32c09d088da38577e',
538
+ isolatedAssetKey: undefined,
539
+ spool: undefined,
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',
427
549
  },
428
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
  };