dagpirs 0.1.7

A pure rust wrapper for dagpi, with image manipulation and data fetching.
Documentation
use serde::{Deserialize, Serialize};
use serde_json::Value as JsonValue;
#[derive(Serialize, Deserialize)]
pub struct Roast {
    pub roast: String,
}

#[derive(Serialize, Deserialize)]
pub struct Joke {
    pub id: String,
    pub joke: String,
}

#[derive(Serialize, Deserialize)]
pub struct PickupLine {
    pub category: String,
    pub joke: String,
}

#[derive(Serialize, Deserialize)]
#[allow(non_snake_case)]
pub struct BasicMon {
    pub abilities: Vec<String>,
    pub ascii: String,
    pub height: f32,
    pub id: f32,
    pub link: String,
    pub name: String,
    #[allow(non_snake_case)]
    pub Type: Vec<String>,
    pub weight: f32,
}

#[allow(non_snake_case)]
#[derive(Serialize, Deserialize)]
pub struct WTP {
    #[allow(non_snake_case)]
    pub Data: BasicMon,
    pub question: String,
    pub answer: String,
}

#[derive(Serialize, Deserialize)]
pub struct Headline {
    pub text: String,
    pub fake: bool,
}

#[derive(Serialize, Deserialize)]
pub struct CountryName {
    pub common: String,
    pub official: String,
    pub native: JsonValue,
}
#[allow(non_snake_case)]
#[derive(Serialize, Deserialize)]
#[serde(rename_all = "camelCase")]
pub struct Country {
    pub name: CountryName,
    pub tld: Vec<String>,
    pub cca2: String,
    pub cca3: String,
    pub ccn3: String,
    pub currency: Vec<String>,
    pub capital: String,
    pub callingCode: Vec<String>,
    pub altSpellings: Vec<String>,
    pub region: String,
    pub subregion: String,
    pub languages: JsonValue,
    pub translations: JsonValue,
    pub latlng: Vec<f32>,
    pub denonym: Option<String>,
    pub landlocked: bool,
    pub borders: Vec<String>,
    pub area: f32,
}
#[allow(non_snake_case)]
#[derive(Serialize, Deserialize)]
pub struct Flag {
    pub Data: Country,
    pub flag: String,
}

#[derive(Serialize, Deserialize)]
pub struct EightBall {
    response: String,
}

#[derive(Serialize, Deserialize)]
pub struct YomamaJoke {
    pub description: String,
}
#[derive(Serialize, Deserialize)]
pub struct Fact {
    pub fact: String,
}

#[derive(Serialize, Deserialize)]
pub struct Logo {
    pub answer: String,
    pub brand: String,
    pub question: String,
    pub wiki_url: String,
    pub hint: String,
    pub easy: bool,
    pub clue: Option<String>,
}

#[derive(Serialize, Deserialize)]
pub struct Typeracer {
    pub sentence: String,
    pub image: String,
}

#[derive(Serialize, Deserialize)]
pub struct Captcha {
    pub image: String,
    pub answer: String,
}