UNPKG

@retailmenot/anchor

Version:

A React UI Library by RetailMeNot

50 lines (49 loc) 1.5 kB
import * as React from 'react'; import { SpaceProps } from '@xstyled/system'; import { Position } from '../utils/position/position'; export declare type Trigger = 'hover' | 'click' | 'both'; interface DropDownProps extends React.HTMLAttributes<HTMLDivElement>, SpaceProps { overlay?: React.ReactElement<any> | React.ReactElement<any>[]; trigger?: Trigger; className?: string; children?: any; arrowIndent?: string; arrowSize?: string; background?: string; border?: string; borderRadius?: string; debug?: boolean; onTriggered?: (state: boolean, trigger?: string) => void; position?: Position; ref?: any; shadow?: string; showArrow?: boolean; spacing?: string; open?: boolean; onOutsideClick?: (event?: any) => any; onEscapeKey?: (event?: any) => any; } interface DropDownState { hovered: boolean; clicked: boolean; height?: number; width?: number; containerHeight?: number; containerWidth?: number; } export declare class DropDown extends React.Component<DropDownProps> { state: DropDownState; private readonly dropDownReference; private readonly containerReference; private rootElement; private hoveredSub; private clickedSub; private escapeSub; private outsideClickSub; isOpen(): boolean; componentDidMount(): void; componentWillUnmount(): void; componentDidUpdate(prevProps: DropDownProps): void; render(): React.ReactElement<DropDown>; } export {};