import { VegaEventIDInterface } from '../../../event-manager/event-id/vega-event-id-interface';
/** The `DomNodeSubjectObserverFactory` class provides methods to add and remove observers to HTML element nodes. */
export declare class DomNodeSubjectObserverFactory {
  /**
   * add observer to a given HTML element node
   *
   * @param {HTMLElement} node the node ref
   * @param {VegaEventIDInterface} eventId The `eventId` parameter is of type `VegaEventIDInterface`. It represents the ID of a Vega event.
   * @param {(input?: unknown) => void} callback the callback handle
   * @param {(input?: unknown) => boolean} acceptableHandle the acceptable handle
   */
  static addUniqueObserverToNode(node: HTMLElement, eventId: VegaEventIDInterface, callback: (input?: unknown) => void, acceptableHandle?: (input?: unknown) => boolean): void;
  /**
   * The function removes observers from a given HTML element node.
   *
   * @param {HTMLElement} node - The `node` parameter is an `HTMLElement` object representing an HTML element in the DOM (Document Object Model).
   * @param {VegaEventIDInterface} eventId The `eventId` parameter is of type `VegaEventIDInterface`. It represents the ID of a Vega event.
   */
  static removeUniqueObserverFromNode(node: HTMLElement, eventId: VegaEventIDInterface): void;
}
