@gitmyabi/stbz 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,776 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * StabilizeToken_json ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const StabilizeToken_jsonAbi: readonly [{
8
+ readonly anonymous: false;
9
+ readonly inputs: readonly [{
10
+ readonly indexed: true;
11
+ readonly internalType: "address";
12
+ readonly name: "owner";
13
+ readonly type: "address";
14
+ }, {
15
+ readonly indexed: true;
16
+ readonly internalType: "address";
17
+ readonly name: "spender";
18
+ readonly type: "address";
19
+ }, {
20
+ readonly indexed: false;
21
+ readonly internalType: "uint256";
22
+ readonly name: "value";
23
+ readonly type: "uint256";
24
+ }];
25
+ readonly name: "Approval";
26
+ readonly type: "event";
27
+ }, {
28
+ readonly anonymous: false;
29
+ readonly inputs: readonly [];
30
+ readonly name: "BurnStarted";
31
+ readonly type: "event";
32
+ }, {
33
+ readonly anonymous: false;
34
+ readonly inputs: readonly [{
35
+ readonly indexed: true;
36
+ readonly internalType: "address";
37
+ readonly name: "previousOwner";
38
+ readonly type: "address";
39
+ }, {
40
+ readonly indexed: true;
41
+ readonly internalType: "address";
42
+ readonly name: "newOwner";
43
+ readonly type: "address";
44
+ }];
45
+ readonly name: "OwnershipTransferred";
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 name: "burnRate";
120
+ readonly outputs: readonly [{
121
+ readonly internalType: "uint256";
122
+ readonly name: "";
123
+ readonly type: "uint256";
124
+ }];
125
+ readonly stateMutability: "view";
126
+ readonly type: "function";
127
+ }, {
128
+ readonly inputs: readonly [];
129
+ readonly name: "decimals";
130
+ readonly outputs: readonly [{
131
+ readonly internalType: "uint8";
132
+ readonly name: "";
133
+ readonly type: "uint8";
134
+ }];
135
+ readonly stateMutability: "view";
136
+ readonly type: "function";
137
+ }, {
138
+ readonly inputs: readonly [{
139
+ readonly internalType: "address";
140
+ readonly name: "spender";
141
+ readonly type: "address";
142
+ }, {
143
+ readonly internalType: "uint256";
144
+ readonly name: "subtractedValue";
145
+ readonly type: "uint256";
146
+ }];
147
+ readonly name: "decreaseAllowance";
148
+ readonly outputs: readonly [{
149
+ readonly internalType: "bool";
150
+ readonly name: "";
151
+ readonly type: "bool";
152
+ }];
153
+ readonly stateMutability: "nonpayable";
154
+ readonly type: "function";
155
+ }, {
156
+ readonly inputs: readonly [{
157
+ readonly internalType: "address";
158
+ readonly name: "spender";
159
+ readonly type: "address";
160
+ }, {
161
+ readonly internalType: "uint256";
162
+ readonly name: "addedValue";
163
+ readonly type: "uint256";
164
+ }];
165
+ readonly name: "increaseAllowance";
166
+ readonly outputs: readonly [{
167
+ readonly internalType: "bool";
168
+ readonly name: "";
169
+ readonly type: "bool";
170
+ }];
171
+ readonly stateMutability: "nonpayable";
172
+ readonly type: "function";
173
+ }, {
174
+ readonly inputs: readonly [{
175
+ readonly internalType: "uint256";
176
+ readonly name: "rate";
177
+ readonly type: "uint256";
178
+ }];
179
+ readonly name: "initiateBurn";
180
+ readonly outputs: readonly [{
181
+ readonly internalType: "bool";
182
+ readonly name: "";
183
+ readonly type: "bool";
184
+ }];
185
+ readonly stateMutability: "nonpayable";
186
+ readonly type: "function";
187
+ }, {
188
+ readonly inputs: readonly [{
189
+ readonly internalType: "address";
190
+ readonly name: "_to";
191
+ readonly type: "address";
192
+ }, {
193
+ readonly internalType: "uint256";
194
+ readonly name: "_amount";
195
+ readonly type: "uint256";
196
+ }];
197
+ readonly name: "mint";
198
+ readonly outputs: readonly [{
199
+ readonly internalType: "bool";
200
+ readonly name: "";
201
+ readonly type: "bool";
202
+ }];
203
+ readonly stateMutability: "nonpayable";
204
+ readonly type: "function";
205
+ }, {
206
+ readonly inputs: readonly [];
207
+ readonly name: "name";
208
+ readonly outputs: readonly [{
209
+ readonly internalType: "string";
210
+ readonly name: "";
211
+ readonly type: "string";
212
+ }];
213
+ readonly stateMutability: "view";
214
+ readonly type: "function";
215
+ }, {
216
+ readonly inputs: readonly [];
217
+ readonly name: "owner";
218
+ readonly outputs: readonly [{
219
+ readonly internalType: "address";
220
+ readonly name: "";
221
+ readonly type: "address";
222
+ }];
223
+ readonly stateMutability: "view";
224
+ readonly type: "function";
225
+ }, {
226
+ readonly inputs: readonly [];
227
+ readonly name: "renounceOwnership";
228
+ readonly outputs: readonly [];
229
+ readonly stateMutability: "nonpayable";
230
+ readonly type: "function";
231
+ }, {
232
+ readonly inputs: readonly [];
233
+ readonly name: "symbol";
234
+ readonly outputs: readonly [{
235
+ readonly internalType: "string";
236
+ readonly name: "";
237
+ readonly type: "string";
238
+ }];
239
+ readonly stateMutability: "view";
240
+ readonly type: "function";
241
+ }, {
242
+ readonly inputs: readonly [];
243
+ readonly name: "totalSupply";
244
+ readonly outputs: readonly [{
245
+ readonly internalType: "uint256";
246
+ readonly name: "";
247
+ readonly type: "uint256";
248
+ }];
249
+ readonly stateMutability: "view";
250
+ readonly type: "function";
251
+ }, {
252
+ readonly inputs: readonly [{
253
+ readonly internalType: "address";
254
+ readonly name: "recipient";
255
+ readonly type: "address";
256
+ }, {
257
+ readonly internalType: "uint256";
258
+ readonly name: "amount";
259
+ readonly type: "uint256";
260
+ }];
261
+ readonly name: "transfer";
262
+ readonly outputs: readonly [{
263
+ readonly internalType: "bool";
264
+ readonly name: "";
265
+ readonly type: "bool";
266
+ }];
267
+ readonly stateMutability: "nonpayable";
268
+ readonly type: "function";
269
+ }, {
270
+ readonly inputs: readonly [{
271
+ readonly internalType: "address";
272
+ readonly name: "sender";
273
+ readonly type: "address";
274
+ }, {
275
+ readonly internalType: "address";
276
+ readonly name: "recipient";
277
+ readonly type: "address";
278
+ }, {
279
+ readonly internalType: "uint256";
280
+ readonly name: "amount";
281
+ readonly type: "uint256";
282
+ }];
283
+ readonly name: "transferFrom";
284
+ readonly outputs: readonly [{
285
+ readonly internalType: "bool";
286
+ readonly name: "";
287
+ readonly type: "bool";
288
+ }];
289
+ readonly stateMutability: "nonpayable";
290
+ readonly type: "function";
291
+ }, {
292
+ readonly inputs: readonly [{
293
+ readonly internalType: "address";
294
+ readonly name: "newOwner";
295
+ readonly type: "address";
296
+ }];
297
+ readonly name: "transferOwnership";
298
+ readonly outputs: readonly [];
299
+ readonly stateMutability: "nonpayable";
300
+ readonly type: "function";
301
+ }];
302
+ /**
303
+ * Type-safe ABI for StabilizeToken_json
304
+ */
305
+ export type StabilizeToken_jsonAbi = typeof StabilizeToken_jsonAbi;
306
+ /**
307
+ * Contract instance type for StabilizeToken_json
308
+ */
309
+ export type StabilizeToken_jsonContract = any;
310
+ /**
311
+ * StabilizeToken_json Contract Class
312
+ *
313
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
314
+ *
315
+ * @example
316
+ * ```typescript
317
+ * import { createPublicClient, createWalletClient, http } from 'viem';
318
+ * import { mainnet } from 'viem/chains';
319
+ * import { StabilizeToken_json } from 'StabilizeToken_json';
320
+ *
321
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
322
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
323
+ *
324
+ * const contract = new StabilizeToken_json('0x...', { publicClient, walletClient });
325
+ *
326
+ * // Read functions
327
+ * const result = await contract.balanceOf('0x...');
328
+ *
329
+ * // Write functions
330
+ * const hash = await contract.transfer('0x...', 1000n);
331
+ *
332
+ * // Simulate transactions (dry-run)
333
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
334
+ * console.log('Gas estimate:', simulation.request.gas);
335
+ *
336
+ * // Watch events
337
+ * const unwatch = contract.watch.Transfer((event) => {
338
+ * console.log('Transfer event:', event);
339
+ * });
340
+ * ```
341
+ */
342
+ export declare class StabilizeToken_json {
343
+ private contract;
344
+ private contractAddress;
345
+ private publicClient;
346
+ constructor(address: Address, clients: {
347
+ publicClient: PublicClient;
348
+ walletClient?: WalletClient;
349
+ });
350
+ /**
351
+ * Get the contract address
352
+ */
353
+ get address(): Address;
354
+ /**
355
+ * Get the underlying viem contract instance
356
+ */
357
+ getContract(): StabilizeToken_jsonContract;
358
+ /**
359
+ * allowance
360
+ * view
361
+ */
362
+ allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
363
+ /**
364
+ * balanceOf
365
+ * view
366
+ */
367
+ balanceOf(account: `0x${string}`): Promise<bigint>;
368
+ /**
369
+ * burnRate
370
+ * view
371
+ */
372
+ burnRate(): Promise<bigint>;
373
+ /**
374
+ * decimals
375
+ * view
376
+ */
377
+ decimals(): Promise<bigint>;
378
+ /**
379
+ * name
380
+ * view
381
+ */
382
+ name(): Promise<string>;
383
+ /**
384
+ * owner
385
+ * view
386
+ */
387
+ owner(): Promise<`0x${string}`>;
388
+ /**
389
+ * symbol
390
+ * view
391
+ */
392
+ symbol(): Promise<string>;
393
+ /**
394
+ * totalSupply
395
+ * view
396
+ */
397
+ totalSupply(): Promise<bigint>;
398
+ /**
399
+ * approve
400
+ * nonpayable
401
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
402
+ */
403
+ approve(spender: `0x${string}`, amount: bigint, options?: {
404
+ accessList?: import('viem').AccessList;
405
+ authorizationList?: import('viem').AuthorizationList;
406
+ chain?: import('viem').Chain | null;
407
+ dataSuffix?: `0x${string}`;
408
+ gas?: bigint;
409
+ gasPrice?: bigint;
410
+ maxFeePerGas?: bigint;
411
+ maxPriorityFeePerGas?: bigint;
412
+ nonce?: number;
413
+ value?: bigint;
414
+ }): Promise<`0x${string}`>;
415
+ /**
416
+ * decreaseAllowance
417
+ * nonpayable
418
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
419
+ */
420
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
421
+ accessList?: import('viem').AccessList;
422
+ authorizationList?: import('viem').AuthorizationList;
423
+ chain?: import('viem').Chain | null;
424
+ dataSuffix?: `0x${string}`;
425
+ gas?: bigint;
426
+ gasPrice?: bigint;
427
+ maxFeePerGas?: bigint;
428
+ maxPriorityFeePerGas?: bigint;
429
+ nonce?: number;
430
+ value?: bigint;
431
+ }): Promise<`0x${string}`>;
432
+ /**
433
+ * increaseAllowance
434
+ * nonpayable
435
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
436
+ */
437
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
438
+ accessList?: import('viem').AccessList;
439
+ authorizationList?: import('viem').AuthorizationList;
440
+ chain?: import('viem').Chain | null;
441
+ dataSuffix?: `0x${string}`;
442
+ gas?: bigint;
443
+ gasPrice?: bigint;
444
+ maxFeePerGas?: bigint;
445
+ maxPriorityFeePerGas?: bigint;
446
+ nonce?: number;
447
+ value?: bigint;
448
+ }): Promise<`0x${string}`>;
449
+ /**
450
+ * initiateBurn
451
+ * nonpayable
452
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
453
+ */
454
+ initiateBurn(rate: bigint, options?: {
455
+ accessList?: import('viem').AccessList;
456
+ authorizationList?: import('viem').AuthorizationList;
457
+ chain?: import('viem').Chain | null;
458
+ dataSuffix?: `0x${string}`;
459
+ gas?: bigint;
460
+ gasPrice?: bigint;
461
+ maxFeePerGas?: bigint;
462
+ maxPriorityFeePerGas?: bigint;
463
+ nonce?: number;
464
+ value?: bigint;
465
+ }): Promise<`0x${string}`>;
466
+ /**
467
+ * mint
468
+ * nonpayable
469
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
470
+ */
471
+ mint(_to: `0x${string}`, _amount: bigint, options?: {
472
+ accessList?: import('viem').AccessList;
473
+ authorizationList?: import('viem').AuthorizationList;
474
+ chain?: import('viem').Chain | null;
475
+ dataSuffix?: `0x${string}`;
476
+ gas?: bigint;
477
+ gasPrice?: bigint;
478
+ maxFeePerGas?: bigint;
479
+ maxPriorityFeePerGas?: bigint;
480
+ nonce?: number;
481
+ value?: bigint;
482
+ }): Promise<`0x${string}`>;
483
+ /**
484
+ * renounceOwnership
485
+ * nonpayable
486
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
487
+ */
488
+ renounceOwnership(options?: {
489
+ accessList?: import('viem').AccessList;
490
+ authorizationList?: import('viem').AuthorizationList;
491
+ chain?: import('viem').Chain | null;
492
+ dataSuffix?: `0x${string}`;
493
+ gas?: bigint;
494
+ gasPrice?: bigint;
495
+ maxFeePerGas?: bigint;
496
+ maxPriorityFeePerGas?: bigint;
497
+ nonce?: number;
498
+ value?: bigint;
499
+ }): Promise<`0x${string}`>;
500
+ /**
501
+ * transfer
502
+ * nonpayable
503
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
504
+ */
505
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
506
+ accessList?: import('viem').AccessList;
507
+ authorizationList?: import('viem').AuthorizationList;
508
+ chain?: import('viem').Chain | null;
509
+ dataSuffix?: `0x${string}`;
510
+ gas?: bigint;
511
+ gasPrice?: bigint;
512
+ maxFeePerGas?: bigint;
513
+ maxPriorityFeePerGas?: bigint;
514
+ nonce?: number;
515
+ value?: bigint;
516
+ }): Promise<`0x${string}`>;
517
+ /**
518
+ * transferFrom
519
+ * nonpayable
520
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
521
+ */
522
+ transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: bigint, options?: {
523
+ accessList?: import('viem').AccessList;
524
+ authorizationList?: import('viem').AuthorizationList;
525
+ chain?: import('viem').Chain | null;
526
+ dataSuffix?: `0x${string}`;
527
+ gas?: bigint;
528
+ gasPrice?: bigint;
529
+ maxFeePerGas?: bigint;
530
+ maxPriorityFeePerGas?: bigint;
531
+ nonce?: number;
532
+ value?: bigint;
533
+ }): Promise<`0x${string}`>;
534
+ /**
535
+ * transferOwnership
536
+ * nonpayable
537
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
538
+ */
539
+ transferOwnership(newOwner: `0x${string}`, options?: {
540
+ accessList?: import('viem').AccessList;
541
+ authorizationList?: import('viem').AuthorizationList;
542
+ chain?: import('viem').Chain | null;
543
+ dataSuffix?: `0x${string}`;
544
+ gas?: bigint;
545
+ gasPrice?: bigint;
546
+ maxFeePerGas?: bigint;
547
+ maxPriorityFeePerGas?: bigint;
548
+ nonce?: number;
549
+ value?: bigint;
550
+ }): Promise<`0x${string}`>;
551
+ /**
552
+ * Simulate contract write operations (dry-run without sending transaction)
553
+ *
554
+ * @example
555
+ * const result = await contract.simulate.transfer('0x...', 1000n);
556
+ * console.log('Gas estimate:', result.request.gas);
557
+ * console.log('Would succeed:', result.result);
558
+ */
559
+ get simulate(): {
560
+ /**
561
+ * Simulate approve
562
+ * Returns gas estimate and result without sending transaction
563
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
564
+ */
565
+ approve(spender: `0x${string}`, amount: 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<boolean>;
577
+ /**
578
+ * Simulate decreaseAllowance
579
+ * Returns gas estimate and result without sending transaction
580
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
581
+ */
582
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: 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<boolean>;
594
+ /**
595
+ * Simulate increaseAllowance
596
+ * Returns gas estimate and result without sending transaction
597
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
598
+ */
599
+ increaseAllowance(spender: `0x${string}`, addedValue: 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<boolean>;
611
+ /**
612
+ * Simulate initiateBurn
613
+ * Returns gas estimate and result without sending transaction
614
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
615
+ */
616
+ initiateBurn(rate: bigint, 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<boolean>;
628
+ /**
629
+ * Simulate mint
630
+ * Returns gas estimate and result without sending transaction
631
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
632
+ */
633
+ mint(_to: `0x${string}`, _amount: 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<boolean>;
645
+ /**
646
+ * Simulate renounceOwnership
647
+ * Returns gas estimate and result without sending transaction
648
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
649
+ */
650
+ renounceOwnership(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<void>;
662
+ /**
663
+ * Simulate transfer
664
+ * Returns gas estimate and result without sending transaction
665
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
666
+ */
667
+ transfer(recipient: `0x${string}`, amount: 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<boolean>;
679
+ /**
680
+ * Simulate transferFrom
681
+ * Returns gas estimate and result without sending transaction
682
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
683
+ */
684
+ transferFrom(sender: `0x${string}`, recipient: `0x${string}`, amount: 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<boolean>;
696
+ /**
697
+ * Simulate transferOwnership
698
+ * Returns gas estimate and result without sending transaction
699
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
700
+ */
701
+ transferOwnership(newOwner: `0x${string}`, 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<void>;
713
+ };
714
+ /**
715
+ * Watch contract events
716
+ *
717
+ * @example
718
+ * // Watch all Transfer events
719
+ * const unwatch = contract.watch.Transfer((event) => {
720
+ * console.log('Transfer:', event);
721
+ * });
722
+ *
723
+ * // Stop watching
724
+ * unwatch();
725
+ */
726
+ get watch(): {
727
+ /**
728
+ * Watch Approval events
729
+ * @param callback Function to call when event is emitted
730
+ * @param filter Optional filter for indexed parameters
731
+ * @returns Unwatch function to stop listening
732
+ */
733
+ Approval: (callback: (event: {
734
+ owner: `0x${string}`;
735
+ spender: `0x${string}`;
736
+ value: bigint;
737
+ }) => void, filter?: {
738
+ owner: `0x${string}`;
739
+ spender: `0x${string}`;
740
+ }) => () => void;
741
+ /**
742
+ * Watch BurnStarted events
743
+ * @param callback Function to call when event is emitted
744
+ * @param filter Optional filter for indexed parameters
745
+ * @returns Unwatch function to stop listening
746
+ */
747
+ BurnStarted: (callback: (event: {}) => void) => () => void;
748
+ /**
749
+ * Watch OwnershipTransferred events
750
+ * @param callback Function to call when event is emitted
751
+ * @param filter Optional filter for indexed parameters
752
+ * @returns Unwatch function to stop listening
753
+ */
754
+ OwnershipTransferred: (callback: (event: {
755
+ previousOwner: `0x${string}`;
756
+ newOwner: `0x${string}`;
757
+ }) => void, filter?: {
758
+ previousOwner: `0x${string}`;
759
+ newOwner: `0x${string}`;
760
+ }) => () => void;
761
+ /**
762
+ * Watch Transfer events
763
+ * @param callback Function to call when event is emitted
764
+ * @param filter Optional filter for indexed parameters
765
+ * @returns Unwatch function to stop listening
766
+ */
767
+ Transfer: (callback: (event: {
768
+ from: `0x${string}`;
769
+ to: `0x${string}`;
770
+ value: bigint;
771
+ }) => void, filter?: {
772
+ from: `0x${string}`;
773
+ to: `0x${string}`;
774
+ }) => () => void;
775
+ };
776
+ }