/// <reference types="react" />
import { BaseComponent, KeyCodes } from '../../Utilities';
import { IHoverCardProps } from './HoverCard.types';
import { ExpandingCardMode, OpenCardMode } from './ExpandingCard.types';
export interface IHoverCardState {
    isHoverCardVisible?: boolean;
    mode?: ExpandingCardMode;
    openMode?: OpenCardMode;
}
export declare class HoverCard extends BaseComponent<IHoverCardProps, IHoverCardState> {
    static defaultProps: {
        cardOpenDelay: number;
        cardDismissDelay: number;
        expandedCardOpenDelay: number;
        instantOpenOnClick: boolean;
        setInitialFocus: boolean;
        openHotKey: KeyCodes;
    };
    private _hoverCard;
    private _dismissTimerId;
    private _openTimerId;
    private _currentMouseTarget;
    private _styles;
    constructor(props: IHoverCardProps);
    componentDidMount(): void;
    componentDidUpdate(prevProps: IHoverCardProps, prevState: IHoverCardState): void;
    render(): JSX.Element;
    private _getTargetElement();
    private _shouldBlockHoverCard();
    private _cardOpen;
    private _executeCardOpen;
    private _cardDismiss;
    private _executeCardDimiss;
    private _instantOpenAsExpanded;
}
