import type { IMapService } from '@antv/l7-core'; type EventHandler = (...args: any[]) => void; /** * 事件管理器,用于统一管理事件绑定和解绑 * 解决组件销毁时事件未正确清理导致的内存泄漏问题 */ export declare class EventManager { private bindings; /** * 绑定事件 * @param target 事件目标对象 * @param event 事件名称 * @param handler 事件处理函数 */ on(target: IMapService, event: string, handler: EventHandler): this; on(target: HTMLElement, event: string, handler: EventHandler): this; on(target: Window, event: string, handler: EventHandler): this; on(target: Document, event: string, handler: EventHandler): this; /** * 解绑指定事件 * @param target 事件目标对象 * @param event 事件名称 * @param handler 事件处理函数 */ off(target: IMapService, event: string, handler: EventHandler): this; off(target: HTMLElement, event: string, handler: EventHandler): this; off(target: Window, event: string, handler: EventHandler): this; off(target: Document, event: string, handler: EventHandler): this; /** * 清除所有绑定的事件 */ clear(): void; /** * 获取当前绑定的事件数量 */ size(): number; /** * 判断目标是否为 MapService */ private isMapService; } export default EventManager;