UNPKG

@bigmi/core

Version:

TypeScript library for Bitcoin apps.

29 lines (28 loc) 1.79 kB
import { type UrlRequiredErrorType } from '../errors/transport.js'; import type { ErrorType } from '../errors/utils.js'; import type { BtcRpcRequestFn, RpcSchema } from '../types/request.js'; import type { CreateTransportErrorType, Transport, TransportConfig } from '../types/transport.js'; import { type HttpRpcClientOptions } from './getHttpRpcClient.js'; export type HttpTransportConfig<rpcSchema extends RpcSchema | undefined = undefined, raw extends boolean = false> = { batch?: boolean | { batchSize?: number | undefined; wait?: number | undefined; } | undefined; fetchOptions?: HttpRpcClientOptions['fetchOptions'] | undefined; onFetchRequest?: HttpRpcClientOptions['onRequest'] | undefined; onFetchResponse?: HttpRpcClientOptions['onResponse'] | undefined; key?: TransportConfig['key'] | undefined; methods?: TransportConfig['methods'] | undefined; name?: TransportConfig['name'] | undefined; raw?: raw | boolean | undefined; retryCount?: TransportConfig['retryCount'] | undefined; retryDelay?: TransportConfig['retryDelay'] | undefined; rpcSchema?: rpcSchema | RpcSchema | undefined; timeout?: TransportConfig['timeout'] | undefined; }; export type HttpTransport<rpcSchema extends RpcSchema | undefined = undefined, raw extends boolean = false> = Transport<'http', { fetchOptions?: HttpTransportConfig['fetchOptions'] | undefined; url?: string | undefined; }, BtcRpcRequestFn<rpcSchema, raw>>; export type HttpTransportErrorType = CreateTransportErrorType | UrlRequiredErrorType | ErrorType; export declare function http<rpcSchema extends RpcSchema | undefined = undefined, raw extends boolean = false>(url?: string | undefined, config?: HttpTransportConfig<rpcSchema, raw>): HttpTransport<rpcSchema, raw>;