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