import React from 'react'; export declare type NonCancelableEventHandler = (event: NonCancelableCustomEvent) => void; export declare type CancelableEventHandler = (event: CustomEvent) => void; export declare type NonCancelableCustomEvent = Omit, 'preventDefault'>; export interface BaseKeyDetail { keyCode: number; key: string; ctrlKey: boolean; shiftKey: boolean; altKey: boolean; metaKey: boolean; } export interface ClickDetail { button: number; ctrlKey: boolean; shiftKey: boolean; altKey: boolean; metaKey: boolean; } export interface BaseNavigationDetail { href: string | undefined; external?: boolean; target?: string; } export declare function createCustomEvent({ cancelable, detail }: CustomEventInit): CustomEvent; export declare function fireNonCancelableEvent(handler: NonCancelableEventHandler | undefined, detail?: T): void; export declare function fireCancelableEvent(handler: CancelableEventHandler | undefined, detail: T, sourceEvent?: React.SyntheticEvent | Event): boolean; export declare function fireKeyboardEvent(handler: CancelableEventHandler, reactEvent: React.KeyboardEvent): boolean; export declare function isPlainLeftClick(event?: React.MouseEvent | React.KeyboardEvent): boolean | undefined; /** * Returns the element the focus is going to, when a blur event is fired. * IE11 does not support `realtedTarget` on blur FocusEvent's. However, it * moves the focus before the blur event is fired, so we can get the needed * element by accessing `document.activeElement` * @param event FocusEvent - native focus event * @returns Node | null - the element recieving the focus */ export declare const getBlurEventRelatedTarget: (event: FocusEvent) => Node | null; //# sourceMappingURL=index.d.ts.map