import { NavigateEvent } from '../hooks';
import { MaybeRefOrGetter } from 'vue';
type EventMap<T extends EventTarget> = T extends MediaQueryList ? MediaQueryListEvent : T extends HTMLMediaElement ? HTMLMediaElementEventMap : T extends Document ? DocumentEventMap : T extends Window ? WindowEventMap & {
    navigate: NavigateEvent;
} : HTMLElementEventMap;
type EventTypes<T extends EventTarget> = keyof EventMap<T> & string;
type EventValue<T extends EventTarget, K extends EventTypes<T>> = Extract<EventMap<T>[K], Event>;
export declare function useEventListener<T extends EventTarget, K extends EventTypes<T>>(target: MaybeRefOrGetter<T | null | undefined>, type: K | string, listener: (this: T, ev: EventValue<T, K>) => void, options?: AddEventListenerOptions): void;
export {};
