import * as React from 'react';
import type { State, StatefulPopoverContainerProps, StateChangeType } from './types';
declare class StatefulContainer extends React.Component<StatefulPopoverContainerProps, State> {
    static defaultProps: Partial<StatefulPopoverContainerProps>;
    state: {
        isOpen: boolean;
    };
    onBlur: (e: React.FocusEvent) => void;
    onClick: (e: React.SyntheticEvent) => void;
    onClickOutside: () => void;
    onEsc: () => void;
    onFocus: (e: React.FocusEvent) => void;
    onMouseEnter: (e: React.MouseEvent) => void;
    onMouseLeave: (e: React.MouseEvent) => void;
    onContentClose: () => void;
    open(): void;
    close(): void;
    internalSetState(type: StateChangeType, changes: State): void;
    /**
     * If user passed a content render prop, we want to give them a
     * callback to close the Popover. This is useful in any case where
     * a dev wants to manually close the popover based on some action.
     *
     * One simple example is a Popover with a "Dismiss" button in it:
     * <StatefulPopover content={({close}) => <button onClick={close}>Dismiss</button>}>
     *  Click me
     * </StatefulPopover>
     */
    renderContent: () => React.ReactNode;
    render(): React.ReactNode;
}
export default StatefulContainer;
