import { Observable, Subject } from 'rxjs';
import { BaseDialogComponent, DialogOptions, DialogResult } from '../base-dialog.component';
import { DialogCloseReason } from '../dialog.component';
import { DialogService } from '../dialog.service';
import * as i0 from "@angular/core";
/**
 * The confirmation list dialog options.
 */
export interface ConfirmationListDialogOptions extends DialogOptions {
    /**
     * The cancel button text.
     */
    cancelButtonText: string;
    /**
     * The checkbox text.
     */
    checkboxText?: string;
    /**
     * The confirmation button text.
     */
    confirmButtonText: string;
    /**
     * The list footer text.
     */
    listFooterText: string;
    /**
     * The observable of data source.
     */
    listDataSource: Observable<any[]>;
    /**
     * List type (list, radio).
     */
    listType?: string;
    /**
     * The list header text.
     */
    listHeaderText: string;
    /**
     * The title text.
     */
    title: string;
    /**
     * If the dialog is opened from Rpc
     */
    isFromRpc?: boolean;
}
/**
 * The confirmation list dialog result.
 */
export interface ConfirmationListDialogResult extends DialogResult {
    /**
     * The result of the dialog confirmation.
     */
    confirmed: boolean;
    /**
     * The checkbox result.
     */
    checkboxResult?: boolean;
    /**
     * The selection result.
     */
    radioSelectionResult?: string;
    /**
     * The observable error object.
     */
    observableError?: any;
}
export declare class ConfirmationListDialogComponent extends BaseDialogComponent<ConfirmationListDialogOptions, ConfirmationListDialogResult> {
    cancelButtonText: string;
    checked: boolean;
    radioSelectionResult: any;
    checkboxText: string;
    confirmButtonText: string;
    listFooterText: string;
    listData: any[];
    listType: string;
    listHeaderText: string;
    title: string;
    loading: boolean;
    private dataSourceSubscription;
    constructor(dialogService: DialogService);
    closeRequested(reason: DialogCloseReason): void;
    show(options: ConfirmationListDialogOptions): Subject<ConfirmationListDialogResult>;
    hide(result?: ConfirmationListDialogResult): void;
    onConfirm(): void;
    onCancel(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationListDialogComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ConfirmationListDialogComponent, "sme-confirmation-list-dialog", never, {}, {}, never, never, false, never>;
}
