import { EuiDialogInterface } from '@eui/components/eui-dialog';
import * as i0 from "@angular/core";
/**
 * @description
 * Service for programmatically creating, opening, and controlling message boxes in the eui application.
 *
 * The EuiMessageBoxService wraps the EuiDialogService to provide a simplified API specifically
 * for message box functionality. Message boxes are specialized dialog windows typically used
 * for alerts, confirmations, and prompts.
 *
 * The service handles the configuration of common message box properties and delegates to the
 * underlying dialog service for rendering.
 *
 *
 * @see EuiMessageBoxComponent
 * @see EuiDialogService
 */
export declare class EuiMessageBoxService {
    private euiDialogService;
    /**
     * Opens a message box with the specified configuration.
     *
     * This method sets default message box properties and delegates to the dialog service
     * to render the message box. Message boxes don't close on outside click or escape key,
     * and have no header component or close button by default.
     *
     * @param config - Configuration options for the message box
     * @typeParam HC - Header content type
     * @typeParam HCC - Header component context type
     * @typeParam BC - Body content type
     * @typeParam BCC - Body component context type
     * @typeParam FC - Footer content type
     * @typeParam FCC - Footer component context type
     */
    openMessageBox<HC, HCC, BC, BCC, FC, FCC>(config?: EuiDialogInterface<HC, HCC, BC, BCC, FC, FCC>): void;
    /**
     * Closes the currently active message box.
     *
     * This method delegates to the dialog service to close any open dialog.
     */
    closeMessageBox(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<EuiMessageBoxService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<EuiMessageBoxService>;
}
//# sourceMappingURL=eui-message-box.service.d.ts.map