@gitmyabi/thnd 0.0.0-stage → 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1195 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * THREEHUNDRED_json ABI
4
+ *
5
+ * This ABI is typed using viem's type system for full type safety.
6
+ */
7
+ export declare const THREEHUNDRED_jsonAbi: readonly [{
8
+ readonly inputs: readonly [];
9
+ readonly stateMutability: "nonpayable";
10
+ readonly type: "constructor";
11
+ }, {
12
+ readonly anonymous: false;
13
+ readonly inputs: readonly [{
14
+ readonly indexed: true;
15
+ readonly internalType: "address";
16
+ readonly name: "owner";
17
+ readonly type: "address";
18
+ }, {
19
+ readonly indexed: true;
20
+ readonly internalType: "address";
21
+ readonly name: "spender";
22
+ readonly type: "address";
23
+ }, {
24
+ readonly indexed: false;
25
+ readonly internalType: "uint256";
26
+ readonly name: "value";
27
+ readonly type: "uint256";
28
+ }];
29
+ readonly name: "Approval";
30
+ readonly type: "event";
31
+ }, {
32
+ readonly anonymous: false;
33
+ readonly inputs: readonly [{
34
+ readonly indexed: false;
35
+ readonly internalType: "address";
36
+ readonly name: "sender";
37
+ readonly type: "address";
38
+ }, {
39
+ readonly indexed: false;
40
+ readonly internalType: "uint256";
41
+ readonly name: "total";
42
+ readonly type: "uint256";
43
+ }];
44
+ readonly name: "BurnAndMintEvent";
45
+ readonly type: "event";
46
+ }, {
47
+ readonly anonymous: false;
48
+ readonly inputs: readonly [{
49
+ readonly indexed: false;
50
+ readonly internalType: "uint256";
51
+ readonly name: "newMax";
52
+ readonly type: "uint256";
53
+ }];
54
+ readonly name: "MaxTransactionAmountChanged";
55
+ readonly type: "event";
56
+ }, {
57
+ readonly anonymous: false;
58
+ readonly inputs: readonly [{
59
+ readonly indexed: true;
60
+ readonly internalType: "address";
61
+ readonly name: "previousOwner";
62
+ readonly type: "address";
63
+ }, {
64
+ readonly indexed: true;
65
+ readonly internalType: "address";
66
+ readonly name: "newOwner";
67
+ readonly type: "address";
68
+ }];
69
+ readonly name: "OwnershipTransferred";
70
+ readonly type: "event";
71
+ }, {
72
+ readonly anonymous: false;
73
+ readonly inputs: readonly [{
74
+ readonly indexed: true;
75
+ readonly internalType: "address";
76
+ readonly name: "from";
77
+ readonly type: "address";
78
+ }, {
79
+ readonly indexed: true;
80
+ readonly internalType: "address";
81
+ readonly name: "to";
82
+ readonly type: "address";
83
+ }, {
84
+ readonly indexed: false;
85
+ readonly internalType: "uint256";
86
+ readonly name: "value";
87
+ readonly type: "uint256";
88
+ }];
89
+ readonly name: "Transfer";
90
+ readonly type: "event";
91
+ }, {
92
+ readonly inputs: readonly [{
93
+ readonly internalType: "address";
94
+ readonly name: "owner";
95
+ readonly type: "address";
96
+ }, {
97
+ readonly internalType: "address";
98
+ readonly name: "spender";
99
+ readonly type: "address";
100
+ }];
101
+ readonly name: "allowance";
102
+ readonly outputs: readonly [{
103
+ readonly internalType: "uint256";
104
+ readonly name: "";
105
+ readonly type: "uint256";
106
+ }];
107
+ readonly stateMutability: "view";
108
+ readonly type: "function";
109
+ }, {
110
+ readonly inputs: readonly [{
111
+ readonly internalType: "address";
112
+ readonly name: "spender";
113
+ readonly type: "address";
114
+ }, {
115
+ readonly internalType: "uint256";
116
+ readonly name: "amount";
117
+ readonly type: "uint256";
118
+ }];
119
+ readonly name: "approve";
120
+ readonly outputs: readonly [{
121
+ readonly internalType: "bool";
122
+ readonly name: "";
123
+ readonly type: "bool";
124
+ }];
125
+ readonly stateMutability: "nonpayable";
126
+ readonly type: "function";
127
+ }, {
128
+ readonly inputs: readonly [{
129
+ readonly internalType: "address";
130
+ readonly name: "account";
131
+ readonly type: "address";
132
+ }];
133
+ readonly name: "balanceOf";
134
+ readonly outputs: readonly [{
135
+ readonly internalType: "uint256";
136
+ readonly name: "";
137
+ readonly type: "uint256";
138
+ }];
139
+ readonly stateMutability: "view";
140
+ readonly type: "function";
141
+ }, {
142
+ readonly inputs: readonly [{
143
+ readonly internalType: "uint256";
144
+ readonly name: "amount";
145
+ readonly type: "uint256";
146
+ }];
147
+ readonly name: "burn";
148
+ readonly outputs: readonly [];
149
+ readonly stateMutability: "nonpayable";
150
+ readonly type: "function";
151
+ }, {
152
+ readonly inputs: readonly [{
153
+ readonly internalType: "uint256";
154
+ readonly name: "totalToMintAndBurn";
155
+ readonly type: "uint256";
156
+ }];
157
+ readonly name: "burnAndMint";
158
+ readonly outputs: readonly [];
159
+ readonly stateMutability: "nonpayable";
160
+ readonly type: "function";
161
+ }, {
162
+ readonly inputs: readonly [{
163
+ readonly internalType: "address";
164
+ readonly name: "account";
165
+ readonly type: "address";
166
+ }, {
167
+ readonly internalType: "uint256";
168
+ readonly name: "amount";
169
+ readonly type: "uint256";
170
+ }];
171
+ readonly name: "burnFrom";
172
+ readonly outputs: readonly [];
173
+ readonly stateMutability: "nonpayable";
174
+ readonly type: "function";
175
+ }, {
176
+ readonly inputs: readonly [{
177
+ readonly internalType: "uint256";
178
+ readonly name: "amount";
179
+ readonly type: "uint256";
180
+ }];
181
+ readonly name: "burnThe300Tokens";
182
+ readonly outputs: readonly [];
183
+ readonly stateMutability: "nonpayable";
184
+ readonly type: "function";
185
+ }, {
186
+ readonly inputs: readonly [{
187
+ readonly internalType: "address";
188
+ readonly name: "ta";
189
+ readonly type: "address";
190
+ }];
191
+ readonly name: "changeOG300";
192
+ readonly outputs: readonly [];
193
+ readonly stateMutability: "nonpayable";
194
+ readonly type: "function";
195
+ }, {
196
+ readonly inputs: readonly [{
197
+ readonly internalType: "uint256";
198
+ readonly name: "newTaxPercent";
199
+ readonly type: "uint256";
200
+ }];
201
+ readonly name: "changeTaxPercent";
202
+ readonly outputs: readonly [];
203
+ readonly stateMutability: "nonpayable";
204
+ readonly type: "function";
205
+ }, {
206
+ readonly inputs: readonly [{
207
+ readonly internalType: "address";
208
+ readonly name: "newTreasuryWallet";
209
+ readonly type: "address";
210
+ }];
211
+ readonly name: "changeTreasuryWallet";
212
+ readonly outputs: readonly [];
213
+ readonly stateMutability: "nonpayable";
214
+ readonly type: "function";
215
+ }, {
216
+ readonly inputs: readonly [{
217
+ readonly internalType: "address";
218
+ readonly name: "account";
219
+ readonly type: "address";
220
+ }];
221
+ readonly name: "check300Balance";
222
+ readonly outputs: readonly [{
223
+ readonly internalType: "uint256";
224
+ readonly name: "";
225
+ readonly type: "uint256";
226
+ }];
227
+ readonly stateMutability: "view";
228
+ readonly type: "function";
229
+ }, {
230
+ readonly inputs: readonly [];
231
+ readonly name: "decimals";
232
+ readonly outputs: readonly [{
233
+ readonly internalType: "uint8";
234
+ readonly name: "";
235
+ readonly type: "uint8";
236
+ }];
237
+ readonly stateMutability: "view";
238
+ readonly type: "function";
239
+ }, {
240
+ readonly inputs: readonly [{
241
+ readonly internalType: "address";
242
+ readonly name: "spender";
243
+ readonly type: "address";
244
+ }, {
245
+ readonly internalType: "uint256";
246
+ readonly name: "subtractedValue";
247
+ readonly type: "uint256";
248
+ }];
249
+ readonly name: "decreaseAllowance";
250
+ readonly outputs: readonly [{
251
+ readonly internalType: "bool";
252
+ readonly name: "";
253
+ readonly type: "bool";
254
+ }];
255
+ readonly stateMutability: "nonpayable";
256
+ readonly type: "function";
257
+ }, {
258
+ readonly inputs: readonly [{
259
+ readonly internalType: "address";
260
+ readonly name: "spender";
261
+ readonly type: "address";
262
+ }, {
263
+ readonly internalType: "uint256";
264
+ readonly name: "addedValue";
265
+ readonly type: "uint256";
266
+ }];
267
+ readonly name: "increaseAllowance";
268
+ readonly outputs: readonly [{
269
+ readonly internalType: "bool";
270
+ readonly name: "";
271
+ readonly type: "bool";
272
+ }];
273
+ readonly stateMutability: "nonpayable";
274
+ readonly type: "function";
275
+ }, {
276
+ readonly inputs: readonly [];
277
+ readonly name: "name";
278
+ readonly outputs: readonly [{
279
+ readonly internalType: "string";
280
+ readonly name: "";
281
+ readonly type: "string";
282
+ }];
283
+ readonly stateMutability: "view";
284
+ readonly type: "function";
285
+ }, {
286
+ readonly inputs: readonly [];
287
+ readonly name: "owner";
288
+ readonly outputs: readonly [{
289
+ readonly internalType: "address";
290
+ readonly name: "";
291
+ readonly type: "address";
292
+ }];
293
+ readonly stateMutability: "view";
294
+ readonly type: "function";
295
+ }, {
296
+ readonly inputs: readonly [{
297
+ readonly internalType: "uint256";
298
+ readonly name: "mintAmount";
299
+ readonly type: "uint256";
300
+ }, {
301
+ readonly internalType: "address";
302
+ readonly name: "toWallet";
303
+ readonly type: "address";
304
+ }];
305
+ readonly name: "ownerMint";
306
+ readonly outputs: readonly [];
307
+ readonly stateMutability: "nonpayable";
308
+ readonly type: "function";
309
+ }, {
310
+ readonly inputs: readonly [];
311
+ readonly name: "parameters";
312
+ readonly outputs: readonly [{
313
+ readonly internalType: "uint256";
314
+ readonly name: "maxTransactionAmount";
315
+ readonly type: "uint256";
316
+ }, {
317
+ readonly internalType: "uint256";
318
+ readonly name: "burnTaxPercent";
319
+ readonly type: "uint256";
320
+ }, {
321
+ readonly internalType: "uint256";
322
+ readonly name: "maxSupply";
323
+ readonly type: "uint256";
324
+ }, {
325
+ readonly internalType: "bool";
326
+ readonly name: "paused";
327
+ readonly type: "bool";
328
+ }, {
329
+ readonly internalType: "address";
330
+ readonly name: "the300";
331
+ readonly type: "address";
332
+ }, {
333
+ readonly internalType: "address";
334
+ readonly name: "treasuryWallet";
335
+ readonly type: "address";
336
+ }];
337
+ readonly stateMutability: "view";
338
+ readonly type: "function";
339
+ }, {
340
+ readonly inputs: readonly [];
341
+ readonly name: "renounceOwnership";
342
+ readonly outputs: readonly [];
343
+ readonly stateMutability: "nonpayable";
344
+ readonly type: "function";
345
+ }, {
346
+ readonly inputs: readonly [{
347
+ readonly internalType: "uint256";
348
+ readonly name: "newMax";
349
+ readonly type: "uint256";
350
+ }];
351
+ readonly name: "setMaxTransactionAmount";
352
+ readonly outputs: readonly [];
353
+ readonly stateMutability: "nonpayable";
354
+ readonly type: "function";
355
+ }, {
356
+ readonly inputs: readonly [];
357
+ readonly name: "symbol";
358
+ readonly outputs: readonly [{
359
+ readonly internalType: "string";
360
+ readonly name: "";
361
+ readonly type: "string";
362
+ }];
363
+ readonly stateMutability: "view";
364
+ readonly type: "function";
365
+ }, {
366
+ readonly inputs: readonly [];
367
+ readonly name: "togglePause";
368
+ readonly outputs: readonly [];
369
+ readonly stateMutability: "nonpayable";
370
+ readonly type: "function";
371
+ }, {
372
+ readonly inputs: readonly [];
373
+ readonly name: "totalSupply";
374
+ readonly outputs: readonly [{
375
+ readonly internalType: "uint256";
376
+ readonly name: "";
377
+ readonly type: "uint256";
378
+ }];
379
+ readonly stateMutability: "view";
380
+ readonly type: "function";
381
+ }, {
382
+ readonly inputs: readonly [{
383
+ readonly internalType: "address";
384
+ readonly name: "recipient";
385
+ readonly type: "address";
386
+ }, {
387
+ readonly internalType: "uint256";
388
+ readonly name: "amount";
389
+ readonly type: "uint256";
390
+ }];
391
+ readonly name: "transfer";
392
+ readonly outputs: readonly [{
393
+ readonly internalType: "bool";
394
+ readonly name: "";
395
+ readonly type: "bool";
396
+ }];
397
+ readonly stateMutability: "nonpayable";
398
+ readonly type: "function";
399
+ }, {
400
+ readonly inputs: readonly [{
401
+ readonly internalType: "address";
402
+ readonly name: "from";
403
+ readonly type: "address";
404
+ }, {
405
+ readonly internalType: "address";
406
+ readonly name: "to";
407
+ readonly type: "address";
408
+ }, {
409
+ readonly internalType: "uint256";
410
+ readonly name: "amount";
411
+ readonly type: "uint256";
412
+ }];
413
+ readonly name: "transferFrom";
414
+ readonly outputs: readonly [{
415
+ readonly internalType: "bool";
416
+ readonly name: "";
417
+ readonly type: "bool";
418
+ }];
419
+ readonly stateMutability: "nonpayable";
420
+ readonly type: "function";
421
+ }, {
422
+ readonly inputs: readonly [{
423
+ readonly internalType: "address";
424
+ readonly name: "newOwner";
425
+ readonly type: "address";
426
+ }];
427
+ readonly name: "transferOwnership";
428
+ readonly outputs: readonly [];
429
+ readonly stateMutability: "nonpayable";
430
+ readonly type: "function";
431
+ }];
432
+ /**
433
+ * Type-safe ABI for THREEHUNDRED_json
434
+ */
435
+ export type THREEHUNDRED_jsonAbi = typeof THREEHUNDRED_jsonAbi;
436
+ /**
437
+ * Contract instance type for THREEHUNDRED_json
438
+ */
439
+ export type THREEHUNDRED_jsonContract = any;
440
+ /**
441
+ * THREEHUNDRED_json Contract Class
442
+ *
443
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
444
+ *
445
+ * @example
446
+ * ```typescript
447
+ * import { createPublicClient, createWalletClient, http } from 'viem';
448
+ * import { mainnet } from 'viem/chains';
449
+ * import { THREEHUNDRED_json } from 'THREEHUNDRED_json';
450
+ *
451
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
452
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
453
+ *
454
+ * const contract = new THREEHUNDRED_json('0x...', { publicClient, walletClient });
455
+ *
456
+ * // Read functions
457
+ * const result = await contract.balanceOf('0x...');
458
+ *
459
+ * // Write functions
460
+ * const hash = await contract.transfer('0x...', 1000n);
461
+ *
462
+ * // Simulate transactions (dry-run)
463
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
464
+ * console.log('Gas estimate:', simulation.request.gas);
465
+ *
466
+ * // Watch events
467
+ * const unwatch = contract.watch.Transfer((event) => {
468
+ * console.log('Transfer event:', event);
469
+ * });
470
+ * ```
471
+ */
472
+ export declare class THREEHUNDRED_json {
473
+ private contract;
474
+ private contractAddress;
475
+ private publicClient;
476
+ constructor(address: Address, clients: {
477
+ publicClient: PublicClient;
478
+ walletClient?: WalletClient;
479
+ });
480
+ /**
481
+ * Get the contract address
482
+ */
483
+ get address(): Address;
484
+ /**
485
+ * Get the underlying viem contract instance
486
+ */
487
+ getContract(): THREEHUNDRED_jsonContract;
488
+ /**
489
+ * allowance
490
+ * view
491
+ */
492
+ allowance(owner: `0x${string}`, spender: `0x${string}`): Promise<bigint>;
493
+ /**
494
+ * balanceOf
495
+ * view
496
+ */
497
+ balanceOf(account: `0x${string}`): Promise<bigint>;
498
+ /**
499
+ * check300Balance
500
+ * view
501
+ */
502
+ check300Balance(account: `0x${string}`): Promise<bigint>;
503
+ /**
504
+ * decimals
505
+ * view
506
+ */
507
+ decimals(): Promise<bigint>;
508
+ /**
509
+ * name
510
+ * view
511
+ */
512
+ name(): Promise<string>;
513
+ /**
514
+ * owner
515
+ * view
516
+ */
517
+ owner(): Promise<`0x${string}`>;
518
+ /**
519
+ * parameters
520
+ * view
521
+ */
522
+ parameters(): Promise<[bigint, bigint, bigint, boolean, `0x${string}`, `0x${string}`]>;
523
+ /**
524
+ * symbol
525
+ * view
526
+ */
527
+ symbol(): Promise<string>;
528
+ /**
529
+ * totalSupply
530
+ * view
531
+ */
532
+ totalSupply(): Promise<bigint>;
533
+ /**
534
+ * approve
535
+ * nonpayable
536
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
537
+ */
538
+ approve(spender: `0x${string}`, amount: bigint, options?: {
539
+ accessList?: import('viem').AccessList;
540
+ authorizationList?: import('viem').AuthorizationList;
541
+ chain?: import('viem').Chain | null;
542
+ dataSuffix?: `0x${string}`;
543
+ gas?: bigint;
544
+ gasPrice?: bigint;
545
+ maxFeePerGas?: bigint;
546
+ maxPriorityFeePerGas?: bigint;
547
+ nonce?: number;
548
+ value?: bigint;
549
+ }): Promise<`0x${string}`>;
550
+ /**
551
+ * burn
552
+ * nonpayable
553
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
554
+ */
555
+ burn(amount: bigint, options?: {
556
+ accessList?: import('viem').AccessList;
557
+ authorizationList?: import('viem').AuthorizationList;
558
+ chain?: import('viem').Chain | null;
559
+ dataSuffix?: `0x${string}`;
560
+ gas?: bigint;
561
+ gasPrice?: bigint;
562
+ maxFeePerGas?: bigint;
563
+ maxPriorityFeePerGas?: bigint;
564
+ nonce?: number;
565
+ value?: bigint;
566
+ }): Promise<`0x${string}`>;
567
+ /**
568
+ * burnAndMint
569
+ * nonpayable
570
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
571
+ */
572
+ burnAndMint(totalToMintAndBurn: bigint, options?: {
573
+ accessList?: import('viem').AccessList;
574
+ authorizationList?: import('viem').AuthorizationList;
575
+ chain?: import('viem').Chain | null;
576
+ dataSuffix?: `0x${string}`;
577
+ gas?: bigint;
578
+ gasPrice?: bigint;
579
+ maxFeePerGas?: bigint;
580
+ maxPriorityFeePerGas?: bigint;
581
+ nonce?: number;
582
+ value?: bigint;
583
+ }): Promise<`0x${string}`>;
584
+ /**
585
+ * burnFrom
586
+ * nonpayable
587
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
588
+ */
589
+ burnFrom(account: `0x${string}`, amount: bigint, options?: {
590
+ accessList?: import('viem').AccessList;
591
+ authorizationList?: import('viem').AuthorizationList;
592
+ chain?: import('viem').Chain | null;
593
+ dataSuffix?: `0x${string}`;
594
+ gas?: bigint;
595
+ gasPrice?: bigint;
596
+ maxFeePerGas?: bigint;
597
+ maxPriorityFeePerGas?: bigint;
598
+ nonce?: number;
599
+ value?: bigint;
600
+ }): Promise<`0x${string}`>;
601
+ /**
602
+ * burnThe300Tokens
603
+ * nonpayable
604
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
605
+ */
606
+ burnThe300Tokens(amount: bigint, options?: {
607
+ accessList?: import('viem').AccessList;
608
+ authorizationList?: import('viem').AuthorizationList;
609
+ chain?: import('viem').Chain | null;
610
+ dataSuffix?: `0x${string}`;
611
+ gas?: bigint;
612
+ gasPrice?: bigint;
613
+ maxFeePerGas?: bigint;
614
+ maxPriorityFeePerGas?: bigint;
615
+ nonce?: number;
616
+ value?: bigint;
617
+ }): Promise<`0x${string}`>;
618
+ /**
619
+ * changeOG300
620
+ * nonpayable
621
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
622
+ */
623
+ changeOG300(ta: `0x${string}`, options?: {
624
+ accessList?: import('viem').AccessList;
625
+ authorizationList?: import('viem').AuthorizationList;
626
+ chain?: import('viem').Chain | null;
627
+ dataSuffix?: `0x${string}`;
628
+ gas?: bigint;
629
+ gasPrice?: bigint;
630
+ maxFeePerGas?: bigint;
631
+ maxPriorityFeePerGas?: bigint;
632
+ nonce?: number;
633
+ value?: bigint;
634
+ }): Promise<`0x${string}`>;
635
+ /**
636
+ * changeTaxPercent
637
+ * nonpayable
638
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
639
+ */
640
+ changeTaxPercent(newTaxPercent: bigint, options?: {
641
+ accessList?: import('viem').AccessList;
642
+ authorizationList?: import('viem').AuthorizationList;
643
+ chain?: import('viem').Chain | null;
644
+ dataSuffix?: `0x${string}`;
645
+ gas?: bigint;
646
+ gasPrice?: bigint;
647
+ maxFeePerGas?: bigint;
648
+ maxPriorityFeePerGas?: bigint;
649
+ nonce?: number;
650
+ value?: bigint;
651
+ }): Promise<`0x${string}`>;
652
+ /**
653
+ * changeTreasuryWallet
654
+ * nonpayable
655
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
656
+ */
657
+ changeTreasuryWallet(newTreasuryWallet: `0x${string}`, options?: {
658
+ accessList?: import('viem').AccessList;
659
+ authorizationList?: import('viem').AuthorizationList;
660
+ chain?: import('viem').Chain | null;
661
+ dataSuffix?: `0x${string}`;
662
+ gas?: bigint;
663
+ gasPrice?: bigint;
664
+ maxFeePerGas?: bigint;
665
+ maxPriorityFeePerGas?: bigint;
666
+ nonce?: number;
667
+ value?: bigint;
668
+ }): Promise<`0x${string}`>;
669
+ /**
670
+ * decreaseAllowance
671
+ * nonpayable
672
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
673
+ */
674
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
675
+ accessList?: import('viem').AccessList;
676
+ authorizationList?: import('viem').AuthorizationList;
677
+ chain?: import('viem').Chain | null;
678
+ dataSuffix?: `0x${string}`;
679
+ gas?: bigint;
680
+ gasPrice?: bigint;
681
+ maxFeePerGas?: bigint;
682
+ maxPriorityFeePerGas?: bigint;
683
+ nonce?: number;
684
+ value?: bigint;
685
+ }): Promise<`0x${string}`>;
686
+ /**
687
+ * increaseAllowance
688
+ * nonpayable
689
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
690
+ */
691
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
692
+ accessList?: import('viem').AccessList;
693
+ authorizationList?: import('viem').AuthorizationList;
694
+ chain?: import('viem').Chain | null;
695
+ dataSuffix?: `0x${string}`;
696
+ gas?: bigint;
697
+ gasPrice?: bigint;
698
+ maxFeePerGas?: bigint;
699
+ maxPriorityFeePerGas?: bigint;
700
+ nonce?: number;
701
+ value?: bigint;
702
+ }): Promise<`0x${string}`>;
703
+ /**
704
+ * ownerMint
705
+ * nonpayable
706
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
707
+ */
708
+ ownerMint(mintAmount: bigint, toWallet: `0x${string}`, options?: {
709
+ accessList?: import('viem').AccessList;
710
+ authorizationList?: import('viem').AuthorizationList;
711
+ chain?: import('viem').Chain | null;
712
+ dataSuffix?: `0x${string}`;
713
+ gas?: bigint;
714
+ gasPrice?: bigint;
715
+ maxFeePerGas?: bigint;
716
+ maxPriorityFeePerGas?: bigint;
717
+ nonce?: number;
718
+ value?: bigint;
719
+ }): Promise<`0x${string}`>;
720
+ /**
721
+ * renounceOwnership
722
+ * nonpayable
723
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
724
+ */
725
+ renounceOwnership(options?: {
726
+ accessList?: import('viem').AccessList;
727
+ authorizationList?: import('viem').AuthorizationList;
728
+ chain?: import('viem').Chain | null;
729
+ dataSuffix?: `0x${string}`;
730
+ gas?: bigint;
731
+ gasPrice?: bigint;
732
+ maxFeePerGas?: bigint;
733
+ maxPriorityFeePerGas?: bigint;
734
+ nonce?: number;
735
+ value?: bigint;
736
+ }): Promise<`0x${string}`>;
737
+ /**
738
+ * setMaxTransactionAmount
739
+ * nonpayable
740
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
741
+ */
742
+ setMaxTransactionAmount(newMax: bigint, options?: {
743
+ accessList?: import('viem').AccessList;
744
+ authorizationList?: import('viem').AuthorizationList;
745
+ chain?: import('viem').Chain | null;
746
+ dataSuffix?: `0x${string}`;
747
+ gas?: bigint;
748
+ gasPrice?: bigint;
749
+ maxFeePerGas?: bigint;
750
+ maxPriorityFeePerGas?: bigint;
751
+ nonce?: number;
752
+ value?: bigint;
753
+ }): Promise<`0x${string}`>;
754
+ /**
755
+ * togglePause
756
+ * nonpayable
757
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
758
+ */
759
+ togglePause(options?: {
760
+ accessList?: import('viem').AccessList;
761
+ authorizationList?: import('viem').AuthorizationList;
762
+ chain?: import('viem').Chain | null;
763
+ dataSuffix?: `0x${string}`;
764
+ gas?: bigint;
765
+ gasPrice?: bigint;
766
+ maxFeePerGas?: bigint;
767
+ maxPriorityFeePerGas?: bigint;
768
+ nonce?: number;
769
+ value?: bigint;
770
+ }): Promise<`0x${string}`>;
771
+ /**
772
+ * transfer
773
+ * nonpayable
774
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
775
+ */
776
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
777
+ accessList?: import('viem').AccessList;
778
+ authorizationList?: import('viem').AuthorizationList;
779
+ chain?: import('viem').Chain | null;
780
+ dataSuffix?: `0x${string}`;
781
+ gas?: bigint;
782
+ gasPrice?: bigint;
783
+ maxFeePerGas?: bigint;
784
+ maxPriorityFeePerGas?: bigint;
785
+ nonce?: number;
786
+ value?: bigint;
787
+ }): Promise<`0x${string}`>;
788
+ /**
789
+ * transferFrom
790
+ * nonpayable
791
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
792
+ */
793
+ transferFrom(from: `0x${string}`, to: `0x${string}`, amount: bigint, options?: {
794
+ accessList?: import('viem').AccessList;
795
+ authorizationList?: import('viem').AuthorizationList;
796
+ chain?: import('viem').Chain | null;
797
+ dataSuffix?: `0x${string}`;
798
+ gas?: bigint;
799
+ gasPrice?: bigint;
800
+ maxFeePerGas?: bigint;
801
+ maxPriorityFeePerGas?: bigint;
802
+ nonce?: number;
803
+ value?: bigint;
804
+ }): Promise<`0x${string}`>;
805
+ /**
806
+ * transferOwnership
807
+ * nonpayable
808
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
809
+ */
810
+ transferOwnership(newOwner: `0x${string}`, options?: {
811
+ accessList?: import('viem').AccessList;
812
+ authorizationList?: import('viem').AuthorizationList;
813
+ chain?: import('viem').Chain | null;
814
+ dataSuffix?: `0x${string}`;
815
+ gas?: bigint;
816
+ gasPrice?: bigint;
817
+ maxFeePerGas?: bigint;
818
+ maxPriorityFeePerGas?: bigint;
819
+ nonce?: number;
820
+ value?: bigint;
821
+ }): Promise<`0x${string}`>;
822
+ /**
823
+ * Simulate contract write operations (dry-run without sending transaction)
824
+ *
825
+ * @example
826
+ * const result = await contract.simulate.transfer('0x...', 1000n);
827
+ * console.log('Gas estimate:', result.request.gas);
828
+ * console.log('Would succeed:', result.result);
829
+ */
830
+ get simulate(): {
831
+ /**
832
+ * Simulate approve
833
+ * Returns gas estimate and result without sending transaction
834
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
835
+ */
836
+ approve(spender: `0x${string}`, amount: bigint, options?: {
837
+ accessList?: import("viem").AccessList;
838
+ authorizationList?: import("viem").AuthorizationList;
839
+ chain?: import("viem").Chain | null;
840
+ dataSuffix?: `0x${string}`;
841
+ gas?: bigint;
842
+ gasPrice?: bigint;
843
+ maxFeePerGas?: bigint;
844
+ maxPriorityFeePerGas?: bigint;
845
+ nonce?: number;
846
+ value?: bigint;
847
+ }): Promise<boolean>;
848
+ /**
849
+ * Simulate burn
850
+ * Returns gas estimate and result without sending transaction
851
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
852
+ */
853
+ burn(amount: bigint, options?: {
854
+ accessList?: import("viem").AccessList;
855
+ authorizationList?: import("viem").AuthorizationList;
856
+ chain?: import("viem").Chain | null;
857
+ dataSuffix?: `0x${string}`;
858
+ gas?: bigint;
859
+ gasPrice?: bigint;
860
+ maxFeePerGas?: bigint;
861
+ maxPriorityFeePerGas?: bigint;
862
+ nonce?: number;
863
+ value?: bigint;
864
+ }): Promise<void>;
865
+ /**
866
+ * Simulate burnAndMint
867
+ * Returns gas estimate and result without sending transaction
868
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
869
+ */
870
+ burnAndMint(totalToMintAndBurn: bigint, options?: {
871
+ accessList?: import("viem").AccessList;
872
+ authorizationList?: import("viem").AuthorizationList;
873
+ chain?: import("viem").Chain | null;
874
+ dataSuffix?: `0x${string}`;
875
+ gas?: bigint;
876
+ gasPrice?: bigint;
877
+ maxFeePerGas?: bigint;
878
+ maxPriorityFeePerGas?: bigint;
879
+ nonce?: number;
880
+ value?: bigint;
881
+ }): Promise<void>;
882
+ /**
883
+ * Simulate burnFrom
884
+ * Returns gas estimate and result without sending transaction
885
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
886
+ */
887
+ burnFrom(account: `0x${string}`, amount: bigint, options?: {
888
+ accessList?: import("viem").AccessList;
889
+ authorizationList?: import("viem").AuthorizationList;
890
+ chain?: import("viem").Chain | null;
891
+ dataSuffix?: `0x${string}`;
892
+ gas?: bigint;
893
+ gasPrice?: bigint;
894
+ maxFeePerGas?: bigint;
895
+ maxPriorityFeePerGas?: bigint;
896
+ nonce?: number;
897
+ value?: bigint;
898
+ }): Promise<void>;
899
+ /**
900
+ * Simulate burnThe300Tokens
901
+ * Returns gas estimate and result without sending transaction
902
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
903
+ */
904
+ burnThe300Tokens(amount: bigint, options?: {
905
+ accessList?: import("viem").AccessList;
906
+ authorizationList?: import("viem").AuthorizationList;
907
+ chain?: import("viem").Chain | null;
908
+ dataSuffix?: `0x${string}`;
909
+ gas?: bigint;
910
+ gasPrice?: bigint;
911
+ maxFeePerGas?: bigint;
912
+ maxPriorityFeePerGas?: bigint;
913
+ nonce?: number;
914
+ value?: bigint;
915
+ }): Promise<void>;
916
+ /**
917
+ * Simulate changeOG300
918
+ * Returns gas estimate and result without sending transaction
919
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
920
+ */
921
+ changeOG300(ta: `0x${string}`, options?: {
922
+ accessList?: import("viem").AccessList;
923
+ authorizationList?: import("viem").AuthorizationList;
924
+ chain?: import("viem").Chain | null;
925
+ dataSuffix?: `0x${string}`;
926
+ gas?: bigint;
927
+ gasPrice?: bigint;
928
+ maxFeePerGas?: bigint;
929
+ maxPriorityFeePerGas?: bigint;
930
+ nonce?: number;
931
+ value?: bigint;
932
+ }): Promise<void>;
933
+ /**
934
+ * Simulate changeTaxPercent
935
+ * Returns gas estimate and result without sending transaction
936
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
937
+ */
938
+ changeTaxPercent(newTaxPercent: bigint, options?: {
939
+ accessList?: import("viem").AccessList;
940
+ authorizationList?: import("viem").AuthorizationList;
941
+ chain?: import("viem").Chain | null;
942
+ dataSuffix?: `0x${string}`;
943
+ gas?: bigint;
944
+ gasPrice?: bigint;
945
+ maxFeePerGas?: bigint;
946
+ maxPriorityFeePerGas?: bigint;
947
+ nonce?: number;
948
+ value?: bigint;
949
+ }): Promise<void>;
950
+ /**
951
+ * Simulate changeTreasuryWallet
952
+ * Returns gas estimate and result without sending transaction
953
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
954
+ */
955
+ changeTreasuryWallet(newTreasuryWallet: `0x${string}`, options?: {
956
+ accessList?: import("viem").AccessList;
957
+ authorizationList?: import("viem").AuthorizationList;
958
+ chain?: import("viem").Chain | null;
959
+ dataSuffix?: `0x${string}`;
960
+ gas?: bigint;
961
+ gasPrice?: bigint;
962
+ maxFeePerGas?: bigint;
963
+ maxPriorityFeePerGas?: bigint;
964
+ nonce?: number;
965
+ value?: bigint;
966
+ }): Promise<void>;
967
+ /**
968
+ * Simulate decreaseAllowance
969
+ * Returns gas estimate and result without sending transaction
970
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
971
+ */
972
+ decreaseAllowance(spender: `0x${string}`, subtractedValue: bigint, options?: {
973
+ accessList?: import("viem").AccessList;
974
+ authorizationList?: import("viem").AuthorizationList;
975
+ chain?: import("viem").Chain | null;
976
+ dataSuffix?: `0x${string}`;
977
+ gas?: bigint;
978
+ gasPrice?: bigint;
979
+ maxFeePerGas?: bigint;
980
+ maxPriorityFeePerGas?: bigint;
981
+ nonce?: number;
982
+ value?: bigint;
983
+ }): Promise<boolean>;
984
+ /**
985
+ * Simulate increaseAllowance
986
+ * Returns gas estimate and result without sending transaction
987
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
988
+ */
989
+ increaseAllowance(spender: `0x${string}`, addedValue: bigint, options?: {
990
+ accessList?: import("viem").AccessList;
991
+ authorizationList?: import("viem").AuthorizationList;
992
+ chain?: import("viem").Chain | null;
993
+ dataSuffix?: `0x${string}`;
994
+ gas?: bigint;
995
+ gasPrice?: bigint;
996
+ maxFeePerGas?: bigint;
997
+ maxPriorityFeePerGas?: bigint;
998
+ nonce?: number;
999
+ value?: bigint;
1000
+ }): Promise<boolean>;
1001
+ /**
1002
+ * Simulate ownerMint
1003
+ * Returns gas estimate and result without sending transaction
1004
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1005
+ */
1006
+ ownerMint(mintAmount: bigint, toWallet: `0x${string}`, options?: {
1007
+ accessList?: import("viem").AccessList;
1008
+ authorizationList?: import("viem").AuthorizationList;
1009
+ chain?: import("viem").Chain | null;
1010
+ dataSuffix?: `0x${string}`;
1011
+ gas?: bigint;
1012
+ gasPrice?: bigint;
1013
+ maxFeePerGas?: bigint;
1014
+ maxPriorityFeePerGas?: bigint;
1015
+ nonce?: number;
1016
+ value?: bigint;
1017
+ }): Promise<void>;
1018
+ /**
1019
+ * Simulate renounceOwnership
1020
+ * Returns gas estimate and result without sending transaction
1021
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1022
+ */
1023
+ renounceOwnership(options?: {
1024
+ accessList?: import("viem").AccessList;
1025
+ authorizationList?: import("viem").AuthorizationList;
1026
+ chain?: import("viem").Chain | null;
1027
+ dataSuffix?: `0x${string}`;
1028
+ gas?: bigint;
1029
+ gasPrice?: bigint;
1030
+ maxFeePerGas?: bigint;
1031
+ maxPriorityFeePerGas?: bigint;
1032
+ nonce?: number;
1033
+ value?: bigint;
1034
+ }): Promise<void>;
1035
+ /**
1036
+ * Simulate setMaxTransactionAmount
1037
+ * Returns gas estimate and result without sending transaction
1038
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1039
+ */
1040
+ setMaxTransactionAmount(newMax: bigint, options?: {
1041
+ accessList?: import("viem").AccessList;
1042
+ authorizationList?: import("viem").AuthorizationList;
1043
+ chain?: import("viem").Chain | null;
1044
+ dataSuffix?: `0x${string}`;
1045
+ gas?: bigint;
1046
+ gasPrice?: bigint;
1047
+ maxFeePerGas?: bigint;
1048
+ maxPriorityFeePerGas?: bigint;
1049
+ nonce?: number;
1050
+ value?: bigint;
1051
+ }): Promise<void>;
1052
+ /**
1053
+ * Simulate togglePause
1054
+ * Returns gas estimate and result without sending transaction
1055
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1056
+ */
1057
+ togglePause(options?: {
1058
+ accessList?: import("viem").AccessList;
1059
+ authorizationList?: import("viem").AuthorizationList;
1060
+ chain?: import("viem").Chain | null;
1061
+ dataSuffix?: `0x${string}`;
1062
+ gas?: bigint;
1063
+ gasPrice?: bigint;
1064
+ maxFeePerGas?: bigint;
1065
+ maxPriorityFeePerGas?: bigint;
1066
+ nonce?: number;
1067
+ value?: bigint;
1068
+ }): Promise<void>;
1069
+ /**
1070
+ * Simulate transfer
1071
+ * Returns gas estimate and result without sending transaction
1072
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1073
+ */
1074
+ transfer(recipient: `0x${string}`, amount: bigint, options?: {
1075
+ accessList?: import("viem").AccessList;
1076
+ authorizationList?: import("viem").AuthorizationList;
1077
+ chain?: import("viem").Chain | null;
1078
+ dataSuffix?: `0x${string}`;
1079
+ gas?: bigint;
1080
+ gasPrice?: bigint;
1081
+ maxFeePerGas?: bigint;
1082
+ maxPriorityFeePerGas?: bigint;
1083
+ nonce?: number;
1084
+ value?: bigint;
1085
+ }): Promise<boolean>;
1086
+ /**
1087
+ * Simulate transferFrom
1088
+ * Returns gas estimate and result without sending transaction
1089
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1090
+ */
1091
+ transferFrom(from: `0x${string}`, to: `0x${string}`, amount: bigint, options?: {
1092
+ accessList?: import("viem").AccessList;
1093
+ authorizationList?: import("viem").AuthorizationList;
1094
+ chain?: import("viem").Chain | null;
1095
+ dataSuffix?: `0x${string}`;
1096
+ gas?: bigint;
1097
+ gasPrice?: bigint;
1098
+ maxFeePerGas?: bigint;
1099
+ maxPriorityFeePerGas?: bigint;
1100
+ nonce?: number;
1101
+ value?: bigint;
1102
+ }): Promise<boolean>;
1103
+ /**
1104
+ * Simulate transferOwnership
1105
+ * Returns gas estimate and result without sending transaction
1106
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
1107
+ */
1108
+ transferOwnership(newOwner: `0x${string}`, options?: {
1109
+ accessList?: import("viem").AccessList;
1110
+ authorizationList?: import("viem").AuthorizationList;
1111
+ chain?: import("viem").Chain | null;
1112
+ dataSuffix?: `0x${string}`;
1113
+ gas?: bigint;
1114
+ gasPrice?: bigint;
1115
+ maxFeePerGas?: bigint;
1116
+ maxPriorityFeePerGas?: bigint;
1117
+ nonce?: number;
1118
+ value?: bigint;
1119
+ }): Promise<void>;
1120
+ };
1121
+ /**
1122
+ * Watch contract events
1123
+ *
1124
+ * @example
1125
+ * // Watch all Transfer events
1126
+ * const unwatch = contract.watch.Transfer((event) => {
1127
+ * console.log('Transfer:', event);
1128
+ * });
1129
+ *
1130
+ * // Stop watching
1131
+ * unwatch();
1132
+ */
1133
+ get watch(): {
1134
+ /**
1135
+ * Watch Approval events
1136
+ * @param callback Function to call when event is emitted
1137
+ * @param filter Optional filter for indexed parameters
1138
+ * @returns Unwatch function to stop listening
1139
+ */
1140
+ Approval: (callback: (event: {
1141
+ owner: `0x${string}`;
1142
+ spender: `0x${string}`;
1143
+ value: bigint;
1144
+ }) => void, filter?: {
1145
+ owner: `0x${string}`;
1146
+ spender: `0x${string}`;
1147
+ }) => () => void;
1148
+ /**
1149
+ * Watch BurnAndMintEvent events
1150
+ * @param callback Function to call when event is emitted
1151
+ * @param filter Optional filter for indexed parameters
1152
+ * @returns Unwatch function to stop listening
1153
+ */
1154
+ BurnAndMintEvent: (callback: (event: {
1155
+ sender: `0x${string}`;
1156
+ total: bigint;
1157
+ }) => void) => () => void;
1158
+ /**
1159
+ * Watch MaxTransactionAmountChanged events
1160
+ * @param callback Function to call when event is emitted
1161
+ * @param filter Optional filter for indexed parameters
1162
+ * @returns Unwatch function to stop listening
1163
+ */
1164
+ MaxTransactionAmountChanged: (callback: (event: {
1165
+ newMax: bigint;
1166
+ }) => void) => () => void;
1167
+ /**
1168
+ * Watch OwnershipTransferred events
1169
+ * @param callback Function to call when event is emitted
1170
+ * @param filter Optional filter for indexed parameters
1171
+ * @returns Unwatch function to stop listening
1172
+ */
1173
+ OwnershipTransferred: (callback: (event: {
1174
+ previousOwner: `0x${string}`;
1175
+ newOwner: `0x${string}`;
1176
+ }) => void, filter?: {
1177
+ previousOwner: `0x${string}`;
1178
+ newOwner: `0x${string}`;
1179
+ }) => () => void;
1180
+ /**
1181
+ * Watch Transfer events
1182
+ * @param callback Function to call when event is emitted
1183
+ * @param filter Optional filter for indexed parameters
1184
+ * @returns Unwatch function to stop listening
1185
+ */
1186
+ Transfer: (callback: (event: {
1187
+ from: `0x${string}`;
1188
+ to: `0x${string}`;
1189
+ value: bigint;
1190
+ }) => void, filter?: {
1191
+ from: `0x${string}`;
1192
+ to: `0x${string}`;
1193
+ }) => () => void;
1194
+ };
1195
+ }