import React from 'react'; export type NonCancelableEventHandler = (event: NonCancelableCustomEvent) => void; export type CancelableEventHandler = (event: CustomEvent) => void; export type NonCancelableCustomEvent = Omit, 'preventDefault'>; export interface BaseKeyDetail { keyCode: number; key: string; ctrlKey: boolean; shiftKey: boolean; altKey: boolean; metaKey: boolean; isComposing: 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 | undefined, reactEvent: React.KeyboardEvent): boolean; export declare function hasModifierKeys(event: React.MouseEvent | React.KeyboardEvent): boolean; export declare function isPlainLeftClick(event: React.MouseEvent | React.KeyboardEvent): boolean;