@gitmyabi-stg/ausd 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,752 @@
1
+ import type { Address, PublicClient, WalletClient } from 'viem';
2
+ /**
3
+ * ConstructorParams struct type
4
+ */
5
+ export type ConstructorParams = {
6
+ proxyAdminOwnerAddress: `0x${string}`;
7
+ eip712Name: string;
8
+ eip712Version: string;
9
+ };
10
+ /**
11
+ * AgoraDollarErc1967Proxy ABI
12
+ *
13
+ * This ABI is typed using viem's type system for full type safety.
14
+ */
15
+ export declare const AgoraDollarErc1967ProxyAbi: readonly [{
16
+ readonly inputs: readonly [{
17
+ readonly components: readonly [{
18
+ readonly internalType: "address";
19
+ readonly name: "proxyAdminOwnerAddress";
20
+ readonly type: "address";
21
+ }, {
22
+ readonly internalType: "string";
23
+ readonly name: "eip712Name";
24
+ readonly type: "string";
25
+ }, {
26
+ readonly internalType: "string";
27
+ readonly name: "eip712Version";
28
+ readonly type: "string";
29
+ }];
30
+ readonly internalType: "struct ConstructorParams";
31
+ readonly name: "_params";
32
+ readonly type: "tuple";
33
+ }];
34
+ readonly stateMutability: "payable";
35
+ readonly type: "constructor";
36
+ }, {
37
+ readonly inputs: readonly [{
38
+ readonly internalType: "address";
39
+ readonly name: "frozenAccount";
40
+ readonly type: "address";
41
+ }];
42
+ readonly name: "AccountIsFrozen";
43
+ readonly type: "error";
44
+ }, {
45
+ readonly inputs: readonly [{
46
+ readonly internalType: "address";
47
+ readonly name: "target";
48
+ readonly type: "address";
49
+ }];
50
+ readonly name: "AddressEmptyCode";
51
+ readonly type: "error";
52
+ }, {
53
+ readonly inputs: readonly [];
54
+ readonly name: "AgoraDollarErc1967NonPayable";
55
+ readonly type: "error";
56
+ }, {
57
+ readonly inputs: readonly [{
58
+ readonly internalType: "address";
59
+ readonly name: "spender";
60
+ readonly type: "address";
61
+ }, {
62
+ readonly internalType: "uint256";
63
+ readonly name: "allowance";
64
+ readonly type: "uint256";
65
+ }, {
66
+ readonly internalType: "uint256";
67
+ readonly name: "needed";
68
+ readonly type: "uint256";
69
+ }];
70
+ readonly name: "ERC20InsufficientAllowance";
71
+ readonly type: "error";
72
+ }, {
73
+ readonly inputs: readonly [{
74
+ readonly internalType: "address";
75
+ readonly name: "sender";
76
+ readonly type: "address";
77
+ }, {
78
+ readonly internalType: "uint256";
79
+ readonly name: "balance";
80
+ readonly type: "uint256";
81
+ }, {
82
+ readonly internalType: "uint256";
83
+ readonly name: "needed";
84
+ readonly type: "uint256";
85
+ }];
86
+ readonly name: "ERC20InsufficientBalance";
87
+ readonly type: "error";
88
+ }, {
89
+ readonly inputs: readonly [{
90
+ readonly internalType: "address";
91
+ readonly name: "approver";
92
+ readonly type: "address";
93
+ }];
94
+ readonly name: "ERC20InvalidApprover";
95
+ readonly type: "error";
96
+ }, {
97
+ readonly inputs: readonly [{
98
+ readonly internalType: "address";
99
+ readonly name: "receiver";
100
+ readonly type: "address";
101
+ }];
102
+ readonly name: "ERC20InvalidReceiver";
103
+ readonly type: "error";
104
+ }, {
105
+ readonly inputs: readonly [{
106
+ readonly internalType: "address";
107
+ readonly name: "sender";
108
+ readonly type: "address";
109
+ }];
110
+ readonly name: "ERC20InvalidSender";
111
+ readonly type: "error";
112
+ }, {
113
+ readonly inputs: readonly [{
114
+ readonly internalType: "address";
115
+ readonly name: "spender";
116
+ readonly type: "address";
117
+ }];
118
+ readonly name: "ERC20InvalidSpender";
119
+ readonly type: "error";
120
+ }, {
121
+ readonly inputs: readonly [];
122
+ readonly name: "ExpiredAuthorization";
123
+ readonly type: "error";
124
+ }, {
125
+ readonly inputs: readonly [];
126
+ readonly name: "FailedInnerCall";
127
+ readonly type: "error";
128
+ }, {
129
+ readonly inputs: readonly [];
130
+ readonly name: "ImplementationTargetNotAContract";
131
+ readonly type: "error";
132
+ }, {
133
+ readonly inputs: readonly [];
134
+ readonly name: "InvalidAuthorization";
135
+ readonly type: "error";
136
+ }, {
137
+ readonly inputs: readonly [{
138
+ readonly internalType: "address";
139
+ readonly name: "caller";
140
+ readonly type: "address";
141
+ }, {
142
+ readonly internalType: "address";
143
+ readonly name: "payee";
144
+ readonly type: "address";
145
+ }];
146
+ readonly name: "InvalidPayee";
147
+ readonly type: "error";
148
+ }, {
149
+ readonly inputs: readonly [];
150
+ readonly name: "InvalidSignature";
151
+ readonly type: "error";
152
+ }, {
153
+ readonly inputs: readonly [];
154
+ readonly name: "ProxyDeniedAdminAccess";
155
+ readonly type: "error";
156
+ }, {
157
+ readonly inputs: readonly [];
158
+ readonly name: "SignatureVerificationPaused";
159
+ readonly type: "error";
160
+ }, {
161
+ readonly inputs: readonly [{
162
+ readonly internalType: "string";
163
+ readonly name: "str";
164
+ readonly type: "string";
165
+ }];
166
+ readonly name: "StringTooLong";
167
+ readonly type: "error";
168
+ }, {
169
+ readonly inputs: readonly [];
170
+ readonly name: "TransferPaused";
171
+ readonly type: "error";
172
+ }, {
173
+ readonly inputs: readonly [];
174
+ readonly name: "UsedOrCanceledAuthorization";
175
+ readonly type: "error";
176
+ }, {
177
+ readonly anonymous: false;
178
+ readonly inputs: readonly [{
179
+ readonly indexed: false;
180
+ readonly internalType: "address";
181
+ readonly name: "previousAdmin";
182
+ readonly type: "address";
183
+ }, {
184
+ readonly indexed: false;
185
+ readonly internalType: "address";
186
+ readonly name: "newAdmin";
187
+ readonly type: "address";
188
+ }];
189
+ readonly name: "AdminChanged";
190
+ readonly type: "event";
191
+ }, {
192
+ readonly anonymous: false;
193
+ readonly inputs: readonly [{
194
+ readonly indexed: true;
195
+ readonly internalType: "address";
196
+ readonly name: "owner";
197
+ readonly type: "address";
198
+ }, {
199
+ readonly indexed: true;
200
+ readonly internalType: "address";
201
+ readonly name: "spender";
202
+ readonly type: "address";
203
+ }, {
204
+ readonly indexed: false;
205
+ readonly internalType: "uint256";
206
+ readonly name: "value";
207
+ readonly type: "uint256";
208
+ }];
209
+ readonly name: "Approval";
210
+ readonly type: "event";
211
+ }, {
212
+ readonly anonymous: false;
213
+ readonly inputs: readonly [{
214
+ readonly indexed: true;
215
+ readonly internalType: "address";
216
+ readonly name: "authorizer";
217
+ readonly type: "address";
218
+ }, {
219
+ readonly indexed: true;
220
+ readonly internalType: "bytes32";
221
+ readonly name: "nonce";
222
+ readonly type: "bytes32";
223
+ }];
224
+ readonly name: "AuthorizationCanceled";
225
+ readonly type: "event";
226
+ }, {
227
+ readonly anonymous: false;
228
+ readonly inputs: readonly [{
229
+ readonly indexed: true;
230
+ readonly internalType: "address";
231
+ readonly name: "authorizer";
232
+ readonly type: "address";
233
+ }, {
234
+ readonly indexed: true;
235
+ readonly internalType: "bytes32";
236
+ readonly name: "nonce";
237
+ readonly type: "bytes32";
238
+ }];
239
+ readonly name: "AuthorizationUsed";
240
+ readonly type: "event";
241
+ }, {
242
+ readonly anonymous: false;
243
+ readonly inputs: readonly [{
244
+ readonly indexed: true;
245
+ readonly internalType: "address";
246
+ readonly name: "from";
247
+ readonly type: "address";
248
+ }, {
249
+ readonly indexed: true;
250
+ readonly internalType: "address";
251
+ readonly name: "to";
252
+ readonly type: "address";
253
+ }, {
254
+ readonly indexed: false;
255
+ readonly internalType: "uint256";
256
+ readonly name: "value";
257
+ readonly type: "uint256";
258
+ }];
259
+ readonly name: "Transfer";
260
+ readonly type: "event";
261
+ }, {
262
+ readonly anonymous: false;
263
+ readonly inputs: readonly [{
264
+ readonly indexed: true;
265
+ readonly internalType: "address";
266
+ readonly name: "implementation";
267
+ readonly type: "address";
268
+ }];
269
+ readonly name: "Upgraded";
270
+ readonly type: "event";
271
+ }, {
272
+ readonly stateMutability: "payable";
273
+ readonly type: "fallback";
274
+ }, {
275
+ readonly inputs: readonly [{
276
+ readonly internalType: "address";
277
+ readonly name: "_from";
278
+ readonly type: "address";
279
+ }, {
280
+ readonly internalType: "address";
281
+ readonly name: "_to";
282
+ readonly type: "address";
283
+ }, {
284
+ readonly internalType: "uint256";
285
+ readonly name: "_value";
286
+ readonly type: "uint256";
287
+ }, {
288
+ readonly internalType: "uint256";
289
+ readonly name: "_validAfter";
290
+ readonly type: "uint256";
291
+ }, {
292
+ readonly internalType: "uint256";
293
+ readonly name: "_validBefore";
294
+ readonly type: "uint256";
295
+ }, {
296
+ readonly internalType: "bytes32";
297
+ readonly name: "_nonce";
298
+ readonly type: "bytes32";
299
+ }, {
300
+ readonly internalType: "bytes";
301
+ readonly name: "_signature";
302
+ readonly type: "bytes";
303
+ }];
304
+ readonly name: "receiveWithAuthorization";
305
+ readonly outputs: readonly [];
306
+ readonly stateMutability: "nonpayable";
307
+ readonly type: "function";
308
+ }, {
309
+ readonly inputs: readonly [{
310
+ readonly internalType: "address";
311
+ readonly name: "_from";
312
+ readonly type: "address";
313
+ }, {
314
+ readonly internalType: "address";
315
+ readonly name: "_to";
316
+ readonly type: "address";
317
+ }, {
318
+ readonly internalType: "uint256";
319
+ readonly name: "_value";
320
+ readonly type: "uint256";
321
+ }, {
322
+ readonly internalType: "uint256";
323
+ readonly name: "_validAfter";
324
+ readonly type: "uint256";
325
+ }, {
326
+ readonly internalType: "uint256";
327
+ readonly name: "_validBefore";
328
+ readonly type: "uint256";
329
+ }, {
330
+ readonly internalType: "bytes32";
331
+ readonly name: "_nonce";
332
+ readonly type: "bytes32";
333
+ }, {
334
+ readonly internalType: "uint8";
335
+ readonly name: "_v";
336
+ readonly type: "uint8";
337
+ }, {
338
+ readonly internalType: "bytes32";
339
+ readonly name: "_r";
340
+ readonly type: "bytes32";
341
+ }, {
342
+ readonly internalType: "bytes32";
343
+ readonly name: "_s";
344
+ readonly type: "bytes32";
345
+ }];
346
+ readonly name: "receiveWithAuthorization";
347
+ readonly outputs: readonly [];
348
+ readonly stateMutability: "nonpayable";
349
+ readonly type: "function";
350
+ }, {
351
+ readonly inputs: readonly [{
352
+ readonly internalType: "address";
353
+ readonly name: "_to";
354
+ readonly type: "address";
355
+ }, {
356
+ readonly internalType: "uint256";
357
+ readonly name: "_transferValue";
358
+ readonly type: "uint256";
359
+ }];
360
+ readonly name: "transfer";
361
+ readonly outputs: readonly [{
362
+ readonly internalType: "bool";
363
+ readonly name: "";
364
+ readonly type: "bool";
365
+ }];
366
+ readonly stateMutability: "nonpayable";
367
+ readonly type: "function";
368
+ }, {
369
+ readonly inputs: readonly [{
370
+ readonly internalType: "address";
371
+ readonly name: "_from";
372
+ readonly type: "address";
373
+ }, {
374
+ readonly internalType: "address";
375
+ readonly name: "_to";
376
+ readonly type: "address";
377
+ }, {
378
+ readonly internalType: "uint256";
379
+ readonly name: "_transferValue";
380
+ readonly type: "uint256";
381
+ }];
382
+ readonly name: "transferFrom";
383
+ readonly outputs: readonly [{
384
+ readonly internalType: "bool";
385
+ readonly name: "";
386
+ readonly type: "bool";
387
+ }];
388
+ readonly stateMutability: "nonpayable";
389
+ readonly type: "function";
390
+ }, {
391
+ readonly inputs: readonly [{
392
+ readonly internalType: "address";
393
+ readonly name: "_from";
394
+ readonly type: "address";
395
+ }, {
396
+ readonly internalType: "address";
397
+ readonly name: "_to";
398
+ readonly type: "address";
399
+ }, {
400
+ readonly internalType: "uint256";
401
+ readonly name: "_value";
402
+ readonly type: "uint256";
403
+ }, {
404
+ readonly internalType: "uint256";
405
+ readonly name: "_validAfter";
406
+ readonly type: "uint256";
407
+ }, {
408
+ readonly internalType: "uint256";
409
+ readonly name: "_validBefore";
410
+ readonly type: "uint256";
411
+ }, {
412
+ readonly internalType: "bytes32";
413
+ readonly name: "_nonce";
414
+ readonly type: "bytes32";
415
+ }, {
416
+ readonly internalType: "bytes";
417
+ readonly name: "_signature";
418
+ readonly type: "bytes";
419
+ }];
420
+ readonly name: "transferWithAuthorization";
421
+ readonly outputs: readonly [];
422
+ readonly stateMutability: "nonpayable";
423
+ readonly type: "function";
424
+ }, {
425
+ readonly inputs: readonly [{
426
+ readonly internalType: "address";
427
+ readonly name: "_from";
428
+ readonly type: "address";
429
+ }, {
430
+ readonly internalType: "address";
431
+ readonly name: "_to";
432
+ readonly type: "address";
433
+ }, {
434
+ readonly internalType: "uint256";
435
+ readonly name: "_value";
436
+ readonly type: "uint256";
437
+ }, {
438
+ readonly internalType: "uint256";
439
+ readonly name: "_validAfter";
440
+ readonly type: "uint256";
441
+ }, {
442
+ readonly internalType: "uint256";
443
+ readonly name: "_validBefore";
444
+ readonly type: "uint256";
445
+ }, {
446
+ readonly internalType: "bytes32";
447
+ readonly name: "_nonce";
448
+ readonly type: "bytes32";
449
+ }, {
450
+ readonly internalType: "uint8";
451
+ readonly name: "_v";
452
+ readonly type: "uint8";
453
+ }, {
454
+ readonly internalType: "bytes32";
455
+ readonly name: "_r";
456
+ readonly type: "bytes32";
457
+ }, {
458
+ readonly internalType: "bytes32";
459
+ readonly name: "_s";
460
+ readonly type: "bytes32";
461
+ }];
462
+ readonly name: "transferWithAuthorization";
463
+ readonly outputs: readonly [];
464
+ readonly stateMutability: "nonpayable";
465
+ readonly type: "function";
466
+ }];
467
+ /**
468
+ * Type-safe ABI for AgoraDollarErc1967Proxy
469
+ */
470
+ export type AgoraDollarErc1967ProxyAbi = typeof AgoraDollarErc1967ProxyAbi;
471
+ /**
472
+ * Contract instance type for AgoraDollarErc1967Proxy
473
+ */
474
+ export type AgoraDollarErc1967ProxyContract = any;
475
+ /**
476
+ * AgoraDollarErc1967Proxy Contract Class
477
+ *
478
+ * Provides a class-based API similar to TypeChain for interacting with the contract.
479
+ *
480
+ * @example
481
+ * ```typescript
482
+ * import { createPublicClient, createWalletClient, http } from 'viem';
483
+ * import { mainnet } from 'viem/chains';
484
+ * import { AgoraDollarErc1967Proxy } from 'AgoraDollarErc1967Proxy';
485
+ *
486
+ * const publicClient = createPublicClient({ chain: mainnet, transport: http() });
487
+ * const walletClient = createWalletClient({ chain: mainnet, transport: http() });
488
+ *
489
+ * const contract = new AgoraDollarErc1967Proxy('0x...', { publicClient, walletClient });
490
+ *
491
+ * // Read functions
492
+ * const result = await contract.balanceOf('0x...');
493
+ *
494
+ * // Write functions
495
+ * const hash = await contract.transfer('0x...', 1000n);
496
+ *
497
+ * // Simulate transactions (dry-run)
498
+ * const simulation = await contract.simulate.transfer('0x...', 1000n);
499
+ * console.log('Gas estimate:', simulation.request.gas);
500
+ *
501
+ * // Watch events
502
+ * const unwatch = contract.watch.Transfer((event) => {
503
+ * console.log('Transfer event:', event);
504
+ * });
505
+ * ```
506
+ */
507
+ export declare class AgoraDollarErc1967Proxy {
508
+ private contract;
509
+ private contractAddress;
510
+ private publicClient;
511
+ constructor(address: Address, clients: {
512
+ publicClient: PublicClient;
513
+ walletClient?: WalletClient;
514
+ });
515
+ /**
516
+ * Get the contract address
517
+ */
518
+ get address(): Address;
519
+ /**
520
+ * Get the underlying viem contract instance.
521
+ */
522
+ getContract(): AgoraDollarErc1967ProxyContract;
523
+ receiveWithAuthorization(_from: `0x${string}`, _to: `0x${string}`, _value: bigint, _validAfter: bigint, _validBefore: bigint, _nonce: `0x${string}`, _signature: `0x${string}`, options?: {
524
+ accessList?: import('viem').AccessList;
525
+ authorizationList?: import('viem').AuthorizationList;
526
+ chain?: import('viem').Chain | null;
527
+ dataSuffix?: `0x${string}`;
528
+ gas?: bigint;
529
+ gasPrice?: bigint;
530
+ maxFeePerGas?: bigint;
531
+ maxPriorityFeePerGas?: bigint;
532
+ nonce?: number;
533
+ value?: bigint;
534
+ }): Promise<`0x${string}`>;
535
+ receiveWithAuthorization(_from: `0x${string}`, _to: `0x${string}`, _value: bigint, _validAfter: bigint, _validBefore: bigint, _nonce: `0x${string}`, _v: bigint, _r: `0x${string}`, _s: `0x${string}`, options?: {
536
+ accessList?: import('viem').AccessList;
537
+ authorizationList?: import('viem').AuthorizationList;
538
+ chain?: import('viem').Chain | null;
539
+ dataSuffix?: `0x${string}`;
540
+ gas?: bigint;
541
+ gasPrice?: bigint;
542
+ maxFeePerGas?: bigint;
543
+ maxPriorityFeePerGas?: bigint;
544
+ nonce?: number;
545
+ value?: bigint;
546
+ }): Promise<`0x${string}`>;
547
+ /**
548
+ * transfer
549
+ * nonpayable
550
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
551
+ */
552
+ transfer(_to: `0x${string}`, _transferValue: bigint, options?: {
553
+ accessList?: import('viem').AccessList;
554
+ authorizationList?: import('viem').AuthorizationList;
555
+ chain?: import('viem').Chain | null;
556
+ dataSuffix?: `0x${string}`;
557
+ gas?: bigint;
558
+ gasPrice?: bigint;
559
+ maxFeePerGas?: bigint;
560
+ maxPriorityFeePerGas?: bigint;
561
+ nonce?: number;
562
+ value?: bigint;
563
+ }): Promise<`0x${string}`>;
564
+ /**
565
+ * transferFrom
566
+ * nonpayable
567
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
568
+ */
569
+ transferFrom(_from: `0x${string}`, _to: `0x${string}`, _transferValue: bigint, options?: {
570
+ accessList?: import('viem').AccessList;
571
+ authorizationList?: import('viem').AuthorizationList;
572
+ chain?: import('viem').Chain | null;
573
+ dataSuffix?: `0x${string}`;
574
+ gas?: bigint;
575
+ gasPrice?: bigint;
576
+ maxFeePerGas?: bigint;
577
+ maxPriorityFeePerGas?: bigint;
578
+ nonce?: number;
579
+ value?: bigint;
580
+ }): Promise<`0x${string}`>;
581
+ transferWithAuthorization(_from: `0x${string}`, _to: `0x${string}`, _value: bigint, _validAfter: bigint, _validBefore: bigint, _nonce: `0x${string}`, _signature: `0x${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
+ transferWithAuthorization(_from: `0x${string}`, _to: `0x${string}`, _value: bigint, _validAfter: bigint, _validBefore: bigint, _nonce: `0x${string}`, _v: bigint, _r: `0x${string}`, _s: `0x${string}`, options?: {
594
+ accessList?: import('viem').AccessList;
595
+ authorizationList?: import('viem').AuthorizationList;
596
+ chain?: import('viem').Chain | null;
597
+ dataSuffix?: `0x${string}`;
598
+ gas?: bigint;
599
+ gasPrice?: bigint;
600
+ maxFeePerGas?: bigint;
601
+ maxPriorityFeePerGas?: bigint;
602
+ nonce?: number;
603
+ value?: bigint;
604
+ }): Promise<`0x${string}`>;
605
+ /**
606
+ * Simulate contract write operations (dry-run without sending transaction)
607
+ *
608
+ * @example
609
+ * const result = await contract.simulate.transfer('0x...', 1000n);
610
+ * console.log('Gas estimate:', result.request.gas);
611
+ * console.log('Would succeed:', result.result);
612
+ */
613
+ get simulate(): {
614
+ /**
615
+ * Simulate receiveWithAuthorization
616
+ * Returns gas estimate and result without sending transaction
617
+ * Supports multiple overloads: (address, address, uint256, uint256, uint256, bytes32, bytes), (address, address, uint256, uint256, uint256, bytes32, uint8, bytes32, bytes32)
618
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
619
+ */
620
+ receiveWithAuthorization(...args: any[]): Promise<any>;
621
+ /**
622
+ * Simulate transfer
623
+ * Returns gas estimate and result without sending transaction
624
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
625
+ */
626
+ transfer(_to: `0x${string}`, _transferValue: bigint, options?: {
627
+ accessList?: import("viem").AccessList;
628
+ authorizationList?: import("viem").AuthorizationList;
629
+ chain?: import("viem").Chain | null;
630
+ dataSuffix?: `0x${string}`;
631
+ gas?: bigint;
632
+ gasPrice?: bigint;
633
+ maxFeePerGas?: bigint;
634
+ maxPriorityFeePerGas?: bigint;
635
+ nonce?: number;
636
+ value?: bigint;
637
+ }): Promise<boolean>;
638
+ /**
639
+ * Simulate transferFrom
640
+ * Returns gas estimate and result without sending transaction
641
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
642
+ */
643
+ transferFrom(_from: `0x${string}`, _to: `0x${string}`, _transferValue: bigint, options?: {
644
+ accessList?: import("viem").AccessList;
645
+ authorizationList?: import("viem").AuthorizationList;
646
+ chain?: import("viem").Chain | null;
647
+ dataSuffix?: `0x${string}`;
648
+ gas?: bigint;
649
+ gasPrice?: bigint;
650
+ maxFeePerGas?: bigint;
651
+ maxPriorityFeePerGas?: bigint;
652
+ nonce?: number;
653
+ value?: bigint;
654
+ }): Promise<boolean>;
655
+ /**
656
+ * Simulate transferWithAuthorization
657
+ * Returns gas estimate and result without sending transaction
658
+ * Supports multiple overloads: (address, address, uint256, uint256, uint256, bytes32, bytes), (address, address, uint256, uint256, uint256, bytes32, uint8, bytes32, bytes32)
659
+ * @param options Optional transaction parameters (value, gas, nonce, etc.)
660
+ */
661
+ transferWithAuthorization(...args: any[]): Promise<any>;
662
+ };
663
+ /**
664
+ * Watch contract events
665
+ *
666
+ * @example
667
+ * // Watch all Transfer events
668
+ * const unwatch = contract.watch.Transfer((event) => {
669
+ * console.log('Transfer:', event);
670
+ * });
671
+ *
672
+ * // Stop watching
673
+ * unwatch();
674
+ */
675
+ get watch(): {
676
+ /**
677
+ * Watch AdminChanged events
678
+ * @param callback Function to call when event is emitted
679
+ * @param filter Optional filter for indexed parameters
680
+ * @returns Unwatch function to stop listening
681
+ */
682
+ AdminChanged: (callback: (event: {
683
+ previousAdmin: `0x${string}`;
684
+ newAdmin: `0x${string}`;
685
+ }) => void) => () => void;
686
+ /**
687
+ * Watch Approval events
688
+ * @param callback Function to call when event is emitted
689
+ * @param filter Optional filter for indexed parameters
690
+ * @returns Unwatch function to stop listening
691
+ */
692
+ Approval: (callback: (event: {
693
+ owner: `0x${string}`;
694
+ spender: `0x${string}`;
695
+ value: bigint;
696
+ }) => void, filter?: {
697
+ owner?: `0x${string}` | `0x${string}`[] | null;
698
+ spender?: `0x${string}` | `0x${string}`[] | null;
699
+ }) => () => void;
700
+ /**
701
+ * Watch AuthorizationCanceled events
702
+ * @param callback Function to call when event is emitted
703
+ * @param filter Optional filter for indexed parameters
704
+ * @returns Unwatch function to stop listening
705
+ */
706
+ AuthorizationCanceled: (callback: (event: {
707
+ authorizer: `0x${string}`;
708
+ nonce: `0x${string}`;
709
+ }) => void, filter?: {
710
+ authorizer?: `0x${string}` | `0x${string}`[] | null;
711
+ nonce?: `0x${string}` | `0x${string}`[] | null;
712
+ }) => () => void;
713
+ /**
714
+ * Watch AuthorizationUsed events
715
+ * @param callback Function to call when event is emitted
716
+ * @param filter Optional filter for indexed parameters
717
+ * @returns Unwatch function to stop listening
718
+ */
719
+ AuthorizationUsed: (callback: (event: {
720
+ authorizer: `0x${string}`;
721
+ nonce: `0x${string}`;
722
+ }) => void, filter?: {
723
+ authorizer?: `0x${string}` | `0x${string}`[] | null;
724
+ nonce?: `0x${string}` | `0x${string}`[] | null;
725
+ }) => () => void;
726
+ /**
727
+ * Watch Transfer events
728
+ * @param callback Function to call when event is emitted
729
+ * @param filter Optional filter for indexed parameters
730
+ * @returns Unwatch function to stop listening
731
+ */
732
+ Transfer: (callback: (event: {
733
+ from: `0x${string}`;
734
+ to: `0x${string}`;
735
+ value: bigint;
736
+ }) => void, filter?: {
737
+ from?: `0x${string}` | `0x${string}`[] | null;
738
+ to?: `0x${string}` | `0x${string}`[] | null;
739
+ }) => () => void;
740
+ /**
741
+ * Watch Upgraded events
742
+ * @param callback Function to call when event is emitted
743
+ * @param filter Optional filter for indexed parameters
744
+ * @returns Unwatch function to stop listening
745
+ */
746
+ Upgraded: (callback: (event: {
747
+ implementation: `0x${string}`;
748
+ }) => void, filter?: {
749
+ implementation?: `0x${string}` | `0x${string}`[] | null;
750
+ }) => () => void;
751
+ };
752
+ }