use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct GetSocialBilibiliVideoinfo200Response {
#[serde(rename = "bvid", skip_serializing_if = "Option::is_none")]
pub bvid: Option<String>,
#[serde(rename = "aid", skip_serializing_if = "Option::is_none")]
pub aid: Option<f64>,
#[serde(rename = "videos", skip_serializing_if = "Option::is_none")]
pub videos: Option<f64>,
#[serde(rename = "tid", skip_serializing_if = "Option::is_none")]
pub tid: Option<f64>,
#[serde(rename = "tname", skip_serializing_if = "Option::is_none")]
pub tname: Option<String>,
#[serde(rename = "copyright", skip_serializing_if = "Option::is_none")]
pub copyright: Option<f64>,
#[serde(rename = "pic", skip_serializing_if = "Option::is_none")]
pub pic: Option<String>,
#[serde(rename = "title", skip_serializing_if = "Option::is_none")]
pub title: Option<String>,
#[serde(rename = "pubdate", skip_serializing_if = "Option::is_none")]
pub pubdate: Option<f64>,
#[serde(rename = "ctime", skip_serializing_if = "Option::is_none")]
pub ctime: Option<f64>,
#[serde(rename = "desc", skip_serializing_if = "Option::is_none")]
pub desc: Option<String>,
#[serde(rename = "desc_v2", skip_serializing_if = "Option::is_none")]
pub desc_v2: Option<Vec<models::GetSocialBilibiliVideoinfo200ResponseDescV2Inner>>,
#[serde(rename = "state", skip_serializing_if = "Option::is_none")]
pub state: Option<f64>,
#[serde(rename = "duration", skip_serializing_if = "Option::is_none")]
pub duration: Option<f64>,
#[serde(rename = "rights", skip_serializing_if = "Option::is_none")]
pub rights: Option<Box<models::GetSocialBilibiliVideoinfo200ResponseRights>>,
#[serde(rename = "owner", skip_serializing_if = "Option::is_none")]
pub owner: Option<Box<models::GetSocialBilibiliVideoinfo200ResponseOwner>>,
#[serde(rename = "stat", skip_serializing_if = "Option::is_none")]
pub stat: Option<Box<models::GetSocialBilibiliVideoinfo200ResponseStat>>,
#[serde(rename = "dynamic", skip_serializing_if = "Option::is_none")]
pub dynamic: Option<String>,
#[serde(rename = "cid", skip_serializing_if = "Option::is_none")]
pub cid: Option<f64>,
#[serde(rename = "dimension", skip_serializing_if = "Option::is_none")]
pub dimension: Option<Box<models::GetSocialBilibiliVideoinfo200ResponseDimension>>,
#[serde(rename = "no_cache", skip_serializing_if = "Option::is_none")]
pub no_cache: Option<bool>,
#[serde(rename = "pages", skip_serializing_if = "Option::is_none")]
pub pages: Option<Vec<models::GetSocialBilibiliVideoinfo200ResponsePagesInner>>,
#[serde(rename = "subtitle", skip_serializing_if = "Option::is_none")]
pub subtitle: Option<Box<models::GetSocialBilibiliVideoinfo200ResponseSubtitle>>,
#[serde(rename = "staff", skip_serializing_if = "Option::is_none")]
pub staff: Option<Vec<models::GetSocialBilibiliVideoinfo200ResponseStaffInner>>,
#[serde(rename = "ugc_season", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub ugc_season: Option<Option<Box<models::GetSocialBilibiliVideoinfo200ResponseUgcSeason>>>,
#[serde(rename = "is_chargeable_season", skip_serializing_if = "Option::is_none")]
pub is_chargeable_season: Option<bool>,
#[serde(rename = "is_story", skip_serializing_if = "Option::is_none")]
pub is_story: Option<bool>,
#[serde(rename = "honor_reply", skip_serializing_if = "Option::is_none")]
pub honor_reply: Option<Box<models::GetSocialBilibiliVideoinfo200ResponseHonorReply>>,
}
impl GetSocialBilibiliVideoinfo200Response {
pub fn new() -> GetSocialBilibiliVideoinfo200Response {
GetSocialBilibiliVideoinfo200Response {
bvid: None,
aid: None,
videos: None,
tid: None,
tname: None,
copyright: None,
pic: None,
title: None,
pubdate: None,
ctime: None,
desc: None,
desc_v2: None,
state: None,
duration: None,
rights: None,
owner: None,
stat: None,
dynamic: None,
cid: None,
dimension: None,
no_cache: None,
pages: None,
subtitle: None,
staff: None,
ugc_season: None,
is_chargeable_season: None,
is_story: None,
honor_reply: None,
}
}
}