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