@gitmyabi/usd 1.0.5 → 1.0.6

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