import { EventBase } from './EventBase'; /** * Base export class for dispatching events * * @export class away.events.EventDispatcher * */ export declare class EventDispatcher { private _listenerObjects; private _t; constructor(target?: any); /** * Add an event listener * @method addEventListener * @param {String} type of event to add a listener for * @param {Function} listener function */ addEventListener(type: string, listener: (event: EventBase) => void): void; /** * Remove an event listener * @method removeEventListener * @param {String} type of event to remove a listener for * @param {Function} listener function */ removeEventListener(type: string, listener: (event: EventBase) => void): void; /** * Dispatch an event * @method dispatchEvent * @param {Event} event to dispatch */ dispatchEvent(event: EventBase, target?: any): void; /** * check if an object has an event listener assigned to it * @method hasListener * @param {String} type of event to remove a listener for * @param {Function} listener function */ hasEventListener(type: string, listener?: (event: EventBase) => void): boolean; protected removeAllEventListeners(): void; } export declare class ListenerObject { private _index; private _listeners; numListeners: number; addEventListener(listener: (event: EventBase) => void): void; removeEventListener(listener: (event: EventBase) => void): void; dispatchEvent(event: EventBase): void; /** * get Event Listener Index in array. Returns -1 if no listener is added * @method getEventListenerIndex * @param {Function} listener function */ getEventListenerIndex(listener: (event: EventBase) => void): number; } //# sourceMappingURL=EventDispatcher.d.ts.map