@mento-protocol/mento-sdk 3.0.0 → 3.1.0-beta.1

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 (38) hide show
  1. package/dist/cache/routes.js +225 -1
  2. package/dist/cache/tokens.d.ts +1 -3
  3. package/dist/cache/tokens.js +142 -150
  4. package/dist/core/abis/reserve.d.ts +1 -0
  5. package/dist/core/abis/reserve.js +9 -1
  6. package/dist/core/constants/addresses.d.ts +5 -0
  7. package/dist/core/constants/addresses.js +25 -5
  8. package/dist/core/constants/chainId.d.ts +3 -1
  9. package/dist/core/constants/chainId.js +2 -0
  10. package/dist/core/types/pool.d.ts +1 -3
  11. package/dist/core/types/provider.d.ts +45 -0
  12. package/dist/core/types/provider.js +3 -0
  13. package/dist/esm/cache/routes.js +225 -1
  14. package/dist/esm/cache/tokens.js +142 -150
  15. package/dist/esm/core/abis/reserve.js +8 -0
  16. package/dist/esm/core/constants/addresses.js +24 -5
  17. package/dist/esm/core/constants/chainId.js +2 -0
  18. package/dist/esm/core/types/provider.js +1 -0
  19. package/dist/esm/index.js +6 -8
  20. package/dist/esm/services/index.js +0 -1
  21. package/dist/esm/services/liquidity/liquidityHelpers.js +2 -4
  22. package/dist/esm/services/pools/poolDetails.js +4 -10
  23. package/dist/esm/services/pools/poolDiscovery.js +6 -10
  24. package/dist/esm/services/tokens/tokenService.js +70 -11
  25. package/dist/esm/services/trading/TradingLimitsService.js +11 -23
  26. package/dist/esm/utils/chainConfig.js +49 -0
  27. package/dist/index.d.ts +6 -8
  28. package/dist/index.js +6 -8
  29. package/dist/services/index.d.ts +0 -1
  30. package/dist/services/index.js +0 -1
  31. package/dist/services/liquidity/liquidityHelpers.js +2 -4
  32. package/dist/services/pools/poolDetails.js +4 -10
  33. package/dist/services/pools/poolDiscovery.js +5 -9
  34. package/dist/services/tokens/tokenService.d.ts +17 -2
  35. package/dist/services/tokens/tokenService.js +68 -9
  36. package/dist/services/trading/TradingLimitsService.js +10 -22
  37. package/dist/utils/chainConfig.js +49 -0
  38. package/package.json +1 -1
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  // This file is auto-generated. Do not edit manually.
3
- // Generated on 2026-03-03T20:21:18.047Z
3
+ // Generated on 2026-03-10T14:45:05.132Z
4
4
  Object.defineProperty(exports, "__esModule", { value: true });
5
5
  exports.TOKEN_ADDRESSES_BY_CHAIN = exports.cachedTokens = exports.TokenSymbol = void 0;
6
6
  exports.getCachedTokens = getCachedTokens;
@@ -13,12 +13,11 @@ exports.findTokenBySymbol = findTokenBySymbol;
13
13
  var TokenSymbol;
14
14
  (function (TokenSymbol) {
15
15
  TokenSymbol["AUDm"] = "AUDm";
16
+ TokenSymbol["AUSD"] = "AUSD";
16
17
  TokenSymbol["BRLm"] = "BRLm";
17
18
  TokenSymbol["CADm"] = "CADm";
18
- TokenSymbol["CELO"] = "CELO";
19
19
  TokenSymbol["CHFm"] = "CHFm";
20
20
  TokenSymbol["COPm"] = "COPm";
21
- TokenSymbol["EURm"] = "EURm";
22
21
  TokenSymbol["GBPm"] = "GBPm";
23
22
  TokenSymbol["GHSm"] = "GHSm";
24
23
  TokenSymbol["JPYm"] = "JPYm";
@@ -30,56 +29,72 @@ var TokenSymbol;
30
29
  TokenSymbol["USD_"] = "USD\u20AE";
31
30
  TokenSymbol["XOFm"] = "XOFm";
32
31
  TokenSymbol["ZARm"] = "ZARm";
33
- TokenSymbol["axlEUROC"] = "axlEUROC";
34
32
  TokenSymbol["axlUSDC"] = "axlUSDC";
35
33
  })(TokenSymbol || (exports.TokenSymbol = TokenSymbol = {}));
36
34
  /**
37
35
  * Cached tokens indexed by chain ID
38
36
  */
39
37
  exports.cachedTokens = {
40
- // Chain 42220
41
- 42220: [
38
+ // Chain 143
39
+ 143: [],
40
+ // Chain 10143
41
+ 10143: [
42
42
  {
43
- address: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
43
+ address: '0x04de554E875c9797dC4ceBd834A9e99fa8fD5Df9',
44
+ symbol: TokenSymbol.GBPm,
45
+ name: 'Mento British Pound',
46
+ decimals: 18,
47
+ },
48
+ {
49
+ address: '0x5eCc03111ad2A78F981A108759bc73BAE2AB31bc',
44
50
  symbol: TokenSymbol.USDm,
45
51
  name: 'Mento Dollar',
46
52
  decimals: 18,
47
53
  },
48
54
  {
49
- address: '0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73',
50
- symbol: TokenSymbol.EURm,
51
- name: 'Mento Euro',
52
- decimals: 18,
55
+ address: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
56
+ symbol: TokenSymbol.USDC,
57
+ name: 'USDC',
58
+ decimals: 6,
53
59
  },
54
60
  {
55
- address: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
56
- symbol: TokenSymbol.BRLm,
57
- name: 'Mento Brazilian Real',
61
+ address: '0x502E67D3fE9302A5e4Ec1CFCDdbD6F34F9B9484B',
62
+ symbol: TokenSymbol.AUSD,
63
+ name: 'Mento Mock AUSD',
64
+ decimals: 6,
65
+ }
66
+ ],
67
+ // Chain 42220
68
+ 42220: [
69
+ {
70
+ address: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
71
+ symbol: TokenSymbol.GBPm,
72
+ name: 'Mento British Pound',
58
73
  decimals: 18,
59
74
  },
60
75
  {
61
- address: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
62
- symbol: TokenSymbol.XOFm,
63
- name: 'Mento West African CFA franc',
76
+ address: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
77
+ symbol: TokenSymbol.USDm,
78
+ name: 'Mento Dollar',
64
79
  decimals: 18,
65
80
  },
66
81
  {
67
- address: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
68
- symbol: TokenSymbol.KESm,
69
- name: 'Mento Kenyan Shilling',
70
- decimals: 18,
82
+ address: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
83
+ symbol: TokenSymbol.axlUSDC,
84
+ name: 'Axelar Wrapped USDC',
85
+ decimals: 6,
71
86
  },
72
87
  {
73
- address: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
74
- symbol: TokenSymbol.PHPm,
75
- name: 'Mento Philippine Peso',
76
- decimals: 18,
88
+ address: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
89
+ symbol: TokenSymbol.USDC,
90
+ name: 'USDC',
91
+ decimals: 6,
77
92
  },
78
93
  {
79
- address: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
80
- symbol: TokenSymbol.COPm,
81
- name: 'Mento Colombian Peso',
82
- decimals: 18,
94
+ address: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
95
+ symbol: TokenSymbol.USD_,
96
+ name: 'Tether USD',
97
+ decimals: 6,
83
98
  },
84
99
  {
85
100
  address: '0xfAeA5F3404bbA20D3cc2f8C4B0A888F55a3c7313',
@@ -87,24 +102,12 @@ exports.cachedTokens = {
87
102
  name: 'Mento Ghanaian Cedi',
88
103
  decimals: 18,
89
104
  },
90
- {
91
- address: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
92
- symbol: TokenSymbol.GBPm,
93
- name: 'Mento British Pound',
94
- decimals: 18,
95
- },
96
105
  {
97
106
  address: '0x4c35853A3B4e647fD266f4de678dCc8fEC410BF6',
98
107
  symbol: TokenSymbol.ZARm,
99
108
  name: 'Mento South African Rand',
100
109
  decimals: 18,
101
110
  },
102
- {
103
- address: '0xff4Ab19391af240c311c54200a492233052B6325',
104
- symbol: TokenSymbol.CADm,
105
- name: 'Mento Canadian Dollar',
106
- decimals: 18,
107
- },
108
111
  {
109
112
  address: '0x7175504C455076F15c04A2F90a8e352281F492F9',
110
113
  symbol: TokenSymbol.AUDm,
@@ -124,73 +127,79 @@ exports.cachedTokens = {
124
127
  decimals: 18,
125
128
  },
126
129
  {
127
- address: '0xc45eCF20f3CD864B32D9794d6f76814aE8892e20',
128
- symbol: TokenSymbol.JPYm,
129
- name: 'Mento Japanese Yen',
130
+ address: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
131
+ symbol: TokenSymbol.KESm,
132
+ name: 'Mento Kenyan Shilling',
130
133
  decimals: 18,
131
134
  },
132
135
  {
133
- address: '0x471EcE3750Da237f93B8E339c536989b8978a438',
134
- symbol: TokenSymbol.CELO,
135
- name: 'Celo native asset',
136
+ address: '0xff4Ab19391af240c311c54200a492233052B6325',
137
+ symbol: TokenSymbol.CADm,
138
+ name: 'Mento Canadian Dollar',
136
139
  decimals: 18,
137
140
  },
138
141
  {
139
- address: '0x061cc5a2C863E0C1Cb404006D559dB18A34C762d',
140
- symbol: TokenSymbol.axlEUROC,
141
- name: 'Axelar Wrapped EUROC',
142
- decimals: 6,
142
+ address: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
143
+ symbol: TokenSymbol.PHPm,
144
+ name: 'Mento Philippine Peso',
145
+ decimals: 18,
143
146
  },
144
147
  {
145
- address: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
146
- symbol: TokenSymbol.USDC,
147
- name: 'USDC',
148
- decimals: 6,
148
+ address: '0xc45eCF20f3CD864B32D9794d6f76814aE8892e20',
149
+ symbol: TokenSymbol.JPYm,
150
+ name: 'Mento Japanese Yen',
151
+ decimals: 18,
149
152
  },
150
153
  {
151
- address: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
152
- symbol: TokenSymbol.axlUSDC,
153
- name: 'Axelar Wrapped USDC',
154
- decimals: 6,
154
+ address: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
155
+ symbol: TokenSymbol.COPm,
156
+ name: 'Mento Colombian Peso',
157
+ decimals: 18,
155
158
  },
156
159
  {
157
- address: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
158
- symbol: TokenSymbol.USD_,
159
- name: 'Tether USD',
160
- decimals: 6,
160
+ address: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
161
+ symbol: TokenSymbol.BRLm,
162
+ name: 'Mento Brazilian Real',
163
+ decimals: 18,
164
+ },
165
+ {
166
+ address: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
167
+ symbol: TokenSymbol.XOFm,
168
+ name: 'Mento West African CFA franc',
169
+ decimals: 18,
161
170
  }
162
171
  ],
163
172
  // Chain 11142220
164
173
  11142220: [
165
174
  {
166
- address: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
167
- symbol: TokenSymbol.USDm,
168
- name: 'Mento Dollar',
175
+ address: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
176
+ symbol: TokenSymbol.GBPm,
177
+ name: 'Mento British Pound',
169
178
  decimals: 18,
170
179
  },
171
180
  {
172
- address: '0xA99dC247d6b7B2E3ab48a1fEE101b83cD6aCd82a',
173
- symbol: TokenSymbol.EURm,
174
- name: 'Mento Euro',
181
+ address: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
182
+ symbol: TokenSymbol.USDm,
183
+ name: 'Mento Dollar',
175
184
  decimals: 18,
176
185
  },
177
186
  {
178
- address: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
179
- symbol: TokenSymbol.BRLm,
180
- name: 'Mento Brazilian Real',
187
+ address: '0x6285De9DA7C1d329C0451628638908915002d9d1',
188
+ symbol: TokenSymbol.axlUSDC,
189
+ name: 'Mento Mock axlUSDC',
181
190
  decimals: 18,
182
191
  },
183
192
  {
184
- address: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
185
- symbol: TokenSymbol.XOFm,
186
- name: 'Mento West African CFA franc',
187
- decimals: 18,
193
+ address: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
194
+ symbol: TokenSymbol.USDC,
195
+ name: 'USDC',
196
+ decimals: 6,
188
197
  },
189
198
  {
190
- address: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
191
- symbol: TokenSymbol.KESm,
192
- name: 'Mento Kenyan Shilling',
193
- decimals: 18,
199
+ address: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
200
+ symbol: TokenSymbol.USD_,
201
+ name: 'Tether USD',
202
+ decimals: 6,
194
203
  },
195
204
  {
196
205
  address: '0x0352976d940a2C3FBa0C3623198947Ee1d17869E',
@@ -199,27 +208,15 @@ exports.cachedTokens = {
199
208
  decimals: 18,
200
209
  },
201
210
  {
202
- address: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
203
- symbol: TokenSymbol.COPm,
204
- name: 'Mento Colombian Peso',
205
- decimals: 18,
206
- },
207
- {
208
- address: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
209
- symbol: TokenSymbol.GHSm,
210
- name: 'Mento Ghanaian Cedi',
211
- decimals: 18,
212
- },
213
- {
214
- address: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
215
- symbol: TokenSymbol.GBPm,
216
- name: 'Mento British Pound',
211
+ address: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
212
+ symbol: TokenSymbol.XOFm,
213
+ name: 'Mento West African CFA franc',
217
214
  decimals: 18,
218
215
  },
219
216
  {
220
- address: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
221
- symbol: TokenSymbol.ZARm,
222
- name: 'Mento South African Rand',
217
+ address: '0x5873Faeb42F3563dcD77F0fbbdA818E6d6DA3139',
218
+ symbol: TokenSymbol.AUDm,
219
+ name: 'Mento Australian Dollar',
223
220
  decimals: 18,
224
221
  },
225
222
  {
@@ -229,9 +226,9 @@ exports.cachedTokens = {
229
226
  decimals: 18,
230
227
  },
231
228
  {
232
- address: '0x5873Faeb42F3563dcD77F0fbbdA818E6d6DA3139',
233
- symbol: TokenSymbol.AUDm,
234
- name: 'Mento Australian Dollar',
229
+ address: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
230
+ symbol: TokenSymbol.ZARm,
231
+ name: 'Mento South African Rand',
235
232
  decimals: 18,
236
233
  },
237
234
  {
@@ -247,40 +244,34 @@ exports.cachedTokens = {
247
244
  decimals: 18,
248
245
  },
249
246
  {
250
- address: '0x3d5ae86F34E2a82771496D140daFAEf3789dF888',
251
- symbol: TokenSymbol.NGNm,
252
- name: 'Mento Nigerian Naira',
247
+ address: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
248
+ symbol: TokenSymbol.COPm,
249
+ name: 'Mento Colombian Peso',
253
250
  decimals: 18,
254
251
  },
255
252
  {
256
- address: '0x6285De9DA7C1d329C0451628638908915002d9d1',
257
- symbol: TokenSymbol.axlUSDC,
258
- name: 'Mento Mock axlUSDC',
253
+ address: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
254
+ symbol: TokenSymbol.BRLm,
255
+ name: 'Mento Brazilian Real',
259
256
  decimals: 18,
260
257
  },
261
258
  {
262
- address: '0x471EcE3750Da237f93B8E339c536989b8978a438',
263
- symbol: TokenSymbol.CELO,
264
- name: 'Celo native asset',
259
+ address: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
260
+ symbol: TokenSymbol.GHSm,
261
+ name: 'Mento Ghanaian Cedi',
265
262
  decimals: 18,
266
263
  },
267
264
  {
268
- address: '0x9883d788d40F1C7595a780ed881Ea833C7743B4B',
269
- symbol: TokenSymbol.axlEUROC,
270
- name: 'Mento Mock axlEUROC',
265
+ address: '0x3d5ae86F34E2a82771496D140daFAEf3789dF888',
266
+ symbol: TokenSymbol.NGNm,
267
+ name: 'Mento Nigerian Naira',
271
268
  decimals: 18,
272
269
  },
273
270
  {
274
- address: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
275
- symbol: TokenSymbol.USDC,
276
- name: 'USDC',
277
- decimals: 6,
278
- },
279
- {
280
- address: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
281
- symbol: TokenSymbol.USD_,
282
- name: 'Tether USD',
283
- decimals: 6,
271
+ address: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
272
+ symbol: TokenSymbol.KESm,
273
+ name: 'Mento Kenyan Shilling',
274
+ decimals: 18,
284
275
  }
285
276
  ],
286
277
  };
@@ -289,49 +280,50 @@ exports.cachedTokens = {
289
280
  * Useful for quickly looking up a token address by its symbol on a specific chain
290
281
  */
291
282
  exports.TOKEN_ADDRESSES_BY_CHAIN = {
283
+ 143: {},
284
+ 10143: {
285
+ [TokenSymbol.GBPm]: '0x04de554E875c9797dC4ceBd834A9e99fa8fD5Df9',
286
+ [TokenSymbol.USDm]: '0x5eCc03111ad2A78F981A108759bc73BAE2AB31bc',
287
+ [TokenSymbol.USDC]: '0x534b2f3A21130d7a60830c2Df862319e593943A3',
288
+ [TokenSymbol.AUSD]: '0x502E67D3fE9302A5e4Ec1CFCDdbD6F34F9B9484B',
289
+ },
292
290
  42220: {
291
+ [TokenSymbol.GBPm]: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
293
292
  [TokenSymbol.USDm]: '0x765DE816845861e75A25fCA122bb6898B8B1282a',
294
- [TokenSymbol.EURm]: '0xD8763CBa276a3738E6DE85b4b3bF5FDed6D6cA73',
295
- [TokenSymbol.BRLm]: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
296
- [TokenSymbol.XOFm]: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
297
- [TokenSymbol.KESm]: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
298
- [TokenSymbol.PHPm]: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
299
- [TokenSymbol.COPm]: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
293
+ [TokenSymbol.axlUSDC]: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
294
+ [TokenSymbol.USDC]: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
295
+ [TokenSymbol.USD_]: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
300
296
  [TokenSymbol.GHSm]: '0xfAeA5F3404bbA20D3cc2f8C4B0A888F55a3c7313',
301
- [TokenSymbol.GBPm]: '0xCCF663b1fF11028f0b19058d0f7B674004a40746',
302
297
  [TokenSymbol.ZARm]: '0x4c35853A3B4e647fD266f4de678dCc8fEC410BF6',
303
- [TokenSymbol.CADm]: '0xff4Ab19391af240c311c54200a492233052B6325',
304
298
  [TokenSymbol.AUDm]: '0x7175504C455076F15c04A2F90a8e352281F492F9',
305
299
  [TokenSymbol.CHFm]: '0xb55a79F398E759E43C95b979163f30eC87Ee131D',
306
300
  [TokenSymbol.NGNm]: '0xE2702Bd97ee33c88c8f6f92DA3B733608aa76F71',
301
+ [TokenSymbol.KESm]: '0x456a3D042C0DbD3db53D5489e98dFb038553B0d0',
302
+ [TokenSymbol.CADm]: '0xff4Ab19391af240c311c54200a492233052B6325',
303
+ [TokenSymbol.PHPm]: '0x105d4A9306D2E55a71d2Eb95B81553AE1dC20d7B',
307
304
  [TokenSymbol.JPYm]: '0xc45eCF20f3CD864B32D9794d6f76814aE8892e20',
308
- [TokenSymbol.CELO]: '0x471EcE3750Da237f93B8E339c536989b8978a438',
309
- [TokenSymbol.axlEUROC]: '0x061cc5a2C863E0C1Cb404006D559dB18A34C762d',
310
- [TokenSymbol.USDC]: '0xcebA9300f2b948710d2653dD7B07f33A8B32118C',
311
- [TokenSymbol.axlUSDC]: '0xEB466342C4d449BC9f53A865D5Cb90586f405215',
312
- [TokenSymbol.USD_]: '0x48065fbBE25f71C9282ddf5e1cD6D6A887483D5e',
305
+ [TokenSymbol.COPm]: '0x8A567e2aE79CA692Bd748aB832081C45de4041eA',
306
+ [TokenSymbol.BRLm]: '0xe8537a3d056DA446677B9E9d6c5dB704EaAb4787',
307
+ [TokenSymbol.XOFm]: '0x73F93dcc49cB8A239e2032663e9475dd5ef29A08',
313
308
  },
314
309
  11142220: {
310
+ [TokenSymbol.GBPm]: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
315
311
  [TokenSymbol.USDm]: '0xdE9e4C3ce781b4bA68120d6261cbad65ce0aB00b',
316
- [TokenSymbol.EURm]: '0xA99dC247d6b7B2E3ab48a1fEE101b83cD6aCd82a',
317
- [TokenSymbol.BRLm]: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
318
- [TokenSymbol.XOFm]: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
319
- [TokenSymbol.KESm]: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
312
+ [TokenSymbol.axlUSDC]: '0x6285De9DA7C1d329C0451628638908915002d9d1',
313
+ [TokenSymbol.USDC]: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
314
+ [TokenSymbol.USD_]: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
320
315
  [TokenSymbol.PHPm]: '0x0352976d940a2C3FBa0C3623198947Ee1d17869E',
321
- [TokenSymbol.COPm]: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
322
- [TokenSymbol.GHSm]: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
323
- [TokenSymbol.GBPm]: '0x85F5181Abdbf0e1814Fc4358582Ae07b8eBA3aF3',
324
- [TokenSymbol.ZARm]: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
325
- [TokenSymbol.CADm]: '0xF151c9a13b78C84f93f50B8b3bC689fedc134F60',
316
+ [TokenSymbol.XOFm]: '0x5505b70207aE3B826c1A7607F19F3Bf73444A082',
326
317
  [TokenSymbol.AUDm]: '0x5873Faeb42F3563dcD77F0fbbdA818E6d6DA3139',
318
+ [TokenSymbol.CADm]: '0xF151c9a13b78C84f93f50B8b3bC689fedc134F60',
319
+ [TokenSymbol.ZARm]: '0x10CCfB235b0E1Ed394bACE4560C3ed016697687e',
327
320
  [TokenSymbol.CHFm]: '0x284E9b7B623eAE866914b7FA0eB720C2Bb3C2980',
328
321
  [TokenSymbol.JPYm]: '0x85Bee67D435A39f7467a8a9DE34a5B73D25Df426',
322
+ [TokenSymbol.COPm]: '0x5F8d55c3627d2dc0a2B4afa798f877242F382F67',
323
+ [TokenSymbol.BRLm]: '0x2294298942fdc79417DE9E0D740A4957E0e7783a',
324
+ [TokenSymbol.GHSm]: '0x5e94B8C872bD47BC4255E60ECBF44D5E66e7401C',
329
325
  [TokenSymbol.NGNm]: '0x3d5ae86F34E2a82771496D140daFAEf3789dF888',
330
- [TokenSymbol.axlUSDC]: '0x6285De9DA7C1d329C0451628638908915002d9d1',
331
- [TokenSymbol.CELO]: '0x471EcE3750Da237f93B8E339c536989b8978a438',
332
- [TokenSymbol.axlEUROC]: '0x9883d788d40F1C7595a780ed881Ea833C7743B4B',
333
- [TokenSymbol.USDC]: '0x01C5C0122039549AD1493B8220cABEdD739BC44E',
334
- [TokenSymbol.USD_]: '0xd077A400968890Eacc75cdc901F0356c943e4fDb',
326
+ [TokenSymbol.KESm]: '0xC7e4635651E3e3Af82b61d3E23c159438daE3BbF',
335
327
  },
336
328
  };
337
329
  /**
@@ -1,2 +1,3 @@
1
1
  export declare const RESERVE_ABI: any;
2
+ export declare const RESERVE_V2_ABI: any;
2
3
  //# sourceMappingURL=reserve.d.ts.map
@@ -1,10 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.RESERVE_ABI = void 0;
3
+ exports.RESERVE_V2_ABI = exports.RESERVE_ABI = void 0;
4
4
  const viem_1 = require("viem");
5
+ // Legacy Reserve (Celo)
5
6
  exports.RESERVE_ABI = (0, viem_1.parseAbi)([
6
7
  'function getTokens() view returns (address[])',
7
8
  'function isToken(address) view returns (bool)',
8
9
  'function isCollateralAsset(address) view returns (bool)',
9
10
  ]);
11
+ // ReserveV2 (Monad)
12
+ exports.RESERVE_V2_ABI = (0, viem_1.parseAbi)([
13
+ 'function getStableAssets() view returns (address[])',
14
+ 'function getCollateralAssets() view returns (address[])',
15
+ 'function isStableAsset(address) view returns (bool)',
16
+ 'function isCollateralAsset(address) view returns (bool)',
17
+ ]);
10
18
  //# sourceMappingURL=reserve.js.map
@@ -2,6 +2,11 @@ import { ChainId } from './chainId';
2
2
  import { ContractAddresses, ContractAddressMap } from '../types';
3
3
  export declare const addresses: ContractAddressMap;
4
4
  export type Identifier = keyof ContractAddresses;
5
+ /**
6
+ * Get the address of a contract for a given chain, returning undefined if not found.
7
+ * Use this when the contract may not be deployed on the target chain.
8
+ */
9
+ export declare function tryGetContractAddress(chainId: ChainId, contractName: Identifier): string | undefined;
5
10
  /**
6
11
  * Get the address of a contract for a given chain
7
12
  * @param chainId - The chain ID
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.addresses = void 0;
4
+ exports.tryGetContractAddress = tryGetContractAddress;
4
5
  exports.getContractAddress = getContractAddress;
5
6
  const chainId_1 = require("./chainId");
6
7
  exports.addresses = {
@@ -33,6 +34,18 @@ exports.addresses = {
33
34
  ReserveLiquidityStrategy: '0xa0fB8b16ce6AF3634fF9F3f4F40E49E1C1ae4f0B',
34
35
  CDPLiquidityStrategy: '0x4e78BD9565341EAbe99cDC024acB044d9BDcB985',
35
36
  },
37
+ [chainId_1.ChainId.MONAD_TESTNET]: {
38
+ BreakerBox: '0x88869E30609D2C0E4032463D713328C6f541878e',
39
+ MedianDeltaBreaker: '0xf923C884F319b8866F67C5719A80E5cB4D0FAF2c',
40
+ SortedOracles: '0x85ed9ac57827132B8F60938F3165BC139E1F53cd',
41
+ ValueDeltaBreaker: '0xbbD0D093F5F11D16D4456FBd6229c9a3b70B8Aaf',
42
+ Reserve: '0xbCdc1D0b92DfceEaa0FcD0a0D53355F4bF1DB8a7',
43
+ StableToken: '0x5eCc03111ad2A78F981A108759bc73BAE2AB31bc', // USDm
44
+ FPMMFactory: '0x353ED52bF8482027C0e0b9e3c0e5d96A9F680980',
45
+ Router: '0xcf6cD45210b3ffE3cA28379C4683F1e60D0C2CCd',
46
+ ReserveLiquidityStrategy: '0x734bb3251Ec3f1A83f8f2A8609bcEF649D54EbF8',
47
+ },
48
+ [chainId_1.ChainId.MONAD]: {},
36
49
  [chainId_1.ChainId.CELO_SEPOLIA]: {
37
50
  // Oracles & Breakers
38
51
  BreakerBox: '0x578bD46003B9D3fd4c3C3f47c98B329562a6a1dE',
@@ -60,6 +73,17 @@ exports.addresses = {
60
73
  CDPLiquidityStrategy: '0x065AE7D4e207C8f4dca112D0B79E668cc7e93e03',
61
74
  },
62
75
  };
76
+ /**
77
+ * Get the address of a contract for a given chain, returning undefined if not found.
78
+ * Use this when the contract may not be deployed on the target chain.
79
+ */
80
+ function tryGetContractAddress(chainId, contractName) {
81
+ const addressesForChain = exports.addresses[chainId];
82
+ if (!addressesForChain) {
83
+ return undefined;
84
+ }
85
+ return addressesForChain[contractName];
86
+ }
63
87
  /**
64
88
  * Get the address of a contract for a given chain
65
89
  * @param chainId - The chain ID
@@ -68,11 +92,7 @@ exports.addresses = {
68
92
  * @throws Error if the address is not found for the given chain
69
93
  */
70
94
  function getContractAddress(chainId, contractName) {
71
- const addressesForChain = exports.addresses[chainId];
72
- if (!addressesForChain) {
73
- throw new Error(`No addresses found for chain ID ${chainId}`);
74
- }
75
- const address = addressesForChain[contractName];
95
+ const address = tryGetContractAddress(chainId, contractName);
76
96
  if (!address) {
77
97
  throw new Error(`Address not found for contract ${contractName} on chain ID ${chainId}`);
78
98
  }
@@ -1,5 +1,7 @@
1
1
  export declare enum ChainId {
2
2
  CELO = 42220,
3
- CELO_SEPOLIA = 11142220
3
+ CELO_SEPOLIA = 11142220,
4
+ MONAD_TESTNET = 10143,
5
+ MONAD = 143
4
6
  }
5
7
  //# sourceMappingURL=chainId.d.ts.map
@@ -5,5 +5,7 @@ var ChainId;
5
5
  (function (ChainId) {
6
6
  ChainId[ChainId["CELO"] = 42220] = "CELO";
7
7
  ChainId[ChainId["CELO_SEPOLIA"] = 11142220] = "CELO_SEPOLIA";
8
+ ChainId[ChainId["MONAD_TESTNET"] = 10143] = "MONAD_TESTNET";
9
+ ChainId[ChainId["MONAD"] = 143] = "MONAD";
8
10
  })(ChainId || (exports.ChainId = ChainId = {}));
9
11
  //# sourceMappingURL=chainId.js.map
@@ -110,10 +110,8 @@ export interface FPMMPoolDetails extends Pool {
110
110
  reserve1: bigint;
111
111
  /** Block timestamp of last reserve update */
112
112
  blockTimestampLast: bigint;
113
- /** Pricing and oracle data (null when unavailable see pricingUnavailableReason) */
113
+ /** Pricing and oracle data (null when FX market is closed) */
114
114
  pricing: FPMMPricing | null;
115
- /** Reason pricing data is unavailable, or null when pricing is present */
116
- pricingUnavailableReason: string | null;
117
115
  /** Fee configuration */
118
116
  fees: FPMMFees;
119
117
  /** Rebalancing state */
@@ -0,0 +1,45 @@
1
+ export interface ContractCallOptions {
2
+ address: string;
3
+ abi: string[] | unknown[];
4
+ functionName: string;
5
+ args?: unknown[];
6
+ }
7
+ /**
8
+ * Contract write options for building call parameters
9
+ *
10
+ * Configuration for building transaction call parameters for write operations.
11
+ * These parameters can be used by consumers to execute transactions themselves.
12
+ */
13
+ export interface ContractWriteOptions extends ContractCallOptions {
14
+ /**
15
+ * Optional gas limit override
16
+ * If not provided, will be estimated automatically
17
+ */
18
+ gasLimit?: bigint;
19
+ /**
20
+ * Transaction value in wei
21
+ * For payable functions only
22
+ */
23
+ value?: bigint;
24
+ }
25
+ /**
26
+ * Call parameters for executing a contract transaction
27
+ *
28
+ * Contains all the data needed to execute a contract call.
29
+ * Consumers can use these parameters with their own wallet/signer to execute transactions.
30
+ */
31
+ export interface CallParams {
32
+ /**
33
+ * Contract address to call
34
+ */
35
+ to: string;
36
+ /**
37
+ * Encoded function call data (hex string)
38
+ */
39
+ data: string;
40
+ /**
41
+ * Transaction value in wei (hex string with 0x prefix)
42
+ */
43
+ value: string;
44
+ }
45
+ //# sourceMappingURL=provider.d.ts.map
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=provider.js.map