giphy_api_lite/objects/
gif.rs

1//! https://developers.giphy.com/docs/api/schema#gif-object
2
3use serde::{Deserialize, Serialize};
4use serde_enum_str::{Deserialize_enum_str, Serialize_enum_str};
5
6use crate::{objects::image::Images, types::rating::Rating};
7
8#[derive(Deserialize, Serialize, Debug, Clone)]
9pub struct Gif {
10    pub r#type: GifType,
11    pub id: String,
12    pub slug: String,
13    pub url: String,
14    pub username: String,
15    pub rating: Rating,
16    pub images: Images,
17}
18
19#[derive(Deserialize_enum_str, Serialize_enum_str, Debug, Copy, Clone)]
20#[serde(rename_all = "snake_case")]
21pub enum GifType {
22    Gif,
23    Sticker,
24    Text,
25    Emoji,
26}