import { HttpClient, HttpHeaders, HttpParams } from '@angular/common/http';
import { Observable } from 'rxjs';
import { SdTokenService } from './token.service';
export declare class SdHttpService {
    private httpClient;
    private tokenService;
    constructor(httpClient: HttpClient, tokenService: SdTokenService);
    get: <T = any>(url: string, option?: ObservableOption) => Observable<T>;
    post: <T = any>(url: string, body?: any, option?: ObservableOption) => Observable<T>;
    put: <T = any>(url: string, body?: any, option?: ObservableOption) => Observable<T>;
    delete: <T = any>(url: string, option?: ObservableOption) => Observable<T>;
    request: <T = any>(method: string, url: string, option?: ObservableOption) => Observable<T>;
}
interface ObservableOption {
    body?: any;
    headers?: HttpHeaders | {
        [header: string]: string | string[];
    };
    observe?: 'body';
    params?: HttpParams | {
        [param: string]: string | string[];
    };
    reportProgress?: boolean;
    responseType?: 'json';
    withCredentials?: boolean;
}
export {};
