import { AfterViewInit, ElementRef, OnChanges, OnDestroy, OnInit } from '@angular/core';
import { CssClassBuilder } from '@fundamental-ngx/cdk/utils';
import { DialogBase } from '@fundamental-ngx/core/dialog';
import { MessageBoxConfig, MessageBoxHost } from './utils/message-box-config.class';
import { MessageBoxRef } from './utils/message-box-ref.class';
import * as i0 from "@angular/core";
/**
 * Message box component.
 *
 * ```html
 * <fd-message-box>
 *      <fd-message-box-header></fd-message-box-header>
 *      <fd-message-box-body></fd-message-box-body>
 *      <fd-message-box-footer></fd-message-box-footer>
 * </fd-message-box>
 * ```
 */
export declare class MessageBoxComponent extends DialogBase implements OnInit, OnChanges, AfterViewInit, OnDestroy, CssClassBuilder, MessageBoxHost {
    _messageBoxConfig: MessageBoxConfig;
    private _messageBoxRef;
    /** Custom classes */
    set class(userClass: string);
    /** MessageBoxRef - should be used for Template based Dialog implementation  */
    set embeddedMessageBoxRef(value: MessageBoxRef);
    /** MessageBoxConfig - should be used for Template based Dialog implementation  */
    set embeddedMessageBoxConfig(value: MessageBoxConfig);
    /** @hidden */
    dialogWindow: ElementRef;
    /** @hidden */
    get _config(): MessageBoxConfig;
    /** @hidden */
    get _ref(): MessageBoxRef;
    /** @hidden */
    private _class;
    /** @hidden */
    constructor(_messageBoxConfig: MessageBoxConfig, _messageBoxRef: MessageBoxRef);
    /** @hidden */
    buildComponentCssClass(): string[];
    /** @hidden */
    ngOnInit(): void;
    /** @hidden */
    ngOnChanges(): void;
    /** @hidden */
    ngAfterViewInit(): void;
    /** @hidden */
    ngOnDestroy(): void;
    /** @hidden */
    private get _messageBoxTypeClass();
    static ɵfac: i0.ɵɵFactoryDeclaration<MessageBoxComponent, [{ optional: true; }, { optional: true; }]>;
    static ɵcmp: i0.ɵɵComponentDeclaration<MessageBoxComponent, "fd-message-box", never, { "class": { "alias": "class"; "required": false; }; "embeddedMessageBoxRef": { "alias": "messageBoxRef"; "required": false; }; "embeddedMessageBoxConfig": { "alias": "messageBoxConfig"; "required": false; }; }, {}, never, ["fd-message-box-header", "fd-message-box-body", "fd-message-box-footer"], true, never>;
}
