/** @packageDocumentation
 * @module Notification
 */
import * as React from "react";
import { StatusFieldProps } from "./StatusFieldProps";
/** Enum for the [[MessageCenterField]] active tab
 * @internal
 */
declare enum MessageCenterActiveTab {
    AllMessages = 0,
    Problems = 1
}
/** State for the [[MessageCenterField]] React component
 * @internal
 */
interface MessageCenterState {
    activeTab: MessageCenterActiveTab;
    target: HTMLDivElement | null;
    messageCount: number;
    openWidget: string | null;
}
/** Properties for withMessageCenterFieldProps HOC.
 * @public
 */
export interface MessageCenterFieldProps extends StatusFieldProps {
    /** Message center dialog target.
     * @deprecated in 3.3. Use `MessageManager.registerAnimateOutToElement` to register this ref in the related component.
    */
    targetRef?: React.Ref<HTMLElement>;
}
/** Message Center Field React component.
 * @public
 */
export declare class MessageCenterField extends React.Component<MessageCenterFieldProps, MessageCenterState> {
    private _className;
    private _indicator;
    private _title;
    private _unloadMessagesUpdatedHandler?;
    private _removeOpenMessagesCenterHandler?;
    constructor(p: MessageCenterFieldProps);
    /** @internal */
    componentDidMount(): void;
    /** @internal */
    componentWillUnmount(): void;
    private _handleMessagesUpdatedEvent;
    private _handleOpenMessageCenterEvent;
    render(): React.ReactNode;
    private _handleTargetRef;
    private _handleClose;
    private _handleOutsideClick;
    private _handleMessageIndicatorClick;
    private _changeActiveTab;
    private getMessages;
    private isProblemStatus;
    private setOpenWidget;
}
export {};
//# sourceMappingURL=MessageCenter.d.ts.map