/** * The EventManagement class is used to track active event listeners * on DOM elements. */ export declare class EventManagement { private listeners; /** * addEventListener provides a component level method for adding event listeners * to any EventTarget in the DOM and tracking them with the scope of this component. * This ensures that when the component is unmounted, any outstanding listeners * will be removed. * * @param target - The EventTarget to add the listener too. * * @param type - The event type the listener is signing up too. * * @param listener - The listener callback delegate to be called when the events occur. * * @param useCapture - Use capture mode for event phase. */ addEventListener(target: EventTarget, type: string, listener: (event?: Event) => boolean | void, useCapture?: boolean): void; /** * removeAllListeners is used to clear out any added listeners that are being * managed by this object. */ removeAllListeners(): void; /** * removeEventListener provides a way to remove an event listener from any EventTarget * in the DOM and will remove the components tracking reference on this listener. * * @param target - The EventTarget to remove the listener from. * * @param type - The event type the listener was signed up too. * * @param listener - The listener callback delegate to remove. * * @param useCapture - Was the event using capture mode. */ removeEventListener(target: EventTarget, type: string, listener: (event?: Event) => boolean | void, useCapture?: boolean): void; }