pub mod client;
pub mod server;

#[tonic::async_trait]

/// ref: https://pkg.go.dev/net/http#Handler
#[tonic::async_trait]
pub trait Handler {
    async fn serve_http(
        &mut self,
        req: http::Request<String>,
    ) -> std::io::Result<http::Response<String>>;

    async fn serve_http_simple(
        &mut self,
        req: http::Request<String>,
    ) -> std::io::Result<http::Response<String>>;
}
