/**
 * HTTP transport — sends JSON-RPC messages via HTTP POST (or GET for reads).
 *
 * @module
 */
import type { JsonrpcNotification, JsonrpcRequest, JsonrpcResponseOrError, JsonrpcErrorResponse } from '../http/jsonrpc.js';
import type { Transport, TransportSendOptions } from './transports.js';
/**
 * Thin `fetch` adapter for the JSON-RPC endpoint. POST by default; GET when
 * the optional `has_side_effects(method)` callback returns `false` for the
 * method (matches `create_rpc_endpoint`'s GET convention). On non-OK HTTP
 * responses, synthesizes a JSON-RPC error envelope via
 * `http_status_to_jsonrpc_error_code`. Always reports ready.
 */
export declare class FrontendHttpTransport implements Transport {
    #private;
    readonly transport_name: "frontend_http_rpc";
    constructor(url: string, headers?: Record<string, string>, has_side_effects?: (method: string) => boolean);
    send(message: JsonrpcRequest, options?: TransportSendOptions): Promise<JsonrpcResponseOrError>;
    send(message: JsonrpcNotification, options?: TransportSendOptions): Promise<JsonrpcErrorResponse | null>;
    is_ready(): boolean;
}
//# sourceMappingURL=transports_http.d.ts.map