#![cfg_attr(nightly, feature(doc_cfg))]
#![deny(clippy::all)]
#![deny(unsafe_code)]
#![deny(clippy::cargo)]
#![warn(missing_docs)]
#![deny(rustdoc::invalid_html_tags)]
#![warn(rustdoc::missing_doc_code_examples)]
#![warn(clippy::pedantic)]
#![warn(clippy::nursery)]
#![allow(clippy::tabs_in_doc_comments)]
use serde::de::DeserializeOwned;
#[derive(Debug, Clone)]
pub enum RequestMethod {
Head,
Get,
Post,
Put,
Patch,
Delete,
}
pub trait Queryable<RequiredApiState, ResponseType: DeserializeOwned> {
fn url(&self) -> String;
fn method(&self) -> RequestMethod {
RequestMethod::Get
}
fn body(&self) -> Option<serde_json::Result<Vec<u8>>> {
None
}
}