rusftx/rest/
request.rs

1use std::borrow::Cow;
2
3pub trait Request {
4    type Response: serde::de::DeserializeOwned;
5    type Query: serde::Serialize;
6    type Body: serde::Serialize;
7
8    fn path(&self) -> Cow<str>;
9    fn method(&self) -> http::Method;
10    fn query(&self) -> Option<Self::Query> {
11        None
12    }
13    fn body(&self) -> Option<Self::Body> {
14        None
15    }
16}
17
18pub trait UnauthenticatedRequest: Request {}
19
20pub trait AuthenticatedRequest: Request {}