import React, { Component } from 'react'; import type { CommonComponentProps, MarginModifierProp, ModifierClassProp, Shadows } from '../types'; import type { GetRef } from '../utils/refs'; type ChildrenRenderProp = (args: { isOpen: boolean; toggleDropdown: () => void; }) => React.ReactElement; type ToggleRenderProp = (args: { 'aria-controls': string; 'aria-expanded': boolean | 'false' | 'true'; isToggled: boolean; onClick: () => void; }) => React.ReactElement; interface LegacyDropdownProps extends CommonComponentProps, MarginModifierProp, ModifierClassProp { align?: 'left' | 'right'; children?: React.ReactElement | ChildrenRenderProp; contentShadow?: Shadows | 'none'; contentWidth?: number | string; getRef?: GetRef; id?: string; maxHeight?: number | string; onToggle?: (isOpen?: boolean) => void; opens?: 'up' | 'down'; persist?: boolean; toggle: React.ReactElement | ToggleRenderProp; ignoreClickOutside?: (event: MouseEvent) => boolean; } interface DropdownState { isOpen: boolean; isClosing: boolean; } /** * @deprecated * Use `Dropdown` instead. */ export declare class LegacyDropdown extends Component { static defaultProps: { align: string; contentShadow: string; opens: string; }; contentElem: HTMLDivElement; dropdownElem: HTMLDivElement; constructor(props: LegacyDropdownProps); componentWillUnmount(): void; handleClickOutside(event: MouseEvent): void; handleKeyDown({ key }: KeyboardEvent): void; handleToggle(): void; handleTransitionEnd(event: React.TransitionEvent): void; open(): void; close(): void; renderChildren(): React.ReactElement> | React.ReactElement>[]; renderToggle(ariaControlsId: string): React.ReactElement>; render(): React.JSX.Element; } export {};