import EventBroadcaster from './../event-broadcaster';
import { default as EventListener } from './../event-listener';
/**
 * An asynchronous implementation of an event broadcaster
 */
export default class AsynchronousEventBroadcaster implements EventBroadcaster {
    private subscribers;
    constructor();
    /**
     * {@inheritdoc}
     */
    broadcast<T>(payload?: T): Promise<T>;
    /**
     * {@inheritdoc}
     */
    subscribe(subscriber: EventListener): void;
    /**
     * {@inheritdoc}
     */
    remove(subscriber: EventListener): void;
    /**
     * {@inheritdoc}
     */
    clear(): void;
}
