export interface ElementEventListener { element: Element; eventName: keyof HTMLElementEventMap; listener: EventListener; groupName?: string; } export declare class BindingEventService { protected _distinctEvent: boolean; protected _boundedEvents: ElementEventListener[]; get boundedEvents(): ElementEventListener[]; constructor(options?: { distinctEvent: boolean; }); dispose(): void; /** Bind an event listener to any element */ bind(elementOrElements: H | NodeListOf | Window, eventNameOrNames: keyof HTMLElementEventMap | Array, listener: EventListener, listenerOptions?: boolean | AddEventListenerOptions, groupName?: string): void; hasBinding(elm: Element, eventNameOrNames?: keyof HTMLElementEventMap | Array): boolean; /** Unbind a specific listener that was bounded earlier */ unbind(elementOrElements?: Element | NodeListOf | null, eventNameOrNames?: keyof HTMLElementEventMap | Array, listener?: EventListenerOrEventListenerObject | null): void; /** * Unbind all event listeners that were bounded, optionally provide a group name to unbind all listeners assigned to that specific group only. */ unbindAll(groupName?: string | string[]): void; /** bind all event(s) to the element */ private bindElementEvents; } //# sourceMappingURL=binding-event.service.d.ts.map