box_open_sdk/models/schemas/
device_pinners.rs1use super::*;
4
5#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
6pub struct DevicePinner {
7 #[serde(default, skip_serializing_if = "Option::is_none")]
8 pub id: Option<String>,
9 #[serde(default, skip_serializing_if = "Option::is_none")]
10 pub r#type: Option<DevicePinnerType>,
11 #[serde(default, skip_serializing_if = "Option::is_none")]
12 pub owned_by: Option<UserMini>,
13 #[serde(default, skip_serializing_if = "Option::is_none")]
14 pub product_name: Option<String>,
15}
16
17#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
18pub struct DevicePinners {
19 #[serde(default, skip_serializing_if = "Option::is_none")]
20 pub entries: Option<Vec<DevicePinner>>,
21 #[serde(default, skip_serializing_if = "Option::is_none")]
22 pub limit: Option<i64>,
23 #[serde(default, skip_serializing_if = "Option::is_none")]
24 pub next_marker: Option<i64>,
25 #[serde(default, skip_serializing_if = "Option::is_none")]
26 pub order: Option<Vec<DevicePinnersOrder>>,
27}
28
29#[derive(Clone, Debug, Default, Eq, PartialEq, serde::Deserialize, serde::Serialize)]
30#[serde(transparent)]
31pub struct DevicePinnerType(pub String);
32
33impl DevicePinnerType {
34 pub const DEVICE_PINNER: &'static str = "device_pinner";
35}
36
37#[derive(Clone, Debug, Default, Eq, PartialEq, serde::Deserialize, serde::Serialize)]
38#[serde(transparent)]
39pub struct OrderBy(pub String);
40
41impl OrderBy {
42 pub const ID: &'static str = "id";
43}
44
45#[derive(Clone, Debug, Default, Eq, PartialEq, serde::Deserialize, serde::Serialize)]
46#[serde(transparent)]
47pub struct DevicePinnersOrderDirection(pub String);
48
49impl DevicePinnersOrderDirection {
50 pub const ASC: &'static str = "asc";
51 pub const DESC: &'static str = "desc";
52}
53
54#[derive(Clone, Debug, Default, PartialEq, serde::Deserialize, serde::Serialize)]
55pub struct DevicePinnersOrder {
56 #[serde(default, skip_serializing_if = "Option::is_none")]
57 pub by: Option<OrderBy>,
58 #[serde(default, skip_serializing_if = "Option::is_none")]
59 pub direction: Option<DevicePinnersOrderDirection>,
60}