use async_trait::async_trait;
use bytes::Bytes;
use http::request::Builder as RequestBuilder;
use http::Response;
use url::Url;
#[async_trait]
pub trait Client {
fn endpoint(&self, endpoint: &str) -> anyhow::Result<Url>;
async fn send(&self, request: RequestBuilder, body: Vec<u8>)
-> anyhow::Result<Response<Bytes>>;
}