@cloakely/sdk 0.8.0 → 0.8.2

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,1673 @@
1
+ /**
2
+ * Sealed NFT drops: one collection and its sealed sale (CloakDrop), made by CloakDropFactory.
3
+ *
4
+ * GTD listed wallets mint their guaranteed spots at the creator's GTD price, until the GTD window closes.
5
+ * Auction everyone else bids what they'd pay, sealed to a drand round. The creator's price is the floor. Bids rank
6
+ * by score: their price, or for WL bids their price × (1 + boost). Public winners pay the clearing score;
7
+ * WL winners pay it ÷ (1 + boost), never under the floor. Bids tied at the clearing score share what's left
8
+ * by a lottery whose random start comes from every bid's sealed salt.
9
+ *
10
+ * The GTD and WL lists live on chain only as Merkle roots. The lists themselves are published once, in the factory's
11
+ * DropDetails event, so anyone can rebuild a proof; a list that doesn't match the root proves nothing.
12
+ */
13
+ import { type Address, type Hex, type PublicClient } from "viem";
14
+ import { type Wallet } from "./cloak.js";
15
+ export declare const DROP_BPS = 10000n;
16
+ export declare const DROP_MAX_BOOST_BPS = 3000;
17
+ export declare const DROP_MAX_PER_BID = 20;
18
+ export declare const DROP_MAX_SUPPLY = 10000;
19
+ /** Most entries one GTD or WL list can hold (the lists travel in one transaction). */
20
+ export declare const DROP_LIST_MAX = 2000;
21
+ /** How long the keeper has to open the bids at most. Settlement doesn't wait for it once every bid is open. */
22
+ export declare const DROP_DEFAULT_REVEAL_SECS = 1800;
23
+ /** A WL list entry, as the drop hashes it. */
24
+ export declare const wlLeaf: (wallet: Address) => Hex;
25
+ /** A GTD list entry: a wallet and its number of spots. */
26
+ export declare const gtdLeaf: (wallet: Address, spots: number) => Hex;
27
+ /** A Merkle tree over `leaves` (sorted-pair hashing, the layout CloakDrop checks). */
28
+ export declare function merkleTree(leaves: Hex[]): {
29
+ root: Hex;
30
+ proof: (leaf: Hex) => Hex[];
31
+ };
32
+ export interface GtdEntry {
33
+ wallet: Address;
34
+ spots: number;
35
+ }
36
+ /** What a drop publishes about itself at creation (the DropDetails event). */
37
+ export interface DropDetails {
38
+ image?: string;
39
+ description?: string;
40
+ gtd?: GtdEntry[];
41
+ wl?: Address[];
42
+ /** Set when the drop sells WL spots for a partner collection (see CloakSpots). */
43
+ spots?: {
44
+ partner: string;
45
+ };
46
+ }
47
+ export interface CreateDropOptions {
48
+ name: string;
49
+ symbol: string;
50
+ /** Token metadata: tokenURI(n) = baseURI + n, e.g. "ipfs://<folder>/". */
51
+ baseURI: string;
52
+ supply: number;
53
+ /** The creator's price, in wei per NFT: the auction's floor. */
54
+ floor: bigint;
55
+ /** Price step between bid levels (default 5% of the floor). */
56
+ tickSize?: bigint;
57
+ /** Number of bid levels (default 200, so bids reach 11× the floor at 5% steps). */
58
+ numTicks?: number;
59
+ maxPerBid?: number;
60
+ royaltyBps?: number;
61
+ gtd?: {
62
+ list: GtdEntry[];
63
+ price: bigint;
64
+ durationSecs: number;
65
+ };
66
+ wl?: {
67
+ list: Address[];
68
+ boostBps: number;
69
+ };
70
+ biddingSecs: number;
71
+ /** Longest time after bidding closes for the keeper to open the bids (default 30 minutes). The drop settles as soon
72
+ * as every bid is open, so a long window only matters if the keeper is down; a bid still sealed at its end loses 10%. */
73
+ revealSecs?: number;
74
+ image?: string;
75
+ description?: string;
76
+ /** A WL spot sale: published with the drop so its pages and metadata say so. */
77
+ spots?: {
78
+ partner: string;
79
+ };
80
+ }
81
+ export type DropPhase = "gtd" | "bidding" | "reveal" | "settle" | "numbering" | "settled";
82
+ export interface DropState {
83
+ address: Address;
84
+ name: string;
85
+ symbol: string;
86
+ baseURI: string;
87
+ creator: Address;
88
+ supply: number;
89
+ maxPerBid: number;
90
+ numTicks: number;
91
+ wlBoostBps: number;
92
+ royaltyBps: number;
93
+ gtdEnd: number;
94
+ commitEnd: number;
95
+ revealEnd: number;
96
+ tlockRound: number;
97
+ floor: bigint;
98
+ tickSize: bigint;
99
+ gtdPrice: bigint;
100
+ hasGtd: boolean;
101
+ hasWl: boolean;
102
+ phase: DropPhase;
103
+ bids: number;
104
+ reveals: number;
105
+ gtdMinted: number;
106
+ auctionSupply: number;
107
+ minted: number;
108
+ settled: boolean;
109
+ failed: boolean;
110
+ sold: number;
111
+ /** What a public / WL winner pays per NFT (once settled). */
112
+ publicPrice: bigint;
113
+ wlPrice: bigint;
114
+ tieSupply: number;
115
+ tieDemand: number;
116
+ }
117
+ export interface DropBid {
118
+ id: bigint;
119
+ bidder: Address;
120
+ wl: boolean;
121
+ revealed: boolean;
122
+ claimed: boolean;
123
+ tick: number;
124
+ price: bigint;
125
+ quantity: number;
126
+ deposit: bigint;
127
+ /** Once settled: NFTs won, what they cost and the rest of the deposit back. */
128
+ nfts: number;
129
+ paid: bigint;
130
+ refund: bigint;
131
+ }
132
+ export declare class CloakDrops {
133
+ readonly publicClient: PublicClient;
134
+ readonly walletClient: Wallet | undefined;
135
+ readonly factory: Address;
136
+ /** First block to read the factory's and drops' events from. */
137
+ readonly fromBlock: bigint;
138
+ constructor(publicClient: PublicClient, walletClient: Wallet | undefined, factory: Address,
139
+ /** First block to read the factory's and drops' events from. */
140
+ fromBlock?: bigint);
141
+ /** Many reads in one multicall where the chain has multicall3, else one by one (a local chain). */
142
+ private reads;
143
+ private wallet;
144
+ private send;
145
+ /** Every drop the factory made, newest last. */
146
+ list(): Promise<Address[]>;
147
+ /** Create a drop. The caller is its creator. Returns the drop's address. */
148
+ create(o: CreateDropOptions): Promise<{
149
+ drop: Address;
150
+ txHash: Hex;
151
+ }>;
152
+ /** A drop's published details: its image, description and the lists behind its roots. */
153
+ details(drop: Address): Promise<DropDetails>;
154
+ get(drop: Address): Promise<DropState>;
155
+ /** The bid level for a price: the highest level at or below it (bids snap down, never up). */
156
+ static tickFor(s: Pick<DropState, "floor" | "tickSize" | "numTicks">, price: bigint): number;
157
+ static priceAt(s: Pick<DropState, "floor" | "tickSize">, tick: number): bigint;
158
+ /** Whether a wallet is on a drop's WL or GTD list (and with how many GTD spots). */
159
+ listed(drop: Address, wallet: Address): Promise<{
160
+ wl: boolean;
161
+ gtdSpots: number;
162
+ gtdMinted: number;
163
+ }>;
164
+ /** Mint GTD spots from the listed wallet (the connected one). */
165
+ gtdMint(drop: Address, quantity: number): Promise<Hex>;
166
+ /**
167
+ * Place a sealed bid: `quantity` NFTs at up to `price` wei each. The bid is encrypted to the drop's drand round, so
168
+ * nobody can read it before bidding closes; the keeper opens it then. A WL bid must come from the listed wallet.
169
+ * `deposit` may be more than the bid needs (the rest comes back), which hides the bid's size from the deposit.
170
+ */
171
+ bid(drop: Address, o: {
172
+ price: bigint;
173
+ quantity: number;
174
+ wl?: boolean;
175
+ deposit?: bigint;
176
+ }): Promise<{
177
+ id: bigint;
178
+ txHash: Hex;
179
+ tick: number;
180
+ salt: Hex;
181
+ }>;
182
+ /** Read logs from `fromBlock` to now in one call, or in 100k-block pieces where the RPC limits ranges. */
183
+ private chunked;
184
+ committedLogs(drop: Address): Promise<import("viem").Log<bigint, number, false, undefined, true, readonly [{
185
+ readonly type: "constructor";
186
+ readonly inputs: readonly [{
187
+ readonly name: "p";
188
+ readonly type: "tuple";
189
+ readonly internalType: "struct CloakDrop.Params";
190
+ readonly components: readonly [{
191
+ readonly name: "creator";
192
+ readonly type: "address";
193
+ readonly internalType: "address";
194
+ }, {
195
+ readonly name: "supply";
196
+ readonly type: "uint32";
197
+ readonly internalType: "uint32";
198
+ }, {
199
+ readonly name: "maxPerBid";
200
+ readonly type: "uint32";
201
+ readonly internalType: "uint32";
202
+ }, {
203
+ readonly name: "numTicks";
204
+ readonly type: "uint16";
205
+ readonly internalType: "uint16";
206
+ }, {
207
+ readonly name: "wlBoostBps";
208
+ readonly type: "uint16";
209
+ readonly internalType: "uint16";
210
+ }, {
211
+ readonly name: "royaltyBps";
212
+ readonly type: "uint16";
213
+ readonly internalType: "uint16";
214
+ }, {
215
+ readonly name: "gtdEnd";
216
+ readonly type: "uint64";
217
+ readonly internalType: "uint64";
218
+ }, {
219
+ readonly name: "commitEnd";
220
+ readonly type: "uint64";
221
+ readonly internalType: "uint64";
222
+ }, {
223
+ readonly name: "revealEnd";
224
+ readonly type: "uint64";
225
+ readonly internalType: "uint64";
226
+ }, {
227
+ readonly name: "tlockRound";
228
+ readonly type: "uint64";
229
+ readonly internalType: "uint64";
230
+ }, {
231
+ readonly name: "floor";
232
+ readonly type: "uint128";
233
+ readonly internalType: "uint128";
234
+ }, {
235
+ readonly name: "tickSize";
236
+ readonly type: "uint128";
237
+ readonly internalType: "uint128";
238
+ }, {
239
+ readonly name: "gtdPrice";
240
+ readonly type: "uint128";
241
+ readonly internalType: "uint128";
242
+ }, {
243
+ readonly name: "gtdRoot";
244
+ readonly type: "bytes32";
245
+ readonly internalType: "bytes32";
246
+ }, {
247
+ readonly name: "wlRoot";
248
+ readonly type: "bytes32";
249
+ readonly internalType: "bytes32";
250
+ }];
251
+ }, {
252
+ readonly name: "name_";
253
+ readonly type: "string";
254
+ readonly internalType: "string";
255
+ }, {
256
+ readonly name: "symbol_";
257
+ readonly type: "string";
258
+ readonly internalType: "string";
259
+ }, {
260
+ readonly name: "baseURI_";
261
+ readonly type: "string";
262
+ readonly internalType: "string";
263
+ }, {
264
+ readonly name: "config_";
265
+ readonly type: "address";
266
+ readonly internalType: "contract CloakConfig";
267
+ }];
268
+ readonly stateMutability: "nonpayable";
269
+ }, {
270
+ readonly type: "function";
271
+ readonly name: "DEAD";
272
+ readonly inputs: readonly [];
273
+ readonly outputs: readonly [{
274
+ readonly name: "";
275
+ readonly type: "address";
276
+ readonly internalType: "address";
277
+ }];
278
+ readonly stateMutability: "view";
279
+ }, {
280
+ readonly type: "function";
281
+ readonly name: "DRAND_GENESIS";
282
+ readonly inputs: readonly [];
283
+ readonly outputs: readonly [{
284
+ readonly name: "";
285
+ readonly type: "uint256";
286
+ readonly internalType: "uint256";
287
+ }];
288
+ readonly stateMutability: "view";
289
+ }, {
290
+ readonly type: "function";
291
+ readonly name: "DRAND_PERIOD";
292
+ readonly inputs: readonly [];
293
+ readonly outputs: readonly [{
294
+ readonly name: "";
295
+ readonly type: "uint256";
296
+ readonly internalType: "uint256";
297
+ }];
298
+ readonly stateMutability: "view";
299
+ }, {
300
+ readonly type: "function";
301
+ readonly name: "MAX_BOOST_BPS";
302
+ readonly inputs: readonly [];
303
+ readonly outputs: readonly [{
304
+ readonly name: "";
305
+ readonly type: "uint16";
306
+ readonly internalType: "uint16";
307
+ }];
308
+ readonly stateMutability: "view";
309
+ }, {
310
+ readonly type: "function";
311
+ readonly name: "MAX_PER_BID";
312
+ readonly inputs: readonly [];
313
+ readonly outputs: readonly [{
314
+ readonly name: "";
315
+ readonly type: "uint32";
316
+ readonly internalType: "uint32";
317
+ }];
318
+ readonly stateMutability: "view";
319
+ }, {
320
+ readonly type: "function";
321
+ readonly name: "MAX_ROYALTY_BPS";
322
+ readonly inputs: readonly [];
323
+ readonly outputs: readonly [{
324
+ readonly name: "";
325
+ readonly type: "uint16";
326
+ readonly internalType: "uint16";
327
+ }];
328
+ readonly stateMutability: "view";
329
+ }, {
330
+ readonly type: "function";
331
+ readonly name: "MAX_SUPPLY";
332
+ readonly inputs: readonly [];
333
+ readonly outputs: readonly [{
334
+ readonly name: "";
335
+ readonly type: "uint32";
336
+ readonly internalType: "uint32";
337
+ }];
338
+ readonly stateMutability: "view";
339
+ }, {
340
+ readonly type: "function";
341
+ readonly name: "MAX_TICKS";
342
+ readonly inputs: readonly [];
343
+ readonly outputs: readonly [{
344
+ readonly name: "";
345
+ readonly type: "uint256";
346
+ readonly internalType: "uint256";
347
+ }];
348
+ readonly stateMutability: "view";
349
+ }, {
350
+ readonly type: "function";
351
+ readonly name: "NO_REVEAL_PENALTY_BPS";
352
+ readonly inputs: readonly [];
353
+ readonly outputs: readonly [{
354
+ readonly name: "";
355
+ readonly type: "uint16";
356
+ readonly internalType: "uint16";
357
+ }];
358
+ readonly stateMutability: "view";
359
+ }, {
360
+ readonly type: "function";
361
+ readonly name: "REVEAL_MARGIN";
362
+ readonly inputs: readonly [];
363
+ readonly outputs: readonly [{
364
+ readonly name: "";
365
+ readonly type: "uint256";
366
+ readonly internalType: "uint256";
367
+ }];
368
+ readonly stateMutability: "view";
369
+ }, {
370
+ readonly type: "function";
371
+ readonly name: "allocationOf";
372
+ readonly inputs: readonly [{
373
+ readonly name: "id";
374
+ readonly type: "uint256";
375
+ readonly internalType: "uint256";
376
+ }];
377
+ readonly outputs: readonly [{
378
+ readonly name: "nfts";
379
+ readonly type: "uint32";
380
+ readonly internalType: "uint32";
381
+ }, {
382
+ readonly name: "paid";
383
+ readonly type: "uint256";
384
+ readonly internalType: "uint256";
385
+ }, {
386
+ readonly name: "refund";
387
+ readonly type: "uint256";
388
+ readonly internalType: "uint256";
389
+ }, {
390
+ readonly name: "penalty";
391
+ readonly type: "uint256";
392
+ readonly internalType: "uint256";
393
+ }];
394
+ readonly stateMutability: "view";
395
+ }, {
396
+ readonly type: "function";
397
+ readonly name: "approve";
398
+ readonly inputs: readonly [{
399
+ readonly name: "spender";
400
+ readonly type: "address";
401
+ readonly internalType: "address";
402
+ }, {
403
+ readonly name: "tokenId";
404
+ readonly type: "uint256";
405
+ readonly internalType: "uint256";
406
+ }];
407
+ readonly outputs: readonly [];
408
+ readonly stateMutability: "nonpayable";
409
+ }, {
410
+ readonly type: "function";
411
+ readonly name: "auctionSupply";
412
+ readonly inputs: readonly [];
413
+ readonly outputs: readonly [{
414
+ readonly name: "";
415
+ readonly type: "uint32";
416
+ readonly internalType: "uint32";
417
+ }];
418
+ readonly stateMutability: "view";
419
+ }, {
420
+ readonly type: "function";
421
+ readonly name: "balanceOf";
422
+ readonly inputs: readonly [{
423
+ readonly name: "";
424
+ readonly type: "address";
425
+ readonly internalType: "address";
426
+ }];
427
+ readonly outputs: readonly [{
428
+ readonly name: "";
429
+ readonly type: "uint256";
430
+ readonly internalType: "uint256";
431
+ }];
432
+ readonly stateMutability: "view";
433
+ }, {
434
+ readonly type: "function";
435
+ readonly name: "baseURI";
436
+ readonly inputs: readonly [];
437
+ readonly outputs: readonly [{
438
+ readonly name: "";
439
+ readonly type: "string";
440
+ readonly internalType: "string";
441
+ }];
442
+ readonly stateMutability: "view";
443
+ }, {
444
+ readonly type: "function";
445
+ readonly name: "bidCap";
446
+ readonly inputs: readonly [];
447
+ readonly outputs: readonly [{
448
+ readonly name: "";
449
+ readonly type: "uint256";
450
+ readonly internalType: "uint256";
451
+ }];
452
+ readonly stateMutability: "view";
453
+ }, {
454
+ readonly type: "function";
455
+ readonly name: "bidsCount";
456
+ readonly inputs: readonly [];
457
+ readonly outputs: readonly [{
458
+ readonly name: "";
459
+ readonly type: "uint256";
460
+ readonly internalType: "uint256";
461
+ }];
462
+ readonly stateMutability: "view";
463
+ }, {
464
+ readonly type: "function";
465
+ readonly name: "claim";
466
+ readonly inputs: readonly [{
467
+ readonly name: "id";
468
+ readonly type: "uint256";
469
+ readonly internalType: "uint256";
470
+ }];
471
+ readonly outputs: readonly [];
472
+ readonly stateMutability: "nonpayable";
473
+ }, {
474
+ readonly type: "function";
475
+ readonly name: "claimBatch";
476
+ readonly inputs: readonly [{
477
+ readonly name: "ids";
478
+ readonly type: "uint256[]";
479
+ readonly internalType: "uint256[]";
480
+ }];
481
+ readonly outputs: readonly [];
482
+ readonly stateMutability: "nonpayable";
483
+ }, {
484
+ readonly type: "function";
485
+ readonly name: "claimTo";
486
+ readonly inputs: readonly [{
487
+ readonly name: "id";
488
+ readonly type: "uint256";
489
+ readonly internalType: "uint256";
490
+ }, {
491
+ readonly name: "to";
492
+ readonly type: "address";
493
+ readonly internalType: "address";
494
+ }];
495
+ readonly outputs: readonly [];
496
+ readonly stateMutability: "nonpayable";
497
+ }, {
498
+ readonly type: "function";
499
+ readonly name: "claimedCount";
500
+ readonly inputs: readonly [];
501
+ readonly outputs: readonly [{
502
+ readonly name: "";
503
+ readonly type: "uint256";
504
+ readonly internalType: "uint256";
505
+ }];
506
+ readonly stateMutability: "view";
507
+ }, {
508
+ readonly type: "function";
509
+ readonly name: "clearingScore";
510
+ readonly inputs: readonly [];
511
+ readonly outputs: readonly [{
512
+ readonly name: "";
513
+ readonly type: "uint256";
514
+ readonly internalType: "uint256";
515
+ }];
516
+ readonly stateMutability: "view";
517
+ }, {
518
+ readonly type: "function";
519
+ readonly name: "collectFees";
520
+ readonly inputs: readonly [];
521
+ readonly outputs: readonly [];
522
+ readonly stateMutability: "nonpayable";
523
+ }, {
524
+ readonly type: "function";
525
+ readonly name: "commit";
526
+ readonly inputs: readonly [{
527
+ readonly name: "commitment";
528
+ readonly type: "bytes32";
529
+ readonly internalType: "bytes32";
530
+ }, {
531
+ readonly name: "sealedBid";
532
+ readonly type: "bytes";
533
+ readonly internalType: "bytes";
534
+ }, {
535
+ readonly name: "wl";
536
+ readonly type: "bool";
537
+ readonly internalType: "bool";
538
+ }, {
539
+ readonly name: "wlProof";
540
+ readonly type: "bytes32[]";
541
+ readonly internalType: "bytes32[]";
542
+ }];
543
+ readonly outputs: readonly [{
544
+ readonly name: "id";
545
+ readonly type: "uint256";
546
+ readonly internalType: "uint256";
547
+ }];
548
+ readonly stateMutability: "payable";
549
+ }, {
550
+ readonly type: "function";
551
+ readonly name: "commitmentOf";
552
+ readonly inputs: readonly [{
553
+ readonly name: "bidder";
554
+ readonly type: "address";
555
+ readonly internalType: "address";
556
+ }, {
557
+ readonly name: "tick";
558
+ readonly type: "uint16";
559
+ readonly internalType: "uint16";
560
+ }, {
561
+ readonly name: "quantity";
562
+ readonly type: "uint128";
563
+ readonly internalType: "uint128";
564
+ }, {
565
+ readonly name: "salt";
566
+ readonly type: "bytes32";
567
+ readonly internalType: "bytes32";
568
+ }];
569
+ readonly outputs: readonly [{
570
+ readonly name: "";
571
+ readonly type: "bytes32";
572
+ readonly internalType: "bytes32";
573
+ }];
574
+ readonly stateMutability: "view";
575
+ }, {
576
+ readonly type: "function";
577
+ readonly name: "config";
578
+ readonly inputs: readonly [];
579
+ readonly outputs: readonly [{
580
+ readonly name: "";
581
+ readonly type: "address";
582
+ readonly internalType: "contract CloakConfig";
583
+ }];
584
+ readonly stateMutability: "view";
585
+ }, {
586
+ readonly type: "function";
587
+ readonly name: "costOf";
588
+ readonly inputs: readonly [{
589
+ readonly name: "tick";
590
+ readonly type: "uint16";
591
+ readonly internalType: "uint16";
592
+ }, {
593
+ readonly name: "quantity";
594
+ readonly type: "uint256";
595
+ readonly internalType: "uint256";
596
+ }];
597
+ readonly outputs: readonly [{
598
+ readonly name: "";
599
+ readonly type: "uint256";
600
+ readonly internalType: "uint256";
601
+ }];
602
+ readonly stateMutability: "view";
603
+ }, {
604
+ readonly type: "function";
605
+ readonly name: "creatorOwed";
606
+ readonly inputs: readonly [];
607
+ readonly outputs: readonly [{
608
+ readonly name: "";
609
+ readonly type: "uint256";
610
+ readonly internalType: "uint256";
611
+ }];
612
+ readonly stateMutability: "view";
613
+ }, {
614
+ readonly type: "function";
615
+ readonly name: "demandPublic";
616
+ readonly inputs: readonly [{
617
+ readonly name: "";
618
+ readonly type: "uint256";
619
+ readonly internalType: "uint256";
620
+ }];
621
+ readonly outputs: readonly [{
622
+ readonly name: "";
623
+ readonly type: "uint32";
624
+ readonly internalType: "uint32";
625
+ }];
626
+ readonly stateMutability: "view";
627
+ }, {
628
+ readonly type: "function";
629
+ readonly name: "demandWl";
630
+ readonly inputs: readonly [{
631
+ readonly name: "";
632
+ readonly type: "uint256";
633
+ readonly internalType: "uint256";
634
+ }];
635
+ readonly outputs: readonly [{
636
+ readonly name: "";
637
+ readonly type: "uint32";
638
+ readonly internalType: "uint32";
639
+ }];
640
+ readonly stateMutability: "view";
641
+ }, {
642
+ readonly type: "function";
643
+ readonly name: "depositCap";
644
+ readonly inputs: readonly [];
645
+ readonly outputs: readonly [{
646
+ readonly name: "";
647
+ readonly type: "uint256";
648
+ readonly internalType: "uint256";
649
+ }];
650
+ readonly stateMutability: "view";
651
+ }, {
652
+ readonly type: "function";
653
+ readonly name: "factory";
654
+ readonly inputs: readonly [];
655
+ readonly outputs: readonly [{
656
+ readonly name: "";
657
+ readonly type: "address";
658
+ readonly internalType: "address";
659
+ }];
660
+ readonly stateMutability: "view";
661
+ }, {
662
+ readonly type: "function";
663
+ readonly name: "failed";
664
+ readonly inputs: readonly [];
665
+ readonly outputs: readonly [{
666
+ readonly name: "";
667
+ readonly type: "bool";
668
+ readonly internalType: "bool";
669
+ }];
670
+ readonly stateMutability: "view";
671
+ }, {
672
+ readonly type: "function";
673
+ readonly name: "feesOwed";
674
+ readonly inputs: readonly [];
675
+ readonly outputs: readonly [{
676
+ readonly name: "";
677
+ readonly type: "uint256";
678
+ readonly internalType: "uint256";
679
+ }];
680
+ readonly stateMutability: "view";
681
+ }, {
682
+ readonly type: "function";
683
+ readonly name: "getApproved";
684
+ readonly inputs: readonly [{
685
+ readonly name: "";
686
+ readonly type: "uint256";
687
+ readonly internalType: "uint256";
688
+ }];
689
+ readonly outputs: readonly [{
690
+ readonly name: "";
691
+ readonly type: "address";
692
+ readonly internalType: "address";
693
+ }];
694
+ readonly stateMutability: "view";
695
+ }, {
696
+ readonly type: "function";
697
+ readonly name: "getBid";
698
+ readonly inputs: readonly [{
699
+ readonly name: "id";
700
+ readonly type: "uint256";
701
+ readonly internalType: "uint256";
702
+ }];
703
+ readonly outputs: readonly [{
704
+ readonly name: "";
705
+ readonly type: "tuple";
706
+ readonly internalType: "struct CloakDrop.Bid";
707
+ readonly components: readonly [{
708
+ readonly name: "bidder";
709
+ readonly type: "address";
710
+ readonly internalType: "address";
711
+ }, {
712
+ readonly name: "tick";
713
+ readonly type: "uint16";
714
+ readonly internalType: "uint16";
715
+ }, {
716
+ readonly name: "wl";
717
+ readonly type: "bool";
718
+ readonly internalType: "bool";
719
+ }, {
720
+ readonly name: "revealed";
721
+ readonly type: "bool";
722
+ readonly internalType: "bool";
723
+ }, {
724
+ readonly name: "claimed";
725
+ readonly type: "bool";
726
+ readonly internalType: "bool";
727
+ }, {
728
+ readonly name: "quantity";
729
+ readonly type: "uint32";
730
+ readonly internalType: "uint32";
731
+ }, {
732
+ readonly name: "tieStart";
733
+ readonly type: "uint32";
734
+ readonly internalType: "uint32";
735
+ }, {
736
+ readonly name: "deposit";
737
+ readonly type: "uint128";
738
+ readonly internalType: "uint128";
739
+ }, {
740
+ readonly name: "commitment";
741
+ readonly type: "bytes32";
742
+ readonly internalType: "bytes32";
743
+ }];
744
+ }];
745
+ readonly stateMutability: "view";
746
+ }, {
747
+ readonly type: "function";
748
+ readonly name: "gtdMint";
749
+ readonly inputs: readonly [{
750
+ readonly name: "spots";
751
+ readonly type: "uint32";
752
+ readonly internalType: "uint32";
753
+ }, {
754
+ readonly name: "proof";
755
+ readonly type: "bytes32[]";
756
+ readonly internalType: "bytes32[]";
757
+ }, {
758
+ readonly name: "quantity";
759
+ readonly type: "uint32";
760
+ readonly internalType: "uint32";
761
+ }];
762
+ readonly outputs: readonly [];
763
+ readonly stateMutability: "payable";
764
+ }, {
765
+ readonly type: "function";
766
+ readonly name: "gtdMinted";
767
+ readonly inputs: readonly [];
768
+ readonly outputs: readonly [{
769
+ readonly name: "";
770
+ readonly type: "uint32";
771
+ readonly internalType: "uint32";
772
+ }];
773
+ readonly stateMutability: "view";
774
+ }, {
775
+ readonly type: "function";
776
+ readonly name: "gtdMintedBy";
777
+ readonly inputs: readonly [{
778
+ readonly name: "";
779
+ readonly type: "address";
780
+ readonly internalType: "address";
781
+ }];
782
+ readonly outputs: readonly [{
783
+ readonly name: "";
784
+ readonly type: "uint32";
785
+ readonly internalType: "uint32";
786
+ }];
787
+ readonly stateMutability: "view";
788
+ }, {
789
+ readonly type: "function";
790
+ readonly name: "isApprovedForAll";
791
+ readonly inputs: readonly [{
792
+ readonly name: "";
793
+ readonly type: "address";
794
+ readonly internalType: "address";
795
+ }, {
796
+ readonly name: "";
797
+ readonly type: "address";
798
+ readonly internalType: "address";
799
+ }];
800
+ readonly outputs: readonly [{
801
+ readonly name: "";
802
+ readonly type: "bool";
803
+ readonly internalType: "bool";
804
+ }];
805
+ readonly stateMutability: "view";
806
+ }, {
807
+ readonly type: "function";
808
+ readonly name: "launchFeeBps";
809
+ readonly inputs: readonly [];
810
+ readonly outputs: readonly [{
811
+ readonly name: "";
812
+ readonly type: "uint16";
813
+ readonly internalType: "uint16";
814
+ }];
815
+ readonly stateMutability: "view";
816
+ }, {
817
+ readonly type: "function";
818
+ readonly name: "mintUnsold";
819
+ readonly inputs: readonly [{
820
+ readonly name: "to";
821
+ readonly type: "address";
822
+ readonly internalType: "address";
823
+ }, {
824
+ readonly name: "quantity";
825
+ readonly type: "uint32";
826
+ readonly internalType: "uint32";
827
+ }];
828
+ readonly outputs: readonly [];
829
+ readonly stateMutability: "nonpayable";
830
+ }, {
831
+ readonly type: "function";
832
+ readonly name: "name";
833
+ readonly inputs: readonly [];
834
+ readonly outputs: readonly [{
835
+ readonly name: "";
836
+ readonly type: "string";
837
+ readonly internalType: "string";
838
+ }];
839
+ readonly stateMutability: "view";
840
+ }, {
841
+ readonly type: "function";
842
+ readonly name: "numberTies";
843
+ readonly inputs: readonly [{
844
+ readonly name: "maxSteps";
845
+ readonly type: "uint256";
846
+ readonly internalType: "uint256";
847
+ }];
848
+ readonly outputs: readonly [];
849
+ readonly stateMutability: "nonpayable";
850
+ }, {
851
+ readonly type: "function";
852
+ readonly name: "ownerOf";
853
+ readonly inputs: readonly [{
854
+ readonly name: "tokenId";
855
+ readonly type: "uint256";
856
+ readonly internalType: "uint256";
857
+ }];
858
+ readonly outputs: readonly [{
859
+ readonly name: "o";
860
+ readonly type: "address";
861
+ readonly internalType: "address";
862
+ }];
863
+ readonly stateMutability: "view";
864
+ }, {
865
+ readonly type: "function";
866
+ readonly name: "params";
867
+ readonly inputs: readonly [];
868
+ readonly outputs: readonly [{
869
+ readonly name: "";
870
+ readonly type: "tuple";
871
+ readonly internalType: "struct CloakDrop.Params";
872
+ readonly components: readonly [{
873
+ readonly name: "creator";
874
+ readonly type: "address";
875
+ readonly internalType: "address";
876
+ }, {
877
+ readonly name: "supply";
878
+ readonly type: "uint32";
879
+ readonly internalType: "uint32";
880
+ }, {
881
+ readonly name: "maxPerBid";
882
+ readonly type: "uint32";
883
+ readonly internalType: "uint32";
884
+ }, {
885
+ readonly name: "numTicks";
886
+ readonly type: "uint16";
887
+ readonly internalType: "uint16";
888
+ }, {
889
+ readonly name: "wlBoostBps";
890
+ readonly type: "uint16";
891
+ readonly internalType: "uint16";
892
+ }, {
893
+ readonly name: "royaltyBps";
894
+ readonly type: "uint16";
895
+ readonly internalType: "uint16";
896
+ }, {
897
+ readonly name: "gtdEnd";
898
+ readonly type: "uint64";
899
+ readonly internalType: "uint64";
900
+ }, {
901
+ readonly name: "commitEnd";
902
+ readonly type: "uint64";
903
+ readonly internalType: "uint64";
904
+ }, {
905
+ readonly name: "revealEnd";
906
+ readonly type: "uint64";
907
+ readonly internalType: "uint64";
908
+ }, {
909
+ readonly name: "tlockRound";
910
+ readonly type: "uint64";
911
+ readonly internalType: "uint64";
912
+ }, {
913
+ readonly name: "floor";
914
+ readonly type: "uint128";
915
+ readonly internalType: "uint128";
916
+ }, {
917
+ readonly name: "tickSize";
918
+ readonly type: "uint128";
919
+ readonly internalType: "uint128";
920
+ }, {
921
+ readonly name: "gtdPrice";
922
+ readonly type: "uint128";
923
+ readonly internalType: "uint128";
924
+ }, {
925
+ readonly name: "gtdRoot";
926
+ readonly type: "bytes32";
927
+ readonly internalType: "bytes32";
928
+ }, {
929
+ readonly name: "wlRoot";
930
+ readonly type: "bytes32";
931
+ readonly internalType: "bytes32";
932
+ }];
933
+ }];
934
+ readonly stateMutability: "view";
935
+ }, {
936
+ readonly type: "function";
937
+ readonly name: "phase";
938
+ readonly inputs: readonly [];
939
+ readonly outputs: readonly [{
940
+ readonly name: "";
941
+ readonly type: "uint8";
942
+ readonly internalType: "uint8";
943
+ }];
944
+ readonly stateMutability: "view";
945
+ }, {
946
+ readonly type: "function";
947
+ readonly name: "priceAt";
948
+ readonly inputs: readonly [{
949
+ readonly name: "tick";
950
+ readonly type: "uint16";
951
+ readonly internalType: "uint16";
952
+ }];
953
+ readonly outputs: readonly [{
954
+ readonly name: "";
955
+ readonly type: "uint256";
956
+ readonly internalType: "uint256";
957
+ }];
958
+ readonly stateMutability: "view";
959
+ }, {
960
+ readonly type: "function";
961
+ readonly name: "refundOwed";
962
+ readonly inputs: readonly [{
963
+ readonly name: "";
964
+ readonly type: "address";
965
+ readonly internalType: "address";
966
+ }];
967
+ readonly outputs: readonly [{
968
+ readonly name: "";
969
+ readonly type: "uint256";
970
+ readonly internalType: "uint256";
971
+ }];
972
+ readonly stateMutability: "view";
973
+ }, {
974
+ readonly type: "function";
975
+ readonly name: "reveal";
976
+ readonly inputs: readonly [{
977
+ readonly name: "id";
978
+ readonly type: "uint256";
979
+ readonly internalType: "uint256";
980
+ }, {
981
+ readonly name: "tick";
982
+ readonly type: "uint16";
983
+ readonly internalType: "uint16";
984
+ }, {
985
+ readonly name: "quantity";
986
+ readonly type: "uint128";
987
+ readonly internalType: "uint128";
988
+ }, {
989
+ readonly name: "salt";
990
+ readonly type: "bytes32";
991
+ readonly internalType: "bytes32";
992
+ }];
993
+ readonly outputs: readonly [];
994
+ readonly stateMutability: "nonpayable";
995
+ }, {
996
+ readonly type: "function";
997
+ readonly name: "revealBatch";
998
+ readonly inputs: readonly [{
999
+ readonly name: "reveals";
1000
+ readonly type: "tuple[]";
1001
+ readonly internalType: "struct CloakDrop.Reveal[]";
1002
+ readonly components: readonly [{
1003
+ readonly name: "id";
1004
+ readonly type: "uint256";
1005
+ readonly internalType: "uint256";
1006
+ }, {
1007
+ readonly name: "tick";
1008
+ readonly type: "uint16";
1009
+ readonly internalType: "uint16";
1010
+ }, {
1011
+ readonly name: "quantity";
1012
+ readonly type: "uint128";
1013
+ readonly internalType: "uint128";
1014
+ }, {
1015
+ readonly name: "salt";
1016
+ readonly type: "bytes32";
1017
+ readonly internalType: "bytes32";
1018
+ }];
1019
+ }];
1020
+ readonly outputs: readonly [{
1021
+ readonly name: "ok";
1022
+ readonly type: "uint256";
1023
+ readonly internalType: "uint256";
1024
+ }];
1025
+ readonly stateMutability: "nonpayable";
1026
+ }, {
1027
+ readonly type: "function";
1028
+ readonly name: "revealCount";
1029
+ readonly inputs: readonly [];
1030
+ readonly outputs: readonly [{
1031
+ readonly name: "";
1032
+ readonly type: "uint256";
1033
+ readonly internalType: "uint256";
1034
+ }];
1035
+ readonly stateMutability: "view";
1036
+ }, {
1037
+ readonly type: "function";
1038
+ readonly name: "royaltyInfo";
1039
+ readonly inputs: readonly [{
1040
+ readonly name: "";
1041
+ readonly type: "uint256";
1042
+ readonly internalType: "uint256";
1043
+ }, {
1044
+ readonly name: "salePrice";
1045
+ readonly type: "uint256";
1046
+ readonly internalType: "uint256";
1047
+ }];
1048
+ readonly outputs: readonly [{
1049
+ readonly name: "";
1050
+ readonly type: "address";
1051
+ readonly internalType: "address";
1052
+ }, {
1053
+ readonly name: "";
1054
+ readonly type: "uint256";
1055
+ readonly internalType: "uint256";
1056
+ }];
1057
+ readonly stateMutability: "view";
1058
+ }, {
1059
+ readonly type: "function";
1060
+ readonly name: "safeTransferFrom";
1061
+ readonly inputs: readonly [{
1062
+ readonly name: "from";
1063
+ readonly type: "address";
1064
+ readonly internalType: "address";
1065
+ }, {
1066
+ readonly name: "to";
1067
+ readonly type: "address";
1068
+ readonly internalType: "address";
1069
+ }, {
1070
+ readonly name: "tokenId";
1071
+ readonly type: "uint256";
1072
+ readonly internalType: "uint256";
1073
+ }];
1074
+ readonly outputs: readonly [];
1075
+ readonly stateMutability: "nonpayable";
1076
+ }, {
1077
+ readonly type: "function";
1078
+ readonly name: "safeTransferFrom";
1079
+ readonly inputs: readonly [{
1080
+ readonly name: "from";
1081
+ readonly type: "address";
1082
+ readonly internalType: "address";
1083
+ }, {
1084
+ readonly name: "to";
1085
+ readonly type: "address";
1086
+ readonly internalType: "address";
1087
+ }, {
1088
+ readonly name: "tokenId";
1089
+ readonly type: "uint256";
1090
+ readonly internalType: "uint256";
1091
+ }, {
1092
+ readonly name: "data";
1093
+ readonly type: "bytes";
1094
+ readonly internalType: "bytes";
1095
+ }];
1096
+ readonly outputs: readonly [];
1097
+ readonly stateMutability: "nonpayable";
1098
+ }, {
1099
+ readonly type: "function";
1100
+ readonly name: "scoreOf";
1101
+ readonly inputs: readonly [{
1102
+ readonly name: "tick";
1103
+ readonly type: "uint16";
1104
+ readonly internalType: "uint16";
1105
+ }, {
1106
+ readonly name: "wl";
1107
+ readonly type: "bool";
1108
+ readonly internalType: "bool";
1109
+ }];
1110
+ readonly outputs: readonly [{
1111
+ readonly name: "";
1112
+ readonly type: "uint256";
1113
+ readonly internalType: "uint256";
1114
+ }];
1115
+ readonly stateMutability: "view";
1116
+ }, {
1117
+ readonly type: "function";
1118
+ readonly name: "setApprovalForAll";
1119
+ readonly inputs: readonly [{
1120
+ readonly name: "operator";
1121
+ readonly type: "address";
1122
+ readonly internalType: "address";
1123
+ }, {
1124
+ readonly name: "approved";
1125
+ readonly type: "bool";
1126
+ readonly internalType: "bool";
1127
+ }];
1128
+ readonly outputs: readonly [];
1129
+ readonly stateMutability: "nonpayable";
1130
+ }, {
1131
+ readonly type: "function";
1132
+ readonly name: "settle";
1133
+ readonly inputs: readonly [];
1134
+ readonly outputs: readonly [];
1135
+ readonly stateMutability: "nonpayable";
1136
+ }, {
1137
+ readonly type: "function";
1138
+ readonly name: "settled";
1139
+ readonly inputs: readonly [];
1140
+ readonly outputs: readonly [{
1141
+ readonly name: "";
1142
+ readonly type: "bool";
1143
+ readonly internalType: "bool";
1144
+ }];
1145
+ readonly stateMutability: "view";
1146
+ }, {
1147
+ readonly type: "function";
1148
+ readonly name: "sold";
1149
+ readonly inputs: readonly [];
1150
+ readonly outputs: readonly [{
1151
+ readonly name: "";
1152
+ readonly type: "uint32";
1153
+ readonly internalType: "uint32";
1154
+ }];
1155
+ readonly stateMutability: "view";
1156
+ }, {
1157
+ readonly type: "function";
1158
+ readonly name: "supportsInterface";
1159
+ readonly inputs: readonly [{
1160
+ readonly name: "id";
1161
+ readonly type: "bytes4";
1162
+ readonly internalType: "bytes4";
1163
+ }];
1164
+ readonly outputs: readonly [{
1165
+ readonly name: "";
1166
+ readonly type: "bool";
1167
+ readonly internalType: "bool";
1168
+ }];
1169
+ readonly stateMutability: "pure";
1170
+ }, {
1171
+ readonly type: "function";
1172
+ readonly name: "symbol";
1173
+ readonly inputs: readonly [];
1174
+ readonly outputs: readonly [{
1175
+ readonly name: "";
1176
+ readonly type: "string";
1177
+ readonly internalType: "string";
1178
+ }];
1179
+ readonly stateMutability: "view";
1180
+ }, {
1181
+ readonly type: "function";
1182
+ readonly name: "tieAssigned";
1183
+ readonly inputs: readonly [];
1184
+ readonly outputs: readonly [{
1185
+ readonly name: "";
1186
+ readonly type: "uint32";
1187
+ readonly internalType: "uint32";
1188
+ }];
1189
+ readonly stateMutability: "view";
1190
+ }, {
1191
+ readonly type: "function";
1192
+ readonly name: "tieCursor";
1193
+ readonly inputs: readonly [];
1194
+ readonly outputs: readonly [{
1195
+ readonly name: "";
1196
+ readonly type: "uint256";
1197
+ readonly internalType: "uint256";
1198
+ }];
1199
+ readonly stateMutability: "view";
1200
+ }, {
1201
+ readonly type: "function";
1202
+ readonly name: "tieDemand";
1203
+ readonly inputs: readonly [];
1204
+ readonly outputs: readonly [{
1205
+ readonly name: "";
1206
+ readonly type: "uint32";
1207
+ readonly internalType: "uint32";
1208
+ }];
1209
+ readonly stateMutability: "view";
1210
+ }, {
1211
+ readonly type: "function";
1212
+ readonly name: "tieRandom";
1213
+ readonly inputs: readonly [];
1214
+ readonly outputs: readonly [{
1215
+ readonly name: "";
1216
+ readonly type: "uint256";
1217
+ readonly internalType: "uint256";
1218
+ }];
1219
+ readonly stateMutability: "view";
1220
+ }, {
1221
+ readonly type: "function";
1222
+ readonly name: "tieSupply";
1223
+ readonly inputs: readonly [];
1224
+ readonly outputs: readonly [{
1225
+ readonly name: "";
1226
+ readonly type: "uint32";
1227
+ readonly internalType: "uint32";
1228
+ }];
1229
+ readonly stateMutability: "view";
1230
+ }, {
1231
+ readonly type: "function";
1232
+ readonly name: "tiesReady";
1233
+ readonly inputs: readonly [];
1234
+ readonly outputs: readonly [{
1235
+ readonly name: "";
1236
+ readonly type: "bool";
1237
+ readonly internalType: "bool";
1238
+ }];
1239
+ readonly stateMutability: "view";
1240
+ }, {
1241
+ readonly type: "function";
1242
+ readonly name: "tokenURI";
1243
+ readonly inputs: readonly [{
1244
+ readonly name: "tokenId";
1245
+ readonly type: "uint256";
1246
+ readonly internalType: "uint256";
1247
+ }];
1248
+ readonly outputs: readonly [{
1249
+ readonly name: "";
1250
+ readonly type: "string";
1251
+ readonly internalType: "string";
1252
+ }];
1253
+ readonly stateMutability: "view";
1254
+ }, {
1255
+ readonly type: "function";
1256
+ readonly name: "totalDemand";
1257
+ readonly inputs: readonly [];
1258
+ readonly outputs: readonly [{
1259
+ readonly name: "";
1260
+ readonly type: "uint256";
1261
+ readonly internalType: "uint256";
1262
+ }];
1263
+ readonly stateMutability: "view";
1264
+ }, {
1265
+ readonly type: "function";
1266
+ readonly name: "totalDeposits";
1267
+ readonly inputs: readonly [];
1268
+ readonly outputs: readonly [{
1269
+ readonly name: "";
1270
+ readonly type: "uint256";
1271
+ readonly internalType: "uint256";
1272
+ }];
1273
+ readonly stateMutability: "view";
1274
+ }, {
1275
+ readonly type: "function";
1276
+ readonly name: "totalSupply";
1277
+ readonly inputs: readonly [];
1278
+ readonly outputs: readonly [{
1279
+ readonly name: "";
1280
+ readonly type: "uint256";
1281
+ readonly internalType: "uint256";
1282
+ }];
1283
+ readonly stateMutability: "view";
1284
+ }, {
1285
+ readonly type: "function";
1286
+ readonly name: "transferFrom";
1287
+ readonly inputs: readonly [{
1288
+ readonly name: "from";
1289
+ readonly type: "address";
1290
+ readonly internalType: "address";
1291
+ }, {
1292
+ readonly name: "to";
1293
+ readonly type: "address";
1294
+ readonly internalType: "address";
1295
+ }, {
1296
+ readonly name: "tokenId";
1297
+ readonly type: "uint256";
1298
+ readonly internalType: "uint256";
1299
+ }];
1300
+ readonly outputs: readonly [];
1301
+ readonly stateMutability: "nonpayable";
1302
+ }, {
1303
+ readonly type: "function";
1304
+ readonly name: "unitPrice";
1305
+ readonly inputs: readonly [{
1306
+ readonly name: "wl";
1307
+ readonly type: "bool";
1308
+ readonly internalType: "bool";
1309
+ }];
1310
+ readonly outputs: readonly [{
1311
+ readonly name: "";
1312
+ readonly type: "uint256";
1313
+ readonly internalType: "uint256";
1314
+ }];
1315
+ readonly stateMutability: "view";
1316
+ }, {
1317
+ readonly type: "function";
1318
+ readonly name: "unsoldMinted";
1319
+ readonly inputs: readonly [];
1320
+ readonly outputs: readonly [{
1321
+ readonly name: "";
1322
+ readonly type: "uint32";
1323
+ readonly internalType: "uint32";
1324
+ }];
1325
+ readonly stateMutability: "view";
1326
+ }, {
1327
+ readonly type: "function";
1328
+ readonly name: "withdrawProceeds";
1329
+ readonly inputs: readonly [];
1330
+ readonly outputs: readonly [];
1331
+ readonly stateMutability: "nonpayable";
1332
+ }, {
1333
+ readonly type: "function";
1334
+ readonly name: "withdrawRefund";
1335
+ readonly inputs: readonly [{
1336
+ readonly name: "to";
1337
+ readonly type: "address";
1338
+ readonly internalType: "address";
1339
+ }];
1340
+ readonly outputs: readonly [];
1341
+ readonly stateMutability: "nonpayable";
1342
+ }, {
1343
+ readonly type: "event";
1344
+ readonly name: "Approval";
1345
+ readonly inputs: readonly [{
1346
+ readonly name: "owner";
1347
+ readonly type: "address";
1348
+ readonly indexed: true;
1349
+ readonly internalType: "address";
1350
+ }, {
1351
+ readonly name: "approved";
1352
+ readonly type: "address";
1353
+ readonly indexed: true;
1354
+ readonly internalType: "address";
1355
+ }, {
1356
+ readonly name: "tokenId";
1357
+ readonly type: "uint256";
1358
+ readonly indexed: true;
1359
+ readonly internalType: "uint256";
1360
+ }];
1361
+ readonly anonymous: false;
1362
+ }, {
1363
+ readonly type: "event";
1364
+ readonly name: "ApprovalForAll";
1365
+ readonly inputs: readonly [{
1366
+ readonly name: "owner";
1367
+ readonly type: "address";
1368
+ readonly indexed: true;
1369
+ readonly internalType: "address";
1370
+ }, {
1371
+ readonly name: "operator";
1372
+ readonly type: "address";
1373
+ readonly indexed: true;
1374
+ readonly internalType: "address";
1375
+ }, {
1376
+ readonly name: "approved";
1377
+ readonly type: "bool";
1378
+ readonly indexed: false;
1379
+ readonly internalType: "bool";
1380
+ }];
1381
+ readonly anonymous: false;
1382
+ }, {
1383
+ readonly type: "event";
1384
+ readonly name: "Claimed";
1385
+ readonly inputs: readonly [{
1386
+ readonly name: "id";
1387
+ readonly type: "uint256";
1388
+ readonly indexed: true;
1389
+ readonly internalType: "uint256";
1390
+ }, {
1391
+ readonly name: "bidder";
1392
+ readonly type: "address";
1393
+ readonly indexed: true;
1394
+ readonly internalType: "address";
1395
+ }, {
1396
+ readonly name: "to";
1397
+ readonly type: "address";
1398
+ readonly indexed: false;
1399
+ readonly internalType: "address";
1400
+ }, {
1401
+ readonly name: "nfts";
1402
+ readonly type: "uint32";
1403
+ readonly indexed: false;
1404
+ readonly internalType: "uint32";
1405
+ }, {
1406
+ readonly name: "paid";
1407
+ readonly type: "uint256";
1408
+ readonly indexed: false;
1409
+ readonly internalType: "uint256";
1410
+ }, {
1411
+ readonly name: "refund";
1412
+ readonly type: "uint256";
1413
+ readonly indexed: false;
1414
+ readonly internalType: "uint256";
1415
+ }, {
1416
+ readonly name: "penalty";
1417
+ readonly type: "uint256";
1418
+ readonly indexed: false;
1419
+ readonly internalType: "uint256";
1420
+ }];
1421
+ readonly anonymous: false;
1422
+ }, {
1423
+ readonly type: "event";
1424
+ readonly name: "Committed";
1425
+ readonly inputs: readonly [{
1426
+ readonly name: "id";
1427
+ readonly type: "uint256";
1428
+ readonly indexed: true;
1429
+ readonly internalType: "uint256";
1430
+ }, {
1431
+ readonly name: "bidder";
1432
+ readonly type: "address";
1433
+ readonly indexed: true;
1434
+ readonly internalType: "address";
1435
+ }, {
1436
+ readonly name: "deposit";
1437
+ readonly type: "uint256";
1438
+ readonly indexed: false;
1439
+ readonly internalType: "uint256";
1440
+ }, {
1441
+ readonly name: "wl";
1442
+ readonly type: "bool";
1443
+ readonly indexed: false;
1444
+ readonly internalType: "bool";
1445
+ }, {
1446
+ readonly name: "commitment";
1447
+ readonly type: "bytes32";
1448
+ readonly indexed: false;
1449
+ readonly internalType: "bytes32";
1450
+ }, {
1451
+ readonly name: "sealedBid";
1452
+ readonly type: "bytes";
1453
+ readonly indexed: false;
1454
+ readonly internalType: "bytes";
1455
+ }];
1456
+ readonly anonymous: false;
1457
+ }, {
1458
+ readonly type: "event";
1459
+ readonly name: "Failed";
1460
+ readonly inputs: readonly [];
1461
+ readonly anonymous: false;
1462
+ }, {
1463
+ readonly type: "event";
1464
+ readonly name: "FeesCollected";
1465
+ readonly inputs: readonly [{
1466
+ readonly name: "to";
1467
+ readonly type: "address";
1468
+ readonly indexed: false;
1469
+ readonly internalType: "address";
1470
+ }, {
1471
+ readonly name: "amount";
1472
+ readonly type: "uint256";
1473
+ readonly indexed: false;
1474
+ readonly internalType: "uint256";
1475
+ }];
1476
+ readonly anonymous: false;
1477
+ }, {
1478
+ readonly type: "event";
1479
+ readonly name: "GtdMinted";
1480
+ readonly inputs: readonly [{
1481
+ readonly name: "wallet";
1482
+ readonly type: "address";
1483
+ readonly indexed: true;
1484
+ readonly internalType: "address";
1485
+ }, {
1486
+ readonly name: "quantity";
1487
+ readonly type: "uint32";
1488
+ readonly indexed: false;
1489
+ readonly internalType: "uint32";
1490
+ }, {
1491
+ readonly name: "paid";
1492
+ readonly type: "uint256";
1493
+ readonly indexed: false;
1494
+ readonly internalType: "uint256";
1495
+ }];
1496
+ readonly anonymous: false;
1497
+ }, {
1498
+ readonly type: "event";
1499
+ readonly name: "ProceedsWithdrawn";
1500
+ readonly inputs: readonly [{
1501
+ readonly name: "to";
1502
+ readonly type: "address";
1503
+ readonly indexed: false;
1504
+ readonly internalType: "address";
1505
+ }, {
1506
+ readonly name: "amount";
1507
+ readonly type: "uint256";
1508
+ readonly indexed: false;
1509
+ readonly internalType: "uint256";
1510
+ }];
1511
+ readonly anonymous: false;
1512
+ }, {
1513
+ readonly type: "event";
1514
+ readonly name: "RefundHeld";
1515
+ readonly inputs: readonly [{
1516
+ readonly name: "bidder";
1517
+ readonly type: "address";
1518
+ readonly indexed: true;
1519
+ readonly internalType: "address";
1520
+ }, {
1521
+ readonly name: "amount";
1522
+ readonly type: "uint256";
1523
+ readonly indexed: false;
1524
+ readonly internalType: "uint256";
1525
+ }];
1526
+ readonly anonymous: false;
1527
+ }, {
1528
+ readonly type: "event";
1529
+ readonly name: "RefundWithdrawn";
1530
+ readonly inputs: readonly [{
1531
+ readonly name: "bidder";
1532
+ readonly type: "address";
1533
+ readonly indexed: true;
1534
+ readonly internalType: "address";
1535
+ }, {
1536
+ readonly name: "to";
1537
+ readonly type: "address";
1538
+ readonly indexed: false;
1539
+ readonly internalType: "address";
1540
+ }, {
1541
+ readonly name: "amount";
1542
+ readonly type: "uint256";
1543
+ readonly indexed: false;
1544
+ readonly internalType: "uint256";
1545
+ }];
1546
+ readonly anonymous: false;
1547
+ }, {
1548
+ readonly type: "event";
1549
+ readonly name: "Revealed";
1550
+ readonly inputs: readonly [{
1551
+ readonly name: "id";
1552
+ readonly type: "uint256";
1553
+ readonly indexed: true;
1554
+ readonly internalType: "uint256";
1555
+ }, {
1556
+ readonly name: "bidder";
1557
+ readonly type: "address";
1558
+ readonly indexed: true;
1559
+ readonly internalType: "address";
1560
+ }, {
1561
+ readonly name: "tick";
1562
+ readonly type: "uint16";
1563
+ readonly indexed: false;
1564
+ readonly internalType: "uint16";
1565
+ }, {
1566
+ readonly name: "quantity";
1567
+ readonly type: "uint256";
1568
+ readonly indexed: false;
1569
+ readonly internalType: "uint256";
1570
+ }];
1571
+ readonly anonymous: false;
1572
+ }, {
1573
+ readonly type: "event";
1574
+ readonly name: "Settled";
1575
+ readonly inputs: readonly [{
1576
+ readonly name: "clearingScore";
1577
+ readonly type: "uint256";
1578
+ readonly indexed: false;
1579
+ readonly internalType: "uint256";
1580
+ }, {
1581
+ readonly name: "sold";
1582
+ readonly type: "uint32";
1583
+ readonly indexed: false;
1584
+ readonly internalType: "uint32";
1585
+ }, {
1586
+ readonly name: "tieSupply";
1587
+ readonly type: "uint32";
1588
+ readonly indexed: false;
1589
+ readonly internalType: "uint32";
1590
+ }, {
1591
+ readonly name: "tieDemand";
1592
+ readonly type: "uint32";
1593
+ readonly indexed: false;
1594
+ readonly internalType: "uint32";
1595
+ }];
1596
+ readonly anonymous: false;
1597
+ }, {
1598
+ readonly type: "event";
1599
+ readonly name: "TiesReady";
1600
+ readonly inputs: readonly [{
1601
+ readonly name: "random";
1602
+ readonly type: "uint256";
1603
+ readonly indexed: false;
1604
+ readonly internalType: "uint256";
1605
+ }];
1606
+ readonly anonymous: false;
1607
+ }, {
1608
+ readonly type: "event";
1609
+ readonly name: "Transfer";
1610
+ readonly inputs: readonly [{
1611
+ readonly name: "from";
1612
+ readonly type: "address";
1613
+ readonly indexed: true;
1614
+ readonly internalType: "address";
1615
+ }, {
1616
+ readonly name: "to";
1617
+ readonly type: "address";
1618
+ readonly indexed: true;
1619
+ readonly internalType: "address";
1620
+ }, {
1621
+ readonly name: "tokenId";
1622
+ readonly type: "uint256";
1623
+ readonly indexed: true;
1624
+ readonly internalType: "uint256";
1625
+ }];
1626
+ readonly anonymous: false;
1627
+ }, {
1628
+ readonly type: "event";
1629
+ readonly name: "UnsoldMinted";
1630
+ readonly inputs: readonly [{
1631
+ readonly name: "to";
1632
+ readonly type: "address";
1633
+ readonly indexed: false;
1634
+ readonly internalType: "address";
1635
+ }, {
1636
+ readonly name: "quantity";
1637
+ readonly type: "uint32";
1638
+ readonly indexed: false;
1639
+ readonly internalType: "uint32";
1640
+ }];
1641
+ readonly anonymous: false;
1642
+ }], "Committed">[]>;
1643
+ /** Deliver one bid now: its NFTs to the bidder and the rest of its deposit back (anyone can, it's always the bidder's). */
1644
+ claim(drop: Address, id: bigint): Promise<Hex>;
1645
+ /** A refund the drop couldn't send (a wallet that refuses HYPE) waits here for its bidder. */
1646
+ refundOwed(drop: Address, bidder: Address): Promise<bigint>;
1647
+ withdrawRefund(drop: Address, to: Address): Promise<Hex>;
1648
+ /** Every bid on a drop (or one bidder's), with what it won once settled. */
1649
+ bids(drop: Address, bidder?: Address): Promise<DropBid[]>;
1650
+ /** Open every sealed bid whose drand round has passed. Garbage ciphertexts are skipped (and penalised at claim). */
1651
+ revealAll(drop: Address, opts?: {
1652
+ batchSize?: number;
1653
+ log?: (m: string) => void;
1654
+ }): Promise<{
1655
+ revealed: number;
1656
+ }>;
1657
+ /** Settle, then number the tied bids (if any) so claims can start. */
1658
+ settle(drop: Address, opts?: {
1659
+ tieBatch?: number;
1660
+ }): Promise<Hex[]>;
1661
+ /** Deliver every unclaimed bid (NFTs and refunds always go to the bidder, never the caller). */
1662
+ claimAll(drop: Address, opts?: {
1663
+ batchSize?: number;
1664
+ }): Promise<{
1665
+ claimed: number;
1666
+ }>;
1667
+ /** The bidder takes its NFTs to another address (a fresh wallet, say); the refund still goes to the bidder. */
1668
+ claimTo(drop: Address, id: bigint, to: Address): Promise<Hex>;
1669
+ /** Pay out the creator's proceeds and the protocol fee (anyone can call; the destinations are fixed). */
1670
+ payOut(drop: Address): Promise<Hex[]>;
1671
+ /** The creator mints what nobody bought (or all of it, if the drop failed). */
1672
+ mintUnsold(drop: Address, to: Address, quantity: number): Promise<Hex>;
1673
+ }