export interface EventCallback { (evt: EventType): void; } export interface EventObject { handleEvent: EventCallback; } export type EventHandler = EventCallback | EventObject; /** * Adds types to the EventTarget class. Hopefully this won't be necessary forever. * * https://github.com/microsoft/TypeScript/issues/28357 * https://github.com/microsoft/TypeScript/issues/43477 * https://github.com/microsoft/TypeScript/issues/299 * etc */ export declare class EventEmitter> extends EventTarget { #private; listenerCount(type: string): number; addEventListener(type: K, listener: EventHandler | null, options?: boolean | AddEventListenerOptions): void; removeEventListener(type: K, listener?: EventHandler | null, options?: boolean | EventListenerOptions): void; dispatchEvent(event: Event): boolean; safeDispatchEvent(type: keyof EventMap, detail: CustomEventInit): boolean; } export declare const CustomEvent: { new (type: string, eventInitDict?: CustomEventInit | undefined): CustomEvent; prototype: CustomEvent; }; //# sourceMappingURL=events.d.ts.map