import { ApplicationRef } from '@angular/core';
import { ConfirmationCaptureConfiguration } from './confirmation-capture-configuration';
import { Theme } from './theme';
import * as i0 from "@angular/core";
/**
 * A singleton service to programmatically show a confirmation box to capture an user's consent.
 */
export declare class ConfirmationCaptureService {
    private readonly _applicationRef;
    private static _defaultTheme;
    private static _defaultCancelButtonLabel;
    private static _defaultConfirmButtonLabel;
    constructor(_applicationRef: ApplicationRef);
    /**
     * Set the default theme that will be used for all confirmation captures created in the future.
     *
     * @param theme The new theme to be used as the default.
     */
    static setDefaultTheme(theme: Theme): void;
    /**
     * Set the default label for the cancel button. Default is `Cancel`.
     */
    static setDefaultCancelButtonLabel(label: string): void;
    /**
     * Set the default label for the confirm button. Default is `Confirm`.
     */
    static setDefaultConfirmButtonLabel(label: string): void;
    /**
     * Open a confirmation capture using the provided configuration. Return a promise that
     * resolves to `true` if confirm button is clicked, `false` otherwise.
     *
     * @param confirmationCaptureConfiguration The confirmation capture configuration object.
     */
    open(confirmationCaptureConfiguration: ConfirmationCaptureConfiguration): Promise<boolean>;
    static ɵfac: i0.ɵɵFactoryDeclaration<ConfirmationCaptureService, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<ConfirmationCaptureService>;
}
