import type EventEmitter from '@antv/event-emitter';
import type { DisplayObject } from '@antv/g';
import { Document } from '@antv/g';
import { Target } from '../../types';
import type { BaseEvent } from './events';
export * from './events';
/**
* 基于 Event 对象触发事件
*
* Trigger event based on Event object
* @param emitter - 事件目标 | event target
* @param event - 事件对象 | event object
*/
export declare function emit(emitter: EventEmitter, event: BaseEvent): void;
/**
* 获取事件目标元素
*
* Get the event target element
* @param shape - 事件图形 | event shape
* @returns 目标元素 | target element
* @remarks
* 事件响应大多数情况会命中元素的内部图形,通过该方法可以获取到其所属元素
*
* Most of the event responses will hit the internal graphics of the element, and this method can be used to get the element to which it belongs
*/
export declare function eventTargetOf(shape?: DisplayObject | Document): {
type: string;
element: Target;
} | null;