bitwarden_api_api/models/
billing_subscription.rs

1/*
2 * Bitwarden Internal API
3 *
4 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
5 *
6 * The version of the OpenAPI document: latest
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use 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}