/** @packageDocumentation * @module PropertyEditors */ import "./PopupButton.scss"; import * as React from "react"; import { CommonDivProps, CommonProps } from "@bentley/ui-core"; /** Properties for [[PopupButton]] component * @alpha */ export interface PopupButtonProps extends CommonProps { /** Label to display in click area. */ label?: string | React.ReactNode; placeholder?: string; /** Contents of the popup */ children: React.ReactNode; /** Title to display as tooltip. */ title?: string; /** Set focus to popup - default is to set focus */ moveFocus?: boolean; /** Element to receive focus, specified by React.RefObject or CSS selector string. If undefined and moveFocus is true then focus is moved to first focusable element. */ focusTarget?: React.RefObject | string; /** Show or hide the box shadow (defaults to false) */ showShadow?: boolean; /** Show or hide the arrow (defaults to false) */ showArrow?: boolean; /** Indicates whether to set focus to the input element */ setFocus?: boolean; /** Indicates whether to close the popup when Enter is pressed (defaults to true) */ closeOnEnter?: boolean; /** Listens for click events on button area */ onClick?: (event: React.MouseEvent) => void; /** Listens for popup close events */ onClose?: () => void; /** Listens for Enter key in popup */ onEnter?: () => void; } /** @internal */ interface PopupButtonState { showPopup: boolean; } /** PopupButton React component that is a button and property editor popup host * @alpha */ export declare class PopupButton extends React.PureComponent { private _buttonRef; /** @internal */ readonly state: Readonly; /** @internal */ componentDidMount(): void; /** @internal */ componentWillUnmount(): void; private _togglePopup; closePopup(): void; private _closePopup; private _emptyKeyDown; private _handleKeyDown; /** @internal */ render(): React.ReactNode; } /** Popup content with padding * @alpha */ export declare function PopupContent(props: CommonDivProps): JSX.Element; /** Properties for [[PopupOkCancelButtons]] component * @alpha */ export interface OkCancelProps { onOk: (event: React.MouseEvent) => void; onCancel: (event: React.MouseEvent) => void; } /** OK/Cancel Buttons * @alpha */ export declare function PopupOkCancelButtons(props: OkCancelProps): JSX.Element; export {}; //# sourceMappingURL=PopupButton.d.ts.map