import { ECharts as EChartsInstance } from 'echarts/core'; import { TimeSeries } from '@perses-dev/spec'; import { EChartsDataFormat, TimeChartSeriesMapping, FormatOptions } from '../model'; import { CursorCoordinates, CursorData } from './tooltip-model'; export declare const INCREASE_NEARBY_SERIES_MULTIPLIER = 5.5; export declare const DYNAMIC_NEARBY_SERIES_MULTIPLIER = 30; export declare const SHOW_FEWER_SERIES_LIMIT = 5; export interface NearbySeriesInfo { seriesIdx: number | null; datumIdx: number | null; seriesName: string; date: number; markerColor: string; x: number; y: number; formattedY: string; isClosestToCursor: boolean; } export type NearbySeriesArray = NearbySeriesInfo[]; /** * Returns formatted series data for the points that are close to the user's cursor. * Adjust xBuffer and yBuffer to increase or decrease number of series shown. */ export declare function checkforNearbyTimeSeries(data: TimeSeries[], seriesMapping: TimeChartSeriesMapping, pointInGrid: number[], yBuffer: number, chart: EChartsInstance, format?: FormatOptions, seriesFormatMap?: Map, cursorPixelY?: number): NearbySeriesArray; /** * [DEPRECATED] Returns formatted series data for the points that are close to the user's cursor * Adjust yBuffer to increase or decrease number of series shown */ export declare function legacyCheckforNearbySeries(data: EChartsDataFormat, pointInGrid: number[], yBuffer: number, chart?: EChartsInstance, format?: FormatOptions): NearbySeriesArray; /** * Uses mouse position to determine whether user is hovering over a chart canvas * If yes, convert from pixel values to logical cartesian coordinates and return all nearby series */ export declare function getNearbySeriesData({ mousePos, pinnedPos, data, seriesMapping, chart, format, seriesFormatMap, showAllSeries, }: { mousePos: CursorData['coords']; pinnedPos: CursorCoordinates | null; data: TimeSeries[]; seriesMapping: TimeChartSeriesMapping; chart?: EChartsInstance; format?: FormatOptions; seriesFormatMap?: Map; showAllSeries?: boolean; }): NearbySeriesArray; export declare function isWithinPercentageRange({ valueToCheck, baseValue, percentage, }: { valueToCheck: number; baseValue: number; percentage: number; }): boolean; export declare function getYBuffer({ yInterval, totalSeries, showAllSeries, }: { yInterval: number; totalSeries: number; showAllSeries?: boolean; }): number; //# sourceMappingURL=nearby-series.d.ts.map