import { Injector } from '@angular/core';
import { Observable } from 'rxjs';
import { HttpInterceptor, HttpHandler, HttpRequest, HttpEvent, HttpHeaders } from '@angular/common/http';
import { AbpHttpConfigurationService } from './abp-http-configuration.service';
import * as i0 from "@angular/core";
export declare class AbpHttpInterceptor implements HttpInterceptor {
    private _injector;
    protected configuration: AbpHttpConfigurationService;
    private _tokenService;
    private _utilsService;
    private _logService;
    constructor(configuration: AbpHttpConfigurationService, _injector: Injector);
    intercept(request: HttpRequest<any>, next: HttpHandler): Observable<HttpEvent<any>>;
    protected tryGetRefreshTokenService(): Observable<boolean>;
    private isRefreshing;
    private refreshTokenSubject;
    private tryAuthWithRefreshToken;
    protected normalizeRequestHeaders(request: HttpRequest<any>): HttpRequest<any>;
    protected addXRequestedWithHeader(headers: HttpHeaders): HttpHeaders;
    protected addAspNetCoreCultureHeader(headers: HttpHeaders): HttpHeaders;
    protected addAcceptLanguageHeader(headers: HttpHeaders): HttpHeaders;
    protected addTenantIdHeader(headers: HttpHeaders): HttpHeaders;
    protected addAuthorizationHeaders(headers: HttpHeaders): HttpHeaders;
    protected handleSuccessResponse(event: HttpEvent<any>): Observable<HttpEvent<any>>;
    protected handleErrorResponse(error: any): Observable<never>;
    private itemExists;
    static ɵfac: i0.ɵɵFactoryDeclaration<AbpHttpInterceptor, never>;
    static ɵprov: i0.ɵɵInjectableDeclaration<AbpHttpInterceptor>;
}
