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(rename = "trialStartDate", skip_serializing_if = "Option::is_none")]
18    pub trial_start_date: Option<String>,
19    #[serde(rename = "trialEndDate", skip_serializing_if = "Option::is_none")]
20    pub trial_end_date: Option<String>,
21    #[serde(rename = "periodStartDate", skip_serializing_if = "Option::is_none")]
22    pub period_start_date: Option<String>,
23    #[serde(rename = "periodEndDate", skip_serializing_if = "Option::is_none")]
24    pub period_end_date: Option<String>,
25    #[serde(rename = "cancelledDate", skip_serializing_if = "Option::is_none")]
26    pub cancelled_date: Option<String>,
27    #[serde(rename = "cancelAtEndDate", skip_serializing_if = "Option::is_none")]
28    pub cancel_at_end_date: Option<bool>,
29    #[serde(rename = "status", skip_serializing_if = "Option::is_none")]
30    pub status: Option<String>,
31    #[serde(rename = "cancelled", skip_serializing_if = "Option::is_none")]
32    pub cancelled: Option<bool>,
33    #[serde(rename = "items", skip_serializing_if = "Option::is_none")]
34    pub items: Option<Vec<models::BillingSubscriptionItem>>,
35    #[serde(rename = "collectionMethod", skip_serializing_if = "Option::is_none")]
36    pub collection_method: Option<String>,
37    #[serde(rename = "suspensionDate", skip_serializing_if = "Option::is_none")]
38    pub suspension_date: Option<String>,
39    #[serde(
40        rename = "unpaidPeriodEndDate",
41        skip_serializing_if = "Option::is_none"
42    )]
43    pub unpaid_period_end_date: Option<String>,
44    #[serde(rename = "gracePeriod", skip_serializing_if = "Option::is_none")]
45    pub grace_period: Option<i32>,
46}
47
48impl BillingSubscription {
49    pub fn new() -> BillingSubscription {
50        BillingSubscription {
51            trial_start_date: None,
52            trial_end_date: None,
53            period_start_date: None,
54            period_end_date: None,
55            cancelled_date: None,
56            cancel_at_end_date: None,
57            status: None,
58            cancelled: None,
59            items: None,
60            collection_method: None,
61            suspension_date: None,
62            unpaid_period_end_date: None,
63            grace_period: None,
64        }
65    }
66}