smail-sdk 0.0.0-stage → 0.1.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 (51) hide show
  1. package/README.md +235 -2
  2. package/dist/abi/bytecode.d.ts +13 -0
  3. package/dist/abi/bytecode.js +15 -0
  4. package/dist/abi/index.d.ts +8 -0
  5. package/dist/abi/index.js +11 -0
  6. package/dist/abi/privateSnail.d.ts +493 -0
  7. package/dist/abi/privateSnail.js +643 -0
  8. package/dist/abi/relayerNames.d.ts +54 -0
  9. package/dist/abi/relayerNames.js +74 -0
  10. package/dist/abi/relayerNetwork.d.ts +880 -0
  11. package/dist/abi/relayerNetwork.js +1140 -0
  12. package/dist/abi/relayerVault.d.ts +67 -0
  13. package/dist/abi/relayerVault.js +90 -0
  14. package/dist/abi/shellStake.d.ts +567 -0
  15. package/dist/abi/shellStake.js +745 -0
  16. package/dist/abi/snail.d.ts +497 -0
  17. package/dist/abi/snail.js +637 -0
  18. package/dist/abi/sponsoredSmail.d.ts +601 -0
  19. package/dist/abi/sponsoredSmail.js +772 -0
  20. package/dist/calls.d.ts +135 -0
  21. package/dist/calls.js +233 -0
  22. package/dist/constants.d.ts +101 -0
  23. package/dist/constants.js +168 -0
  24. package/dist/events.d.ts +111 -0
  25. package/dist/events.js +211 -0
  26. package/dist/index.d.ts +29 -0
  27. package/dist/index.js +29 -0
  28. package/dist/keys.d.ts +22 -0
  29. package/dist/keys.js +17 -0
  30. package/dist/link.d.ts +76 -0
  31. package/dist/link.js +167 -0
  32. package/dist/lock.d.ts +12 -0
  33. package/dist/lock.js +79 -0
  34. package/dist/message.d.ts +54 -0
  35. package/dist/message.js +82 -0
  36. package/dist/operator-gas.d.ts +10 -0
  37. package/dist/operator-gas.js +3 -0
  38. package/dist/pool-index.d.ts +101 -0
  39. package/dist/pool-index.js +265 -0
  40. package/dist/private.d.ts +216 -0
  41. package/dist/private.js +373 -0
  42. package/dist/read.d.ts +85 -0
  43. package/dist/read.js +103 -0
  44. package/dist/relayer.d.ts +83 -0
  45. package/dist/relayer.js +153 -0
  46. package/dist/wallet-errors.d.ts +60 -0
  47. package/dist/wallet-errors.js +171 -0
  48. package/package.json +45 -4
  49. package/zk/verification_key.json +114 -0
  50. package/zk/withdraw.wasm +0 -0
  51. package/zk/withdraw_final.zkey +0 -0
@@ -0,0 +1,643 @@
1
+ // Generated by scripts/export-abi.mjs from contracts/out/PrivateSnail.sol/PrivateSnail.json.
2
+ // Do not edit: run `cd contracts && forge build && npm run export:abi`.
3
+ // Built with solc 0.8.28+commit.7893614a, optimizer on (2000 runs).
4
+ export const privateSnailAbi = [
5
+ {
6
+ "type": "constructor",
7
+ "inputs": [
8
+ {
9
+ "name": "_verifier",
10
+ "type": "address",
11
+ "internalType": "contract IPrivateVerifier"
12
+ },
13
+ {
14
+ "name": "_levels",
15
+ "type": "uint32",
16
+ "internalType": "uint32"
17
+ },
18
+ {
19
+ "name": "_tokens",
20
+ "type": "address[]",
21
+ "internalType": "address[]"
22
+ },
23
+ {
24
+ "name": "_denominations",
25
+ "type": "uint256[][]",
26
+ "internalType": "uint256[][]"
27
+ }
28
+ ],
29
+ "stateMutability": "nonpayable"
30
+ },
31
+ {
32
+ "type": "function",
33
+ "name": "FEE_DIVISOR",
34
+ "inputs": [],
35
+ "outputs": [
36
+ {
37
+ "name": "",
38
+ "type": "uint256",
39
+ "internalType": "uint256"
40
+ }
41
+ ],
42
+ "stateMutability": "view"
43
+ },
44
+ {
45
+ "type": "function",
46
+ "name": "FIELD_SIZE",
47
+ "inputs": [],
48
+ "outputs": [
49
+ {
50
+ "name": "",
51
+ "type": "uint256",
52
+ "internalType": "uint256"
53
+ }
54
+ ],
55
+ "stateMutability": "view"
56
+ },
57
+ {
58
+ "type": "function",
59
+ "name": "NATIVE",
60
+ "inputs": [],
61
+ "outputs": [
62
+ {
63
+ "name": "",
64
+ "type": "address",
65
+ "internalType": "address"
66
+ }
67
+ ],
68
+ "stateMutability": "view"
69
+ },
70
+ {
71
+ "type": "function",
72
+ "name": "ROOT_HISTORY_SIZE",
73
+ "inputs": [],
74
+ "outputs": [
75
+ {
76
+ "name": "",
77
+ "type": "uint32",
78
+ "internalType": "uint32"
79
+ }
80
+ ],
81
+ "stateMutability": "view"
82
+ },
83
+ {
84
+ "type": "function",
85
+ "name": "ZERO_VALUE",
86
+ "inputs": [],
87
+ "outputs": [
88
+ {
89
+ "name": "",
90
+ "type": "uint256",
91
+ "internalType": "uint256"
92
+ }
93
+ ],
94
+ "stateMutability": "view"
95
+ },
96
+ {
97
+ "type": "function",
98
+ "name": "currentRootIndex",
99
+ "inputs": [],
100
+ "outputs": [
101
+ {
102
+ "name": "",
103
+ "type": "uint32",
104
+ "internalType": "uint32"
105
+ }
106
+ ],
107
+ "stateMutability": "view"
108
+ },
109
+ {
110
+ "type": "function",
111
+ "name": "deposit",
112
+ "inputs": [
113
+ {
114
+ "name": "commitment",
115
+ "type": "bytes32",
116
+ "internalType": "bytes32"
117
+ },
118
+ {
119
+ "name": "token",
120
+ "type": "address",
121
+ "internalType": "address"
122
+ },
123
+ {
124
+ "name": "amount",
125
+ "type": "uint256",
126
+ "internalType": "uint256"
127
+ }
128
+ ],
129
+ "outputs": [
130
+ {
131
+ "name": "leafIndex",
132
+ "type": "uint32",
133
+ "internalType": "uint32"
134
+ }
135
+ ],
136
+ "stateMutability": "payable"
137
+ },
138
+ {
139
+ "type": "function",
140
+ "name": "extDataHash",
141
+ "inputs": [
142
+ {
143
+ "name": "recipient",
144
+ "type": "address",
145
+ "internalType": "address"
146
+ },
147
+ {
148
+ "name": "relayer",
149
+ "type": "address",
150
+ "internalType": "address"
151
+ }
152
+ ],
153
+ "outputs": [
154
+ {
155
+ "name": "",
156
+ "type": "uint256",
157
+ "internalType": "uint256"
158
+ }
159
+ ],
160
+ "stateMutability": "view"
161
+ },
162
+ {
163
+ "type": "function",
164
+ "name": "filledSubtrees",
165
+ "inputs": [
166
+ {
167
+ "name": "",
168
+ "type": "uint256",
169
+ "internalType": "uint256"
170
+ }
171
+ ],
172
+ "outputs": [
173
+ {
174
+ "name": "",
175
+ "type": "bytes32",
176
+ "internalType": "bytes32"
177
+ }
178
+ ],
179
+ "stateMutability": "view"
180
+ },
181
+ {
182
+ "type": "function",
183
+ "name": "getLastRoot",
184
+ "inputs": [],
185
+ "outputs": [
186
+ {
187
+ "name": "",
188
+ "type": "bytes32",
189
+ "internalType": "bytes32"
190
+ }
191
+ ],
192
+ "stateMutability": "view"
193
+ },
194
+ {
195
+ "type": "function",
196
+ "name": "hashLeftRight",
197
+ "inputs": [
198
+ {
199
+ "name": "_left",
200
+ "type": "bytes32",
201
+ "internalType": "bytes32"
202
+ },
203
+ {
204
+ "name": "_right",
205
+ "type": "bytes32",
206
+ "internalType": "bytes32"
207
+ }
208
+ ],
209
+ "outputs": [
210
+ {
211
+ "name": "",
212
+ "type": "bytes32",
213
+ "internalType": "bytes32"
214
+ }
215
+ ],
216
+ "stateMutability": "pure"
217
+ },
218
+ {
219
+ "type": "function",
220
+ "name": "isDenomination",
221
+ "inputs": [
222
+ {
223
+ "name": "token",
224
+ "type": "address",
225
+ "internalType": "address"
226
+ },
227
+ {
228
+ "name": "amount",
229
+ "type": "uint256",
230
+ "internalType": "uint256"
231
+ }
232
+ ],
233
+ "outputs": [
234
+ {
235
+ "name": "",
236
+ "type": "bool",
237
+ "internalType": "bool"
238
+ }
239
+ ],
240
+ "stateMutability": "view"
241
+ },
242
+ {
243
+ "type": "function",
244
+ "name": "isKnownRoot",
245
+ "inputs": [
246
+ {
247
+ "name": "_root",
248
+ "type": "bytes32",
249
+ "internalType": "bytes32"
250
+ }
251
+ ],
252
+ "outputs": [
253
+ {
254
+ "name": "",
255
+ "type": "bool",
256
+ "internalType": "bool"
257
+ }
258
+ ],
259
+ "stateMutability": "view"
260
+ },
261
+ {
262
+ "type": "function",
263
+ "name": "isSpent",
264
+ "inputs": [
265
+ {
266
+ "name": "nullifierHash",
267
+ "type": "bytes32",
268
+ "internalType": "bytes32"
269
+ }
270
+ ],
271
+ "outputs": [
272
+ {
273
+ "name": "",
274
+ "type": "bool",
275
+ "internalType": "bool"
276
+ }
277
+ ],
278
+ "stateMutability": "view"
279
+ },
280
+ {
281
+ "type": "function",
282
+ "name": "levels",
283
+ "inputs": [],
284
+ "outputs": [
285
+ {
286
+ "name": "",
287
+ "type": "uint32",
288
+ "internalType": "uint32"
289
+ }
290
+ ],
291
+ "stateMutability": "view"
292
+ },
293
+ {
294
+ "type": "function",
295
+ "name": "nextIndex",
296
+ "inputs": [],
297
+ "outputs": [
298
+ {
299
+ "name": "",
300
+ "type": "uint32",
301
+ "internalType": "uint32"
302
+ }
303
+ ],
304
+ "stateMutability": "view"
305
+ },
306
+ {
307
+ "type": "function",
308
+ "name": "nullifierHashes",
309
+ "inputs": [
310
+ {
311
+ "name": "nullifierHash",
312
+ "type": "bytes32",
313
+ "internalType": "bytes32"
314
+ }
315
+ ],
316
+ "outputs": [
317
+ {
318
+ "name": "",
319
+ "type": "bool",
320
+ "internalType": "bool"
321
+ }
322
+ ],
323
+ "stateMutability": "view"
324
+ },
325
+ {
326
+ "type": "function",
327
+ "name": "quote",
328
+ "inputs": [
329
+ {
330
+ "name": "amount",
331
+ "type": "uint256",
332
+ "internalType": "uint256"
333
+ }
334
+ ],
335
+ "outputs": [
336
+ {
337
+ "name": "fee",
338
+ "type": "uint256",
339
+ "internalType": "uint256"
340
+ },
341
+ {
342
+ "name": "total",
343
+ "type": "uint256",
344
+ "internalType": "uint256"
345
+ }
346
+ ],
347
+ "stateMutability": "pure"
348
+ },
349
+ {
350
+ "type": "function",
351
+ "name": "roots",
352
+ "inputs": [
353
+ {
354
+ "name": "",
355
+ "type": "uint256",
356
+ "internalType": "uint256"
357
+ }
358
+ ],
359
+ "outputs": [
360
+ {
361
+ "name": "",
362
+ "type": "bytes32",
363
+ "internalType": "bytes32"
364
+ }
365
+ ],
366
+ "stateMutability": "view"
367
+ },
368
+ {
369
+ "type": "function",
370
+ "name": "verifier",
371
+ "inputs": [],
372
+ "outputs": [
373
+ {
374
+ "name": "",
375
+ "type": "address",
376
+ "internalType": "contract IPrivateVerifier"
377
+ }
378
+ ],
379
+ "stateMutability": "view"
380
+ },
381
+ {
382
+ "type": "function",
383
+ "name": "withdraw",
384
+ "inputs": [
385
+ {
386
+ "name": "proof",
387
+ "type": "uint256[8]",
388
+ "internalType": "uint256[8]"
389
+ },
390
+ {
391
+ "name": "root",
392
+ "type": "bytes32",
393
+ "internalType": "bytes32"
394
+ },
395
+ {
396
+ "name": "nullifierHash",
397
+ "type": "bytes32",
398
+ "internalType": "bytes32"
399
+ },
400
+ {
401
+ "name": "token",
402
+ "type": "address",
403
+ "internalType": "address"
404
+ },
405
+ {
406
+ "name": "amount",
407
+ "type": "uint256",
408
+ "internalType": "uint256"
409
+ },
410
+ {
411
+ "name": "recipient",
412
+ "type": "address",
413
+ "internalType": "address payable"
414
+ },
415
+ {
416
+ "name": "relayer",
417
+ "type": "address",
418
+ "internalType": "address payable"
419
+ }
420
+ ],
421
+ "outputs": [],
422
+ "stateMutability": "nonpayable"
423
+ },
424
+ {
425
+ "type": "function",
426
+ "name": "zeros",
427
+ "inputs": [
428
+ {
429
+ "name": "",
430
+ "type": "uint256",
431
+ "internalType": "uint256"
432
+ }
433
+ ],
434
+ "outputs": [
435
+ {
436
+ "name": "",
437
+ "type": "bytes32",
438
+ "internalType": "bytes32"
439
+ }
440
+ ],
441
+ "stateMutability": "view"
442
+ },
443
+ {
444
+ "type": "event",
445
+ "name": "DenominationAdded",
446
+ "inputs": [
447
+ {
448
+ "name": "token",
449
+ "type": "address",
450
+ "indexed": true,
451
+ "internalType": "address"
452
+ },
453
+ {
454
+ "name": "amount",
455
+ "type": "uint256",
456
+ "indexed": false,
457
+ "internalType": "uint256"
458
+ }
459
+ ],
460
+ "anonymous": false
461
+ },
462
+ {
463
+ "type": "event",
464
+ "name": "Deposit",
465
+ "inputs": [
466
+ {
467
+ "name": "commitment",
468
+ "type": "bytes32",
469
+ "indexed": true,
470
+ "internalType": "bytes32"
471
+ },
472
+ {
473
+ "name": "leaf",
474
+ "type": "bytes32",
475
+ "indexed": false,
476
+ "internalType": "bytes32"
477
+ },
478
+ {
479
+ "name": "leafIndex",
480
+ "type": "uint32",
481
+ "indexed": false,
482
+ "internalType": "uint32"
483
+ },
484
+ {
485
+ "name": "token",
486
+ "type": "address",
487
+ "indexed": true,
488
+ "internalType": "address"
489
+ },
490
+ {
491
+ "name": "amount",
492
+ "type": "uint256",
493
+ "indexed": false,
494
+ "internalType": "uint256"
495
+ }
496
+ ],
497
+ "anonymous": false
498
+ },
499
+ {
500
+ "type": "event",
501
+ "name": "Withdrawal",
502
+ "inputs": [
503
+ {
504
+ "name": "nullifierHash",
505
+ "type": "bytes32",
506
+ "indexed": true,
507
+ "internalType": "bytes32"
508
+ },
509
+ {
510
+ "name": "token",
511
+ "type": "address",
512
+ "indexed": true,
513
+ "internalType": "address"
514
+ },
515
+ {
516
+ "name": "amount",
517
+ "type": "uint256",
518
+ "indexed": false,
519
+ "internalType": "uint256"
520
+ },
521
+ {
522
+ "name": "recipient",
523
+ "type": "address",
524
+ "indexed": false,
525
+ "internalType": "address"
526
+ },
527
+ {
528
+ "name": "relayer",
529
+ "type": "address",
530
+ "indexed": false,
531
+ "internalType": "address"
532
+ },
533
+ {
534
+ "name": "fee",
535
+ "type": "uint256",
536
+ "indexed": false,
537
+ "internalType": "uint256"
538
+ }
539
+ ],
540
+ "anonymous": false
541
+ },
542
+ {
543
+ "type": "error",
544
+ "name": "AlreadyClaimed",
545
+ "inputs": []
546
+ },
547
+ {
548
+ "type": "error",
549
+ "name": "BadDenominations",
550
+ "inputs": []
551
+ },
552
+ {
553
+ "type": "error",
554
+ "name": "CommitmentNotInField",
555
+ "inputs": []
556
+ },
557
+ {
558
+ "type": "error",
559
+ "name": "InvalidProof",
560
+ "inputs": []
561
+ },
562
+ {
563
+ "type": "error",
564
+ "name": "LevelsOutOfRange",
565
+ "inputs": []
566
+ },
567
+ {
568
+ "type": "error",
569
+ "name": "MerkleTreeFull",
570
+ "inputs": []
571
+ },
572
+ {
573
+ "type": "error",
574
+ "name": "NotADenomination",
575
+ "inputs": []
576
+ },
577
+ {
578
+ "type": "error",
579
+ "name": "NotInField",
580
+ "inputs": []
581
+ },
582
+ {
583
+ "type": "error",
584
+ "name": "NotInFieldRange",
585
+ "inputs": []
586
+ },
587
+ {
588
+ "type": "error",
589
+ "name": "RecipientPaymentFailed",
590
+ "inputs": []
591
+ },
592
+ {
593
+ "type": "error",
594
+ "name": "ReentrancyGuardReentrantCall",
595
+ "inputs": []
596
+ },
597
+ {
598
+ "type": "error",
599
+ "name": "RelayerPaymentFailed",
600
+ "inputs": []
601
+ },
602
+ {
603
+ "type": "error",
604
+ "name": "SafeERC20FailedOperation",
605
+ "inputs": [
606
+ {
607
+ "name": "token",
608
+ "type": "address",
609
+ "internalType": "address"
610
+ }
611
+ ]
612
+ },
613
+ {
614
+ "type": "error",
615
+ "name": "TransferShortfall",
616
+ "inputs": []
617
+ },
618
+ {
619
+ "type": "error",
620
+ "name": "UnexpectedValue",
621
+ "inputs": []
622
+ },
623
+ {
624
+ "type": "error",
625
+ "name": "UnknownRoot",
626
+ "inputs": []
627
+ },
628
+ {
629
+ "type": "error",
630
+ "name": "WrongValue",
631
+ "inputs": []
632
+ },
633
+ {
634
+ "type": "error",
635
+ "name": "ZeroRecipient",
636
+ "inputs": []
637
+ },
638
+ {
639
+ "type": "error",
640
+ "name": "ZeroVerifier",
641
+ "inputs": []
642
+ }
643
+ ];
@@ -0,0 +1,54 @@
1
+ export declare const relayerNamesAbi: readonly [{
2
+ readonly type: "function";
3
+ readonly name: "MAX_LENGTH";
4
+ readonly inputs: readonly [];
5
+ readonly outputs: readonly [{
6
+ readonly name: "";
7
+ readonly type: "uint256";
8
+ readonly internalType: "uint256";
9
+ }];
10
+ readonly stateMutability: "view";
11
+ }, {
12
+ readonly type: "function";
13
+ readonly name: "nameOf";
14
+ readonly inputs: readonly [{
15
+ readonly name: "owner";
16
+ readonly type: "address";
17
+ readonly internalType: "address";
18
+ }];
19
+ readonly outputs: readonly [{
20
+ readonly name: "";
21
+ readonly type: "string";
22
+ readonly internalType: "string";
23
+ }];
24
+ readonly stateMutability: "view";
25
+ }, {
26
+ readonly type: "function";
27
+ readonly name: "setName";
28
+ readonly inputs: readonly [{
29
+ readonly name: "name";
30
+ readonly type: "string";
31
+ readonly internalType: "string";
32
+ }];
33
+ readonly outputs: readonly [];
34
+ readonly stateMutability: "nonpayable";
35
+ }, {
36
+ readonly type: "event";
37
+ readonly name: "NameSet";
38
+ readonly inputs: readonly [{
39
+ readonly name: "owner";
40
+ readonly type: "address";
41
+ readonly indexed: true;
42
+ readonly internalType: "address";
43
+ }, {
44
+ readonly name: "name";
45
+ readonly type: "string";
46
+ readonly indexed: false;
47
+ readonly internalType: "string";
48
+ }];
49
+ readonly anonymous: false;
50
+ }, {
51
+ readonly type: "error";
52
+ readonly name: "InvalidName";
53
+ readonly inputs: readonly [];
54
+ }];