import { Readable } from "node:stream";
import type { AccessKey, AuthToken } from "../../credentials";
import { type BaseURL, type ClientResponse, LaraClient, type MultiPartFile } from "./client";
/** @internal */
export declare class NodeLaraClient extends LaraClient {
    private readonly baseUrl;
    private readonly agent;
    private readonly timeout;
    constructor(baseUrl: BaseURL, auth: AccessKey | AuthToken, keepAlive: boolean, timeout?: number);
    protected send(method: string, path: string, headers: Record<string, string>, body?: Record<string, any>, streamResponse?: boolean): Promise<ClientResponse>;
    protected sendAndGetStream(method: string, path: string, headers: Record<string, string>, body?: Record<string, any>): AsyncGenerator<ClientResponse>;
    protected wrapMultiPartFile(file: MultiPartFile): Readable;
}
export declare class NodeClient {
    static get(url: string, headers?: Record<string, string>): Promise<ClientResponse>;
    private static send;
}
