UNPKG

3.19 kBTypeScriptView Raw
1import * as React from 'react';
2export interface InternalDropdownItemProps extends React.HTMLProps<HTMLAnchorElement> {
3 /** Anything which can be rendered as dropdown item */
4 children?: React.ReactNode;
5 /** Whether to set className on component when React.isValidElement(component) */
6 styleChildren?: boolean;
7 /** Classes applied to root element of dropdown item */
8 className?: string;
9 /** Class applied to list element */
10 listItemClassName?: string;
11 /** Indicates which component will be used as dropdown item. Will have className injected if React.isValidElement(component) */
12 component?: React.ReactNode;
13 /** Role for the item */
14 role?: string;
15 /** Render dropdown item as disabled option */
16 isDisabled?: boolean;
17 /** Render dropdown item as aria disabled option */
18 isAriaDisabled?: boolean;
19 /** Render dropdown item as a non-interactive item */
20 isPlainText?: boolean;
21 /** Forces display of the hover state of the element */
22 isHovered?: boolean;
23 /** Default hyperlink location */
24 href?: string;
25 /** Tooltip to display when hovered over the item */
26 tooltip?: React.ReactNode;
27 /** Additional tooltip props forwarded to the Tooltip component */
28 tooltipProps?: any;
29 index?: number;
30 context?: {
31 keyHandler?: (index: number, innerIndex: number, direction: string) => void;
32 sendRef?: (index: number, ref: any, isDisabled: boolean, isSeparator: boolean) => void;
33 };
34 /** Callback for click event */
35 onClick?: (event: React.MouseEvent<any> | React.KeyboardEvent | MouseEvent) => void;
36 /** ID for the list element */
37 id?: string;
38 /** ID for the component element */
39 componentID?: string;
40 /** Additional content to include alongside item within the <li> */
41 additionalChild?: React.ReactNode;
42 /** Custom item rendering that receives the DropdownContext */
43 customChild?: React.ReactNode;
44 /** Flag indicating if hitting enter on an item also triggers an arrow down key press */
45 enterTriggersArrowDown?: boolean;
46 /** An image to display within the InternalDropdownItem, appearing before any component children */
47 icon?: React.ReactNode;
48 /** Initial focus on the item when the menu is opened (Note: Only applicable to one of the items) */
49 autoFocus?: boolean;
50 /** A short description of the dropdown item, displayed under the dropdown item content */
51 description?: React.ReactNode;
52 /** Events to prevent when the item is disabled */
53 inoperableEvents?: string[];
54}
55export declare class InternalDropdownItem extends React.Component<InternalDropdownItemProps> {
56 static displayName: string;
57 ref: React.RefObject<HTMLLIElement>;
58 additionalRef: React.RefObject<any>;
59 static defaultProps: InternalDropdownItemProps;
60 componentDidMount(): void;
61 componentDidUpdate(): void;
62 getInnerNode: (node: any) => any;
63 onKeyDown: (event: any) => void;
64 extendAdditionalChildRef(): React.ReactElement<any, string | React.JSXElementConstructor<any>>;
65 componentRef: (element: HTMLLIElement) => void;
66 render(): JSX.Element;
67}
68//# sourceMappingURL=InternalDropdownItem.d.ts.map
\No newline at end of file