export interface IEventCollection { [key: string]: IEventListener[]; } export declare type IEventListener = () => void; export declare class EventEmitter { events: IEventCollection; constructor(); on(event: string, listener: IEventListener): void; off(event: string, listener: IEventListener): void; emit(event: string, ...args: any[]): void; once(event: string, listener: IEventListener): void; }