gewe_core/video_account/
common.rs1use serde::{Deserialize, Serialize};
2use serde_json::Value;
3
4#[derive(Debug, Clone, Serialize, Deserialize, Default)]
5#[serde(rename_all = "camelCase")]
6pub struct FinderExtInfo {
7 #[serde(skip_serializing_if = "Option::is_none")]
8 pub country: Option<String>,
9 #[serde(skip_serializing_if = "Option::is_none")]
10 pub province: Option<String>,
11 #[serde(skip_serializing_if = "Option::is_none")]
12 pub city: Option<String>,
13 #[serde(skip_serializing_if = "Option::is_none")]
14 pub sex: Option<i32>,
15}
16
17#[derive(Debug, Clone, Serialize, Deserialize, Default)]
18#[serde(rename_all = "camelCase")]
19pub struct FinderLotterySetting {
20 #[serde(skip_serializing_if = "Option::is_none")]
21 pub setting_flag: Option<i32>,
22 #[serde(skip_serializing_if = "Option::is_none")]
23 pub attend_type: Option<i32>,
24}
25
26#[derive(Debug, Clone, Serialize, Deserialize, Default)]
27#[serde(rename_all = "camelCase")]
28pub struct FinderLiveInfo {
29 #[serde(skip_serializing_if = "Option::is_none")]
30 pub anchor_status_flag: Option<i32>,
31 #[serde(skip_serializing_if = "Option::is_none")]
32 pub switch_flag: Option<i32>,
33 #[serde(skip_serializing_if = "Option::is_none")]
34 pub lottery_setting: Option<FinderLotterySetting>,
35 #[serde(skip_serializing_if = "Option::is_none")]
36 pub mic_setting: Option<Value>,
37}
38
39#[derive(Debug, Clone, Serialize, Deserialize, Default)]
40#[serde(rename_all = "camelCase")]
41pub struct FinderContactProfile {
42 pub username: String,
43 pub nickname: String,
44 pub head_url: String,
45 #[serde(skip_serializing_if = "Option::is_none")]
46 pub seq: Option<i64>,
47 pub signature: String,
48 #[serde(skip_serializing_if = "Option::is_none")]
49 pub follow_flag: Option<i32>,
50 #[serde(default)]
51 pub auth_info: Value,
52 #[serde(skip_serializing_if = "Option::is_none")]
53 pub cover_img_url: Option<String>,
54 #[serde(skip_serializing_if = "Option::is_none")]
55 pub spam_status: Option<i32>,
56 #[serde(skip_serializing_if = "Option::is_none")]
57 pub ext_flag: Option<i32>,
58 #[serde(skip_serializing_if = "Option::is_none")]
59 pub ext_info: Option<FinderExtInfo>,
60 #[serde(skip_serializing_if = "Option::is_none")]
61 pub live_status: Option<i32>,
62 #[serde(skip_serializing_if = "Option::is_none")]
63 pub live_cover_img_url: Option<String>,
64 #[serde(skip_serializing_if = "Option::is_none")]
65 pub live_info: Option<FinderLiveInfo>,
66 #[serde(skip_serializing_if = "Option::is_none")]
67 pub friend_follow_count: Option<i32>,
68 #[serde(skip_serializing_if = "Option::is_none")]
69 pub one_time_flag: Option<i32>,
70 #[serde(skip_serializing_if = "Option::is_none")]
71 pub status: Option<i32>,
72 #[serde(skip_serializing_if = "Option::is_none")]
73 pub follow_time: Option<i64>,
74}
75
76#[derive(Debug, Clone, Serialize, Deserialize, Default)]
77#[serde(rename_all = "camelCase")]
78pub struct FinderSearchInfo<'a> {
79 #[serde(skip_serializing_if = "Option::is_none")]
80 pub cookies: Option<&'a str>,
81 #[serde(skip_serializing_if = "Option::is_none")]
82 pub search_id: Option<&'a str>,
83 #[serde(skip_serializing_if = "Option::is_none")]
84 pub doc_id: Option<&'a str>,
85}
86
87pub type FinderRawData = Value;