/**Listener of the event. * The listener is a function which takes only one parameter * which has same interface as declared in specialization of the emitter */ export declare type Listener = (event: T) => any; /**Event emitter with strict data structure of event. * Specify the structure of data when declare the emitter then * when using, all events and listeners have to obey this structure. * Create one for each type of event. */ export declare class TypedEventEmitter { private _eventListener; private readonly DEFAULT_EVENT; constructor(); get listenerAppender(): (listener: Listener) => void; /** The call this function to get appender to add new listener for the event */ private getListenerAppender; /** Remove all listeners */ off(): void; /** Emit the event */ emit(data: T): void; }