import { InteractingEntryGenerator } from './interacting-entry-generator';
import { InteractingEntry, EventType } from '../../../types/vega-chart';
/** The `ArcPathHoverGenerator` class is a TypeScript function that handles mouseover events on SVG elements with a specific class and modifies their appearance. */
export declare class ArcPathHoverGenerator extends InteractingEntryGenerator<undefined> {
  protected eventType: EventType;
  /**
   * The function "createShouldHandle" returns a function that takes an event as a parameter and returns a boolean value.
   *
   * @returns {InteractingEntry['shouldHandle']} A function that takes an event as an argument and returns a boolean value.
   */
  protected createShouldHandle(): InteractingEntry['shouldHandle'];
  /**
   * The function "createHandle" returns the handle property of an InteractingEntry object.
   *
   * @returns {InteractingEntry['handle']} The `handle` property of the `InteractingEntry` object is being returned.
   */
  protected createHandle(): InteractingEntry['handle'];
  /**
   * The function checks if the target element of a mouse event has a specific class.
   *
   * @param {MouseEvent} event - MouseEvent is a type of event that is triggered when a mouse action
   * occurs, such as a click or hover. It contains information about the event, such as the target
   * element and the position of the mouse. In this code snippet, the function `shouldHandle` takes in a
   * MouseEvent as a parameter.
   * @returns {boolean} The function `shouldHandle` is returning a boolean value. It checks if the `event.target`
   * is an HTML element with the class name `vega-chart-arc-path`. If it is, then it returns `true`,
   * otherwise it returns `false`.
   */
  private shouldHandle;
  /**
   * This function handles mouse events on a D3 selection of SVG elements, specifically for hovering over and highlighting a specific path element.
   *
   * @param {MouseEvent} event - The event parameter is of type MouseEvent, which is an object that
   * contains information about a mouse event, such as the type of event (click, hover, etc.), the
   * target element that triggered the event, and the position of the mouse cursor.
   */
  private handle;
}
