export declare type EventMap = { [name: string]: (...args: any[]) => void; }; export interface Emitter { addEventListener: (name: Event, callback: Events[Event]) => void; removeEventListener: (name: Event, callback: Events[Event]) => void; removeEventListeners: (name?: Event) => void; dispatchEvent: (name: Event, ...args: Parameters) => void; } export declare const emitter: (host: T) => T & Emitter;