import { HttpInterceptable } from './http.interceptable';
import { Http, ConnectionBackend, RequestOptions, RequestOptionsArgs, Request, Response } from '@angular/http';
import { Observable } from 'rxjs/Observable';
export declare class HttpInterceptor extends Http {
    private firstInterceptor;
    constructor(backend: ConnectionBackend, defaultOptions: RequestOptions, interceptors: HttpInterceptable[]);
    request(url: string | Request, options?: RequestOptionsArgs): Observable<Response>;
    get(url: string, options?: RequestOptionsArgs): Observable<Response>;
    post(url: string, body: string, options?: RequestOptionsArgs): Observable<Response>;
    put(url: string, body: string, options?: RequestOptionsArgs): Observable<Response>;
    delete(url: string, options?: RequestOptionsArgs): Observable<Response>;
    getRequestOptionArgs(options?: RequestOptionsArgs): RequestOptionsArgs;
    intercept(observable: Observable<Response>): Observable<Response>;
}
