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