import { Observable } from 'rxjs';
import { I18nService } from 'systelab-translate';
import { DialogService } from '../dialog/dialog.service';
import { MessagePopupIcon } from './message-with-icon.component';
import { OverlayKeyboardDispatcher } from "@angular/cdk/overlay";
import * as i0 from "@angular/core";
export declare class MessagePopupButton {
    title: string;
    returnValue: any;
    cssClass?: string;
    focus: boolean;
    constructor(title: string, returnValue: any, cssClass?: string, focus?: boolean);
}
export declare class MessagePopupService {
    protected i18nService: I18nService;
    protected dialogService: DialogService;
    private overlayDispatcher;
    static readonly breakpointMedium = 500;
    constructor(i18nService: I18nService, dialogService: DialogService, overlayDispatcher: OverlayKeyboardDispatcher);
    showErrorPopup(titleDescription: string, errorDescription: string, modalClass?: string, width?: number, height?: number): Observable<any>;
    showWarningPopup(titleDescription: string, warningDescription: string, modalClass?: string, width?: number, height?: number): Observable<any>;
    showInformationPopup(titleDescription: string, messageDescription: string, modalClass?: string, width?: number, height?: number): Observable<any>;
    showYesNoQuestionPopup(titleDescription: string, messageDescription: string, modalClass?: string, width?: number, height?: number, template?: string): Observable<any>;
    showCustomQuestionPopup(titleDescription: string, messageDescription: string, modalClass?: string, width?: number, height?: number, buttons?: MessagePopupButton[], icon?: MessagePopupIcon): Observable<any>;
    showAskAgainPopup(titleDescription: string, messageDescription: string, modalClass?: string, width?: number, height?: number, buttons?: MessagePopupButton[], icon?: MessagePopupIcon, messageAskAgain?: string): Observable<any>;
    protected showPopup(title: string, type: number, message: string, modalClass?: string, width?: number, height?: number, buttons?: MessagePopupButton[], icon?: MessagePopupIcon, messageAskAgain?: string): Observable<any>;
    private getButtonsTemplate;
    private isPopupAlreadyShowed;
    static ɵfac: i0.ɵɵFactoryDeclaration<MessagePopupService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<MessagePopupService>;
}
