UNPKG

@firefox-devtools/react-contextmenu

Version:
91 lines (83 loc) 3.5 kB
declare module "@firefox-devtools/react-contextmenu" { import * as React from "react"; export interface ContextMenuProps { id: string, data?: any, className?: string, hideOnLeave?: boolean, rtl?: boolean, onHide?: {(event: any): void}, onMouseLeave?: {(event: React.MouseEvent<HTMLElement>, data: Object, target: HTMLElement): void} | Function, onShow?: {(event: any): void}, preventHideOnContextMenu?: boolean, preventHideOnResize?: boolean, preventHideOnScroll?: boolean, style?: React.CSSProperties, children?: React.ReactNode, } export interface ContextMenuTriggerProps { id: string, attributes?: React.HTMLAttributes<any>, collect?: {(data: any): any}, disable?: boolean, holdToDisplay?: number, posX?: number, posY?: number, renderTag?: React.ElementType, triggerOnLeftClick?: boolean, disableIfShiftIsPressed?: boolean, [key: string]: any, children?: React.ReactNode, } export interface MenuItemProps { attributes?: React.HTMLAttributes<HTMLDivElement>, className?: string; data?: Object, disabled?: boolean, divider?: boolean, preventClose?: boolean, onClick?: {(event: React.TouchEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement>, data: Object, target: HTMLElement): void} | Function, onMouseLeave?: {(event: React.MouseEvent<HTMLDivElement>): void} | Function, onMouseMove?: {(event: React.MouseEvent<HTMLDivElement>): void} | Function, role?: string, selected?: boolean, children?: React.ReactNode, } export interface SubMenuProps { title: React.ReactElement<any> | string | number, attributes?: React.HTMLAttributes<HTMLDivElement>, className?: string, disabled?: boolean, hoverDelay?: number, rtl?: boolean, selected?: boolean, onMouseMove?: {(event: React.MouseEvent<HTMLDivElement>): void} | Function, onMouseOut?: {(event: React.MouseEvent<HTMLDivElement>): void} | Function, forceOpen?: boolean, forceClose?: {(): void} | Function, parentKeyNavigationHandler?: {(event: React.KeyboardEvent): void} | Function, preventCloseOnClick?: boolean, onClick?: {(event: React.TouchEvent<HTMLDivElement> | React.MouseEvent<HTMLDivElement>, data: Object, target: HTMLElement): void} | Function, data?: Object, children?: React.ReactNode, } export interface ConnectMenuProps { id: string; trigger: any; } export const ContextMenu: React.ComponentClass<ContextMenuProps>; export const ContextMenuTrigger: React.ComponentClass<ContextMenuTriggerProps>; export const MenuItem: React.ComponentClass<MenuItemProps>; export const SubMenu: React.ComponentClass<SubMenuProps>; export function connectMenu<P>( menuId: string ): ( Child: React.ComponentType<P & ConnectMenuProps> ) => React.ComponentType<P>; export function showMenu(opts?: any, target?: HTMLElement): void; export function hideMenu(opts?: any, target?: HTMLElement): void; } declare module "@firefox-devtools/react-contextmenu/modules/actions" { export function showMenu(opts?: any, target?: HTMLElement): void; export function hideMenu(opts?: any, target?: HTMLElement): void; }