import React, { Component } from 'react'; import PropTypes from 'prop-types'; declare type ReactButtonElement = React.ReactElement; declare type Item = { name: string; value?: string; } | ReactButtonElement; export interface ContextMenuProps { items: Item[]; onClick: (value: string) => void; x: number; y: number; visible?: boolean; } export default class ContextMenu extends Component { constructor(props: ContextMenuProps); menu?: HTMLDivElement | null; items?: React.ReactNode[]; UNSAFE_componentWillReceiveProps(nextProps: ContextMenuProps): void; componentDidMount(): void; componentDidUpdate(prevProps: ContextMenuProps): void; onMouseUp: React.MouseEventHandler; onClick: React.MouseEventHandler; amendPosition(): void; updateItems(items: Item[]): void; menuRef: React.RefCallback; render(): JSX.Element; static propTypes: { items: PropTypes.Validator; onClick: PropTypes.Validator<(...args: any[]) => any>; x: PropTypes.Validator; y: PropTypes.Validator; visible: PropTypes.Requireable; }; } export {};