import { Component } from 'react';
import PropTypes from 'prop-types';
export declare class SoftContextMenuPanel extends Component<{
    className?: string;
    onHeightChange?: (e: any) => any;
    items?: any;
    initialFocusedItemIndex?: any;
    transitionType?: any;
    showPreviousPanel?: () => any;
    onUseKeyboardToNavigate?: () => any;
    onTransitionComplete?: () => any;
    showNextPanel?: any;
    hasFocus?: boolean;
    watchedItemProps?: any;
    onClose?: any;
    title?: any;
    transitionDirection?: any;
    style?: any;
}> {
    static propTypes: {
        children: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        className: PropTypes.Requireable<string>;
        title: PropTypes.Requireable<PropTypes.ReactNodeLike>;
        onClose: PropTypes.Requireable<(...args: any[]) => any>;
        onHeightChange: PropTypes.Requireable<(...args: any[]) => any>;
        transitionType: PropTypes.Requireable<string>;
        transitionDirection: PropTypes.Requireable<string>;
        onTransitionComplete: PropTypes.Requireable<(...args: any[]) => any>;
        onUseKeyboardToNavigate: PropTypes.Requireable<(...args: any[]) => any>;
        hasFocus: PropTypes.Requireable<boolean>;
        items: PropTypes.Requireable<any[]>;
        watchedItemProps: PropTypes.Requireable<any[]>;
        showNextPanel: PropTypes.Requireable<(...args: any[]) => any>;
        showPreviousPanel: PropTypes.Requireable<(...args: any[]) => any>;
        initialFocusedItemIndex: PropTypes.Requireable<number>;
    };
    static defaultProps: {
        hasFocus: boolean;
        items: any[];
    };
    state: {
        prevProps: {
            items: any;
        };
        height: any;
        menuItems: any[];
        isTransitioning: boolean;
        focusedItemIndex: any;
        currentHeight: any;
    };
    private backButton;
    private panel;
    private _isMounted;
    private content;
    constructor(props: any);
    incrementFocusedItemIndex: (amount: any) => void;
    onKeyDown: (e: any) => void;
    updateFocus(): void;
    onTransitionComplete: () => void;
    componentDidMount(): void;
    componentWillUnmount(): void;
    static getDerivedStateFromProps(nextProps: any, prevState: any): any;
    getWatchedPropsForItems(items: any): string;
    didItemsChange(prevItems: any, nextItems: any): boolean;
    shouldComponentUpdate(nextProps: any, nextState: any): boolean;
    updateHeight(): void;
    componentDidUpdate(): void;
    menuItemRef: (index: any, node: any) => void;
    panelRef: (node: any) => void;
    contentRef: (node: any) => void;
    render(): JSX.Element;
}
