import React, { ElementType } from 'react'; import { Props } from '../../types'; declare let DEFAULT_MENU_TAG: React.ExoticComponent<{ children?: React.ReactNode; }>; interface MenuRenderPropArg { open: boolean; } export declare function Menu(props: Props): JSX.Element; export declare namespace Menu { var Button: ( = "button">(props: Props, ref: React.Ref) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null) & { displayName: string; }; var Items: ( = "div">(props: (Pick, Exclude, "children" | "as" | "refName" | "className" | "id">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "id">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onKeyDown">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onKeyDown">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-activedescendant">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-activedescendant">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-labelledby">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-labelledby">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "role">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "role">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "tabIndex">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { static?: undefined; } & { unmount?: boolean | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "tabIndex">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemsRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemsRenderPropArg) => string) | undefined; } : {}) & { unmount?: undefined; } & { static?: boolean | undefined; }), ref: React.Ref) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null) & { displayName: string; }; var Item: = React.ExoticComponent<{ children?: React.ReactNode; }>>(props: (Pick, Exclude, "children" | "as" | "refName" | "className" | "id">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "role">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "tabIndex">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "aria-disabled">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onPointerLeave">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onPointerMove">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onMouseLeave">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onMouseMove">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; }) | (Pick, Exclude, "children" | "as" | "refName" | "className" | "onFocus">> & { as?: TTag | undefined; children?: string | number | boolean | {} | React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | React.ReactNodeArray | React.ReactPortal | ((bag: ItemRenderPropArg) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)>) | null | undefined; refName?: string | undefined; } & (import("../../types").PropsOf extends { className?: any; } ? { className?: string | ((bag: ItemRenderPropArg) => string) | undefined; } : {}) & { disabled?: boolean | undefined; onClick?: ((event: { preventDefault: Function; }) => void) | undefined; })) => React.ReactElement React.ReactElement React.Component)> | null) | (new (props: any) => React.Component)> | null; } interface ButtonRenderPropArg { open: boolean; } declare type ButtonPropsWeControl = 'id' | 'type' | 'aria-haspopup' | 'aria-controls' | 'aria-expanded' | 'onKeyDown' | 'onClick'; interface ItemsRenderPropArg { open: boolean; } interface ItemRenderPropArg { active: boolean; disabled: boolean; } export {};