import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; import { Message, proto3 } from "@bufbuild/protobuf"; /** * @generated from enum data.v2.CategoryClass */ export declare enum CategoryClass { /** * @generated from enum value: CATEGORY_CLASS_UNSPECIFIED = 0; */ UNSPECIFIED = 0, /** * Computed from market stats (e.g. Recently Launched, High Volatility). * * @generated from enum value: CATEGORY_CLASS_MARKET = 1; */ MARKET = 1, /** * Asset classes (e.g. Stocks, ETFs, Commodities). * * @generated from enum value: CATEGORY_CLASS_ASSET = 2; */ ASSET = 2, /** * Sector taxonomy (e.g. DeFi, Gaming, AI Agents). * * @generated from enum value: CATEGORY_CLASS_SECTOR = 3; */ SECTOR = 3 } /** * One member token of a category. * * @generated from message data.v2.CategoryTopToken */ export declare class CategoryTopToken extends Message { /** * @generated from field: uint32 chain_id = 1; */ chainId: number; /** * @generated from field: string address = 2; */ address: string; /** * @generated from field: string symbol = 3; */ symbol: string; /** * @generated from field: string logo_url = 4; */ logoUrl: string; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "data.v2.CategoryTopToken"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): CategoryTopToken; static fromJson(jsonValue: JsonValue, options?: Partial): CategoryTopToken; static fromJsonString(jsonString: string, options?: Partial): CategoryTopToken; static equals(a: CategoryTopToken | PlainMessage | undefined, b: CategoryTopToken | PlainMessage | undefined): boolean; } /** * Chain-scoped, multichain-deduped aggregates over the category's members. * * @generated from message data.v2.CategoryAggregateStats */ export declare class CategoryAggregateStats extends Message { /** * @generated from field: uint32 token_count = 1; */ tokenCount: number; /** * Volume-weighted across members. * * @generated from field: double price_change_24h_pct = 2; */ priceChange24hPct: number; /** * @generated from field: double volume_1h = 3; */ volume1h: number; /** * @generated from field: double volume_1d = 4; */ volume1d: number; /** * @generated from field: double volume_1w = 5; */ volume1w: number; /** * @generated from field: double volume_1m = 6; */ volume1m: number; /** * @generated from field: double volume_1y = 7; */ volume1y: number; /** * @generated from field: optional double fdv = 8; */ fdv?: number; /** * @generated from field: optional double market_cap = 9; */ marketCap?: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "data.v2.CategoryAggregateStats"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): CategoryAggregateStats; static fromJson(jsonValue: JsonValue, options?: Partial): CategoryAggregateStats; static fromJsonString(jsonString: string, options?: Partial): CategoryAggregateStats; static equals(a: CategoryAggregateStats | PlainMessage | undefined, b: CategoryAggregateStats | PlainMessage | undefined): boolean; } /** * Category identity: stable, request-independent metadata. * * @generated from message data.v2.Category */ export declare class Category extends Message { /** * @generated from field: string id = 1; */ id: string; /** * @generated from field: string name = 2; */ name: string; /** * @generated from field: string description = 3; */ description: string; /** * @generated from field: data.v2.CategoryClass class = 5; */ class: CategoryClass; /** * @generated from field: bool grouped = 6; */ grouped: boolean; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "data.v2.Category"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): Category; static fromJson(jsonValue: JsonValue, options?: Partial): Category; static fromJsonString(jsonString: string, options?: Partial): Category; static equals(a: Category | PlainMessage | undefined, b: Category | PlainMessage | undefined): boolean; } /** * A category plus its chain-scoped market view (mirrors RankedPool / * RankedMultichainToken). * * @generated from message data.v2.RankedCategory */ export declare class RankedCategory extends Message { /** * @generated from field: data.v2.Category category = 1; */ category?: Category; /** * @generated from field: data.v2.CategoryAggregateStats stats = 2; */ stats?: CategoryAggregateStats; /** * @generated from field: repeated data.v2.CategoryTopToken top_tokens = 3; */ topTokens: CategoryTopToken[]; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "data.v2.RankedCategory"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): RankedCategory; static fromJson(jsonValue: JsonValue, options?: Partial): RankedCategory; static fromJsonString(jsonString: string, options?: Partial): RankedCategory; static equals(a: RankedCategory | PlainMessage | undefined, b: RankedCategory | PlainMessage | undefined): boolean; } /** * @generated from message data.v2.TimeSeriesPoint */ export declare class TimeSeriesPoint extends Message { /** * unix seconds, bucket start * * @generated from field: int64 timestamp = 1; */ timestamp: bigint; /** * @generated from field: double value = 2; */ value: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "data.v2.TimeSeriesPoint"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): TimeSeriesPoint; static fromJson(jsonValue: JsonValue, options?: Partial): TimeSeriesPoint; static fromJsonString(jsonString: string, options?: Partial): TimeSeriesPoint; static equals(a: TimeSeriesPoint | PlainMessage | undefined, b: TimeSeriesPoint | PlainMessage | undefined): boolean; }