import { EventHandlerFunction, IEmitAndWaitOptions, IEventManagerOptions, IEventPayload } from "./lib/interfaces";
export declare class EventManager {
    private options;
    private emittery;
    constructor(options?: Partial<IEventManagerOptions>);
    private createLogger;
    on(eventName: string, listener: EventHandlerFunction): Promise<void>;
    emit(eventName: string, payload: IEventPayload): Promise<IEventPayload>;
    emitAndWait(eventName: string, payload: IEventPayload, replyToName?: string, options?: IEmitAndWaitOptions): Promise<IEventPayload>;
    initialize(): Promise<void>;
    close(): Promise<void>;
    reset(): Promise<void>;
    private addMetasToPayload;
    private emitResponseIfNeeded;
}
