import * as PropTypes from "prop-types";
import * as React from "react";
import "./MenuItem.less";
export interface Props {
    children: React.ReactNode;
    className?: string;
    component?: any;
    customStyles?: boolean;
    disabled?: boolean;
    focused?: boolean;
    href?: string;
    onBlur?: Function;
    onClick?: Function;
    onMouseEnter?: Function;
    selected?: boolean;
    target?: string;
    [additionalProp: string]: any;
}
export declare const cssClass: {
    CONTAINER: string;
    DEFAULT_STYLES: string;
    selected: (baseClass: any) => string;
};
export default class MenuItem extends React.PureComponent<Props> {
    static propTypes: {
        children: PropTypes.Validator<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        component: PropTypes.Requireable<any>;
        customStyles: PropTypes.Requireable<boolean>;
        disabled: PropTypes.Requireable<boolean>;
        focused: PropTypes.Requireable<boolean>;
        href: PropTypes.Requireable<string>;
        onBlur: PropTypes.Requireable<(...args: any[]) => any>;
        onClick: PropTypes.Requireable<(...args: any[]) => any>;
        onMouseEnter: PropTypes.Requireable<(...args: any[]) => any>;
        selected: PropTypes.Requireable<boolean>;
        target: PropTypes.Requireable<string>;
    };
    static defaultProps: {
        onClick: (...args: any[]) => void;
        onMouseEnter: (...args: any[]) => void;
    };
    _containerEl: any;
    componentDidMount(): void;
    componentWillReceiveProps(nextProps: any): void;
    render(): JSX.Element;
    _updateFocus(props: any): void;
}
