import type { ElementEventListener } from './interfaces.js'; /** * Create a Service to bind event listeners to DOM elements events, * you can bind 1 or more elements on 1 or more events. * The advantage of using this service is too easily unbind all listeners without having to pass the actual listener reference */ export declare class BindingEventService { protected _boundedEvents: ElementEventListener[]; get boundedEvents(): ElementEventListener[]; dispose(): void; /** Bind an event listener to any element */ bind(elementOrElements: Document | Element | NodeListOf | Array | Window, eventNameOrNames: string | string[], listener: EventListenerOrEventListenerObject, listenerOptions?: boolean | AddEventListenerOptions, groupName?: string): void; /** Unbind a specific listener that was bounded earlier */ unbind(elementOrElements: Element | NodeListOf, eventNameOrNames: string | string[], listener: EventListenerOrEventListenerObject): void; unbindByEventName(element: Element | Window, eventName: string): 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=bindingEvent.service.d.ts.map