import { InjectionToken } from '@angular/core';
import { HttpEvent, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';
import { Observable } from 'rxjs';
import { QdAppEnvironment } from '../../core/model/app-enviroment.interface';
import { QdNotificationsService } from './notifications-service.service';
import * as i0 from "@angular/core";
export declare const BACKEND_ERROR_CODES: InjectionToken<unknown>;
export declare const WHITELIST_ERROR_CODES: InjectionToken<number[]>;
/**
 * The QdNotificationsHttpInterceptorService is an Angular HTTP interceptor that captures error responses from HTTP requests and generates notifications for backend errors. This Service not only intercepts error responses, but it also handles specific error codes and translates them into appropriate error messages for display.
 */
export declare class QdNotificationsHttpInterceptorService implements HttpInterceptor {
    private readonly appEnvironment;
    private readonly backendErrorCodes;
    private readonly whitelistErrorCodes;
    readonly notificationService: QdNotificationsService;
    private readonly blacklistErrorCodes;
    constructor(appEnvironment: QdAppEnvironment, backendErrorCodes: any, whitelistErrorCodes: number[], notificationService: QdNotificationsService);
    intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>>;
    private getErrorTranslationKeyForHttpStatus;
    private getHttpErrorName;
    static ɵfac: i0.ɵɵFactoryDeclaration<QdNotificationsHttpInterceptorService, [{ optional: true; }, { optional: true; }, { optional: true; }, null]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<QdNotificationsHttpInterceptorService>;
}
//# sourceMappingURL=notifications-http-interceptor.service.d.ts.map