@wtflabs/x402 0.0.1-beta.0

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 (96) hide show
  1. package/README.md +60 -0
  2. package/dist/cjs/client/index.d.ts +64 -0
  3. package/dist/cjs/client/index.js +832 -0
  4. package/dist/cjs/client/index.js.map +1 -0
  5. package/dist/cjs/config-CFBSAuxW.d.ts +10 -0
  6. package/dist/cjs/config-Dfuvno71.d.ts +19 -0
  7. package/dist/cjs/facilitator/index.d.ts +42 -0
  8. package/dist/cjs/facilitator/index.js +2574 -0
  9. package/dist/cjs/facilitator/index.js.map +1 -0
  10. package/dist/cjs/index.d.ts +16 -0
  11. package/dist/cjs/index.js +2974 -0
  12. package/dist/cjs/index.js.map +1 -0
  13. package/dist/cjs/middleware-6_1ApcJn.d.ts +93 -0
  14. package/dist/cjs/middleware-B_ewwsQp.d.ts +93 -0
  15. package/dist/cjs/middleware-Brgsx32F.d.ts +93 -0
  16. package/dist/cjs/middleware-BwfW7mAs.d.ts +93 -0
  17. package/dist/cjs/middleware-CQb61c1k.d.ts +93 -0
  18. package/dist/cjs/middleware-DB9lqy9f.d.ts +93 -0
  19. package/dist/cjs/middleware-DcHctwQV.d.ts +93 -0
  20. package/dist/cjs/middleware-De0jD3Bp.d.ts +93 -0
  21. package/dist/cjs/middleware-HoFOmpgv.d.ts +93 -0
  22. package/dist/cjs/middleware-Y8AiAfYw.d.ts +93 -0
  23. package/dist/cjs/middleware-pnres9YM.d.ts +93 -0
  24. package/dist/cjs/network-FrFmmiyj.d.ts +11 -0
  25. package/dist/cjs/network-RtNddYQk.d.ts +11 -0
  26. package/dist/cjs/paywall/index.d.ts +30 -0
  27. package/dist/cjs/paywall/index.js +131 -0
  28. package/dist/cjs/paywall/index.js.map +1 -0
  29. package/dist/cjs/rpc-BMvnNNHd.d.ts +35 -0
  30. package/dist/cjs/rpc-Ca8eHCWz.d.ts +35 -0
  31. package/dist/cjs/schemes/index.d.ts +533 -0
  32. package/dist/cjs/schemes/index.js +3144 -0
  33. package/dist/cjs/schemes/index.js.map +1 -0
  34. package/dist/cjs/shared/evm/index.d.ts +71 -0
  35. package/dist/cjs/shared/evm/index.js +947 -0
  36. package/dist/cjs/shared/evm/index.js.map +1 -0
  37. package/dist/cjs/shared/index.d.ts +182 -0
  38. package/dist/cjs/shared/index.js +674 -0
  39. package/dist/cjs/shared/index.js.map +1 -0
  40. package/dist/cjs/types/index.d.ts +1515 -0
  41. package/dist/cjs/types/index.js +1645 -0
  42. package/dist/cjs/types/index.js.map +1 -0
  43. package/dist/cjs/verify/index.d.ts +7 -0
  44. package/dist/cjs/verify/index.js +438 -0
  45. package/dist/cjs/verify/index.js.map +1 -0
  46. package/dist/cjs/wallet-BRWfOM5D.d.ts +153 -0
  47. package/dist/cjs/wallet-BTqCm9Zp.d.ts +27 -0
  48. package/dist/cjs/wallet-BYRAGtOB.d.ts +153 -0
  49. package/dist/cjs/wallet-BmEtlgEf.d.ts +48 -0
  50. package/dist/cjs/wallet-CNOAmyZ6.d.ts +48 -0
  51. package/dist/cjs/wallet-CQ0Fe_M5.d.ts +88 -0
  52. package/dist/cjs/wallet-D1SoxFTw.d.ts +48 -0
  53. package/dist/cjs/wallet-SJ-hbjm9.d.ts +153 -0
  54. package/dist/cjs/wallet-SJKJpUgQ.d.ts +167 -0
  55. package/dist/cjs/wallet-ecnda4Aj.d.ts +48 -0
  56. package/dist/cjs/wallet-gP8Qoi-c.d.ts +74 -0
  57. package/dist/cjs/x402Specs-B7InXo2L.d.ts +1065 -0
  58. package/dist/cjs/x402Specs-BLH3j34O.d.ts +1696 -0
  59. package/dist/cjs/x402Specs-C7LipAZg.d.ts +1715 -0
  60. package/dist/cjs/x402Specs-CYq5tSY1.d.ts +1745 -0
  61. package/dist/cjs/x402Specs-CeajqonG.d.ts +1696 -0
  62. package/dist/cjs/x402Specs-qMujgEV5.d.ts +1715 -0
  63. package/dist/cjs/x402Specs-qUBCpcuz.d.ts +1715 -0
  64. package/dist/esm/chunk-34YNR4LY.mjs +106 -0
  65. package/dist/esm/chunk-34YNR4LY.mjs.map +1 -0
  66. package/dist/esm/chunk-57UEJN5U.mjs +1416 -0
  67. package/dist/esm/chunk-57UEJN5U.mjs.map +1 -0
  68. package/dist/esm/chunk-5LTKIVOA.mjs +858 -0
  69. package/dist/esm/chunk-5LTKIVOA.mjs.map +1 -0
  70. package/dist/esm/chunk-AQQR4PXH.mjs +80 -0
  71. package/dist/esm/chunk-AQQR4PXH.mjs.map +1 -0
  72. package/dist/esm/chunk-LGXWNXCO.mjs +76 -0
  73. package/dist/esm/chunk-LGXWNXCO.mjs.map +1 -0
  74. package/dist/esm/chunk-RX2JKK4O.mjs +349 -0
  75. package/dist/esm/chunk-RX2JKK4O.mjs.map +1 -0
  76. package/dist/esm/chunk-UCBE7FDY.mjs +1041 -0
  77. package/dist/esm/chunk-UCBE7FDY.mjs.map +1 -0
  78. package/dist/esm/client/index.mjs +17 -0
  79. package/dist/esm/client/index.mjs.map +1 -0
  80. package/dist/esm/facilitator/index.mjs +14 -0
  81. package/dist/esm/facilitator/index.mjs.map +1 -0
  82. package/dist/esm/index.mjs +28 -0
  83. package/dist/esm/index.mjs.map +1 -0
  84. package/dist/esm/paywall/index.mjs +46 -0
  85. package/dist/esm/paywall/index.mjs.map +1 -0
  86. package/dist/esm/schemes/index.mjs +16 -0
  87. package/dist/esm/schemes/index.mjs.map +1 -0
  88. package/dist/esm/shared/evm/index.mjs +20 -0
  89. package/dist/esm/shared/evm/index.mjs.map +1 -0
  90. package/dist/esm/shared/index.mjs +31 -0
  91. package/dist/esm/shared/index.mjs.map +1 -0
  92. package/dist/esm/types/index.mjs +87 -0
  93. package/dist/esm/types/index.mjs.map +1 -0
  94. package/dist/esm/verify/index.mjs +105 -0
  95. package/dist/esm/verify/index.mjs.map +1 -0
  96. package/package.json +148 -0
@@ -0,0 +1,858 @@
1
+ import {
2
+ config
3
+ } from "./chunk-AQQR4PXH.mjs";
4
+
5
+ // src/types/shared/evm/erc20PermitABI.ts
6
+ var usdcABI = [
7
+ {
8
+ anonymous: false,
9
+ inputs: [
10
+ {
11
+ indexed: true,
12
+ internalType: "address",
13
+ name: "owner",
14
+ type: "address"
15
+ },
16
+ {
17
+ indexed: true,
18
+ internalType: "address",
19
+ name: "spender",
20
+ type: "address"
21
+ },
22
+ {
23
+ indexed: false,
24
+ internalType: "uint256",
25
+ name: "value",
26
+ type: "uint256"
27
+ }
28
+ ],
29
+ name: "Approval",
30
+ type: "event"
31
+ },
32
+ {
33
+ anonymous: false,
34
+ inputs: [
35
+ {
36
+ indexed: true,
37
+ internalType: "address",
38
+ name: "authorizer",
39
+ type: "address"
40
+ },
41
+ {
42
+ indexed: true,
43
+ internalType: "bytes32",
44
+ name: "nonce",
45
+ type: "bytes32"
46
+ }
47
+ ],
48
+ name: "AuthorizationCanceled",
49
+ type: "event"
50
+ },
51
+ {
52
+ anonymous: false,
53
+ inputs: [
54
+ {
55
+ indexed: true,
56
+ internalType: "address",
57
+ name: "authorizer",
58
+ type: "address"
59
+ },
60
+ {
61
+ indexed: true,
62
+ internalType: "bytes32",
63
+ name: "nonce",
64
+ type: "bytes32"
65
+ }
66
+ ],
67
+ name: "AuthorizationUsed",
68
+ type: "event"
69
+ },
70
+ {
71
+ anonymous: false,
72
+ inputs: [
73
+ {
74
+ indexed: true,
75
+ internalType: "address",
76
+ name: "_account",
77
+ type: "address"
78
+ }
79
+ ],
80
+ name: "Blacklisted",
81
+ type: "event"
82
+ },
83
+ {
84
+ anonymous: false,
85
+ inputs: [
86
+ {
87
+ indexed: true,
88
+ internalType: "address",
89
+ name: "newBlacklister",
90
+ type: "address"
91
+ }
92
+ ],
93
+ name: "BlacklisterChanged",
94
+ type: "event"
95
+ },
96
+ {
97
+ anonymous: false,
98
+ inputs: [
99
+ {
100
+ indexed: true,
101
+ internalType: "address",
102
+ name: "burner",
103
+ type: "address"
104
+ },
105
+ {
106
+ indexed: false,
107
+ internalType: "uint256",
108
+ name: "amount",
109
+ type: "uint256"
110
+ }
111
+ ],
112
+ name: "Burn",
113
+ type: "event"
114
+ },
115
+ {
116
+ anonymous: false,
117
+ inputs: [
118
+ {
119
+ indexed: true,
120
+ internalType: "address",
121
+ name: "newMasterMinter",
122
+ type: "address"
123
+ }
124
+ ],
125
+ name: "MasterMinterChanged",
126
+ type: "event"
127
+ },
128
+ {
129
+ anonymous: false,
130
+ inputs: [
131
+ {
132
+ indexed: true,
133
+ internalType: "address",
134
+ name: "minter",
135
+ type: "address"
136
+ },
137
+ { indexed: true, internalType: "address", name: "to", type: "address" },
138
+ {
139
+ indexed: false,
140
+ internalType: "uint256",
141
+ name: "amount",
142
+ type: "uint256"
143
+ }
144
+ ],
145
+ name: "Mint",
146
+ type: "event"
147
+ },
148
+ {
149
+ anonymous: false,
150
+ inputs: [
151
+ {
152
+ indexed: true,
153
+ internalType: "address",
154
+ name: "minter",
155
+ type: "address"
156
+ },
157
+ {
158
+ indexed: false,
159
+ internalType: "uint256",
160
+ name: "minterAllowedAmount",
161
+ type: "uint256"
162
+ }
163
+ ],
164
+ name: "MinterConfigured",
165
+ type: "event"
166
+ },
167
+ {
168
+ anonymous: false,
169
+ inputs: [
170
+ {
171
+ indexed: true,
172
+ internalType: "address",
173
+ name: "oldMinter",
174
+ type: "address"
175
+ }
176
+ ],
177
+ name: "MinterRemoved",
178
+ type: "event"
179
+ },
180
+ {
181
+ anonymous: false,
182
+ inputs: [
183
+ {
184
+ indexed: false,
185
+ internalType: "address",
186
+ name: "previousOwner",
187
+ type: "address"
188
+ },
189
+ {
190
+ indexed: false,
191
+ internalType: "address",
192
+ name: "newOwner",
193
+ type: "address"
194
+ }
195
+ ],
196
+ name: "OwnershipTransferred",
197
+ type: "event"
198
+ },
199
+ { anonymous: false, inputs: [], name: "Pause", type: "event" },
200
+ {
201
+ anonymous: false,
202
+ inputs: [
203
+ {
204
+ indexed: true,
205
+ internalType: "address",
206
+ name: "newAddress",
207
+ type: "address"
208
+ }
209
+ ],
210
+ name: "PauserChanged",
211
+ type: "event"
212
+ },
213
+ {
214
+ anonymous: false,
215
+ inputs: [
216
+ {
217
+ indexed: true,
218
+ internalType: "address",
219
+ name: "newRescuer",
220
+ type: "address"
221
+ }
222
+ ],
223
+ name: "RescuerChanged",
224
+ type: "event"
225
+ },
226
+ {
227
+ anonymous: false,
228
+ inputs: [
229
+ { indexed: true, internalType: "address", name: "from", type: "address" },
230
+ { indexed: true, internalType: "address", name: "to", type: "address" },
231
+ {
232
+ indexed: false,
233
+ internalType: "uint256",
234
+ name: "value",
235
+ type: "uint256"
236
+ }
237
+ ],
238
+ name: "Transfer",
239
+ type: "event"
240
+ },
241
+ {
242
+ anonymous: false,
243
+ inputs: [
244
+ {
245
+ indexed: true,
246
+ internalType: "address",
247
+ name: "_account",
248
+ type: "address"
249
+ }
250
+ ],
251
+ name: "UnBlacklisted",
252
+ type: "event"
253
+ },
254
+ { anonymous: false, inputs: [], name: "Unpause", type: "event" },
255
+ {
256
+ inputs: [],
257
+ name: "CANCEL_AUTHORIZATION_TYPEHASH",
258
+ outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
259
+ stateMutability: "view",
260
+ type: "function"
261
+ },
262
+ {
263
+ inputs: [],
264
+ name: "DOMAIN_SEPARATOR",
265
+ outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
266
+ stateMutability: "view",
267
+ type: "function"
268
+ },
269
+ {
270
+ inputs: [],
271
+ name: "PERMIT_TYPEHASH",
272
+ outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
273
+ stateMutability: "view",
274
+ type: "function"
275
+ },
276
+ {
277
+ inputs: [],
278
+ name: "RECEIVE_WITH_AUTHORIZATION_TYPEHASH",
279
+ outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
280
+ stateMutability: "view",
281
+ type: "function"
282
+ },
283
+ {
284
+ inputs: [],
285
+ name: "TRANSFER_WITH_AUTHORIZATION_TYPEHASH",
286
+ outputs: [{ internalType: "bytes32", name: "", type: "bytes32" }],
287
+ stateMutability: "view",
288
+ type: "function"
289
+ },
290
+ {
291
+ inputs: [
292
+ { internalType: "address", name: "owner", type: "address" },
293
+ { internalType: "address", name: "spender", type: "address" }
294
+ ],
295
+ name: "allowance",
296
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
297
+ stateMutability: "view",
298
+ type: "function"
299
+ },
300
+ {
301
+ inputs: [
302
+ { internalType: "address", name: "spender", type: "address" },
303
+ { internalType: "uint256", name: "value", type: "uint256" }
304
+ ],
305
+ name: "approve",
306
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
307
+ stateMutability: "nonpayable",
308
+ type: "function"
309
+ },
310
+ {
311
+ inputs: [
312
+ { internalType: "address", name: "authorizer", type: "address" },
313
+ { internalType: "bytes32", name: "nonce", type: "bytes32" }
314
+ ],
315
+ name: "authorizationState",
316
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
317
+ stateMutability: "view",
318
+ type: "function"
319
+ },
320
+ {
321
+ inputs: [{ internalType: "address", name: "account", type: "address" }],
322
+ name: "balanceOf",
323
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
324
+ stateMutability: "view",
325
+ type: "function"
326
+ },
327
+ {
328
+ inputs: [{ internalType: "address", name: "_account", type: "address" }],
329
+ name: "blacklist",
330
+ outputs: [],
331
+ stateMutability: "nonpayable",
332
+ type: "function"
333
+ },
334
+ {
335
+ inputs: [],
336
+ name: "blacklister",
337
+ outputs: [{ internalType: "address", name: "", type: "address" }],
338
+ stateMutability: "view",
339
+ type: "function"
340
+ },
341
+ {
342
+ inputs: [{ internalType: "uint256", name: "_amount", type: "uint256" }],
343
+ name: "burn",
344
+ outputs: [],
345
+ stateMutability: "nonpayable",
346
+ type: "function"
347
+ },
348
+ {
349
+ inputs: [
350
+ { internalType: "address", name: "authorizer", type: "address" },
351
+ { internalType: "bytes32", name: "nonce", type: "bytes32" },
352
+ { internalType: "uint8", name: "v", type: "uint8" },
353
+ { internalType: "bytes32", name: "r", type: "bytes32" },
354
+ { internalType: "bytes32", name: "s", type: "bytes32" }
355
+ ],
356
+ name: "cancelAuthorization",
357
+ outputs: [],
358
+ stateMutability: "nonpayable",
359
+ type: "function"
360
+ },
361
+ {
362
+ inputs: [
363
+ { internalType: "address", name: "authorizer", type: "address" },
364
+ { internalType: "bytes32", name: "nonce", type: "bytes32" },
365
+ { internalType: "bytes", name: "signature", type: "bytes" }
366
+ ],
367
+ name: "cancelAuthorization",
368
+ outputs: [],
369
+ stateMutability: "nonpayable",
370
+ type: "function"
371
+ },
372
+ {
373
+ inputs: [
374
+ { internalType: "address", name: "minter", type: "address" },
375
+ { internalType: "uint256", name: "minterAllowedAmount", type: "uint256" }
376
+ ],
377
+ name: "configureMinter",
378
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
379
+ stateMutability: "nonpayable",
380
+ type: "function"
381
+ },
382
+ {
383
+ inputs: [],
384
+ name: "currency",
385
+ outputs: [{ internalType: "string", name: "", type: "string" }],
386
+ stateMutability: "view",
387
+ type: "function"
388
+ },
389
+ {
390
+ inputs: [],
391
+ name: "decimals",
392
+ outputs: [{ internalType: "uint8", name: "", type: "uint8" }],
393
+ stateMutability: "view",
394
+ type: "function"
395
+ },
396
+ {
397
+ inputs: [
398
+ { internalType: "address", name: "spender", type: "address" },
399
+ { internalType: "uint256", name: "decrement", type: "uint256" }
400
+ ],
401
+ name: "decreaseAllowance",
402
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
403
+ stateMutability: "nonpayable",
404
+ type: "function"
405
+ },
406
+ {
407
+ inputs: [
408
+ { internalType: "address", name: "spender", type: "address" },
409
+ { internalType: "uint256", name: "increment", type: "uint256" }
410
+ ],
411
+ name: "increaseAllowance",
412
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
413
+ stateMutability: "nonpayable",
414
+ type: "function"
415
+ },
416
+ {
417
+ inputs: [
418
+ { internalType: "string", name: "tokenName", type: "string" },
419
+ { internalType: "string", name: "tokenSymbol", type: "string" },
420
+ { internalType: "string", name: "tokenCurrency", type: "string" },
421
+ { internalType: "uint8", name: "tokenDecimals", type: "uint8" },
422
+ { internalType: "address", name: "newMasterMinter", type: "address" },
423
+ { internalType: "address", name: "newPauser", type: "address" },
424
+ { internalType: "address", name: "newBlacklister", type: "address" },
425
+ { internalType: "address", name: "newOwner", type: "address" }
426
+ ],
427
+ name: "initialize",
428
+ outputs: [],
429
+ stateMutability: "nonpayable",
430
+ type: "function"
431
+ },
432
+ {
433
+ inputs: [{ internalType: "string", name: "newName", type: "string" }],
434
+ name: "initializeV2",
435
+ outputs: [],
436
+ stateMutability: "nonpayable",
437
+ type: "function"
438
+ },
439
+ {
440
+ inputs: [{ internalType: "address", name: "lostAndFound", type: "address" }],
441
+ name: "initializeV2_1",
442
+ outputs: [],
443
+ stateMutability: "nonpayable",
444
+ type: "function"
445
+ },
446
+ {
447
+ inputs: [
448
+ {
449
+ internalType: "address[]",
450
+ name: "accountsToBlacklist",
451
+ type: "address[]"
452
+ },
453
+ { internalType: "string", name: "newSymbol", type: "string" }
454
+ ],
455
+ name: "initializeV2_2",
456
+ outputs: [],
457
+ stateMutability: "nonpayable",
458
+ type: "function"
459
+ },
460
+ {
461
+ inputs: [{ internalType: "address", name: "_account", type: "address" }],
462
+ name: "isBlacklisted",
463
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
464
+ stateMutability: "view",
465
+ type: "function"
466
+ },
467
+ {
468
+ inputs: [{ internalType: "address", name: "account", type: "address" }],
469
+ name: "isMinter",
470
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
471
+ stateMutability: "view",
472
+ type: "function"
473
+ },
474
+ {
475
+ inputs: [],
476
+ name: "masterMinter",
477
+ outputs: [{ internalType: "address", name: "", type: "address" }],
478
+ stateMutability: "view",
479
+ type: "function"
480
+ },
481
+ {
482
+ inputs: [
483
+ { internalType: "address", name: "_to", type: "address" },
484
+ { internalType: "uint256", name: "_amount", type: "uint256" }
485
+ ],
486
+ name: "mint",
487
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
488
+ stateMutability: "nonpayable",
489
+ type: "function"
490
+ },
491
+ {
492
+ inputs: [{ internalType: "address", name: "minter", type: "address" }],
493
+ name: "minterAllowance",
494
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
495
+ stateMutability: "view",
496
+ type: "function"
497
+ },
498
+ {
499
+ inputs: [],
500
+ name: "name",
501
+ outputs: [{ internalType: "string", name: "", type: "string" }],
502
+ stateMutability: "view",
503
+ type: "function"
504
+ },
505
+ {
506
+ inputs: [{ internalType: "address", name: "owner", type: "address" }],
507
+ name: "nonces",
508
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
509
+ stateMutability: "view",
510
+ type: "function"
511
+ },
512
+ {
513
+ inputs: [],
514
+ name: "owner",
515
+ outputs: [{ internalType: "address", name: "", type: "address" }],
516
+ stateMutability: "view",
517
+ type: "function"
518
+ },
519
+ {
520
+ inputs: [],
521
+ name: "pause",
522
+ outputs: [],
523
+ stateMutability: "nonpayable",
524
+ type: "function"
525
+ },
526
+ {
527
+ inputs: [],
528
+ name: "paused",
529
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
530
+ stateMutability: "view",
531
+ type: "function"
532
+ },
533
+ {
534
+ inputs: [],
535
+ name: "pauser",
536
+ outputs: [{ internalType: "address", name: "", type: "address" }],
537
+ stateMutability: "view",
538
+ type: "function"
539
+ },
540
+ {
541
+ inputs: [
542
+ { internalType: "address", name: "owner", type: "address" },
543
+ { internalType: "address", name: "spender", type: "address" },
544
+ { internalType: "uint256", name: "value", type: "uint256" },
545
+ { internalType: "uint256", name: "deadline", type: "uint256" },
546
+ { internalType: "bytes", name: "signature", type: "bytes" }
547
+ ],
548
+ name: "permit",
549
+ outputs: [],
550
+ stateMutability: "nonpayable",
551
+ type: "function"
552
+ },
553
+ {
554
+ inputs: [
555
+ { internalType: "address", name: "owner", type: "address" },
556
+ { internalType: "address", name: "spender", type: "address" },
557
+ { internalType: "uint256", name: "value", type: "uint256" },
558
+ { internalType: "uint256", name: "deadline", type: "uint256" },
559
+ { internalType: "uint8", name: "v", type: "uint8" },
560
+ { internalType: "bytes32", name: "r", type: "bytes32" },
561
+ { internalType: "bytes32", name: "s", type: "bytes32" }
562
+ ],
563
+ name: "permit",
564
+ outputs: [],
565
+ stateMutability: "nonpayable",
566
+ type: "function"
567
+ },
568
+ {
569
+ inputs: [
570
+ { internalType: "address", name: "from", type: "address" },
571
+ { internalType: "address", name: "to", type: "address" },
572
+ { internalType: "uint256", name: "value", type: "uint256" },
573
+ { internalType: "uint256", name: "validAfter", type: "uint256" },
574
+ { internalType: "uint256", name: "validBefore", type: "uint256" },
575
+ { internalType: "bytes32", name: "nonce", type: "bytes32" },
576
+ { internalType: "bytes", name: "signature", type: "bytes" }
577
+ ],
578
+ name: "receiveWithAuthorization",
579
+ outputs: [],
580
+ stateMutability: "nonpayable",
581
+ type: "function"
582
+ },
583
+ {
584
+ inputs: [
585
+ { internalType: "address", name: "from", type: "address" },
586
+ { internalType: "address", name: "to", type: "address" },
587
+ { internalType: "uint256", name: "value", type: "uint256" },
588
+ { internalType: "uint256", name: "validAfter", type: "uint256" },
589
+ { internalType: "uint256", name: "validBefore", type: "uint256" },
590
+ { internalType: "bytes32", name: "nonce", type: "bytes32" },
591
+ { internalType: "uint8", name: "v", type: "uint8" },
592
+ { internalType: "bytes32", name: "r", type: "bytes32" },
593
+ { internalType: "bytes32", name: "s", type: "bytes32" }
594
+ ],
595
+ name: "receiveWithAuthorization",
596
+ outputs: [],
597
+ stateMutability: "nonpayable",
598
+ type: "function"
599
+ },
600
+ {
601
+ inputs: [{ internalType: "address", name: "minter", type: "address" }],
602
+ name: "removeMinter",
603
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
604
+ stateMutability: "nonpayable",
605
+ type: "function"
606
+ },
607
+ {
608
+ inputs: [
609
+ {
610
+ internalType: "contract IERC20",
611
+ name: "tokenContract",
612
+ type: "address"
613
+ },
614
+ { internalType: "address", name: "to", type: "address" },
615
+ { internalType: "uint256", name: "amount", type: "uint256" }
616
+ ],
617
+ name: "rescueERC20",
618
+ outputs: [],
619
+ stateMutability: "nonpayable",
620
+ type: "function"
621
+ },
622
+ {
623
+ inputs: [],
624
+ name: "rescuer",
625
+ outputs: [{ internalType: "address", name: "", type: "address" }],
626
+ stateMutability: "view",
627
+ type: "function"
628
+ },
629
+ {
630
+ inputs: [],
631
+ name: "symbol",
632
+ outputs: [{ internalType: "string", name: "", type: "string" }],
633
+ stateMutability: "view",
634
+ type: "function"
635
+ },
636
+ {
637
+ inputs: [],
638
+ name: "totalSupply",
639
+ outputs: [{ internalType: "uint256", name: "", type: "uint256" }],
640
+ stateMutability: "view",
641
+ type: "function"
642
+ },
643
+ {
644
+ inputs: [
645
+ { internalType: "address", name: "to", type: "address" },
646
+ { internalType: "uint256", name: "value", type: "uint256" }
647
+ ],
648
+ name: "transfer",
649
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
650
+ stateMutability: "nonpayable",
651
+ type: "function"
652
+ },
653
+ {
654
+ inputs: [
655
+ { internalType: "address", name: "from", type: "address" },
656
+ { internalType: "address", name: "to", type: "address" },
657
+ { internalType: "uint256", name: "value", type: "uint256" }
658
+ ],
659
+ name: "transferFrom",
660
+ outputs: [{ internalType: "bool", name: "", type: "bool" }],
661
+ stateMutability: "nonpayable",
662
+ type: "function"
663
+ },
664
+ {
665
+ inputs: [{ internalType: "address", name: "newOwner", type: "address" }],
666
+ name: "transferOwnership",
667
+ outputs: [],
668
+ stateMutability: "nonpayable",
669
+ type: "function"
670
+ },
671
+ {
672
+ inputs: [
673
+ { internalType: "address", name: "from", type: "address" },
674
+ { internalType: "address", name: "to", type: "address" },
675
+ { internalType: "uint256", name: "value", type: "uint256" },
676
+ { internalType: "uint256", name: "validAfter", type: "uint256" },
677
+ { internalType: "uint256", name: "validBefore", type: "uint256" },
678
+ { internalType: "bytes32", name: "nonce", type: "bytes32" },
679
+ { internalType: "bytes", name: "signature", type: "bytes" }
680
+ ],
681
+ name: "transferWithAuthorization",
682
+ outputs: [],
683
+ stateMutability: "nonpayable",
684
+ type: "function"
685
+ },
686
+ {
687
+ inputs: [
688
+ { internalType: "address", name: "from", type: "address" },
689
+ { internalType: "address", name: "to", type: "address" },
690
+ { internalType: "uint256", name: "value", type: "uint256" },
691
+ { internalType: "uint256", name: "validAfter", type: "uint256" },
692
+ { internalType: "uint256", name: "validBefore", type: "uint256" },
693
+ { internalType: "bytes32", name: "nonce", type: "bytes32" },
694
+ { internalType: "uint8", name: "v", type: "uint8" },
695
+ { internalType: "bytes32", name: "r", type: "bytes32" },
696
+ { internalType: "bytes32", name: "s", type: "bytes32" }
697
+ ],
698
+ name: "transferWithAuthorization",
699
+ outputs: [],
700
+ stateMutability: "nonpayable",
701
+ type: "function"
702
+ },
703
+ {
704
+ inputs: [{ internalType: "address", name: "_account", type: "address" }],
705
+ name: "unBlacklist",
706
+ outputs: [],
707
+ stateMutability: "nonpayable",
708
+ type: "function"
709
+ },
710
+ {
711
+ inputs: [],
712
+ name: "unpause",
713
+ outputs: [],
714
+ stateMutability: "nonpayable",
715
+ type: "function"
716
+ },
717
+ {
718
+ inputs: [{ internalType: "address", name: "_newBlacklister", type: "address" }],
719
+ name: "updateBlacklister",
720
+ outputs: [],
721
+ stateMutability: "nonpayable",
722
+ type: "function"
723
+ },
724
+ {
725
+ inputs: [{ internalType: "address", name: "_newMasterMinter", type: "address" }],
726
+ name: "updateMasterMinter",
727
+ outputs: [],
728
+ stateMutability: "nonpayable",
729
+ type: "function"
730
+ },
731
+ {
732
+ inputs: [{ internalType: "address", name: "_newPauser", type: "address" }],
733
+ name: "updatePauser",
734
+ outputs: [],
735
+ stateMutability: "nonpayable",
736
+ type: "function"
737
+ },
738
+ {
739
+ inputs: [{ internalType: "address", name: "newRescuer", type: "address" }],
740
+ name: "updateRescuer",
741
+ outputs: [],
742
+ stateMutability: "nonpayable",
743
+ type: "function"
744
+ },
745
+ {
746
+ inputs: [],
747
+ name: "version",
748
+ outputs: [{ internalType: "string", name: "", type: "string" }],
749
+ stateMutability: "pure",
750
+ type: "function"
751
+ }
752
+ ];
753
+
754
+ // src/shared/evm/usdc.ts
755
+ function getUsdcAddress(client) {
756
+ return config[client.chain.id.toString()].usdcAddress;
757
+ }
758
+ function getUsdcAddressForChain(chainId) {
759
+ return config[chainId.toString()].usdcAddress;
760
+ }
761
+ function getUsdcChainConfigForChain(chainId) {
762
+ return config[chainId.toString()];
763
+ }
764
+ var versionCache = /* @__PURE__ */ new Map();
765
+ async function getVersion(client, tokenAddress) {
766
+ const address = tokenAddress ?? getUsdcAddress(client);
767
+ const cacheKey = `${client.chain.id}-${address.toLowerCase()}`;
768
+ if (versionCache.has(cacheKey)) {
769
+ return versionCache.get(cacheKey);
770
+ }
771
+ let version = "1";
772
+ try {
773
+ const eip712DomainABI = [
774
+ {
775
+ inputs: [],
776
+ name: "eip712Domain",
777
+ outputs: [
778
+ { name: "fields", type: "bytes1" },
779
+ { name: "name", type: "string" },
780
+ { name: "version", type: "string" },
781
+ { name: "chainId", type: "uint256" },
782
+ { name: "verifyingContract", type: "address" },
783
+ { name: "salt", type: "bytes32" },
784
+ { name: "extensions", type: "uint256[]" }
785
+ ],
786
+ stateMutability: "view",
787
+ type: "function"
788
+ }
789
+ ];
790
+ const result = await client.readContract({
791
+ address,
792
+ abi: eip712DomainABI,
793
+ functionName: "eip712Domain"
794
+ });
795
+ version = result[2];
796
+ } catch {
797
+ try {
798
+ const result = await client.readContract({
799
+ address,
800
+ abi: usdcABI,
801
+ functionName: "version"
802
+ });
803
+ version = result;
804
+ } catch {
805
+ console.warn(
806
+ `Neither eip712Domain() nor version() available for token ${address}, using default: ${version}`
807
+ );
808
+ }
809
+ }
810
+ versionCache.set(cacheKey, version);
811
+ return version;
812
+ }
813
+ async function getUSDCBalance(client, address) {
814
+ const chainId = client.chain.id;
815
+ const usdc = getUsdcChainConfigForChain(chainId);
816
+ if (!usdc) {
817
+ return 0n;
818
+ }
819
+ const balance = await client.readContract({
820
+ address: usdc.usdcAddress,
821
+ abi: usdcABI,
822
+ functionName: "balanceOf",
823
+ args: [address]
824
+ });
825
+ return balance;
826
+ }
827
+
828
+ // src/shared/evm/erc20.ts
829
+ async function getERC20Balance(client, erc20Address, address) {
830
+ const balance = await client.readContract({
831
+ address: erc20Address,
832
+ abi: usdcABI,
833
+ functionName: "balanceOf",
834
+ args: [address]
835
+ });
836
+ return balance;
837
+ }
838
+ async function getERC20Allowance(client, erc20Address, owner, spender) {
839
+ const allowance = await client.readContract({
840
+ address: erc20Address,
841
+ abi: usdcABI,
842
+ functionName: "allowance",
843
+ args: [owner, spender]
844
+ });
845
+ return allowance;
846
+ }
847
+
848
+ export {
849
+ usdcABI,
850
+ getUsdcAddress,
851
+ getUsdcAddressForChain,
852
+ getUsdcChainConfigForChain,
853
+ getVersion,
854
+ getUSDCBalance,
855
+ getERC20Balance,
856
+ getERC20Allowance
857
+ };
858
+ //# sourceMappingURL=chunk-5LTKIVOA.mjs.map