UNPKG

vuestic-ui

Version:
19 lines (18 loc) 804 B
import { Ref } from 'vue'; type MaybeRef<T> = Ref<T> | T; type UseEventEventName = keyof GlobalEventHandlersEventMap | string[]; type UseEventEvent<N extends UseEventEventName, D> = N extends keyof GlobalEventHandlersEventMap ? GlobalEventHandlersEventMap[N] : D; /** * SSR safety listen to target event. * @param target by default window * @param event if string, listener will be fully typed. If array of string, you need to type event manually. * * * @example * ```ts * useEvent('resize': (e) => {}) * useEvent(['mousedown', 'mouseup', 'mousemove'], (e) => {}) * ``` */ export declare const useEvent: <N extends UseEventEventName, E extends Event>(event: N, listener: (this: GlobalEventHandlers, event: UseEventEvent<N, E>) => any, target?: MaybeRef<unknown> | boolean) => void; export {};