import { ImmutableContext, MutableContext, Observation } from '../../../types'; import { ObservationStore } from '../../observation'; import { Uint32String, Int24String, Uint128String, Uint16String } from '../int'; export declare function transform(last: Observation, blockTimestamp: Uint32String, tick: Int24String, liquidity: Uint128String): Observation; export declare function initialize(observationStore: ObservationStore, context: MutableContext, poolAddress: Buffer, time: Uint32String, simulation?: boolean): Promise<[cardinality: string, cardinalityNext: string]>; export declare function write(observationStore: ObservationStore, context: MutableContext, poolAddress: Buffer, index: Uint16String, blockTimestamp: Uint32String, tick: Int24String, liquidity: Uint128String, cardinality: Uint16String, cardinalityNext: Uint16String, simulation?: boolean): Promise<[indexUpdated: string, cardinalityUpdated: string]>; export declare function grow(observationStore: ObservationStore, context: MutableContext, poolAddress: Buffer, current: Uint16String, next: Uint16String, simulation?: boolean): Promise; export declare function lte(time: Uint32String, a: Uint32String, b: Uint32String): boolean; export declare function binarySearch(observationStore: ObservationStore, context: ImmutableContext, poolAddress: Buffer, time: Uint32String, target: Uint32String, index: Uint16String, cardinality: Uint16String): Promise<[beforeOrAt: Observation, atOrAfter: Observation]>; export declare function getSurroundingObservations(observationStore: ObservationStore, context: ImmutableContext, poolAddress: Buffer, time: Uint32String, target: Uint32String, tick: Int24String, index: Uint16String, liquidity: Uint128String, cardinality: Uint16String): Promise<[beforeOrAt: Observation, atOrAfter: Observation]>; export declare function observeSingle(observationStore: ObservationStore, context: ImmutableContext, poolAddress: Buffer, time: Uint32String, secondsAgo: Uint32String, tick: Int24String, index: Uint16String, liquidity: Uint128String, cardinality: Uint16String): Promise<[tickCumulative: string, secondsPerLiquidityCumulativeX128: string]>; export declare function observe(observationStore: ObservationStore, context: ImmutableContext, poolAddress: Buffer, time: Uint32String, secondsAgo: Uint32String[], tick: Int24String, index: Uint16String, liquidity: Uint128String, cardinality: Uint16String): Promise<{ tickCumulatives: string[]; secondsPerLiquidityCumulativeX128s: string[]; }>;