import { Network } from '@btc-vision/bitcoin';
import Agent from 'undici/types/agent.js';
import { AbstractRpcProvider } from './AbstractRpcProvider.js';
import { JsonRpcPayload } from './interfaces/JSONRpc.js';
import { JsonRpcCallResult } from './interfaces/JSONRpcResult.js';
export declare class JSONRpcProvider extends AbstractRpcProvider {
    private readonly timeout;
    private readonly fetcherConfigurations;
    readonly url: string;
    constructor(url: string, network: Network, timeout?: number, fetcherConfigurations?: Agent.Options);
    private _fetcher;
    private get fetcher();
    _send(payload: JsonRpcPayload | JsonRpcPayload[]): Promise<JsonRpcCallResult>;
    protected providerUrl(url: string): string;
}
