import { DisplayParent, MessageBox, Session } from '../index';
/**
 * Controller with functionality to register and render message boxes.
 *
 * The message boxes are put into the list 'messageBoxes' contained in 'displayParent'.
 */
export declare class MessageBoxController {
    displayParent: DisplayParent;
    session: Session;
    constructor(displayParent: DisplayParent, session: Session);
    /**
     * Adds the given message box to this controller and renders it.
     */
    registerAndRender(messageBox: MessageBox): void;
    /**
     * Removes the given message box from this controller and DOM. However, the message box's adapter is not destroyed. That only happens once the message box is closed.
     */
    unregisterAndRemove(messageBox: MessageBox): void;
    /**
     * Removes all message boxes registered with this controller from DOM.
     */
    remove(): void;
    /**
     * Renders all message boxes registered with this controller.
     */
    render(): void;
    protected _render(messageBox: MessageBox, register?: boolean): void;
    protected _remove(messageBox: MessageBox): void;
    /**
     * Attaches all message boxes to their original DOM parents.
     * In contrast to 'render', this method uses 'JQuery detach mechanism' to retain CSS properties, so that the model must not be interpreted anew.
     *
     * This method has no effect if already attached.
     */
    attach(): void;
    /**
     * Detaches all message boxes from their DOM parents. Thereby, modality glassPanes are not detached.
     * In contrast to 'remove', this method uses 'JQuery detach mechanism' to retain CSS properties, so that the model must not be interpreted anew.
     *
     * This method has no effect if already detached.
     */
    detach(): void;
    acceptView(view: MessageBox): boolean;
}
//# sourceMappingURL=MessageBoxController.d.ts.map