import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf"; import { Message, proto3 } from "@bufbuild/protobuf"; /** * @generated from enum pools.v1.ProtocolVersion */ export declare enum ProtocolVersion { /** * @generated from enum value: PROTOCOL_VERSION_UNSPECIFIED = 0; */ UNSPECIFIED = 0, /** * @generated from enum value: PROTOCOL_VERSION_V2 = 1; */ V2 = 1, /** * @generated from enum value: PROTOCOL_VERSION_V3 = 2; */ V3 = 2, /** * @generated from enum value: PROTOCOL_VERSION_V4 = 3; */ V4 = 3 } /** * @generated from enum pools.v1.PositionStatus */ export declare enum PositionStatus { /** * @generated from enum value: POSITION_STATUS_UNSPECIFIED = 0; */ UNSPECIFIED = 0, /** * @generated from enum value: POSITION_STATUS_IN_RANGE = 1; */ IN_RANGE = 1, /** * @generated from enum value: POSITION_STATUS_OUT_OF_RANGE = 2; */ OUT_OF_RANGE = 2, /** * @generated from enum value: POSITION_STATUS_CLOSED = 3; */ CLOSED = 3 } /** * @generated from message pools.v1.Token */ export declare class Token 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: uint32 decimals = 4; */ decimals: number; /** * @generated from field: string name = 5; */ name: string; /** * @generated from field: optional string logo = 6; */ logo?: string; /** * @generated from field: bool is_native = 7; */ isNative: boolean; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.Token"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): Token; static fromJson(jsonValue: JsonValue, options?: Partial): Token; static fromJsonString(jsonString: string, options?: Partial): Token; static equals(a: Token | PlainMessage | undefined, b: Token | PlainMessage | undefined): boolean; } /** * Unclaimed reward balance for a single reward token. Surfaces LP incentive * rewards per denomination (e.g. UNI, USDC) rather than a single UNI-only amount. * * @generated from message pools.v1.RewardBalance */ export declare class RewardBalance extends Message { /** * @generated from field: pools.v1.Token token = 1; */ token?: Token; /** * Unclaimed amount in the token's smallest unit. * * @generated from field: string unclaimed_amount = 2; */ unclaimedAmount: string; /** * Unclaimed amount in USD. Unset when no price is available. * * @generated from field: optional double unclaimed_amount_usd = 3; */ unclaimedAmountUsd?: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.RewardBalance"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): RewardBalance; static fromJson(jsonValue: JsonValue, options?: Partial): RewardBalance; static fromJsonString(jsonString: string, options?: Partial): RewardBalance; static equals(a: RewardBalance | PlainMessage | undefined, b: RewardBalance | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.PoolPosition */ export declare class PoolPosition extends Message { /** * @generated from field: string token_id = 1; */ tokenId: string; /** * @generated from field: string tick_lower = 2; */ tickLower: string; /** * @generated from field: string tick_upper = 3; */ tickUpper: string; /** * @generated from field: string liquidity = 4; */ liquidity: string; /** * @generated from field: pools.v1.Token token0 = 5; */ token0?: Token; /** * @generated from field: pools.v1.Token token1 = 6; */ token1?: Token; /** * @generated from field: string fee_tier = 7; */ feeTier: string; /** * @generated from field: string current_tick = 8; */ currentTick: string; /** * @generated from field: string current_price = 9; */ currentPrice: string; /** * @generated from field: string tick_spacing = 10; */ tickSpacing: string; /** * @generated from field: string token0_uncollected_fees = 11; */ token0UncollectedFees: string; /** * @generated from field: string token1_uncollected_fees = 12; */ token1UncollectedFees: string; /** * @generated from field: string amount0 = 13; */ amount0: string; /** * @generated from field: string amount1 = 14; */ amount1: string; /** * @generated from field: string pool_id = 15; */ poolId: string; /** * @generated from field: bool is_dynamic_fee = 16; */ isDynamicFee: boolean; /** * @generated from field: string total_liquidity_usd = 17; */ totalLiquidityUsd: string; /** * @generated from field: string current_liquidity = 18; */ currentLiquidity: string; /** * @generated from field: float apr = 19; */ apr: number; /** * @generated from field: string owner = 20; */ owner: string; /** * @generated from field: float boosted_apr = 21; */ boostedApr: number; /** * @generated from field: float total_apr = 22; */ totalApr: number; /** * Per-reward-token unclaimed balances (multi-denomination). * * @generated from field: repeated pools.v1.RewardBalance reward_balances = 24; */ rewardBalances: RewardBalance[]; /** * Protocol fee in the same unit as `fee_tier` (hundredths-of-a-bip / pips). * Protocol fee (pips), same unit as `fee_tier`. v4: ADDITIVE on top of it; * v3: SUBTRACTIVE share of it (positions are v3/v4 only). Optional: unset = * unknown, set 0 = off. * * @generated from field: optional uint32 protocol_fee = 25; */ protocolFee?: number; /** * Effective (all-in) fee (pips). v4: fee_tier+protocol_fee; v3: fee_tier. * Optional: unset when protocol_fee is unavailable (incl. v4 dynamic-fee). * * @generated from field: optional uint32 effective_fee = 26; */ effectiveFee?: number; /** * Fee APR averaged over the trailing 1/7/30 calendar days (excludes reward * boosts). Set whenever the pool's day-data history was fetched (positions * always fetch it); unset otherwise. Days without trades count as zero * volume; pools younger than a window average over their age instead. * * @generated from field: optional double apr_1d = 27; */ apr1d?: number; /** * @generated from field: optional double apr_7d = 28; */ apr7d?: number; /** * @generated from field: optional double apr_30d = 29; */ apr30d?: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.PoolPosition"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): PoolPosition; static fromJson(jsonValue: JsonValue, options?: Partial): PoolPosition; static fromJsonString(jsonString: string, options?: Partial): PoolPosition; static equals(a: PoolPosition | PlainMessage | undefined, b: PoolPosition | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.PairPosition */ export declare class PairPosition extends Message { /** * @generated from field: pools.v1.Token token0 = 1; */ token0?: Token; /** * @generated from field: pools.v1.Token token1 = 2; */ token1?: Token; /** * @generated from field: pools.v1.Token liquidity_token = 3; */ liquidityToken?: Token; /** * @generated from field: string reserve0 = 4; */ reserve0: string; /** * @generated from field: string reserve1 = 5; */ reserve1: string; /** * @generated from field: string liquidity = 6; */ liquidity: string; /** * @generated from field: string liquidity0 = 7; */ liquidity0: string; /** * @generated from field: string liquidity1 = 8; */ liquidity1: string; /** * @generated from field: string total_supply = 9; */ totalSupply: string; /** * @generated from field: float apr = 10; */ apr: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.PairPosition"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): PairPosition; static fromJson(jsonValue: JsonValue, options?: Partial): PairPosition; static fromJsonString(jsonString: string, options?: Partial): PairPosition; static equals(a: PairPosition | PlainMessage | undefined, b: PairPosition | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.Position */ export declare class Position extends Message { /** * @generated from field: uint32 chain_id = 1; */ chainId: number; /** * @generated from field: pools.v1.ProtocolVersion protocol_version = 2; */ protocolVersion: ProtocolVersion; /** * @generated from oneof pools.v1.Position.position */ position: { /** * @generated from field: pools.v1.PairPosition v2_pair = 3; */ value: PairPosition; case: "v2Pair"; } | { /** * @generated from field: pools.v1.PoolPosition v3_position = 4; */ value: PoolPosition; case: "v3Position"; } | { /** * @generated from field: pools.v1.V4Position v4_position = 5; */ value: V4Position; case: "v4Position"; } | { case: undefined; value?: undefined; }; /** * @generated from field: pools.v1.PositionStatus status = 6; */ status: PositionStatus; /** * @generated from field: uint32 timestamp = 7; */ timestamp: number; /** * @generated from field: bool is_hidden = 8; */ isHidden: boolean; /** * @generated from field: optional double value_usd = 9; */ valueUsd?: number; /** * @generated from field: optional double uncollected_fees_usd = 10; */ uncollectedFeesUsd?: number; /** * True if this is a permissioned-pool position (held via the * PermissionedPositionManager) rather than a canonical one. Default false. * * @generated from field: bool permissioned = 11; */ permissioned: boolean; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.Position"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): Position; static fromJson(jsonValue: JsonValue, options?: Partial): Position; static fromJsonString(jsonString: string, options?: Partial): Position; static equals(a: Position | PlainMessage | undefined, b: Position | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.Hook */ export declare class Hook extends Message { /** * @generated from field: string address = 1; */ address: string; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.Hook"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): Hook; static fromJson(jsonValue: JsonValue, options?: Partial): Hook; static fromJsonString(jsonString: string, options?: Partial): Hook; static equals(a: Hook | PlainMessage | undefined, b: Hook | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.V4Position */ export declare class V4Position extends Message { /** * @generated from field: pools.v1.PoolPosition pool_position = 1; */ poolPosition?: PoolPosition; /** * @generated from field: repeated pools.v1.Hook hooks = 2; */ hooks: Hook[]; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.V4Position"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): V4Position; static fromJson(jsonValue: JsonValue, options?: Partial): V4Position; static fromJsonString(jsonString: string, options?: Partial): V4Position; static equals(a: V4Position | PlainMessage | undefined, b: V4Position | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.Pool */ export declare class Pool extends Message { /** * @generated from field: string pool_id = 1; */ poolId: string; /** * @generated from field: string token0 = 2; */ token0: string; /** * @generated from field: string token1 = 3; */ token1: string; /** * @generated from field: int32 tick = 4; */ tick: number; /** * @generated from field: string liquidity = 5; */ liquidity: string; /** * @generated from field: string sqrt_price_x96 = 6; */ sqrtPriceX96: string; /** * @generated from field: uint32 fee = 7; */ fee: number; /** * @generated from field: int32 tick_spacing = 8; */ tickSpacing: number; /** * @generated from field: optional pools.v1.Hook hooks = 9; */ hooks?: Hook; /** * @generated from field: pools.v1.ProtocolVersion protocol_version = 10; */ protocolVersion: ProtocolVersion; /** * @generated from field: uint32 chain_id = 11; */ chainId: number; /** * @generated from field: bool is_dynamic_fee = 12; */ isDynamicFee: boolean; /** * @generated from field: string total_liquidity_usd = 13; */ totalLiquidityUsd: string; /** * @generated from field: float apr = 14; */ apr: number; /** * @generated from field: float boosted_apr = 15; */ boostedApr: number; /** * @generated from field: float total_apr = 16; */ totalApr: number; /** * @generated from field: optional double volume_30d = 17; */ volume30d?: number; /** * Protocol fee, same unit as `fee` (pips). v4: ADDITIVE on top of `fee`; * v2/v3: SUBTRACTIVE share of `fee` (distinguish by protocol_version). * Optional: unset when there's no on-chain value; a set 0 means off. * * @generated from field: optional uint32 protocol_fee = 18; */ protocolFee?: number; /** * Effective (all-in) fee, same unit as `fee` (pips). v4: fee + protocol_fee; * v2/v3: equals `fee`. Optional: unset when protocol_fee is unavailable and * for v4 dynamic-fee pools (LP fee is per-swap). * * @generated from field: optional uint32 effective_fee = 19; */ effectiveFee?: number; /** * Fee APR averaged over the trailing 1/7/30 calendar days (excludes reward * boosts). Set only when the request enables include_volume_30d — day-data * history is fetched only then; unset otherwise. Days without trades count * as zero volume; pools younger than a window average over their age * instead. * * @generated from field: optional double apr_1d = 20; */ apr1d?: number; /** * @generated from field: optional double apr_7d = 21; */ apr7d?: number; /** * @generated from field: optional double apr_30d = 22; */ apr30d?: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.Pool"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): Pool; static fromJson(jsonValue: JsonValue, options?: Partial): Pool; static fromJsonString(jsonString: string, options?: Partial): Pool; static equals(a: Pool | PlainMessage | undefined, b: Pool | PlainMessage | undefined): boolean; } /** * @generated from message pools.v1.Pair */ export declare class Pair extends Message { /** * @generated from field: string pair_address = 1; */ pairAddress: string; /** * @generated from field: string token0 = 2; */ token0: string; /** * @generated from field: string token1 = 3; */ token1: string; /** * @generated from field: string reserve0 = 4; */ reserve0: string; /** * @generated from field: string reserve1 = 5; */ reserve1: string; /** * @generated from field: string total_supply = 6; */ totalSupply: string; /** * @generated from field: float apr = 7; */ apr: number; constructor(data?: PartialMessage); static readonly runtime: typeof proto3; static readonly typeName = "pools.v1.Pair"; static readonly fields: FieldList; static fromBinary(bytes: Uint8Array, options?: Partial): Pair; static fromJson(jsonValue: JsonValue, options?: Partial): Pair; static fromJsonString(jsonString: string, options?: Partial): Pair; static equals(a: Pair | PlainMessage | undefined, b: Pair | PlainMessage | undefined): boolean; }