import type { EventType, LightDrawEvent } from '../types'; type EventHandler = (event: LightDrawEvent) => void; export declare class EventEmitter { private listeners; on(type: EventType, handler: EventHandler): this; off(type: EventType, handler?: EventHandler): this; once(type: EventType, handler: EventHandler): this; emit(type: EventType, event: LightDrawEvent): boolean; hasListeners(type?: EventType): boolean; removeAllListeners(): void; } export declare function createEvent(type: EventType, target: unknown, originalEvent: Event, x: number, y: number, worldX: number, worldY: number, payload?: unknown): LightDrawEvent & { propagationStopped: boolean; }; export {};