import { HttpXHRService } from "../services/http-xhr.service";
import { Result } from "../Models/Paginator";
export declare class XHRManager {
    private _auth;
    http_xhr: HttpXHRService;
    private _endpoint;
    constructor(api_url: string, endpoint: string);
    /**
     *
     * @param endpoint end point to access
     * @param queryParams = null; a string for example: name=Ronaldo&type=2 doesn't write ? \n(In case send GET without queryParams, just pass null end use endpoint to do it. Ex: cars/example)
     */
    get<T>(endpoint?: string, queryParams?: string): Promise<Result<T>>;
    /**
     *
     * @param endpoint end point to access
     * @param queryParams = null; a string for example: name=Ronaldo&type=2 doesn't write ? \n(In case send GET without queryParams, just pass null end use endpoint to do it. Ex: cars/example)
     */
    get_file(endpoint?: string, queryParams?: string): Promise<any>;
    /**
     *
     * @param endpoint end point to access
     * @param queryParams = null; a string for example: name=Ronaldo&type=2 doesn't write ? \n(In case send GET without queryParams, just pass null end use endpoint to do it. Ex: cars/example)
     */
    get_any(endpoint?: string, queryParams?: string): Promise<any>;
    getById<T>(id: number, endpoint?: string): Promise<Result<T>>;
    /**
     * Use to request POST.
     * @param body K -> K is the model dto to pass with body
     * @param endpoint String -> string to be pass with endpoint access
     */
    post<T, K>(body: K, endpoint?: string): Promise<Result<T>>;
    /**
     * Use to request formData with files
     * Don't forget.to call default_options
     * @param body K -> K is the model dto to pass with body
     * @param endpoint String -> string to be pass with endpoint access
     */
    formData<T>(body: FormData, endpoint?: string): Promise<Result<T>>;
    /**
     * Use to request POST.
     * @param body K -> K is the model dto to pass with body
     * @param endpoint String -> string to be pass with endpoint access
     */
    put<T, K>(body: K, endpoint?: string): Promise<Result<T>>;
    delete<T>(id: number, endpoint?: string): Promise<Result<T>>;
    set_token(auth: string): void;
    get_token(): string;
    set auth(auth: string);
    get auth(): string;
    downloadFile(data: any): void;
}
