import { Request, Response, Http, XHRBackend, RequestOptions, RequestOptionsArgs } from '@angular/http';
import { Observable } from "rxjs/Observable";
import "rxjs/add/operator/do";
import "rxjs/add/observable/forkJoin";
import "rxjs/add/operator/concat";
import "rxjs/add/operator/defaultIfEmpty";
import "rxjs/add/observable/of";
import "rxjs/add/operator/catch";
import "rxjs/add/operator/skip";
import { Interceptor } from "./interfaces";
export declare class CustomHttp extends Http {
    interceptors: Interceptor[];
    constructor(injectedInterceptors: Interceptor | Interceptor[], backend: XHRBackend, defaultOptions: RequestOptions);
    request(url: string | Request, options?: RequestOptionsArgs): Observable<Response>;
    /**
     * Unrap the observer with action for after and error for all interceptors
     * @param observable Response
     */
    intercept(observable: Observable<any>): Observable<Response>;
    /**
     * Call all after interceptors
     * @param res response
     */
    private emitAfter(res);
    /**
     * Call all error method interceptors
     * @param error response
     */
    private emitError(error);
    /**
     * Transform a combination of url and options in a RequestArgs with the Url
     * @param url object request
     * @param options Options
     */
    private mapToRequest(url, options?);
}
