/**
 * @packageDocumentation
 * @module notification
 */
import { HttpErrorResponse, HttpHandler, HttpInterceptor, HttpRequest } from '@angular/common/http';
import { Injector } from '@angular/core';
import { Status } from '../types/public-api';
import { TimeService } from '../utils/public-api';
import { NotificationUtilService } from './notification-util.service';
export declare const WRITABLE_METHODS: readonly ["delete", "patch", "post", "put"];
export declare type WritableMethod = typeof WRITABLE_METHODS[number];
export interface NotificationHttpRequest<T = unknown> extends HttpRequest<T> {
    requestAt?: number;
}
export interface StatusErrorResponse extends Status {
    __origin__: HttpErrorResponse;
}
export declare class ResourceErrorInterceptor implements HttpInterceptor {
    private readonly injector;
    private readonly notificationUtil;
    private readonly time;
    constructor(injector: Injector, notificationUtil: NotificationUtilService, time: TimeService);
    intercept(req: NotificationHttpRequest, next: HttpHandler): import("rxjs").Observable<import("@angular/common/http").HttpEvent<any>>;
    private notifyOnError;
    private notify;
    private getResErrorMessage;
    private getAllHeaders;
    private isK8sErrorStatus;
}
