use serde::{Deserialize, Serialize};
use crate::models::Author as AuthorModel;
#[derive(Serialize, Deserialize, Debug, Clone, Default)]
pub struct Article {
#[serde(rename = "id")]
pub id: Option<String>,
#[serde(rename = "title")]
pub title: Option<String>,
#[serde(rename = "description")]
pub description: Option<String>,
#[serde(rename = "description_short")]
pub description_short: Option<String>,
#[serde(rename = "url")]
pub url: Option<String>,
#[serde(rename = "image")]
pub image: Option<String>,
#[serde(rename = "image_rectangle")]
pub image_rectangle: Option<String>,
#[serde(rename = "authors")]
pub authors: Option<Vec<AuthorModel>>,
#[serde(rename = "display_date")]
pub display_date: Option<String>,
#[serde(rename = "section_slugs")]
pub section_slugs: Option<Vec<String>>,
#[serde(rename = "tags")]
pub tags: Option<Vec<String>>,
#[serde(rename = "slug")]
pub slug: Option<String>,
#[serde(rename = "created_at")]
pub created_at: Option<i64>,
#[serde(rename = "updated_at")]
pub updated_at: Option<i64>,
}
#[derive(Serialize, Deserialize, Debug, Clone, Default)]
pub struct Author {
#[serde(rename = "id")]
pub id: Option<String>,
#[serde(rename = "name")]
pub name: Option<String>,
#[serde(rename = "slug")]
pub slug: Option<String>,
#[serde(rename = "image")]
pub image: Option<String>,
}
#[derive(Serialize, Deserialize, Debug, Clone, Default)]
pub struct Story {
#[serde(rename = "id")]
pub id: Option<String>,
#[serde(rename = "section_slugs")]
pub section_slugs: Option<Vec<String>>,
#[serde(rename = "title")]
pub title: Option<String>,
#[serde(rename = "description_short")]
pub description_short: Option<String>,
#[serde(rename = "authors")]
pub authors: Option<Vec<Author>>,
#[serde(rename = "image")]
pub image: Option<String>,
#[serde(rename = "display_date")]
pub display_date: Option<i64>,
}
#[derive(Serialize, Deserialize, Debug, Clone, Default)]
pub struct Biography {
#[serde(rename = "content")]
pub content: Option<String>,
#[serde(rename = "summary")]
pub summary: Option<String>,
#[serde(rename = "source")]
pub source: Option<String>,
}