import type { Arrayable } from '../util/types';
export interface GeneralEventListener<E = Event> {
    (evt: E): unknown;
}
export declare function addEventListener<E extends keyof WindowEventMap>(target: Window, event: Arrayable<E>, handler: (this: Window, ev: WindowEventMap[E]) => unknown, options?: boolean | AddEventListenerOptions): VoidFunction;
export declare function addEventListener<E extends keyof DocumentEventMap>(target: Document, event: Arrayable<E>, handler: (this: Document, ev: DocumentEventMap[E]) => unknown, options?: boolean | AddEventListenerOptions): VoidFunction;
export declare function addEventListener<EventType = Event>(target: EventTarget, event: Arrayable<string>, handler: GeneralEventListener<EventType>, options?: boolean | AddEventListenerOptions): VoidFunction;
