import { DvRequestOpts, IScraperAdapter } from "..";
export type Browser = {
    name: string;
    browser: {
        name: string;
        version: string;
        os: string;
    };
    binary: string;
    wrapper_script: string;
};
export declare const browsers: Browser[];
export declare class Curl implements IScraperAdapter {
    proxy?: string;
    private curlPath;
    private browser;
    constructor(browser?: Browser, curlPath?: string);
    private _stdErrorToOutPut;
    private _stdToOutPut;
    private _getCurlExec;
    fetch<T>(url: string, opts?: DvRequestOpts): Promise<{
        data: T;
        headers: Record<string, unknown>;
        status: number;
    }>;
    get<T>(url: string, opts?: DvRequestOpts): Promise<{
        data: T;
        headers: Record<string, unknown>;
        status: number;
    }>;
    getCurl<T>(url: string, opts?: DvRequestOpts): Promise<{
        data: T;
        headers: Record<string, unknown>;
        status: number;
    }>;
    post<T>(url: string, data: Record<string, any>, opts?: DvRequestOpts): Promise<{
        data: T;
        headers: Record<string, unknown>;
        status: number;
    }>;
    getBrowser(): Browser;
    setBrowser(browser: Browser): void;
}
