1use serde::{Deserialize, Serialize};
2use serde_repr::*;
3
4#[derive(Deserialize, Serialize, Debug)]
5pub struct Tag {
6 pub id: Option<String>,
8 pub name: Option<String>,
9 pub aliases: Option<Vec<String>>,
10 pub description: Option<String>,
12 pub category: Option<TagFlag>,
13 pub searchable: Option<bool>,
14 pub vn_count: Option<u32>,
16}
17
18#[derive(Deserialize, Serialize, Debug)]
19pub enum TagFlag {
20 #[serde(rename = "cont")]
21 Content,
22 #[serde(rename = "ero")]
23 SexualContent,
24 #[serde(rename = "tech")]
25 Technical,
26}
27
28#[derive(Deserialize_repr, Serialize_repr, PartialEq, Debug)]
29#[repr(u8)]
30pub enum TagSpoilerLvl {
31 None = 0,
32 Medium = 1,
33 Big = 2,
34}