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