import { OnDestroy, OnInit } from '@angular/core';
import { AbstractPromptConfirmDirective } from '../interaction/prompt/prompt.confirm.directive';
import { DbxPromptConfirmConfig } from '../interaction/prompt/prompt.confirm.component';
import { DbxActionContextStoreSourceInstance } from '@dereekb/dbx-core';
import { Maybe } from '@dereekb/util';
import * as i0 from "@angular/core";
/**
 * DbxActionConfirmDirective configuration.
 */
export interface DbxActionConfirmConfig<T = unknown> extends DbxPromptConfirmConfig {
    /**
     * Optionally set the readyValue passed to the instance.
     */
    readonly readyValue?: T;
}
/**
 * Directive that when triggered shows a dialog to accept or reject.
 *
 * This only works to pass a ready value or reject through, not to work with a button.
 * For button usage, use an appPromptConfirmButton directive.
 */
export declare class DbxActionConfirmDirective<T = unknown, O = unknown> extends AbstractPromptConfirmDirective implements OnInit, OnDestroy {
    readonly source: DbxActionContextStoreSourceInstance<T, O>;
    readonly dbxActionConfirm: import("@angular/core").InputSignalWithTransform<Maybe<DbxActionConfirmConfig<T>>, Maybe<"" | DbxActionConfirmConfig<T>>>;
    private readonly _sourceSub;
    ngOnInit(): void;
    ngOnDestroy(): void;
    protected getDefaultDialogConfig(): Maybe<DbxPromptConfirmConfig>;
    protected _handleDialogResult(result: boolean): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<DbxActionConfirmDirective<any, any>, never>;
    static ɵdir: i0.ɵɵDirectiveDeclaration<DbxActionConfirmDirective<any, any>, "[dbxActionConfirm]", never, { "dbxActionConfirm": { "alias": "dbxActionConfirm"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}
