import { OnInit, OnDestroy, AfterViewInit } from '@angular/core';
import { LoadingStateType } from '@dereekb/rxjs';
import { MatSnackBarRef } from '@angular/material/snack-bar';
import { type Maybe } from '@dereekb/util';
import { DbxActionSnackbarDisplayConfig, DbxActionSnackbarActionConfig } from './action.snackbar';
import { AbstractSubscriptionDirective, DbxActionSuccessHandlerFunction } from '@dereekb/dbx-core';
import * as i0 from "@angular/core";
/**
 * Component for a snackbar that contains an action.
 */
export declare class DbxActionSnackbarComponent extends AbstractSubscriptionDirective implements OnInit, AfterViewInit, OnDestroy {
    readonly snackbarRef: MatSnackBarRef<any>;
    readonly snackbarData: DbxActionSnackbarDisplayConfig<unknown, unknown>;
    private readonly _durationTimeout;
    private readonly _actionRef;
    readonly sourceInstance$: import("rxjs").Observable<import("@dereekb/dbx-core").DbxActionContextStoreSourceInstance<unknown, unknown>>;
    readonly complete$: import("rxjs").Observable<boolean>;
    readonly loadingStateType$: import("rxjs").Observable<LoadingStateType>;
    readonly sourceInstanceSignal: import("@angular/core").Signal<import("@dereekb/dbx-core").DbxActionContextStoreSourceInstance<unknown, unknown> | undefined>;
    readonly completeSignal: import("@angular/core").Signal<boolean | undefined>;
    readonly loadingStateTypeSignal: import("@angular/core").Signal<LoadingStateType | undefined>;
    readonly snackbarStatusClassSignal: import("@angular/core").Signal<string>;
    readonly button: Maybe<string>;
    readonly action: Maybe<DbxActionSnackbarActionConfig>;
    readonly hasAction: boolean;
    readonly message: Maybe<string>;
    readonly actionConfig: Maybe<DbxActionSnackbarActionConfig>;
    ngOnInit(): void;
    ngOnDestroy(): void;
    ngAfterViewInit(): void;
    dismissAfterActionCompletes: DbxActionSuccessHandlerFunction;
    dismiss: () => void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DbxActionSnackbarComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DbxActionSnackbarComponent, "ng-component", never, {}, {}, never, never, true, never>;
}
