/// import { BN } from "@project-serum/anchor"; import { PublicKey } from "@solana/web3.js"; export interface PoolState { bump: number; token0: PublicKey; token1: PublicKey; fee: number; tickSpacing: number; liquidity: BN; sqrtPriceX32: BN; tick: BN; observationIndex: number; observationCardinality: number; observationCardinalityNext: number; feeGrowthGlobal0X32: BN; feeGrowthGlobal1X32: BN; protocolFeesToken0: BN; protocolFeesToken1: BN; unlocked: boolean; } export interface TickState { bump: number; tick: BN; liquidityNet: BN; liquidityGross: BN; feeGrowthOutside0X32: BN; feeGrowthOutside1X32: BN; tickCumulativeOutside: BN; secondsPerLiquidityOutsideX32: BN; secondsOutside: BN; } export interface ObservationState { bump: number; index: number; blockTimestamp: BN; tickCumulative: BN; secondsPerLiquidityCumulativeX32: BN; initialized: boolean; } export declare function transformObservation({ observation, blockTimestamp, tick, liquidity, }: { observation: ObservationState; blockTimestamp: BN; tick: BN; liquidity: BN; }): ObservationState; export interface SnapshotCumulative { tickCumulativeInside: BN; secondsPerLiquidityInsideX32: BN; secondsInside: BN; } export declare function snapshotCumulativesInside({ poolState, tickLower, tickUpper, latestObservation, time, }: { poolState: PoolState; tickLower: TickState; tickUpper: TickState; latestObservation: ObservationState; time: BN; }): SnapshotCumulative;