@gitmyabi-stg/1inch 0.0.1

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