import { BaseTransport } from '../../../core/blockchain-provider/transports/base.transport';
import type { JsonRpcRequest } from '../../../core/blockchain-provider/transports/interfaces';
import type { RateLimits } from '../../../core/blockchain-provider/providers';
export interface BrowserRpcTransportOptions {
    uniqName: string;
    httpUrl: string;
    responseTimeout?: number;
    rateLimits?: RateLimits;
    headers?: Record<string, string>;
}
export declare class BrowserRpcTransport extends BaseTransport {
    readonly type: "browser-rpc";
    private readonly httpUrl;
    private readonly responseTimeout;
    private readonly rateLimiter;
    private readonly headers;
    private requestId;
    constructor(options: BrowserRpcTransportOptions);
    request<T = any>(method: string, params?: any[]): Promise<T>;
    batch<T = any>(requests: JsonRpcRequest[]): Promise<Array<T | null>>;
    close(): Promise<void>;
    private batchCall;
    private encodeBase64;
}
