import { OnInit, OnDestroy } from '@angular/core';
import { MatSnackBar, MatSnackBarConfig, MatSnackBarRef } from '@angular/material/snack-bar';
import { ErrorInput } from '@dereekb/util';
import { NgPopoverRef } from 'ng-overlay-container';
import * as i0 from "@angular/core";
export type DbxErrorSnackbarConfig = Omit<MatSnackBarConfig<any>, 'data' | 'viewContainerRef'>;
export interface DbxErrorSnackbarData<T extends ErrorInput = ErrorInput> {
    readonly error: T;
    readonly duration?: number;
}
export declare class DbxErrorSnackbarComponent implements OnInit, OnDestroy {
    readonly snackBarRef: MatSnackBarRef<any>;
    readonly data: DbxErrorSnackbarData<ErrorInput>;
    readonly error: ErrorInput;
    private readonly _popoverOpen;
    private readonly _timer;
    private readonly _allowAutoDismiss;
    protected readonly _popoverSyncEffect: import("@angular/core").EffectRef;
    private readonly _popoverAfterClosedSub;
    private readonly _autoDismissSub;
    ngOnInit(): void;
    ngOnDestroy(): void;
    onPopoverOpened(popover: NgPopoverRef): void;
    dismiss(): void;
    static showErrorSnackbar(matSnackbar: MatSnackBar, error: ErrorInput, config?: DbxErrorSnackbarConfig): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<DbxErrorSnackbarComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<DbxErrorSnackbarComponent, "dbx-error-snackbar", never, {}, {}, never, never, true, never>;
}
