@gitmyabi/real 0.0.0-stage → 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,823 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * TokenMintERC20MintableToken_json ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const TokenMintERC20MintableToken_jsonAbi: readonly [{
8
+ readonly constant: true;
9
+ readonly inputs: readonly [];
10
+ readonly name: "name";
11
+ readonly outputs: readonly [{
12
+ readonly name: "";
13
+ readonly type: "string";
14
+ }];
15
+ readonly payable: false;
16
+ readonly stateMutability: "view";
17
+ readonly type: "function";
18
+ }, {
19
+ readonly constant: false;
20
+ readonly inputs: readonly [{
21
+ readonly name: "spender";
22
+ readonly type: "address";
23
+ }, {
24
+ readonly name: "value";
25
+ readonly type: "uint256";
26
+ }];
27
+ readonly name: "approve";
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: "totalSupply";
39
+ readonly outputs: readonly [{
40
+ readonly name: "";
41
+ readonly type: "uint256";
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: "sender";
50
+ readonly type: "address";
51
+ }, {
52
+ readonly name: "recipient";
53
+ readonly type: "address";
54
+ }, {
55
+ readonly name: "amount";
56
+ readonly type: "uint256";
57
+ }];
58
+ readonly name: "transferFrom";
59
+ readonly outputs: readonly [{
60
+ readonly name: "";
61
+ readonly type: "bool";
62
+ }];
63
+ readonly payable: false;
64
+ readonly stateMutability: "nonpayable";
65
+ readonly type: "function";
66
+ }, {
67
+ readonly constant: true;
68
+ readonly inputs: readonly [];
69
+ readonly name: "decimals";
70
+ readonly outputs: readonly [{
71
+ readonly name: "";
72
+ readonly type: "uint8";
73
+ }];
74
+ readonly payable: false;
75
+ readonly stateMutability: "view";
76
+ readonly type: "function";
77
+ }, {
78
+ readonly constant: false;
79
+ readonly inputs: readonly [{
80
+ readonly name: "spender";
81
+ readonly type: "address";
82
+ }, {
83
+ readonly name: "addedValue";
84
+ readonly type: "uint256";
85
+ }];
86
+ readonly name: "increaseAllowance";
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: false;
96
+ readonly inputs: readonly [{
97
+ readonly name: "account";
98
+ readonly type: "address";
99
+ }, {
100
+ readonly name: "amount";
101
+ readonly type: "uint256";
102
+ }];
103
+ readonly name: "mint";
104
+ readonly outputs: readonly [{
105
+ readonly name: "";
106
+ readonly type: "bool";
107
+ }];
108
+ readonly payable: false;
109
+ readonly stateMutability: "nonpayable";
110
+ readonly type: "function";
111
+ }, {
112
+ readonly constant: false;
113
+ readonly inputs: readonly [{
114
+ readonly name: "value";
115
+ readonly type: "uint256";
116
+ }];
117
+ readonly name: "burn";
118
+ readonly outputs: readonly [];
119
+ readonly payable: false;
120
+ readonly stateMutability: "nonpayable";
121
+ readonly type: "function";
122
+ }, {
123
+ readonly constant: true;
124
+ readonly inputs: readonly [{
125
+ readonly name: "account";
126
+ readonly type: "address";
127
+ }];
128
+ readonly name: "balanceOf";
129
+ readonly outputs: readonly [{
130
+ readonly name: "";
131
+ readonly type: "uint256";
132
+ }];
133
+ readonly payable: false;
134
+ readonly stateMutability: "view";
135
+ readonly type: "function";
136
+ }, {
137
+ readonly constant: true;
138
+ readonly inputs: readonly [];
139
+ readonly name: "symbol";
140
+ readonly outputs: readonly [{
141
+ readonly name: "";
142
+ readonly type: "string";
143
+ }];
144
+ readonly payable: false;
145
+ readonly stateMutability: "view";
146
+ readonly type: "function";
147
+ }, {
148
+ readonly constant: false;
149
+ readonly inputs: readonly [{
150
+ readonly name: "account";
151
+ readonly type: "address";
152
+ }];
153
+ readonly name: "addMinter";
154
+ readonly outputs: readonly [];
155
+ readonly payable: false;
156
+ readonly stateMutability: "nonpayable";
157
+ readonly type: "function";
158
+ }, {
159
+ readonly constant: false;
160
+ readonly inputs: readonly [];
161
+ readonly name: "renounceMinter";
162
+ readonly outputs: readonly [];
163
+ readonly payable: false;
164
+ readonly stateMutability: "nonpayable";
165
+ readonly type: "function";
166
+ }, {
167
+ readonly constant: false;
168
+ readonly inputs: readonly [{
169
+ readonly name: "spender";
170
+ readonly type: "address";
171
+ }, {
172
+ readonly name: "subtractedValue";
173
+ readonly type: "uint256";
174
+ }];
175
+ readonly name: "decreaseAllowance";
176
+ readonly outputs: readonly [{
177
+ readonly name: "";
178
+ readonly type: "bool";
179
+ }];
180
+ readonly payable: false;
181
+ readonly stateMutability: "nonpayable";
182
+ readonly type: "function";
183
+ }, {
184
+ readonly constant: false;
185
+ readonly inputs: readonly [{
186
+ readonly name: "recipient";
187
+ readonly type: "address";
188
+ }, {
189
+ readonly name: "amount";
190
+ readonly type: "uint256";
191
+ }];
192
+ readonly name: "transfer";
193
+ readonly outputs: readonly [{
194
+ readonly name: "";
195
+ readonly type: "bool";
196
+ }];
197
+ readonly payable: false;
198
+ readonly stateMutability: "nonpayable";
199
+ readonly type: "function";
200
+ }, {
201
+ readonly constant: true;
202
+ readonly inputs: readonly [{
203
+ readonly name: "account";
204
+ readonly type: "address";
205
+ }];
206
+ readonly name: "isMinter";
207
+ readonly outputs: readonly [{
208
+ readonly name: "";
209
+ readonly type: "bool";
210
+ }];
211
+ readonly payable: false;
212
+ readonly stateMutability: "view";
213
+ readonly type: "function";
214
+ }, {
215
+ readonly constant: false;
216
+ readonly inputs: readonly [{
217
+ readonly name: "newMinter";
218
+ readonly type: "address";
219
+ }];
220
+ readonly name: "transferMinterRole";
221
+ readonly outputs: readonly [];
222
+ readonly payable: false;
223
+ readonly stateMutability: "nonpayable";
224
+ readonly type: "function";
225
+ }, {
226
+ readonly constant: true;
227
+ readonly inputs: readonly [{
228
+ readonly name: "owner";
229
+ readonly type: "address";
230
+ }, {
231
+ readonly name: "spender";
232
+ readonly type: "address";
233
+ }];
234
+ readonly name: "allowance";
235
+ readonly outputs: readonly [{
236
+ readonly name: "";
237
+ readonly type: "uint256";
238
+ }];
239
+ readonly payable: false;
240
+ readonly stateMutability: "view";
241
+ readonly type: "function";
242
+ }, {
243
+ readonly inputs: readonly [{
244
+ readonly name: "name";
245
+ readonly type: "string";
246
+ }, {
247
+ readonly name: "symbol";
248
+ readonly type: "string";
249
+ }, {
250
+ readonly name: "decimals";
251
+ readonly type: "uint8";
252
+ }, {
253
+ readonly name: "initialSupply";
254
+ readonly type: "uint256";
255
+ }, {
256
+ readonly name: "feeReceiver";
257
+ readonly type: "address";
258
+ }, {
259
+ readonly name: "tokenOwnerAddress";
260
+ readonly type: "address";
261
+ }];
262
+ readonly payable: true;
263
+ readonly stateMutability: "payable";
264
+ readonly type: "constructor";
265
+ }, {
266
+ readonly anonymous: false;
267
+ readonly inputs: readonly [{
268
+ readonly indexed: true;
269
+ readonly name: "account";
270
+ readonly type: "address";
271
+ }];
272
+ readonly name: "MinterAdded";
273
+ readonly type: "event";
274
+ }, {
275
+ readonly anonymous: false;
276
+ readonly inputs: readonly [{
277
+ readonly indexed: true;
278
+ readonly name: "account";
279
+ readonly type: "address";
280
+ }];
281
+ readonly name: "MinterRemoved";
282
+ readonly type: "event";
283
+ }, {
284
+ readonly anonymous: false;
285
+ readonly inputs: readonly [{
286
+ readonly indexed: true;
287
+ readonly name: "from";
288
+ readonly type: "address";
289
+ }, {
290
+ readonly indexed: true;
291
+ readonly name: "to";
292
+ readonly type: "address";
293
+ }, {
294
+ readonly indexed: false;
295
+ readonly name: "value";
296
+ readonly type: "uint256";
297
+ }];
298
+ readonly name: "Transfer";
299
+ readonly type: "event";
300
+ }, {
301
+ readonly anonymous: false;
302
+ readonly inputs: readonly [{
303
+ readonly indexed: true;
304
+ readonly name: "owner";
305
+ readonly type: "address";
306
+ }, {
307
+ readonly indexed: true;
308
+ readonly name: "spender";
309
+ readonly type: "address";
310
+ }, {
311
+ readonly indexed: false;
312
+ readonly name: "value";
313
+ readonly type: "uint256";
314
+ }];
315
+ readonly name: "Approval";
316
+ readonly type: "event";
317
+ }];
318
+ /**
319
+ * Type-safe ABI for TokenMintERC20MintableToken_json
320
+ */
321
+ export type TokenMintERC20MintableToken_jsonAbi = typeof TokenMintERC20MintableToken_jsonAbi;
322
+ /**
323
+ * Contract instance type for TokenMintERC20MintableToken_json
324
+ */
325
+ export type TokenMintERC20MintableToken_jsonContract = any;
326
+ /**
327
+ * TokenMintERC20MintableToken_json Contract Class
328
+ *
329
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
330
+ *
331
+ * @example
332
+ * ```typescript
333
+ * import { createPublicClient, createWalletClient, http } from 'viem';
334
+ * import { mainnet } from 'viem/chains';
335
+ * import { TokenMintERC20MintableToken_json } from 'TokenMintERC20MintableToken_json';
336
+ *
337
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
338
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
339
+ *
340
+ * const contract = new TokenMintERC20MintableToken_json('0x...', { publicClient, walletClient });
341
+ *
342
+ * // Read functions
343
+ * const result = await contract.balanceOf('0x...');
344
+ *
345
+ * // Write functions
346
+ * const hash = await contract.transfer('0x...', 1000n);
347
+ *
348
+ * // Simulate transactions (dry-run)
349
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
350
+ * console.log('Gas estimate:', simulation.request.gas);
351
+ *
352
+ * // Watch events
353
+ * const unwatch = contract.watch.Transfer((event) => {
354
+ * console.log('Transfer event:', event);
355
+ * });
356
+ * ```
357
+ */
358
+ export declare class TokenMintERC20MintableToken_json {
359
+ private contract;
360
+ private contractAddress;
361
+ private publicClient;
362
+ constructor(address: Address, clients: {
363
+ publicClient: PublicClient;
364
+ walletClient?: WalletClient;
365
+ });
366
+ /**
367
+ * Get the contract address
368
+ */
369
+ get address(): Address;
370
+ /**
371
+ * Get the underlying viem contract instance
372
+ */
373
+ getContract(): TokenMintERC20MintableToken_jsonContract;
374
+ /**
375
+ * name
376
+ * view
377
+ */
378
+ name(): Promise<string>;
379
+ /**
380
+ * totalSupply
381
+ * view
382
+ */
383
+ totalSupply(): Promise<bigint>;
384
+ /**
385
+ * decimals
386
+ * view
387
+ */
388
+ decimals(): Promise<bigint>;
389
+ /**
390
+ * balanceOf
391
+ * view
392
+ */
393
+ balanceOf(account: `0x${string}`): Promise<bigint>;
394
+ /**
395
+ * symbol
396
+ * view
397
+ */
398
+ symbol(): Promise<string>;
399
+ /**
400
+ * isMinter
401
+ * view
402
+ */
403
+ isMinter(account: `0x${string}`): Promise<boolean>;
404
+ /**
405
+ * allowance
406
+ * view
407
+ */
408
+ allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
409
+ /**
410
+ * approve
411
+ * nonpayable
412
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
413
+ */
414
+ approve(spender: `0x${string}`, value: bigint, options?: {
415
+ accessList?: import('viem').AccessList;
416
+ authorizationList?: import('viem').AuthorizationList;
417
+ chain?: import('viem').Chain | null;
418
+ dataSuffix?: `0x${string}`;
419
+ gas?: bigint;
420
+ gasPrice?: bigint;
421
+ maxFeePerGas?: bigint;
422
+ maxPriorityFeePerGas?: bigint;
423
+ nonce?: number;
424
+ value?: bigint;
425
+ }): Promise<`0x${string}`>;
426
+ /**
427
+ * transferFrom
428
+ * nonpayable
429
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
430
+ */
431
+ transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
432
+ accessList?: import('viem').AccessList;
433
+ authorizationList?: import('viem').AuthorizationList;
434
+ chain?: import('viem').Chain | null;
435
+ dataSuffix?: `0x${string}`;
436
+ gas?: bigint;
437
+ gasPrice?: bigint;
438
+ maxFeePerGas?: bigint;
439
+ maxPriorityFeePerGas?: bigint;
440
+ nonce?: number;
441
+ value?: bigint;
442
+ }): Promise<`0x${string}`>;
443
+ /**
444
+ * increaseAllowance
445
+ * nonpayable
446
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
447
+ */
448
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
449
+ accessList?: import('viem').AccessList;
450
+ authorizationList?: import('viem').AuthorizationList;
451
+ chain?: import('viem').Chain | null;
452
+ dataSuffix?: `0x${string}`;
453
+ gas?: bigint;
454
+ gasPrice?: bigint;
455
+ maxFeePerGas?: bigint;
456
+ maxPriorityFeePerGas?: bigint;
457
+ nonce?: number;
458
+ value?: bigint;
459
+ }): Promise<`0x${string}`>;
460
+ /**
461
+ * mint
462
+ * nonpayable
463
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
464
+ */
465
+ mint(account: `0x${string}`, amount: bigint, options?: {
466
+ accessList?: import('viem').AccessList;
467
+ authorizationList?: import('viem').AuthorizationList;
468
+ chain?: import('viem').Chain | null;
469
+ dataSuffix?: `0x${string}`;
470
+ gas?: bigint;
471
+ gasPrice?: bigint;
472
+ maxFeePerGas?: bigint;
473
+ maxPriorityFeePerGas?: bigint;
474
+ nonce?: number;
475
+ value?: bigint;
476
+ }): Promise<`0x${string}`>;
477
+ /**
478
+ * burn
479
+ * nonpayable
480
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
481
+ */
482
+ burn(value: bigint, options?: {
483
+ accessList?: import('viem').AccessList;
484
+ authorizationList?: import('viem').AuthorizationList;
485
+ chain?: import('viem').Chain | null;
486
+ dataSuffix?: `0x${string}`;
487
+ gas?: bigint;
488
+ gasPrice?: bigint;
489
+ maxFeePerGas?: bigint;
490
+ maxPriorityFeePerGas?: bigint;
491
+ nonce?: number;
492
+ value?: bigint;
493
+ }): Promise<`0x${string}`>;
494
+ /**
495
+ * addMinter
496
+ * nonpayable
497
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
498
+ */
499
+ addMinter(account: `0x${string}`, options?: {
500
+ accessList?: import('viem').AccessList;
501
+ authorizationList?: import('viem').AuthorizationList;
502
+ chain?: import('viem').Chain | null;
503
+ dataSuffix?: `0x${string}`;
504
+ gas?: bigint;
505
+ gasPrice?: bigint;
506
+ maxFeePerGas?: bigint;
507
+ maxPriorityFeePerGas?: bigint;
508
+ nonce?: number;
509
+ value?: bigint;
510
+ }): Promise<`0x${string}`>;
511
+ /**
512
+ * renounceMinter
513
+ * nonpayable
514
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
515
+ */
516
+ renounceMinter(options?: {
517
+ accessList?: import('viem').AccessList;
518
+ authorizationList?: import('viem').AuthorizationList;
519
+ chain?: import('viem').Chain | null;
520
+ dataSuffix?: `0x${string}`;
521
+ gas?: bigint;
522
+ gasPrice?: bigint;
523
+ maxFeePerGas?: bigint;
524
+ maxPriorityFeePerGas?: bigint;
525
+ nonce?: number;
526
+ value?: bigint;
527
+ }): Promise<`0x${string}`>;
528
+ /**
529
+ * decreaseAllowance
530
+ * nonpayable
531
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
532
+ */
533
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
534
+ accessList?: import('viem').AccessList;
535
+ authorizationList?: import('viem').AuthorizationList;
536
+ chain?: import('viem').Chain | null;
537
+ dataSuffix?: `0x${string}`;
538
+ gas?: bigint;
539
+ gasPrice?: bigint;
540
+ maxFeePerGas?: bigint;
541
+ maxPriorityFeePerGas?: bigint;
542
+ nonce?: number;
543
+ value?: bigint;
544
+ }): Promise<`0x${string}`>;
545
+ /**
546
+ * transfer
547
+ * nonpayable
548
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
549
+ */
550
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
551
+ accessList?: import('viem').AccessList;
552
+ authorizationList?: import('viem').AuthorizationList;
553
+ chain?: import('viem').Chain | null;
554
+ dataSuffix?: `0x${string}`;
555
+ gas?: bigint;
556
+ gasPrice?: bigint;
557
+ maxFeePerGas?: bigint;
558
+ maxPriorityFeePerGas?: bigint;
559
+ nonce?: number;
560
+ value?: bigint;
561
+ }): Promise<`0x${string}`>;
562
+ /**
563
+ * transferMinterRole
564
+ * nonpayable
565
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
566
+ */
567
+ transferMinterRole(newMinter: `0x${string}`, options?: {
568
+ accessList?: import('viem').AccessList;
569
+ authorizationList?: import('viem').AuthorizationList;
570
+ chain?: import('viem').Chain | null;
571
+ dataSuffix?: `0x${string}`;
572
+ gas?: bigint;
573
+ gasPrice?: bigint;
574
+ maxFeePerGas?: bigint;
575
+ maxPriorityFeePerGas?: bigint;
576
+ nonce?: number;
577
+ value?: bigint;
578
+ }): Promise<`0x${string}`>;
579
+ /**
580
+ * Simulate contract write operations (dry-run without sending transaction)
581
+ *
582
+ * @example
583
+ * const result = await contract.simulate.transfer('0x...', 1000n);
584
+ * console.log('Gas estimate:', result.request.gas);
585
+ * console.log('Would succeed:', result.result);
586
+ */
587
+ get simulate(): {
588
+ /**
589
+ * Simulate approve
590
+ * Returns gas estimate and result without sending transaction
591
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
592
+ */
593
+ approve(spender: `0x${string}`, value: bigint, options?: {
594
+ accessList?: import("viem").AccessList;
595
+ authorizationList?: import("viem").AuthorizationList;
596
+ chain?: import("viem").Chain | null;
597
+ dataSuffix?: `0x${string}`;
598
+ gas?: bigint;
599
+ gasPrice?: bigint;
600
+ maxFeePerGas?: bigint;
601
+ maxPriorityFeePerGas?: bigint;
602
+ nonce?: number;
603
+ value?: bigint;
604
+ }): Promise<boolean>;
605
+ /**
606
+ * Simulate transferFrom
607
+ * Returns gas estimate and result without sending transaction
608
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
609
+ */
610
+ transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
611
+ accessList?: import("viem").AccessList;
612
+ authorizationList?: import("viem").AuthorizationList;
613
+ chain?: import("viem").Chain | null;
614
+ dataSuffix?: `0x${string}`;
615
+ gas?: bigint;
616
+ gasPrice?: bigint;
617
+ maxFeePerGas?: bigint;
618
+ maxPriorityFeePerGas?: bigint;
619
+ nonce?: number;
620
+ value?: bigint;
621
+ }): Promise<boolean>;
622
+ /**
623
+ * Simulate increaseAllowance
624
+ * Returns gas estimate and result without sending transaction
625
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
626
+ */
627
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
628
+ accessList?: import("viem").AccessList;
629
+ authorizationList?: import("viem").AuthorizationList;
630
+ chain?: import("viem").Chain | null;
631
+ dataSuffix?: `0x${string}`;
632
+ gas?: bigint;
633
+ gasPrice?: bigint;
634
+ maxFeePerGas?: bigint;
635
+ maxPriorityFeePerGas?: bigint;
636
+ nonce?: number;
637
+ value?: bigint;
638
+ }): Promise<boolean>;
639
+ /**
640
+ * Simulate mint
641
+ * Returns gas estimate and result without sending transaction
642
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
643
+ */
644
+ mint(account: `0x${string}`, amount: bigint, options?: {
645
+ accessList?: import("viem").AccessList;
646
+ authorizationList?: import("viem").AuthorizationList;
647
+ chain?: import("viem").Chain | null;
648
+ dataSuffix?: `0x${string}`;
649
+ gas?: bigint;
650
+ gasPrice?: bigint;
651
+ maxFeePerGas?: bigint;
652
+ maxPriorityFeePerGas?: bigint;
653
+ nonce?: number;
654
+ value?: bigint;
655
+ }): Promise<boolean>;
656
+ /**
657
+ * Simulate burn
658
+ * Returns gas estimate and result without sending transaction
659
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
660
+ */
661
+ burn(value: bigint, options?: {
662
+ accessList?: import("viem").AccessList;
663
+ authorizationList?: import("viem").AuthorizationList;
664
+ chain?: import("viem").Chain | null;
665
+ dataSuffix?: `0x${string}`;
666
+ gas?: bigint;
667
+ gasPrice?: bigint;
668
+ maxFeePerGas?: bigint;
669
+ maxPriorityFeePerGas?: bigint;
670
+ nonce?: number;
671
+ value?: bigint;
672
+ }): Promise<void>;
673
+ /**
674
+ * Simulate addMinter
675
+ * Returns gas estimate and result without sending transaction
676
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
677
+ */
678
+ addMinter(account: `0x${string}`, options?: {
679
+ accessList?: import("viem").AccessList;
680
+ authorizationList?: import("viem").AuthorizationList;
681
+ chain?: import("viem").Chain | null;
682
+ dataSuffix?: `0x${string}`;
683
+ gas?: bigint;
684
+ gasPrice?: bigint;
685
+ maxFeePerGas?: bigint;
686
+ maxPriorityFeePerGas?: bigint;
687
+ nonce?: number;
688
+ value?: bigint;
689
+ }): Promise<void>;
690
+ /**
691
+ * Simulate renounceMinter
692
+ * Returns gas estimate and result without sending transaction
693
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
694
+ */
695
+ renounceMinter(options?: {
696
+ accessList?: import("viem").AccessList;
697
+ authorizationList?: import("viem").AuthorizationList;
698
+ chain?: import("viem").Chain | null;
699
+ dataSuffix?: `0x${string}`;
700
+ gas?: bigint;
701
+ gasPrice?: bigint;
702
+ maxFeePerGas?: bigint;
703
+ maxPriorityFeePerGas?: bigint;
704
+ nonce?: number;
705
+ value?: bigint;
706
+ }): Promise<void>;
707
+ /**
708
+ * Simulate decreaseAllowance
709
+ * Returns gas estimate and result without sending transaction
710
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
711
+ */
712
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
713
+ accessList?: import("viem").AccessList;
714
+ authorizationList?: import("viem").AuthorizationList;
715
+ chain?: import("viem").Chain | null;
716
+ dataSuffix?: `0x${string}`;
717
+ gas?: bigint;
718
+ gasPrice?: bigint;
719
+ maxFeePerGas?: bigint;
720
+ maxPriorityFeePerGas?: bigint;
721
+ nonce?: number;
722
+ value?: bigint;
723
+ }): Promise<boolean>;
724
+ /**
725
+ * Simulate transfer
726
+ * Returns gas estimate and result without sending transaction
727
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
728
+ */
729
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
730
+ accessList?: import("viem").AccessList;
731
+ authorizationList?: import("viem").AuthorizationList;
732
+ chain?: import("viem").Chain | null;
733
+ dataSuffix?: `0x${string}`;
734
+ gas?: bigint;
735
+ gasPrice?: bigint;
736
+ maxFeePerGas?: bigint;
737
+ maxPriorityFeePerGas?: bigint;
738
+ nonce?: number;
739
+ value?: bigint;
740
+ }): Promise<boolean>;
741
+ /**
742
+ * Simulate transferMinterRole
743
+ * Returns gas estimate and result without sending transaction
744
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
745
+ */
746
+ transferMinterRole(newMinter: `0x${string}`, options?: {
747
+ accessList?: import("viem").AccessList;
748
+ authorizationList?: import("viem").AuthorizationList;
749
+ chain?: import("viem").Chain | null;
750
+ dataSuffix?: `0x${string}`;
751
+ gas?: bigint;
752
+ gasPrice?: bigint;
753
+ maxFeePerGas?: bigint;
754
+ maxPriorityFeePerGas?: bigint;
755
+ nonce?: number;
756
+ value?: bigint;
757
+ }): Promise<void>;
758
+ };
759
+ /**
760
+ * Watch contract events
761
+ *
762
+ * @example
763
+ * // Watch all Transfer events
764
+ * const unwatch = contract.watch.Transfer((event) => {
765
+ * console.log('Transfer:', event);
766
+ * });
767
+ *
768
+ * // Stop watching
769
+ * unwatch();
770
+ */
771
+ get watch(): {
772
+ /**
773
+ * Watch MinterAdded events
774
+ * @param callback Function to call when event is emitted
775
+ * @param filter Optional filter for indexed parameters
776
+ * @returns Unwatch function to stop listening
777
+ */
778
+ MinterAdded: (callback: (event: {
779
+ account: `0x${string}`;
780
+ }) => void, filter?: {
781
+ account: `0x${string}`;
782
+ }) => () => void;
783
+ /**
784
+ * Watch MinterRemoved events
785
+ * @param callback Function to call when event is emitted
786
+ * @param filter Optional filter for indexed parameters
787
+ * @returns Unwatch function to stop listening
788
+ */
789
+ MinterRemoved: (callback: (event: {
790
+ account: `0x${string}`;
791
+ }) => void, filter?: {
792
+ account: `0x${string}`;
793
+ }) => () => void;
794
+ /**
795
+ * Watch Transfer events
796
+ * @param callback Function to call when event is emitted
797
+ * @param filter Optional filter for indexed parameters
798
+ * @returns Unwatch function to stop listening
799
+ */
800
+ Transfer: (callback: (event: {
801
+ from: `0x${string}`;
802
+ to: `0x${string}`;
803
+ value: bigint;
804
+ }) => void, filter?: {
805
+ from: `0x${string}`;
806
+ to: `0x${string}`;
807
+ }) => () => void;
808
+ /**
809
+ * Watch Approval events
810
+ * @param callback Function to call when event is emitted
811
+ * @param filter Optional filter for indexed parameters
812
+ * @returns Unwatch function to stop listening
813
+ */
814
+ Approval: (callback: (event: {
815
+ owner: `0x${string}`;
816
+ spender: `0x${string}`;
817
+ value: bigint;
818
+ }) => void, filter?: {
819
+ owner: `0x${string}`;
820
+ spender: `0x${string}`;
821
+ }) => () => void;
822
+ };
823
+ }