import type { VzEvent, VzEventDetailMap } from '@vizor-vr/shared'; type EventCallback = (event: CustomEvent) => void; /** * Typed event emitter that dispatches CustomEvents on the host element. * Supports both HTML5 media events and Vizor custom events. */ export declare class VzEventEmitter { private element; private handlers; constructor(element: HTMLElement); /** Emit a standard media event (no detail) */ emitMedia(type: string): void; /** Emit a Vizor custom event with typed detail */ emit(type: E, detail?: VzEventDetailMap[E]): void; /** Add an event listener */ on(type: VzEvent | string, callback: EventCallback): () => void; /** Remove an event listener */ off(type: VzEvent | string, callback: EventCallback): void; /** Remove all event listeners */ removeAll(): void; } export {}; //# sourceMappingURL=event-emitter.d.ts.map