import { DispatcherBase, IPropagationStatus } from "ste-core"; import { ISimpleEventHandler } from "./ISimpleEventHandler"; import { ISimpleEvent } from "./ISimpleEvent"; /** * The dispatcher handles the storage of subsciptions and facilitates * subscription, unsubscription and dispatching of a simple event * * @export * @class SimpleEventDispatcher * @extends {DispatcherBase>} * @implements {ISimpleEvent} * @template TArgs */ export declare class SimpleEventDispatcher extends DispatcherBase> implements ISimpleEvent { /** * Creates an instance of SimpleEventDispatcher. * * @memberOf SimpleEventDispatcher */ constructor(); /** * Dispatches the event. * * @param {TArgs} args The arguments object. * @returns {IPropagationStatus} The status of the event. * * @memberOf SimpleEventDispatcher */ dispatch(args: TArgs): IPropagationStatus; /** * Dispatches the event without waiting for the result. * * @param {TArgs} args The arguments object. * * @memberOf SimpleEventDispatcher */ dispatchAsync(args: TArgs): void; /** * Creates an event from the dispatcher. Will return the dispatcher * in a wrapper. This will prevent exposure of any dispatcher methods. * * @returns {ISimpleEvent} The event. * * @memberOf SimpleEventDispatcher */ asEvent(): ISimpleEvent; }