@uniswap/client-data-api 0.0.264 → 0.0.265

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.
@@ -1,763 +0,0 @@
1
- import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf";
2
- import { Message, proto3, Timestamp } from "@bufbuild/protobuf";
3
- /**
4
- * Sort field for ListLaunches; UNSPECIFIED defaults to LAUNCHED_AT (newest first).
5
- *
6
- * @generated from enum launches.v1.LaunchesOrderBy
7
- */
8
- export declare enum LaunchesOrderBy {
9
- /**
10
- * @generated from enum value: LAUNCHES_ORDER_BY_UNSPECIFIED = 0;
11
- */
12
- UNSPECIFIED = 0,
13
- /**
14
- * @generated from enum value: LAUNCHES_ORDER_BY_LAUNCHED_AT = 1;
15
- */
16
- LAUNCHED_AT = 1,
17
- /**
18
- * @generated from enum value: LAUNCHES_ORDER_BY_VOLUME_1D = 2;
19
- */
20
- VOLUME_1D = 2,
21
- /**
22
- * @generated from enum value: LAUNCHES_ORDER_BY_TVL = 3;
23
- */
24
- TVL = 3,
25
- /**
26
- * @generated from enum value: LAUNCHES_ORDER_BY_PRICE_CHANGE_1H = 4;
27
- */
28
- PRICE_CHANGE_1H = 4,
29
- /**
30
- * @generated from enum value: LAUNCHES_ORDER_BY_PRICE_CHANGE_1D = 5;
31
- */
32
- PRICE_CHANGE_1D = 5,
33
- /**
34
- * Trending: launches with recent buy-side momentum. Candidates are tokens
35
- * with buy activity in the trailing hour REGARDLESS of launch age; gated
36
- * (non-negative 1h price change, minimum FDV, minimum distinct 1h buyers)
37
- * and scored by volume/buyer acceleration vs the preceding hours, with the
38
- * remainder of the page backfilled by 24h volume so the module never
39
- * renders empty. Needs no LaunchListFilter.window — any window filter is
40
- * ignored under this sort.
41
- *
42
- * @generated from enum value: LAUNCHES_ORDER_BY_TRENDING = 6;
43
- */
44
- TRENDING = 6,
45
- /**
46
- * Fully-diluted valuation, descending by default. Served from the RANKED
47
- * launch_tokens read (the live attribution scan has no FDV engine), which
48
- * every non-LAUNCHED_AT sort already routes to. Unlike TRENDING, a
49
- * LaunchListFilter.window IS applied under this sort: the launch-age floor
50
- * reaches both arms, so FDV + LAST_24H ranks by FDV among launches inside
51
- * that window rather than across all launches.
52
- *
53
- * @generated from enum value: LAUNCHES_ORDER_BY_FDV = 7;
54
- */
55
- FDV = 7
56
- }
57
- /**
58
- * Launch-recency window for ListLaunches. UNSPECIFIED applies no window (all
59
- * launches); LAST_24H / LAST_1H keep only launches whose launched_at is within
60
- * the trailing 24 hours / 1 hour respectively.
61
- *
62
- * @generated from enum launches.v1.LaunchWindow
63
- */
64
- export declare enum LaunchWindow {
65
- /**
66
- * @generated from enum value: LAUNCH_WINDOW_UNSPECIFIED = 0;
67
- */
68
- UNSPECIFIED = 0,
69
- /**
70
- * @generated from enum value: LAUNCH_WINDOW_LAST_24H = 1;
71
- */
72
- LAST_24H = 1,
73
- /**
74
- * @generated from enum value: LAUNCH_WINDOW_LAST_1H = 2;
75
- */
76
- LAST_1H = 2
77
- }
78
- /**
79
- * The trade's direction from the trader's perspective: BUY = the trader
80
- * received the requested token, SELL = the trader gave it up. UNSPECIFIED
81
- * when the direction can't be derived (zero/unknown amount).
82
- *
83
- * @generated from enum launches.v1.TradeSide
84
- */
85
- export declare enum TradeSide {
86
- /**
87
- * @generated from enum value: TRADE_SIDE_UNSPECIFIED = 0;
88
- */
89
- UNSPECIFIED = 0,
90
- /**
91
- * @generated from enum value: TRADE_SIDE_BUY = 1;
92
- */
93
- BUY = 1,
94
- /**
95
- * @generated from enum value: TRADE_SIDE_SELL = 2;
96
- */
97
- SELL = 2
98
- }
99
- /**
100
- * @generated from message launches.v1.TimestampedValue
101
- */
102
- export declare class TimestampedValue extends Message<TimestampedValue> {
103
- /**
104
- * @generated from field: uint64 timestamp = 1;
105
- */
106
- timestamp: bigint;
107
- /**
108
- * @generated from field: double value = 2;
109
- */
110
- value: number;
111
- constructor(data?: PartialMessage<TimestampedValue>);
112
- static readonly runtime: typeof proto3;
113
- static readonly typeName = "launches.v1.TimestampedValue";
114
- static readonly fields: FieldList;
115
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TimestampedValue;
116
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TimestampedValue;
117
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TimestampedValue;
118
- static equals(a: TimestampedValue | PlainMessage<TimestampedValue> | undefined, b: TimestampedValue | PlainMessage<TimestampedValue> | undefined): boolean;
119
- }
120
- /**
121
- * @generated from message launches.v1.TokenSafety
122
- */
123
- export declare class TokenSafety extends Message<TokenSafety> {
124
- /**
125
- * @generated from field: bool is_spam = 1;
126
- */
127
- isSpam: boolean;
128
- /**
129
- * @generated from field: bool is_verified = 2;
130
- */
131
- isVerified: boolean;
132
- /**
133
- * @generated from field: bool is_blocked = 3;
134
- */
135
- isBlocked: boolean;
136
- /**
137
- * @generated from field: optional string verdict = 4;
138
- */
139
- verdict?: string;
140
- /**
141
- * @generated from field: repeated string features = 5;
142
- */
143
- features: string[];
144
- constructor(data?: PartialMessage<TokenSafety>);
145
- static readonly runtime: typeof proto3;
146
- static readonly typeName = "launches.v1.TokenSafety";
147
- static readonly fields: FieldList;
148
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TokenSafety;
149
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TokenSafety;
150
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TokenSafety;
151
- static equals(a: TokenSafety | PlainMessage<TokenSafety> | undefined, b: TokenSafety | PlainMessage<TokenSafety> | undefined): boolean;
152
- }
153
- /**
154
- * A token launchpad known to the Launches surface (see the data-api
155
- * launchpad registry). A launchpad is the launching FRONTEND users see; id is
156
- * the stable slug used in launchpad_id filters.
157
- *
158
- * @generated from message launches.v1.Launchpad
159
- */
160
- export declare class Launchpad extends Message<Launchpad> {
161
- /**
162
- * @generated from field: string id = 1;
163
- */
164
- id: string;
165
- /**
166
- * @generated from field: string name = 2;
167
- */
168
- name: string;
169
- /**
170
- * @generated from field: optional string logo_url = 3;
171
- */
172
- logoUrl?: string;
173
- /**
174
- * Underlying shared launch protocol (e.g. "doppler") when the frontend
175
- * launches through contracts it doesn't own. Unset for self-contained
176
- * launchpads; several frontends can share one protocol value.
177
- *
178
- * @generated from field: optional string protocol = 4;
179
- */
180
- protocol?: string;
181
- constructor(data?: PartialMessage<Launchpad>);
182
- static readonly runtime: typeof proto3;
183
- static readonly typeName = "launches.v1.Launchpad";
184
- static readonly fields: FieldList;
185
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Launchpad;
186
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Launchpad;
187
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Launchpad;
188
- static equals(a: Launchpad | PlainMessage<Launchpad> | undefined, b: Launchpad | PlainMessage<Launchpad> | undefined): boolean;
189
- }
190
- /**
191
- * Optional filters for ListLaunches. When a window is set and sort_by is
192
- * UNSPECIFIED the server sorts by 24h volume (VOLUME_1D).
193
- *
194
- * @generated from message launches.v1.LaunchListFilter
195
- */
196
- export declare class LaunchListFilter extends Message<LaunchListFilter> {
197
- /**
198
- * @generated from field: launches.v1.LaunchWindow window = 1;
199
- */
200
- window: LaunchWindow;
201
- constructor(data?: PartialMessage<LaunchListFilter>);
202
- static readonly runtime: typeof proto3;
203
- static readonly typeName = "launches.v1.LaunchListFilter";
204
- static readonly fields: FieldList;
205
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): LaunchListFilter;
206
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): LaunchListFilter;
207
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): LaunchListFilter;
208
- static equals(a: LaunchListFilter | PlainMessage<LaunchListFilter> | undefined, b: LaunchListFilter | PlainMessage<LaunchListFilter> | undefined): boolean;
209
- }
210
- /**
211
- * The launched token's identity and display metadata.
212
- *
213
- * @generated from message launches.v1.LaunchToken
214
- */
215
- export declare class LaunchToken extends Message<LaunchToken> {
216
- /**
217
- * @generated from field: uint32 chain_id = 1;
218
- */
219
- chainId: number;
220
- /**
221
- * @generated from field: string address = 2;
222
- */
223
- address: string;
224
- /**
225
- * @generated from field: string symbol = 3;
226
- */
227
- symbol: string;
228
- /**
229
- * @generated from field: string name = 4;
230
- */
231
- name: string;
232
- /**
233
- * @generated from field: optional string logo_url = 5;
234
- */
235
- logoUrl?: string;
236
- /**
237
- * Safety classification from Aurora canonical_tokens — the same source and
238
- * shape GetToken serves (safety.is_blocked carries the compliance
239
- * blocklist). Unset when the token has no canonical row yet (fresh
240
- * launches lag ingestion) or the read failed: treat as not blocked.
241
- *
242
- * @generated from field: launches.v1.TokenSafety safety = 6;
243
- */
244
- safety?: TokenSafety;
245
- constructor(data?: PartialMessage<LaunchToken>);
246
- static readonly runtime: typeof proto3;
247
- static readonly typeName = "launches.v1.LaunchToken";
248
- static readonly fields: FieldList;
249
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): LaunchToken;
250
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): LaunchToken;
251
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): LaunchToken;
252
- static equals(a: LaunchToken | PlainMessage<LaunchToken> | undefined, b: LaunchToken | PlainMessage<LaunchToken> | undefined): boolean;
253
- }
254
- /**
255
- * Live USD stats for a launch's pool/token. Each field is unset when its
256
- * source has no data yet (fresh launches lag the stats pipelines).
257
- *
258
- * @generated from message launches.v1.LaunchStats
259
- */
260
- export declare class LaunchStats extends Message<LaunchStats> {
261
- /**
262
- * @generated from field: optional double volume_24h_usd = 1;
263
- */
264
- volume24hUsd?: number;
265
- /**
266
- * @generated from field: optional double tvl_usd = 2;
267
- */
268
- tvlUsd?: number;
269
- /**
270
- * @generated from field: optional double price_usd = 3;
271
- */
272
- priceUsd?: number;
273
- /**
274
- * price x total supply; unset where no supply source
275
- *
276
- * @generated from field: optional double fdv_usd = 4;
277
- */
278
- fdvUsd?: number;
279
- /**
280
- * @generated from field: optional double price_change_percent_1h = 5;
281
- */
282
- priceChangePercent1h?: number;
283
- /**
284
- * @generated from field: optional double price_change_percent_24h = 6;
285
- */
286
- priceChangePercent24h?: number;
287
- /**
288
- * USD price sparkline over the trailing 24h, oldest first. Same shape as
289
- * RankedMultichainToken.sparkline (Aurora-side timestamps are synthesized;
290
- * CCA points are observed). Empty when no series is available.
291
- *
292
- * @generated from field: repeated launches.v1.TimestampedValue sparkline = 7;
293
- */
294
- sparkline: TimestampedValue[];
295
- /**
296
- * price_usd in ETH terms, derived at serve time as price_usd divided by
297
- * the chain's native-ETH USD rate. Only set on chains whose native
298
- * currency is ETH; unset when either price is unavailable.
299
- *
300
- * @generated from field: optional double price_eth = 8;
301
- */
302
- priceEth?: number;
303
- /**
304
- * USD price ~24h ago — the anchor price_change_percent_24h is measured
305
- * against. When set, price_change_percent_24h is computed at serve time
306
- * from the live current price against this anchor; unset when the stats
307
- * pipeline has not resolved an anchor yet.
308
- *
309
- * @generated from field: optional double price_24h_ago_usd = 9;
310
- */
311
- price24hAgoUsd?: number;
312
- constructor(data?: PartialMessage<LaunchStats>);
313
- static readonly runtime: typeof proto3;
314
- static readonly typeName = "launches.v1.LaunchStats";
315
- static readonly fields: FieldList;
316
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): LaunchStats;
317
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): LaunchStats;
318
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): LaunchStats;
319
- static equals(a: LaunchStats | PlainMessage<LaunchStats> | undefined, b: LaunchStats | PlainMessage<LaunchStats> | undefined): boolean;
320
- }
321
- /**
322
- * One token launch: the earliest pool a (token, launchpad) pair created.
323
- *
324
- * @generated from message launches.v1.Launch
325
- */
326
- export declare class Launch extends Message<Launch> {
327
- /**
328
- * @generated from field: string launchpad_id = 1;
329
- */
330
- launchpadId: string;
331
- /**
332
- * @generated from field: launches.v1.LaunchToken token = 2;
333
- */
334
- token?: LaunchToken;
335
- /**
336
- * v4 pool id for hook-attributed and direct launches; CCA pool key hash
337
- * once the auction has migrated to a pool, empty before then.
338
- *
339
- * @generated from field: string pool_id = 3;
340
- */
341
- poolId: string;
342
- /**
343
- * @generated from field: optional string hooks_address = 4;
344
- */
345
- hooksAddress?: string;
346
- /**
347
- * unix seconds
348
- *
349
- * @generated from field: int64 launched_at = 5;
350
- */
351
- launchedAt: bigint;
352
- /**
353
- * @generated from field: launches.v1.LaunchStats stats = 6;
354
- */
355
- stats?: LaunchStats;
356
- /**
357
- * CCA + direct-launch launches: true once the launch graduated. CCA:
358
- * auction migrated into its pool (on-chain fact). Direct launches
359
- * (launchpad "uniswap-bonding-curve") have NO on-chain graduation — the
360
- * pool is a vanilla v4 pool from block one — so this is currently always
361
- * false for them; a serving-side FDV-threshold graduation rule may set it
362
- * later. Unset for other hook-attributed launches, which are pools
363
- * already.
364
- *
365
- * @generated from field: optional bool graduated = 7;
366
- */
367
- graduated?: boolean;
368
- /**
369
- * CCA launches only, pre-graduation: bid volume as a percent of the
370
- * required raise, clamped to [0, 100]. Unset once graduated, when the
371
- * auction has no required raise, and for hook-attributed launches.
372
- *
373
- * @generated from field: optional double auction_fill_pct = 8;
374
- */
375
- auctionFillPct?: number;
376
- /**
377
- * CCA launches only, pre-graduation: the auction's end block number
378
- * (bigint as string). Clients estimate calendar time from blocks, like the
379
- * v1 auction start_block/end_block. Unset once graduated.
380
- *
381
- * @generated from field: optional string auction_end_block = 9;
382
- */
383
- auctionEndBlock?: string;
384
- /**
385
- * CCA launches only: distinct wallets that have placed bids in the auction
386
- * (all bids, including withdrawn/exited — historical participation, so it
387
- * stays set after graduation). Unset for hook-attributed launches, which
388
- * have no auction. int32 matches the v1 auction total_bid_count.
389
- *
390
- * @generated from field: optional int32 bidder_count = 10;
391
- */
392
- bidderCount?: number;
393
- /**
394
- * Direct-launch overlay (see BondingCurveInfo), set only for launches of
395
- * the Uniswap direct-launch launchpad ("uniswap-bonding-curve").
396
- *
397
- * @generated from field: optional launches.v1.BondingCurveInfo bonding_curve = 11;
398
- */
399
- bondingCurve?: BondingCurveInfo;
400
- /**
401
- * Launchpad token metadata (12-15), joined from launched_tokens — present
402
- * only for launches whose token was created via the Uniswap token factory
403
- * (CCA and bonding-curve launches); other launchpads' tokens have no row
404
- * and serve unset. Verification gating mirrors v1 GetAuction
405
- * (AuctionsBL.enrichWithLaunchpadMetadata): the description is on-chain
406
- * creator text at the same trust level as name/symbol, served ungated.
407
- *
408
- * @generated from field: optional string token_description = 12;
409
- */
410
- tokenDescription?: string;
411
- /**
412
- * The launch tx's from address (launched_tokens.creator_wallet),
413
- * EIP-55 checksummed. Public on-chain data, served ungated.
414
- *
415
- * @generated from field: optional string creator_address = 13;
416
- */
417
- creatorAddress?: string;
418
- /**
419
- * Creator-declared project website. Served only once website verification
420
- * passes; verification is deferred today (status stays 'pending', same
421
- * rule that keeps the token mirror's homepageUrl null), so this stays
422
- * unset until that ships.
423
- *
424
- * @generated from field: optional string website_url = 14;
425
- */
426
- websiteUrl?: string;
427
- /**
428
- * X handle, only when its inline-at-ingest Ed25519 verification passed.
429
- *
430
- * @generated from field: optional string x_handle = 15;
431
- */
432
- xHandle?: string;
433
- /**
434
- * Bonding-curve launches only (16-17): distinct wallets (swap tx senders)
435
- * that bought the launch token on its curve pool — all-time and trailing
436
- * hour. Served from ClickHouse v4 swaps; absent (never 0) when the stats
437
- * source fails or for non-curve launches, so clients can tell degraded
438
- * from a real zero.
439
- *
440
- * @generated from field: optional int32 unique_buyer_count = 16;
441
- */
442
- uniqueBuyerCount?: number;
443
- /**
444
- * @generated from field: optional int32 buyers_last_1h = 17;
445
- */
446
- buyersLast1h?: number;
447
- /**
448
- * Exact on-chain holder count of the launch token, computed at query time
449
- * over the raw launch-transfers feed (ClickHouse, reorg-excluded):
450
- * addresses with a positive net balance, contracts included, burn sinks
451
- * like 0x…dEaD included while they hold a balance — raw Etherscan-style
452
- * semantics. Present only for tokens created via the Uniswap token
453
- * factory (CCA + bonding-curve launches, whose transfers the feed
454
- * whitelists); absent — never 0 — while the token has no ingested
455
- * transfers or when the enrichment fails.
456
- *
457
- * @generated from field: optional int32 holder_count = 18;
458
- */
459
- holderCount?: number;
460
- /**
461
- * Cumulative burned amount of the launch token, split by burn sink and
462
- * computed from the same transfer feed. Raw uint256 base units as decimal
463
- * strings; total burned = burned_to_zero + burned_to_dead. Because burn
464
- * addresses never spend, a holders-excluding-burn count is
465
- * client-derivable as holder_count - (burned_to_dead > 0 ? 1 : 0). Same
466
- * presence rule as holder_count (absent without ingested transfers), but
467
- * once the token has transfers a genuine "0" is served.
468
- *
469
- * @generated from field: optional string burned_to_zero = 19;
470
- */
471
- burnedToZero?: string;
472
- /**
473
- * @generated from field: optional string burned_to_dead = 20;
474
- */
475
- burnedToDead?: string;
476
- /**
477
- * CCA launches only, pre-graduation (same lifecycle as auction_end_block):
478
- * wall-clock time of the auction's end block in unix seconds, computed
479
- * server-side (LP-1300) — the exact block timestamp once the end block is
480
- * mined, otherwise an estimate from a per-chain block-time model. Unset
481
- * once graduated, when the source data is unavailable, and for
482
- * hook-attributed launches.
483
- *
484
- * @generated from field: optional int64 auction_end_time = 21;
485
- */
486
- auctionEndTime?: bigint;
487
- /**
488
- * X profile image URL of the verified launcher account, captured from the
489
- * launch's signed x-verification claims. Same gate as x_handle: served only
490
- * when the inline-at-ingest Ed25519 verification passed. Unset for launches
491
- * that predate claim capture (backfill pending) or carry no avatar.
492
- *
493
- * @generated from field: optional string x_profile_image_url = 22;
494
- */
495
- xProfileImageUrl?: string;
496
- /**
497
- * Whether the launcher's X account was verified (blue check) when captured.
498
- * Tri-state via presence: unset = unknown (pre-feature launch, not yet
499
- * backfilled), false = X reported not verified, true = verified. Same
500
- * x_handle_status gate as x_handle / x_profile_image_url.
501
- *
502
- * @generated from field: optional bool x_verified = 23;
503
- */
504
- xVerified?: boolean;
505
- /**
506
- * Home-card trade tape: the launch token's most recent swaps, newest
507
- * first, capped at the last 5 within the trailing 24h — same rows (and
508
- * message) GetTokenTrades serves, aggregated across all the token's pools
509
- * on its chain. Served from a short-TTL cache refreshed off the request
510
- * path, so entries can lag live trades by the cache TTL (~30s) and a
511
- * cold cache serves an empty list — clients treat empty as "no recent
512
- * activity known", not an error. Pre-graduation CCA launches have no
513
- * swaps by construction (bids are not trades) — the auction tape is
514
- * AuctionWithStats.recent_bids on ListTopAuctions.
515
- *
516
- * @generated from field: repeated launches.v1.TokenTrade recent_trades = 24;
517
- */
518
- recentTrades: TokenTrade[];
519
- /**
520
- * Badges earned by the launch's token (LP badges), one per badge type,
521
- * highest tier only, canonical order. Empty until the token has earned
522
- * any (badges are awarded at ingest and by a slow tier cron, so the
523
- * common row serves an empty list).
524
- *
525
- * @generated from field: repeated launches.v1.LaunchBadge badges = 25;
526
- */
527
- badges: LaunchBadge[];
528
- constructor(data?: PartialMessage<Launch>);
529
- static readonly runtime: typeof proto3;
530
- static readonly typeName = "launches.v1.Launch";
531
- static readonly fields: FieldList;
532
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Launch;
533
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Launch;
534
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Launch;
535
- static equals(a: Launch | PlainMessage<Launch> | undefined, b: Launch | PlainMessage<Launch> | undefined): boolean;
536
- }
537
- /**
538
- * One badge earned by a launch's token. type/tier are deliberately plain
539
- * strings, NOT enums: the client contract pins the lowercase ids on the
540
- * wire, and proto-JSON would serialize an enum's VALUE NAMES instead.
541
- *
542
- * @generated from message launches.v1.LaunchBadge
543
- */
544
- export declare class LaunchBadge extends Message<LaunchBadge> {
545
- /**
546
- * "original" | "frontrunner" | "volume" | "holders" | "badger".
547
- *
548
- * @generated from field: string type = 1;
549
- */
550
- type: string;
551
- /**
552
- * Tier id, present only for the tiered types — volume: "5m" | "10m" |
553
- * "50m"; holders: "100" | "1k" | "10k". Unset for untiered types.
554
- *
555
- * @generated from field: optional string tier = 2;
556
- */
557
- tier?: string;
558
- /**
559
- * When the badge was earned (proto-JSON serializes this as an ISO-8601
560
- * string, which is the client contract). Exact on-chain launch time for
561
- * frontrunner; observation time for original and for tier crossings,
562
- * which are only known to have happened by the pass that spots them.
563
- *
564
- * @generated from field: google.protobuf.Timestamp earned_at = 3;
565
- */
566
- earnedAt?: Timestamp;
567
- /**
568
- * Rarity: percentage (0-100) of eligible tokens that hold this badge
569
- * TYPE (any tier), for the client's rarity-tag hover. The denominator is
570
- * every factory-launched token (the launched_tokens registry). Served
571
- * from a short-TTL cached aggregate; unset when the aggregate is
572
- * unavailable — clients hide the rarity detail rather than showing 0.
573
- *
574
- * @generated from field: optional double holder_percentage = 4;
575
- */
576
- holderPercentage?: number;
577
- constructor(data?: PartialMessage<LaunchBadge>);
578
- static readonly runtime: typeof proto3;
579
- static readonly typeName = "launches.v1.LaunchBadge";
580
- static readonly fields: FieldList;
581
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): LaunchBadge;
582
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): LaunchBadge;
583
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): LaunchBadge;
584
- static equals(a: LaunchBadge | PlainMessage<LaunchBadge> | undefined, b: LaunchBadge | PlainMessage<LaunchBadge> | undefined): boolean;
585
- }
586
- /**
587
- * One row of a launch token's holder list (GetLaunchHolders).
588
- *
589
- * @generated from message launches.v1.LaunchHolder
590
- */
591
- export declare class LaunchHolder extends Message<LaunchHolder> {
592
- /**
593
- * EIP-55 checksummed, so clients can equality-match against
594
- * Launch.creator_address and well-known addresses (LP, burn sinks).
595
- *
596
- * @generated from field: string address = 1;
597
- */
598
- address: string;
599
- /**
600
- * Net balance, raw base units as a decimal string. For the synthetic
601
- * zero-address burn row this is the cumulative amount burned to 0x0.
602
- *
603
- * @generated from field: string balance = 2;
604
- */
605
- balance: string;
606
- /**
607
- * balance as a percent of minted_supply, in [0, 100].
608
- *
609
- * @generated from field: double supply_pct = 3;
610
- */
611
- supplyPct: number;
612
- /**
613
- * True for burn-sink rows (the zero address and 0x…dEaD). Burn rows are
614
- * served in the list (burned tokens stay visible) but excluded from
615
- * top10_supply_pct; the synthetic zero-address row is also excluded from
616
- * holder_count (0x…dEaD counts, matching Launch.holder_count).
617
- *
618
- * @generated from field: bool is_burn_address = 4;
619
- */
620
- isBurnAddress: boolean;
621
- /**
622
- * True for the launch pool's custody row — the chain's v4 PoolManager
623
- * singleton, which holds the pool's token-side balance (the LP NFT sits
624
- * in the FeeSplitter, the ERC-20 supply does not). Served in the list so
625
- * clients can label it, but excluded from top10_supply_pct like burn rows
626
- * (the pool is the market, not a dumpable holder); it stays inside
627
- * holder_count.
628
- *
629
- * @generated from field: bool is_pool_address = 5;
630
- */
631
- isPoolAddress: boolean;
632
- constructor(data?: PartialMessage<LaunchHolder>);
633
- static readonly runtime: typeof proto3;
634
- static readonly typeName = "launches.v1.LaunchHolder";
635
- static readonly fields: FieldList;
636
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): LaunchHolder;
637
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): LaunchHolder;
638
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): LaunchHolder;
639
- static equals(a: LaunchHolder | PlainMessage<LaunchHolder> | undefined, b: LaunchHolder | PlainMessage<LaunchHolder> | undefined): boolean;
640
- }
641
- /**
642
- * Overlay for launches of the Uniswap direct-launch launchpad (launchpad_id
643
- * "uniswap-bonding-curve", kept for client compatibility). The current
644
- * launcher generation (DirectLaunchStrategy, LP-1289) is hookless with NO
645
- * on-chain graduation lifecycle: launch pools are vanilla v4 pools from
646
- * block one, and "graduation" is a serving/frontend concept (an FDV
647
- * threshold), not a contract event. Fields 1-5 and 7-9 belong to the
648
- * never-launched bonding-curve hook generation and are no longer set for
649
- * new launches; they are kept so the message shape stays wire-compatible.
650
- *
651
- * @generated from message launches.v1.BondingCurveInfo
652
- */
653
- export declare class BondingCurveInfo extends Message<BondingCurveInfo> {
654
- /**
655
- * Legacy bonding-curve-hook fields (1-5, 7-9): never set for direct-launch
656
- * (hookless) launches — there is no curve and no on-chain graduation.
657
- *
658
- * @generated from field: optional string graduation_sqrt_price_x96 = 1;
659
- */
660
- graduationSqrtPriceX96?: string;
661
- /**
662
- * @generated from field: optional int32 curve_tick_lower = 2;
663
- */
664
- curveTickLower?: number;
665
- /**
666
- * @generated from field: optional int32 curve_tick_upper = 3;
667
- */
668
- curveTickUpper?: number;
669
- /**
670
- * @generated from field: optional string curve_supply = 4;
671
- */
672
- curveSupply?: string;
673
- /**
674
- * @generated from field: optional string reserve_supply = 5;
675
- */
676
- reserveSupply?: string;
677
- /**
678
- * @generated from field: optional string graduated_tx_hash = 7;
679
- */
680
- graduatedTxHash?: string;
681
- /**
682
- * @generated from field: optional double curve_progress_pct = 8;
683
- */
684
- curveProgressPct?: number;
685
- /**
686
- * @generated from field: optional int64 graduated_at = 9;
687
- */
688
- graduatedAt?: bigint;
689
- /**
690
- * The launch's fee beneficiary, EIP-55 checksummed: the CURRENT holder of
691
- * the launch's BeneficiaryVault NFT, i.e. the address receiving the
692
- * creator share of the launch pool's trading fees. Freely chosen at
693
- * launch time by whoever built the launch transaction — a payee, NOT
694
- * proven authorship (see Launch.creator_address for the launch tx
695
- * sender) — and it MOVES with later NFT transfers. Unset while ingestion
696
- * of the vault events lags the launch, or when the position is
697
- * unregistered.
698
- *
699
- * @generated from field: optional string fee_beneficiary = 10;
700
- */
701
- feeBeneficiary?: string;
702
- constructor(data?: PartialMessage<BondingCurveInfo>);
703
- static readonly runtime: typeof proto3;
704
- static readonly typeName = "launches.v1.BondingCurveInfo";
705
- static readonly fields: FieldList;
706
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): BondingCurveInfo;
707
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): BondingCurveInfo;
708
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): BondingCurveInfo;
709
- static equals(a: BondingCurveInfo | PlainMessage<BondingCurveInfo> | undefined, b: BondingCurveInfo | PlainMessage<BondingCurveInfo> | undefined): boolean;
710
- }
711
- /**
712
- * One swap involving the requested token, returned by GetTokenTrades.
713
- *
714
- * @generated from message launches.v1.TokenTrade
715
- */
716
- export declare class TokenTrade extends Message<TokenTrade> {
717
- /**
718
- * @generated from field: string tx_hash = 1;
719
- */
720
- txHash: string;
721
- /**
722
- * @generated from field: launches.v1.TradeSide side = 2;
723
- */
724
- side: TradeSide;
725
- /**
726
- * The transaction's from-address (the EOA that signed it), not the router
727
- * contract that forwarded the swap to the pool.
728
- *
729
- * @generated from field: string wallet = 3;
730
- */
731
- wallet: string;
732
- /**
733
- * Whole-swap USD value at trade time; unset when no USD price is known.
734
- *
735
- * @generated from field: optional double amount_usd = 4;
736
- */
737
- amountUsd?: number;
738
- /**
739
- * Absolute amount of the requested token traded, decimal string in token
740
- * units (decimals applied). Empty when the token's decimals are unknown.
741
- *
742
- * @generated from field: string token_amount = 5;
743
- */
744
- tokenAmount: string;
745
- /**
746
- * USD price of the requested token at trade time; unset when unknown.
747
- *
748
- * @generated from field: optional double price_usd = 6;
749
- */
750
- priceUsd?: number;
751
- /**
752
- * @generated from field: google.protobuf.Timestamp timestamp = 7;
753
- */
754
- timestamp?: Timestamp;
755
- constructor(data?: PartialMessage<TokenTrade>);
756
- static readonly runtime: typeof proto3;
757
- static readonly typeName = "launches.v1.TokenTrade";
758
- static readonly fields: FieldList;
759
- static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): TokenTrade;
760
- static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): TokenTrade;
761
- static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): TokenTrade;
762
- static equals(a: TokenTrade | PlainMessage<TokenTrade> | undefined, b: TokenTrade | PlainMessage<TokenTrade> | undefined): boolean;
763
- }