import * as React from 'react';
import type { LineItemClickIdentifier } from "../models/seriesType/line.mjs";
import type { SeriesId } from "../models/seriesType/common.mjs";
import type { ChartsActivationEvent } from "../models/events.mjs";
/**
* Priorities matching the pointer hit-testing order: marks sit above lines, lines above areas.
* The topmost callback a pointer would reach is the one keyboard activation fires.
*/
export declare const LINE_ACTIVATION_PRIORITY: {
mark: number;
line: number;
area: number;
};
/**
* Registers Enter/Space activation of the focused line item.
*/
export declare function useRegisterLineItemActivation(onItemClick: ((event: ChartsActivationEvent, lineItemIdentifier: LineItemClickIdentifier) => void) | undefined, priority: number,
/**
* Declines items the caller does not render, so activation falls through to the next handler.
* Used by the mark plot: a mark that is not shown should defer to the line, then the area.
*/
canActivate?: (item: LineItemClickIdentifier) => boolean): void;
/**
* Creates a click handler for line and area paths that enriches the item
* identifier with the `dataIndex` of the closest data point along the x-axis.
*
* The index is derived from the click position, using the same logic as the
* axis interaction (tooltip, highlight, `onAxisClick`). The callback is not
* fired when the click position cannot be associated with a data point.
*/
export declare function useLineItemClickHandler(onItemClick: ((event: ChartsActivationEvent, lineItemIdentifier: LineItemClickIdentifier) => void) | undefined, priority: number,
/**
* Declines items the caller does not render, so activation falls through to the next handler.
* The area plot uses it to defer when the series has no area drawn.
*/
canActivate?: (item: LineItemClickIdentifier) => boolean): ((event: React.MouseEvent, seriesId: SeriesId) => void) | undefined;