bitwarden_api_api/models/
password_manager_plan_features_response_model.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 PasswordManagerPlanFeaturesResponseModel {
17    #[serde(rename = "stripePlanId", skip_serializing_if = "Option::is_none")]
18    pub stripe_plan_id: Option<String>,
19    #[serde(rename = "stripeSeatPlanId", skip_serializing_if = "Option::is_none")]
20    pub stripe_seat_plan_id: Option<String>,
21    #[serde(
22        rename = "stripeProviderPortalSeatPlanId",
23        skip_serializing_if = "Option::is_none"
24    )]
25    pub stripe_provider_portal_seat_plan_id: Option<String>,
26    #[serde(rename = "basePrice", skip_serializing_if = "Option::is_none")]
27    pub base_price: Option<f64>,
28    #[serde(rename = "seatPrice", skip_serializing_if = "Option::is_none")]
29    pub seat_price: Option<f64>,
30    #[serde(
31        rename = "providerPortalSeatPrice",
32        skip_serializing_if = "Option::is_none"
33    )]
34    pub provider_portal_seat_price: Option<f64>,
35    #[serde(rename = "allowSeatAutoscale", skip_serializing_if = "Option::is_none")]
36    pub allow_seat_autoscale: Option<bool>,
37    #[serde(
38        rename = "hasAdditionalSeatsOption",
39        skip_serializing_if = "Option::is_none"
40    )]
41    pub has_additional_seats_option: Option<bool>,
42    #[serde(rename = "maxAdditionalSeats", skip_serializing_if = "Option::is_none")]
43    pub max_additional_seats: Option<i32>,
44    #[serde(rename = "baseSeats", skip_serializing_if = "Option::is_none")]
45    pub base_seats: Option<i32>,
46    #[serde(
47        rename = "hasPremiumAccessOption",
48        skip_serializing_if = "Option::is_none"
49    )]
50    pub has_premium_access_option: Option<bool>,
51    #[serde(
52        rename = "stripePremiumAccessPlanId",
53        skip_serializing_if = "Option::is_none"
54    )]
55    pub stripe_premium_access_plan_id: Option<String>,
56    #[serde(
57        rename = "premiumAccessOptionPrice",
58        skip_serializing_if = "Option::is_none"
59    )]
60    pub premium_access_option_price: Option<f64>,
61    #[serde(rename = "maxSeats", skip_serializing_if = "Option::is_none")]
62    pub max_seats: Option<i32>,
63    #[serde(rename = "baseStorageGb", skip_serializing_if = "Option::is_none")]
64    pub base_storage_gb: Option<i32>,
65    #[serde(
66        rename = "hasAdditionalStorageOption",
67        skip_serializing_if = "Option::is_none"
68    )]
69    pub has_additional_storage_option: Option<bool>,
70    #[serde(
71        rename = "additionalStoragePricePerGb",
72        skip_serializing_if = "Option::is_none"
73    )]
74    pub additional_storage_price_per_gb: Option<f64>,
75    #[serde(
76        rename = "stripeStoragePlanId",
77        skip_serializing_if = "Option::is_none"
78    )]
79    pub stripe_storage_plan_id: Option<String>,
80    #[serde(
81        rename = "maxAdditionalStorage",
82        skip_serializing_if = "Option::is_none"
83    )]
84    pub max_additional_storage: Option<i32>,
85    #[serde(rename = "maxCollections", skip_serializing_if = "Option::is_none")]
86    pub max_collections: Option<i32>,
87}
88
89impl PasswordManagerPlanFeaturesResponseModel {
90    pub fn new() -> PasswordManagerPlanFeaturesResponseModel {
91        PasswordManagerPlanFeaturesResponseModel {
92            stripe_plan_id: None,
93            stripe_seat_plan_id: None,
94            stripe_provider_portal_seat_plan_id: None,
95            base_price: None,
96            seat_price: None,
97            provider_portal_seat_price: None,
98            allow_seat_autoscale: None,
99            has_additional_seats_option: None,
100            max_additional_seats: None,
101            base_seats: None,
102            has_premium_access_option: None,
103            stripe_premium_access_plan_id: None,
104            premium_access_option_price: None,
105            max_seats: None,
106            base_storage_gb: None,
107            has_additional_storage_option: None,
108            additional_storage_price_per_gb: None,
109            stripe_storage_plan_id: None,
110            max_additional_storage: None,
111            max_collections: None,
112        }
113    }
114}