import { CacPromptDialogComponent, PromptDialogData } from './components/prompt-dialog/prompt-dialog.component';
import { DialogExtended, DialogInvokerService } from './dialog-invoker.service';
import { CacInputDialogComponent, InputDialogData } from './components/input-dialog/input-dialog.component';
import { DialogAction, DialogActionEvent } from './components/_base-dialog.component';
import { Observable } from 'rxjs';
import { CacDescriptionDialogComponent, DescriptionDialogData, DescriptionDialogResult } from './components/description-dialog/description-dialog.component';
import { CacChangePasswordDialogComponent, ChangePasswordDialogResult } from './components/change-password-dialog/change-password-dialog.component';
import { CacCalendarDialogComponent, CalendarsDialogResult } from './components/calendar-dialog/calendar-dialog.component';
import * as i0 from "@angular/core";
export interface InputDialogExtended<T, U> extends DialogExtended<CacInputDialogComponent<T, U>, U> {
    deleteAction: <ACTION>(action: DialogAction<null, ACTION>) => InputDialogExtended<T, U>;
    onDelete: () => Observable<DialogActionEvent<any, any>>;
}
export declare class DialogService {
    protected readonly dialog: DialogInvokerService;
    readonly DELETE_TITLE_PRE: string;
    readonly DELETE_TITLE_AFTER: string;
    readonly DELETE_CAPTION_PRE: string;
    readonly DELETE_CAPTION_AFTER: string;
    prompt(data: PromptDialogData): DialogExtended<CacPromptDialogComponent, boolean>;
    deletePrompt(multiple?: boolean): DialogExtended<CacPromptDialogComponent, boolean>;
    input<T, U>(data: InputDialogData<T, U>, width?: string): InputDialogExtended<T, U>;
    description(data: DescriptionDialogData): DialogExtended<CacDescriptionDialogComponent, DescriptionDialogResult>;
    changePassword(): DialogExtended<CacChangePasswordDialogComponent, ChangePasswordDialogResult>;
    calendar(): DialogExtended<CacCalendarDialogComponent, CalendarsDialogResult>;
    static ɵfac: i0.ɵɵFactoryDeclaration<DialogService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<DialogService>;
}
