import { ASObject, AXClass } from '@awayfl/avm2'; import { Event } from './Event'; /** * Base export class for dispatching events * * @export class away.events.EventDispatcher * */ export declare class EventDispatcherBase extends ASObject { static axClass: typeof EventDispatcherBase & AXClass; private _listenerObjects; private _t; toString(): string; constructor(target?: any); /** * Add an event listener * @method addEventListener * @param {String} Name of event to add a listener for * @param {Function} Callback function */ addEventListener(type: string, listener: (event: Event) => void, useCapture?: boolean, priority?: number, useWeakReference?: boolean): void; /** * Remove an event listener * @method removeEventListener * @param {String} Name of event to remove a listener for * @param {Function} Callback function */ removeEventListener(type: string, listener: (event: Event) => void): void; /** * Dispatch an event * @method dispatchEvent * @param {Event} Event to dispatch */ dispatchEvent(event: Event): boolean; /** * check if an object has an event listener assigned to it * @method hasListener * @param {String} Name of event to remove a listener for * @param {Function} Callback function */ hasEventListener(type: string, listener?: (event: Event) => void): boolean; } export declare class ListenerObject { private _index; private _singlePriority; private _listeners; private _listenersByPriority; numListeners: number; addEventListener(listener: (event: Event) => void, priority?: number): void; removeEventListener(listener: (event: Event) => void): void; dispatchEvent(event: Event): void; /** * get Event Listener Index in array. Returns -1 if no listener is added * @method getEventListenerIndex * @param {String} Name of event to remove a listener for * @param {Function} Callback function */ getEventListenerIndex(listener: (event: Event) => void): number; } export default EventDispatcherBase; //# sourceMappingURL=EventDispatcherBase.d.ts.map