bitwarden_api_api/models/
billing_subscription.rs1use serde::{Deserialize, Serialize};
12
13use crate::models;
14
15#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
16pub struct BillingSubscription {
17 #[serde(
18 rename = "trialStartDate",
19 alias = "TrialStartDate",
20 skip_serializing_if = "Option::is_none"
21 )]
22 pub trial_start_date: Option<String>,
23 #[serde(
24 rename = "trialEndDate",
25 alias = "TrialEndDate",
26 skip_serializing_if = "Option::is_none"
27 )]
28 pub trial_end_date: Option<String>,
29 #[serde(
30 rename = "periodStartDate",
31 alias = "PeriodStartDate",
32 skip_serializing_if = "Option::is_none"
33 )]
34 pub period_start_date: Option<String>,
35 #[serde(
36 rename = "periodEndDate",
37 alias = "PeriodEndDate",
38 skip_serializing_if = "Option::is_none"
39 )]
40 pub period_end_date: Option<String>,
41 #[serde(
42 rename = "cancelledDate",
43 alias = "CancelledDate",
44 skip_serializing_if = "Option::is_none"
45 )]
46 pub cancelled_date: Option<String>,
47 #[serde(
48 rename = "cancelAtEndDate",
49 alias = "CancelAtEndDate",
50 skip_serializing_if = "Option::is_none"
51 )]
52 pub cancel_at_end_date: Option<bool>,
53 #[serde(
54 rename = "status",
55 alias = "Status",
56 skip_serializing_if = "Option::is_none"
57 )]
58 pub status: Option<String>,
59 #[serde(
60 rename = "cancelled",
61 alias = "Cancelled",
62 skip_serializing_if = "Option::is_none"
63 )]
64 pub cancelled: Option<bool>,
65 #[serde(
66 rename = "items",
67 alias = "Items",
68 skip_serializing_if = "Option::is_none"
69 )]
70 pub items: Option<Vec<models::BillingSubscriptionItem>>,
71 #[serde(
72 rename = "collectionMethod",
73 alias = "CollectionMethod",
74 skip_serializing_if = "Option::is_none"
75 )]
76 pub collection_method: Option<String>,
77 #[serde(
78 rename = "suspensionDate",
79 alias = "SuspensionDate",
80 skip_serializing_if = "Option::is_none"
81 )]
82 pub suspension_date: Option<String>,
83 #[serde(
84 rename = "unpaidPeriodEndDate",
85 alias = "UnpaidPeriodEndDate",
86 skip_serializing_if = "Option::is_none"
87 )]
88 pub unpaid_period_end_date: Option<String>,
89 #[serde(
90 rename = "gracePeriod",
91 alias = "GracePeriod",
92 skip_serializing_if = "Option::is_none"
93 )]
94 pub grace_period: Option<i32>,
95}
96
97impl BillingSubscription {
98 pub fn new() -> BillingSubscription {
99 BillingSubscription {
100 trial_start_date: None,
101 trial_end_date: None,
102 period_start_date: None,
103 period_end_date: None,
104 cancelled_date: None,
105 cancel_at_end_date: None,
106 status: None,
107 cancelled: None,
108 items: None,
109 collection_method: None,
110 suspension_date: None,
111 unpaid_period_end_date: None,
112 grace_period: None,
113 }
114 }
115}