@gitmyabi/walletsimple 1.0.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.
@@ -0,0 +1,1099 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.WalletSimple_json = exports.WalletSimple_jsonAbi = void 0;
4
+ const viem_1 = require("viem");
5
+ /**
6
+ * WalletSimple_json ABI
7
+ *
8
+ * This ABI is typed using viem's type system for full type safety.
9
+ */
10
+ exports.WalletSimple_jsonAbi = [
11
+ {
12
+ "anonymous": false,
13
+ "inputs": [
14
+ {
15
+ "indexed": false,
16
+ "internalType": "address",
17
+ "name": "msgSender",
18
+ "type": "address"
19
+ },
20
+ {
21
+ "indexed": false,
22
+ "internalType": "address",
23
+ "name": "otherSigner",
24
+ "type": "address"
25
+ },
26
+ {
27
+ "indexed": false,
28
+ "internalType": "bytes32",
29
+ "name": "operation",
30
+ "type": "bytes32"
31
+ }
32
+ ],
33
+ "name": "BatchTransacted",
34
+ "type": "event"
35
+ },
36
+ {
37
+ "anonymous": false,
38
+ "inputs": [
39
+ {
40
+ "indexed": false,
41
+ "internalType": "address",
42
+ "name": "sender",
43
+ "type": "address"
44
+ },
45
+ {
46
+ "indexed": false,
47
+ "internalType": "address",
48
+ "name": "recipient",
49
+ "type": "address"
50
+ },
51
+ {
52
+ "indexed": false,
53
+ "internalType": "uint256",
54
+ "name": "value",
55
+ "type": "uint256"
56
+ }
57
+ ],
58
+ "name": "BatchTransfer",
59
+ "type": "event"
60
+ },
61
+ {
62
+ "anonymous": false,
63
+ "inputs": [
64
+ {
65
+ "indexed": false,
66
+ "internalType": "address",
67
+ "name": "from",
68
+ "type": "address"
69
+ },
70
+ {
71
+ "indexed": false,
72
+ "internalType": "uint256",
73
+ "name": "value",
74
+ "type": "uint256"
75
+ },
76
+ {
77
+ "indexed": false,
78
+ "internalType": "bytes",
79
+ "name": "data",
80
+ "type": "bytes"
81
+ }
82
+ ],
83
+ "name": "Deposited",
84
+ "type": "event"
85
+ },
86
+ {
87
+ "anonymous": false,
88
+ "inputs": [
89
+ {
90
+ "indexed": false,
91
+ "internalType": "address",
92
+ "name": "msgSender",
93
+ "type": "address"
94
+ }
95
+ ],
96
+ "name": "SafeModeActivated",
97
+ "type": "event"
98
+ },
99
+ {
100
+ "anonymous": false,
101
+ "inputs": [
102
+ {
103
+ "indexed": false,
104
+ "internalType": "address",
105
+ "name": "msgSender",
106
+ "type": "address"
107
+ },
108
+ {
109
+ "indexed": false,
110
+ "internalType": "address",
111
+ "name": "otherSigner",
112
+ "type": "address"
113
+ },
114
+ {
115
+ "indexed": false,
116
+ "internalType": "bytes32",
117
+ "name": "operation",
118
+ "type": "bytes32"
119
+ },
120
+ {
121
+ "indexed": false,
122
+ "internalType": "address",
123
+ "name": "toAddress",
124
+ "type": "address"
125
+ },
126
+ {
127
+ "indexed": false,
128
+ "internalType": "uint256",
129
+ "name": "value",
130
+ "type": "uint256"
131
+ },
132
+ {
133
+ "indexed": false,
134
+ "internalType": "bytes",
135
+ "name": "data",
136
+ "type": "bytes"
137
+ }
138
+ ],
139
+ "name": "Transacted",
140
+ "type": "event"
141
+ },
142
+ {
143
+ "stateMutability": "payable",
144
+ "type": "fallback"
145
+ },
146
+ {
147
+ "inputs": [],
148
+ "name": "activateSafeMode",
149
+ "outputs": [],
150
+ "stateMutability": "nonpayable",
151
+ "type": "function"
152
+ },
153
+ {
154
+ "inputs": [
155
+ {
156
+ "internalType": "address payable",
157
+ "name": "forwarderAddress",
158
+ "type": "address"
159
+ },
160
+ {
161
+ "internalType": "address",
162
+ "name": "tokenContractAddress",
163
+ "type": "address"
164
+ },
165
+ {
166
+ "internalType": "uint256[]",
167
+ "name": "tokenIds",
168
+ "type": "uint256[]"
169
+ }
170
+ ],
171
+ "name": "batchFlushERC1155ForwarderTokens",
172
+ "outputs": [],
173
+ "stateMutability": "nonpayable",
174
+ "type": "function"
175
+ },
176
+ {
177
+ "inputs": [
178
+ {
179
+ "internalType": "address payable",
180
+ "name": "forwarderAddress",
181
+ "type": "address"
182
+ },
183
+ {
184
+ "internalType": "address",
185
+ "name": "tokenContractAddress",
186
+ "type": "address"
187
+ },
188
+ {
189
+ "internalType": "uint256",
190
+ "name": "tokenId",
191
+ "type": "uint256"
192
+ }
193
+ ],
194
+ "name": "flushERC1155ForwarderTokens",
195
+ "outputs": [],
196
+ "stateMutability": "nonpayable",
197
+ "type": "function"
198
+ },
199
+ {
200
+ "inputs": [
201
+ {
202
+ "internalType": "address payable",
203
+ "name": "forwarderAddress",
204
+ "type": "address"
205
+ },
206
+ {
207
+ "internalType": "address",
208
+ "name": "tokenContractAddress",
209
+ "type": "address"
210
+ },
211
+ {
212
+ "internalType": "uint256",
213
+ "name": "tokenId",
214
+ "type": "uint256"
215
+ }
216
+ ],
217
+ "name": "flushERC721ForwarderTokens",
218
+ "outputs": [],
219
+ "stateMutability": "nonpayable",
220
+ "type": "function"
221
+ },
222
+ {
223
+ "inputs": [
224
+ {
225
+ "internalType": "address payable",
226
+ "name": "forwarderAddress",
227
+ "type": "address"
228
+ },
229
+ {
230
+ "internalType": "address",
231
+ "name": "tokenContractAddress",
232
+ "type": "address"
233
+ }
234
+ ],
235
+ "name": "flushForwarderTokens",
236
+ "outputs": [],
237
+ "stateMutability": "nonpayable",
238
+ "type": "function"
239
+ },
240
+ {
241
+ "inputs": [],
242
+ "name": "getNextSequenceId",
243
+ "outputs": [
244
+ {
245
+ "internalType": "uint256",
246
+ "name": "",
247
+ "type": "uint256"
248
+ }
249
+ ],
250
+ "stateMutability": "view",
251
+ "type": "function"
252
+ },
253
+ {
254
+ "inputs": [
255
+ {
256
+ "internalType": "address[]",
257
+ "name": "allowedSigners",
258
+ "type": "address[]"
259
+ }
260
+ ],
261
+ "name": "init",
262
+ "outputs": [],
263
+ "stateMutability": "nonpayable",
264
+ "type": "function"
265
+ },
266
+ {
267
+ "inputs": [],
268
+ "name": "initialized",
269
+ "outputs": [
270
+ {
271
+ "internalType": "bool",
272
+ "name": "",
273
+ "type": "bool"
274
+ }
275
+ ],
276
+ "stateMutability": "view",
277
+ "type": "function"
278
+ },
279
+ {
280
+ "inputs": [
281
+ {
282
+ "internalType": "address",
283
+ "name": "signer",
284
+ "type": "address"
285
+ }
286
+ ],
287
+ "name": "isSigner",
288
+ "outputs": [
289
+ {
290
+ "internalType": "bool",
291
+ "name": "",
292
+ "type": "bool"
293
+ }
294
+ ],
295
+ "stateMutability": "view",
296
+ "type": "function"
297
+ },
298
+ {
299
+ "inputs": [
300
+ {
301
+ "internalType": "address",
302
+ "name": "_operator",
303
+ "type": "address"
304
+ },
305
+ {
306
+ "internalType": "address",
307
+ "name": "_from",
308
+ "type": "address"
309
+ },
310
+ {
311
+ "internalType": "uint256[]",
312
+ "name": "ids",
313
+ "type": "uint256[]"
314
+ },
315
+ {
316
+ "internalType": "uint256[]",
317
+ "name": "values",
318
+ "type": "uint256[]"
319
+ },
320
+ {
321
+ "internalType": "bytes",
322
+ "name": "data",
323
+ "type": "bytes"
324
+ }
325
+ ],
326
+ "name": "onERC1155BatchReceived",
327
+ "outputs": [
328
+ {
329
+ "internalType": "bytes4",
330
+ "name": "",
331
+ "type": "bytes4"
332
+ }
333
+ ],
334
+ "stateMutability": "nonpayable",
335
+ "type": "function"
336
+ },
337
+ {
338
+ "inputs": [
339
+ {
340
+ "internalType": "address",
341
+ "name": "_operator",
342
+ "type": "address"
343
+ },
344
+ {
345
+ "internalType": "address",
346
+ "name": "_from",
347
+ "type": "address"
348
+ },
349
+ {
350
+ "internalType": "uint256",
351
+ "name": "id",
352
+ "type": "uint256"
353
+ },
354
+ {
355
+ "internalType": "uint256",
356
+ "name": "value",
357
+ "type": "uint256"
358
+ },
359
+ {
360
+ "internalType": "bytes",
361
+ "name": "data",
362
+ "type": "bytes"
363
+ }
364
+ ],
365
+ "name": "onERC1155Received",
366
+ "outputs": [
367
+ {
368
+ "internalType": "bytes4",
369
+ "name": "",
370
+ "type": "bytes4"
371
+ }
372
+ ],
373
+ "stateMutability": "nonpayable",
374
+ "type": "function"
375
+ },
376
+ {
377
+ "inputs": [
378
+ {
379
+ "internalType": "address",
380
+ "name": "_operator",
381
+ "type": "address"
382
+ },
383
+ {
384
+ "internalType": "address",
385
+ "name": "_from",
386
+ "type": "address"
387
+ },
388
+ {
389
+ "internalType": "uint256",
390
+ "name": "_tokenId",
391
+ "type": "uint256"
392
+ },
393
+ {
394
+ "internalType": "bytes",
395
+ "name": "_data",
396
+ "type": "bytes"
397
+ }
398
+ ],
399
+ "name": "onERC721Received",
400
+ "outputs": [
401
+ {
402
+ "internalType": "bytes4",
403
+ "name": "",
404
+ "type": "bytes4"
405
+ }
406
+ ],
407
+ "stateMutability": "nonpayable",
408
+ "type": "function"
409
+ },
410
+ {
411
+ "inputs": [],
412
+ "name": "safeMode",
413
+ "outputs": [
414
+ {
415
+ "internalType": "bool",
416
+ "name": "",
417
+ "type": "bool"
418
+ }
419
+ ],
420
+ "stateMutability": "view",
421
+ "type": "function"
422
+ },
423
+ {
424
+ "inputs": [
425
+ {
426
+ "internalType": "address",
427
+ "name": "toAddress",
428
+ "type": "address"
429
+ },
430
+ {
431
+ "internalType": "uint256",
432
+ "name": "value",
433
+ "type": "uint256"
434
+ },
435
+ {
436
+ "internalType": "bytes",
437
+ "name": "data",
438
+ "type": "bytes"
439
+ },
440
+ {
441
+ "internalType": "uint256",
442
+ "name": "expireTime",
443
+ "type": "uint256"
444
+ },
445
+ {
446
+ "internalType": "uint256",
447
+ "name": "sequenceId",
448
+ "type": "uint256"
449
+ },
450
+ {
451
+ "internalType": "bytes",
452
+ "name": "signature",
453
+ "type": "bytes"
454
+ }
455
+ ],
456
+ "name": "sendMultiSig",
457
+ "outputs": [],
458
+ "stateMutability": "nonpayable",
459
+ "type": "function"
460
+ },
461
+ {
462
+ "inputs": [
463
+ {
464
+ "internalType": "address[]",
465
+ "name": "recipients",
466
+ "type": "address[]"
467
+ },
468
+ {
469
+ "internalType": "uint256[]",
470
+ "name": "values",
471
+ "type": "uint256[]"
472
+ },
473
+ {
474
+ "internalType": "uint256",
475
+ "name": "expireTime",
476
+ "type": "uint256"
477
+ },
478
+ {
479
+ "internalType": "uint256",
480
+ "name": "sequenceId",
481
+ "type": "uint256"
482
+ },
483
+ {
484
+ "internalType": "bytes",
485
+ "name": "signature",
486
+ "type": "bytes"
487
+ }
488
+ ],
489
+ "name": "sendMultiSigBatch",
490
+ "outputs": [],
491
+ "stateMutability": "nonpayable",
492
+ "type": "function"
493
+ },
494
+ {
495
+ "inputs": [
496
+ {
497
+ "internalType": "address",
498
+ "name": "toAddress",
499
+ "type": "address"
500
+ },
501
+ {
502
+ "internalType": "uint256",
503
+ "name": "value",
504
+ "type": "uint256"
505
+ },
506
+ {
507
+ "internalType": "address",
508
+ "name": "tokenContractAddress",
509
+ "type": "address"
510
+ },
511
+ {
512
+ "internalType": "uint256",
513
+ "name": "expireTime",
514
+ "type": "uint256"
515
+ },
516
+ {
517
+ "internalType": "uint256",
518
+ "name": "sequenceId",
519
+ "type": "uint256"
520
+ },
521
+ {
522
+ "internalType": "bytes",
523
+ "name": "signature",
524
+ "type": "bytes"
525
+ }
526
+ ],
527
+ "name": "sendMultiSigToken",
528
+ "outputs": [],
529
+ "stateMutability": "nonpayable",
530
+ "type": "function"
531
+ },
532
+ {
533
+ "inputs": [
534
+ {
535
+ "internalType": "address",
536
+ "name": "forwarderAddress",
537
+ "type": "address"
538
+ },
539
+ {
540
+ "internalType": "bool",
541
+ "name": "autoFlush",
542
+ "type": "bool"
543
+ }
544
+ ],
545
+ "name": "setAutoFlush1155",
546
+ "outputs": [],
547
+ "stateMutability": "nonpayable",
548
+ "type": "function"
549
+ },
550
+ {
551
+ "inputs": [
552
+ {
553
+ "internalType": "address",
554
+ "name": "forwarderAddress",
555
+ "type": "address"
556
+ },
557
+ {
558
+ "internalType": "bool",
559
+ "name": "autoFlush",
560
+ "type": "bool"
561
+ }
562
+ ],
563
+ "name": "setAutoFlush721",
564
+ "outputs": [],
565
+ "stateMutability": "nonpayable",
566
+ "type": "function"
567
+ },
568
+ {
569
+ "inputs": [
570
+ {
571
+ "internalType": "address",
572
+ "name": "",
573
+ "type": "address"
574
+ }
575
+ ],
576
+ "name": "signers",
577
+ "outputs": [
578
+ {
579
+ "internalType": "bool",
580
+ "name": "",
581
+ "type": "bool"
582
+ }
583
+ ],
584
+ "stateMutability": "view",
585
+ "type": "function"
586
+ },
587
+ {
588
+ "inputs": [
589
+ {
590
+ "internalType": "bytes4",
591
+ "name": "interfaceId",
592
+ "type": "bytes4"
593
+ }
594
+ ],
595
+ "name": "supportsInterface",
596
+ "outputs": [
597
+ {
598
+ "internalType": "bool",
599
+ "name": "",
600
+ "type": "bool"
601
+ }
602
+ ],
603
+ "stateMutability": "view",
604
+ "type": "function"
605
+ },
606
+ {
607
+ "stateMutability": "payable",
608
+ "type": "receive"
609
+ }
610
+ ];
611
+ /**
612
+ * WalletSimple_json Contract Class
613
+ *
614
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
615
+ *
616
+ * @example
617
+ * ```typescript
618
+ * import { createPublicClient, createWalletClient, http } from 'viem';
619
+ * import { mainnet } from 'viem/chains';
620
+ * import { WalletSimple_json } from 'WalletSimple_json';
621
+ *
622
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
623
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
624
+ *
625
+ * const contract = new WalletSimple_json('0x...', { publicClient, walletClient });
626
+ *
627
+ * // Read functions
628
+ * const result = await contract.balanceOf('0x...');
629
+ *
630
+ * // Write functions
631
+ * const hash = await contract.transfer('0x...', 1000n);
632
+ *
633
+ * // Simulate transactions (dry-run)
634
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
635
+ * console.log('Gas estimate:', simulation.request.gas);
636
+ *
637
+ * // Watch events
638
+ * const unwatch = contract.watch.Transfer((event) => {
639
+ * console.log('Transfer event:', event);
640
+ * });
641
+ * ```
642
+ */
643
+ class WalletSimple_json {
644
+ constructor(address, clients) {
645
+ this.contractAddress = address;
646
+ this.publicClient = clients.publicClient;
647
+ this.contract = (0, viem_1.getContract)({
648
+ address,
649
+ abi: exports.WalletSimple_jsonAbi,
650
+ client: {
651
+ public: clients.publicClient,
652
+ wallet: clients.walletClient,
653
+ },
654
+ });
655
+ }
656
+ /**
657
+ * Get the contract address
658
+ */
659
+ get address() {
660
+ return this.contractAddress;
661
+ }
662
+ /**
663
+ * Get the underlying viem contract instance
664
+ */
665
+ getContract() {
666
+ return this.contract;
667
+ }
668
+ /**
669
+ * getNextSequenceId
670
+ * view
671
+ */
672
+ async getNextSequenceId() {
673
+ return this.contract.read.getNextSequenceId();
674
+ }
675
+ /**
676
+ * initialized
677
+ * view
678
+ */
679
+ async initialized() {
680
+ return this.contract.read.initialized();
681
+ }
682
+ /**
683
+ * isSigner
684
+ * view
685
+ */
686
+ async isSigner(signer) {
687
+ return this.contract.read.isSigner([signer]);
688
+ }
689
+ /**
690
+ * safeMode
691
+ * view
692
+ */
693
+ async safeMode() {
694
+ return this.contract.read.safeMode();
695
+ }
696
+ /**
697
+ * signers
698
+ * view
699
+ */
700
+ async signers(arg0) {
701
+ return this.contract.read.signers([arg0]);
702
+ }
703
+ /**
704
+ * supportsInterface
705
+ * view
706
+ */
707
+ async supportsInterface(interfaceId) {
708
+ return this.contract.read.supportsInterface([interfaceId]);
709
+ }
710
+ /**
711
+ * activateSafeMode
712
+ * nonpayable
713
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
714
+ */
715
+ async activateSafeMode(options) {
716
+ if (!this.contract.write) {
717
+ throw new Error('Wallet client is required for write operations');
718
+ }
719
+ return this.contract.write.activateSafeMode(options);
720
+ }
721
+ /**
722
+ * batchFlushERC1155ForwarderTokens
723
+ * nonpayable
724
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
725
+ */
726
+ async batchFlushERC1155ForwarderTokens(forwarderAddress, tokenContractAddress, tokenIds, options) {
727
+ if (!this.contract.write) {
728
+ throw new Error('Wallet client is required for write operations');
729
+ }
730
+ return this.contract.write.batchFlushERC1155ForwarderTokens([forwarderAddress, tokenContractAddress, tokenIds], options);
731
+ }
732
+ /**
733
+ * flushERC1155ForwarderTokens
734
+ * nonpayable
735
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
736
+ */
737
+ async flushERC1155ForwarderTokens(forwarderAddress, tokenContractAddress, tokenId, options) {
738
+ if (!this.contract.write) {
739
+ throw new Error('Wallet client is required for write operations');
740
+ }
741
+ return this.contract.write.flushERC1155ForwarderTokens([forwarderAddress, tokenContractAddress, tokenId], options);
742
+ }
743
+ /**
744
+ * flushERC721ForwarderTokens
745
+ * nonpayable
746
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
747
+ */
748
+ async flushERC721ForwarderTokens(forwarderAddress, tokenContractAddress, tokenId, options) {
749
+ if (!this.contract.write) {
750
+ throw new Error('Wallet client is required for write operations');
751
+ }
752
+ return this.contract.write.flushERC721ForwarderTokens([forwarderAddress, tokenContractAddress, tokenId], options);
753
+ }
754
+ /**
755
+ * flushForwarderTokens
756
+ * nonpayable
757
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
758
+ */
759
+ async flushForwarderTokens(forwarderAddress, tokenContractAddress, options) {
760
+ if (!this.contract.write) {
761
+ throw new Error('Wallet client is required for write operations');
762
+ }
763
+ return this.contract.write.flushForwarderTokens([forwarderAddress, tokenContractAddress], options);
764
+ }
765
+ /**
766
+ * init
767
+ * nonpayable
768
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
769
+ */
770
+ async init(allowedSigners, options) {
771
+ if (!this.contract.write) {
772
+ throw new Error('Wallet client is required for write operations');
773
+ }
774
+ return this.contract.write.init([allowedSigners], options);
775
+ }
776
+ /**
777
+ * onERC1155BatchReceived
778
+ * nonpayable
779
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
780
+ */
781
+ async onERC1155BatchReceived(_operator, _from, ids, values, data, options) {
782
+ if (!this.contract.write) {
783
+ throw new Error('Wallet client is required for write operations');
784
+ }
785
+ return this.contract.write.onERC1155BatchReceived([_operator, _from, ids, values, data], options);
786
+ }
787
+ /**
788
+ * onERC1155Received
789
+ * nonpayable
790
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
791
+ */
792
+ async onERC1155Received(_operator, _from, id, value, data, options) {
793
+ if (!this.contract.write) {
794
+ throw new Error('Wallet client is required for write operations');
795
+ }
796
+ return this.contract.write.onERC1155Received([_operator, _from, id, value, data], options);
797
+ }
798
+ /**
799
+ * onERC721Received
800
+ * nonpayable
801
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
802
+ */
803
+ async onERC721Received(_operator, _from, _tokenId, _data, options) {
804
+ if (!this.contract.write) {
805
+ throw new Error('Wallet client is required for write operations');
806
+ }
807
+ return this.contract.write.onERC721Received([_operator, _from, _tokenId, _data], options);
808
+ }
809
+ /**
810
+ * sendMultiSig
811
+ * nonpayable
812
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
813
+ */
814
+ async sendMultiSig(toAddress, value, data, expireTime, sequenceId, signature, options) {
815
+ if (!this.contract.write) {
816
+ throw new Error('Wallet client is required for write operations');
817
+ }
818
+ return this.contract.write.sendMultiSig([toAddress, value, data, expireTime, sequenceId, signature], options);
819
+ }
820
+ /**
821
+ * sendMultiSigBatch
822
+ * nonpayable
823
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
824
+ */
825
+ async sendMultiSigBatch(recipients, values, expireTime, sequenceId, signature, options) {
826
+ if (!this.contract.write) {
827
+ throw new Error('Wallet client is required for write operations');
828
+ }
829
+ return this.contract.write.sendMultiSigBatch([recipients, values, expireTime, sequenceId, signature], options);
830
+ }
831
+ /**
832
+ * sendMultiSigToken
833
+ * nonpayable
834
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
835
+ */
836
+ async sendMultiSigToken(toAddress, value, tokenContractAddress, expireTime, sequenceId, signature, options) {
837
+ if (!this.contract.write) {
838
+ throw new Error('Wallet client is required for write operations');
839
+ }
840
+ return this.contract.write.sendMultiSigToken([toAddress, value, tokenContractAddress, expireTime, sequenceId, signature], options);
841
+ }
842
+ /**
843
+ * setAutoFlush1155
844
+ * nonpayable
845
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
846
+ */
847
+ async setAutoFlush1155(forwarderAddress, autoFlush, options) {
848
+ if (!this.contract.write) {
849
+ throw new Error('Wallet client is required for write operations');
850
+ }
851
+ return this.contract.write.setAutoFlush1155([forwarderAddress, autoFlush], options);
852
+ }
853
+ /**
854
+ * setAutoFlush721
855
+ * nonpayable
856
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
857
+ */
858
+ async setAutoFlush721(forwarderAddress, autoFlush, options) {
859
+ if (!this.contract.write) {
860
+ throw new Error('Wallet client is required for write operations');
861
+ }
862
+ return this.contract.write.setAutoFlush721([forwarderAddress, autoFlush], options);
863
+ }
864
+ /**
865
+ * Simulate contract write operations (dry-run without sending transaction)
866
+ *
867
+ * @example
868
+ * const result = await contract.simulate.transfer('0x...', 1000n);
869
+ * console.log('Gas estimate:', result.request.gas);
870
+ * console.log('Would succeed:', result.result);
871
+ */
872
+ get simulate() {
873
+ const contract = this.contract;
874
+ if (!contract.simulate) {
875
+ throw new Error('Public client is required for simulation');
876
+ }
877
+ return {
878
+ /**
879
+ * Simulate activateSafeMode
880
+ * Returns gas estimate and result without sending transaction
881
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
882
+ */
883
+ async activateSafeMode(options) {
884
+ return contract.simulate.activateSafeMode(options);
885
+ },
886
+ /**
887
+ * Simulate batchFlushERC1155ForwarderTokens
888
+ * Returns gas estimate and result without sending transaction
889
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
890
+ */
891
+ async batchFlushERC1155ForwarderTokens(forwarderAddress, tokenContractAddress, tokenIds, options) {
892
+ return contract.simulate.batchFlushERC1155ForwarderTokens([forwarderAddress, tokenContractAddress, tokenIds], options);
893
+ },
894
+ /**
895
+ * Simulate flushERC1155ForwarderTokens
896
+ * Returns gas estimate and result without sending transaction
897
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
898
+ */
899
+ async flushERC1155ForwarderTokens(forwarderAddress, tokenContractAddress, tokenId, options) {
900
+ return contract.simulate.flushERC1155ForwarderTokens([forwarderAddress, tokenContractAddress, tokenId], options);
901
+ },
902
+ /**
903
+ * Simulate flushERC721ForwarderTokens
904
+ * Returns gas estimate and result without sending transaction
905
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
906
+ */
907
+ async flushERC721ForwarderTokens(forwarderAddress, tokenContractAddress, tokenId, options) {
908
+ return contract.simulate.flushERC721ForwarderTokens([forwarderAddress, tokenContractAddress, tokenId], options);
909
+ },
910
+ /**
911
+ * Simulate flushForwarderTokens
912
+ * Returns gas estimate and result without sending transaction
913
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
914
+ */
915
+ async flushForwarderTokens(forwarderAddress, tokenContractAddress, options) {
916
+ return contract.simulate.flushForwarderTokens([forwarderAddress, tokenContractAddress], options);
917
+ },
918
+ /**
919
+ * Simulate init
920
+ * Returns gas estimate and result without sending transaction
921
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
922
+ */
923
+ async init(allowedSigners, options) {
924
+ return contract.simulate.init([allowedSigners], options);
925
+ },
926
+ /**
927
+ * Simulate onERC1155BatchReceived
928
+ * Returns gas estimate and result without sending transaction
929
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
930
+ */
931
+ async onERC1155BatchReceived(_operator, _from, ids, values, data, options) {
932
+ return contract.simulate.onERC1155BatchReceived([_operator, _from, ids, values, data], options);
933
+ },
934
+ /**
935
+ * Simulate onERC1155Received
936
+ * Returns gas estimate and result without sending transaction
937
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
938
+ */
939
+ async onERC1155Received(_operator, _from, id, value, data, options) {
940
+ return contract.simulate.onERC1155Received([_operator, _from, id, value, data], options);
941
+ },
942
+ /**
943
+ * Simulate onERC721Received
944
+ * Returns gas estimate and result without sending transaction
945
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
946
+ */
947
+ async onERC721Received(_operator, _from, _tokenId, _data, options) {
948
+ return contract.simulate.onERC721Received([_operator, _from, _tokenId, _data], options);
949
+ },
950
+ /**
951
+ * Simulate sendMultiSig
952
+ * Returns gas estimate and result without sending transaction
953
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
954
+ */
955
+ async sendMultiSig(toAddress, value, data, expireTime, sequenceId, signature, options) {
956
+ return contract.simulate.sendMultiSig([toAddress, value, data, expireTime, sequenceId, signature], options);
957
+ },
958
+ /**
959
+ * Simulate sendMultiSigBatch
960
+ * Returns gas estimate and result without sending transaction
961
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
962
+ */
963
+ async sendMultiSigBatch(recipients, values, expireTime, sequenceId, signature, options) {
964
+ return contract.simulate.sendMultiSigBatch([recipients, values, expireTime, sequenceId, signature], options);
965
+ },
966
+ /**
967
+ * Simulate sendMultiSigToken
968
+ * Returns gas estimate and result without sending transaction
969
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
970
+ */
971
+ async sendMultiSigToken(toAddress, value, tokenContractAddress, expireTime, sequenceId, signature, options) {
972
+ return contract.simulate.sendMultiSigToken([toAddress, value, tokenContractAddress, expireTime, sequenceId, signature], options);
973
+ },
974
+ /**
975
+ * Simulate setAutoFlush1155
976
+ * Returns gas estimate and result without sending transaction
977
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
978
+ */
979
+ async setAutoFlush1155(forwarderAddress, autoFlush, options) {
980
+ return contract.simulate.setAutoFlush1155([forwarderAddress, autoFlush], options);
981
+ },
982
+ /**
983
+ * Simulate setAutoFlush721
984
+ * Returns gas estimate and result without sending transaction
985
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
986
+ */
987
+ async setAutoFlush721(forwarderAddress, autoFlush, options) {
988
+ return contract.simulate.setAutoFlush721([forwarderAddress, autoFlush], options);
989
+ }
990
+ };
991
+ }
992
+ /**
993
+ * Watch contract events
994
+ *
995
+ * @example
996
+ * // Watch all Transfer events
997
+ * const unwatch = contract.watch.Transfer((event) => {
998
+ * console.log('Transfer:', event);
999
+ * });
1000
+ *
1001
+ * // Stop watching
1002
+ * unwatch();
1003
+ */
1004
+ get watch() {
1005
+ return {
1006
+ /**
1007
+ * Watch BatchTransacted events
1008
+ * @param callback Function to call when event is emitted
1009
+ * @param filter Optional filter for indexed parameters
1010
+ * @returns Unwatch function to stop listening
1011
+ */
1012
+ BatchTransacted: (callback) => {
1013
+ return this.publicClient.watchContractEvent({
1014
+ address: this.contractAddress,
1015
+ abi: exports.WalletSimple_jsonAbi,
1016
+ eventName: 'BatchTransacted',
1017
+ onLogs: (logs) => {
1018
+ logs.forEach((log) => {
1019
+ callback(log.args);
1020
+ });
1021
+ },
1022
+ });
1023
+ },
1024
+ /**
1025
+ * Watch BatchTransfer events
1026
+ * @param callback Function to call when event is emitted
1027
+ * @param filter Optional filter for indexed parameters
1028
+ * @returns Unwatch function to stop listening
1029
+ */
1030
+ BatchTransfer: (callback) => {
1031
+ return this.publicClient.watchContractEvent({
1032
+ address: this.contractAddress,
1033
+ abi: exports.WalletSimple_jsonAbi,
1034
+ eventName: 'BatchTransfer',
1035
+ onLogs: (logs) => {
1036
+ logs.forEach((log) => {
1037
+ callback(log.args);
1038
+ });
1039
+ },
1040
+ });
1041
+ },
1042
+ /**
1043
+ * Watch Deposited events
1044
+ * @param callback Function to call when event is emitted
1045
+ * @param filter Optional filter for indexed parameters
1046
+ * @returns Unwatch function to stop listening
1047
+ */
1048
+ Deposited: (callback) => {
1049
+ return this.publicClient.watchContractEvent({
1050
+ address: this.contractAddress,
1051
+ abi: exports.WalletSimple_jsonAbi,
1052
+ eventName: 'Deposited',
1053
+ onLogs: (logs) => {
1054
+ logs.forEach((log) => {
1055
+ callback(log.args);
1056
+ });
1057
+ },
1058
+ });
1059
+ },
1060
+ /**
1061
+ * Watch SafeModeActivated events
1062
+ * @param callback Function to call when event is emitted
1063
+ * @param filter Optional filter for indexed parameters
1064
+ * @returns Unwatch function to stop listening
1065
+ */
1066
+ SafeModeActivated: (callback) => {
1067
+ return this.publicClient.watchContractEvent({
1068
+ address: this.contractAddress,
1069
+ abi: exports.WalletSimple_jsonAbi,
1070
+ eventName: 'SafeModeActivated',
1071
+ onLogs: (logs) => {
1072
+ logs.forEach((log) => {
1073
+ callback(log.args);
1074
+ });
1075
+ },
1076
+ });
1077
+ },
1078
+ /**
1079
+ * Watch Transacted events
1080
+ * @param callback Function to call when event is emitted
1081
+ * @param filter Optional filter for indexed parameters
1082
+ * @returns Unwatch function to stop listening
1083
+ */
1084
+ Transacted: (callback) => {
1085
+ return this.publicClient.watchContractEvent({
1086
+ address: this.contractAddress,
1087
+ abi: exports.WalletSimple_jsonAbi,
1088
+ eventName: 'Transacted',
1089
+ onLogs: (logs) => {
1090
+ logs.forEach((log) => {
1091
+ callback(log.args);
1092
+ });
1093
+ },
1094
+ });
1095
+ }
1096
+ };
1097
+ }
1098
+ }
1099
+ exports.WalletSimple_json = WalletSimple_json;