import { InitModelOf, MessageBox, MessageBoxesModel, MessageBoxOption, ObjectWithType, SomeRequired, StatusSeverity, Widget } from '../index';
/**
 * This class is a convenient builder for creating message boxes. Use the static functions to
 * create and open simple and often used message boxes.
 */
export declare class MessageBoxes implements MessageBoxesModel, ObjectWithType {
    model: MessageBoxesModel;
    initModel: SomeRequired<this['model'], 'parent'>;
    objectType: string;
    parent: Widget;
    yesText: string;
    noText: string;
    cancelText: string;
    bodyText: string;
    severity: StatusSeverity;
    headerText: string;
    iconId: string;
    closeOnClick: boolean;
    html: boolean;
    constructor();
    init(options: InitModelOf<this>): void;
    withHeader(headerText: string): this;
    /**
     * @param html Set to true if body must contain HTML, default is false
     */
    withBody(bodyText: string, html?: boolean): this;
    withIconId(iconId: string): this;
    withSeverity(severity?: StatusSeverity): this;
    withYes(yesText?: string): this;
    withNo(noText?: string): this;
    withCancel(cancelText?: string): this;
    build(): MessageBox;
    /**
     * @returns promise resolved to selected {@link MessageBoxOption}.
     * @see MessageBox.Buttons
     */
    buildAndOpen(): JQuery.Promise<MessageBoxOption>;
    static create(parent: Widget): MessageBoxes;
    static createOk(parent: Widget): MessageBoxes;
    static createYesNo(parent: Widget): MessageBoxes;
    static createYesNoCancel(parent: Widget): MessageBoxes;
    /**
     * Opens a message box with an Ok button.
     *
     * @param severity default is {@link Status.Severity.INFO}
     * @returns promise resolved to clicked button
     */
    static openOk(parent: Widget, bodyText: string, severity?: StatusSeverity): JQuery.Promise<MessageBoxOption>;
    /**
     * Opens a message box with a yes and a no button.
     *
     * @param severity default is {@link Status.Severity.INFO}
     * @returns promise resolved to clicked button
     */
    static openYesNo(parent: Widget, bodyText: string, severity?: StatusSeverity): JQuery.Promise<MessageBoxOption>;
}
//# sourceMappingURL=MessageBoxes.d.ts.map