bitwarden-api-api 3.0.0

Api bindings for the Bitwarden API.
Documentation
/*
 * Bitwarden Internal API
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document: latest
 *
 * Generated by: https://openapi-generator.tech
 */

use serde::{Deserialize, Serialize};

use crate::models;

#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PasswordManagerPlanFeaturesResponseModel {
    #[serde(
        rename = "stripePlanId",
        alias = "StripePlanId",
        skip_serializing_if = "Option::is_none"
    )]
    pub stripe_plan_id: Option<String>,
    #[serde(
        rename = "stripeSeatPlanId",
        alias = "StripeSeatPlanId",
        skip_serializing_if = "Option::is_none"
    )]
    pub stripe_seat_plan_id: Option<String>,
    #[serde(
        rename = "stripeProviderPortalSeatPlanId",
        alias = "StripeProviderPortalSeatPlanId",
        skip_serializing_if = "Option::is_none"
    )]
    pub stripe_provider_portal_seat_plan_id: Option<String>,
    #[serde(
        rename = "basePrice",
        alias = "BasePrice",
        skip_serializing_if = "Option::is_none"
    )]
    pub base_price: Option<f64>,
    #[serde(
        rename = "seatPrice",
        alias = "SeatPrice",
        skip_serializing_if = "Option::is_none"
    )]
    pub seat_price: Option<f64>,
    #[serde(
        rename = "providerPortalSeatPrice",
        alias = "ProviderPortalSeatPrice",
        skip_serializing_if = "Option::is_none"
    )]
    pub provider_portal_seat_price: Option<f64>,
    #[serde(
        rename = "allowSeatAutoscale",
        alias = "AllowSeatAutoscale",
        skip_serializing_if = "Option::is_none"
    )]
    pub allow_seat_autoscale: Option<bool>,
    #[serde(
        rename = "hasAdditionalSeatsOption",
        alias = "HasAdditionalSeatsOption",
        skip_serializing_if = "Option::is_none"
    )]
    pub has_additional_seats_option: Option<bool>,
    #[serde(
        rename = "maxAdditionalSeats",
        alias = "MaxAdditionalSeats",
        skip_serializing_if = "Option::is_none"
    )]
    pub max_additional_seats: Option<i32>,
    #[serde(
        rename = "baseSeats",
        alias = "BaseSeats",
        skip_serializing_if = "Option::is_none"
    )]
    pub base_seats: Option<i32>,
    #[serde(
        rename = "hasPremiumAccessOption",
        alias = "HasPremiumAccessOption",
        skip_serializing_if = "Option::is_none"
    )]
    pub has_premium_access_option: Option<bool>,
    #[serde(
        rename = "stripePremiumAccessPlanId",
        alias = "StripePremiumAccessPlanId",
        skip_serializing_if = "Option::is_none"
    )]
    pub stripe_premium_access_plan_id: Option<String>,
    #[serde(
        rename = "premiumAccessOptionPrice",
        alias = "PremiumAccessOptionPrice",
        skip_serializing_if = "Option::is_none"
    )]
    pub premium_access_option_price: Option<f64>,
    #[serde(
        rename = "maxSeats",
        alias = "MaxSeats",
        skip_serializing_if = "Option::is_none"
    )]
    pub max_seats: Option<i32>,
    #[serde(
        rename = "baseStorageGb",
        alias = "BaseStorageGb",
        skip_serializing_if = "Option::is_none"
    )]
    pub base_storage_gb: Option<i32>,
    #[serde(
        rename = "hasAdditionalStorageOption",
        alias = "HasAdditionalStorageOption",
        skip_serializing_if = "Option::is_none"
    )]
    pub has_additional_storage_option: Option<bool>,
    #[serde(
        rename = "additionalStoragePricePerGb",
        alias = "AdditionalStoragePricePerGb",
        skip_serializing_if = "Option::is_none"
    )]
    pub additional_storage_price_per_gb: Option<f64>,
    #[serde(
        rename = "stripeStoragePlanId",
        alias = "StripeStoragePlanId",
        skip_serializing_if = "Option::is_none"
    )]
    pub stripe_storage_plan_id: Option<String>,
    #[serde(
        rename = "maxAdditionalStorage",
        alias = "MaxAdditionalStorage",
        skip_serializing_if = "Option::is_none"
    )]
    pub max_additional_storage: Option<i32>,
    #[serde(
        rename = "maxCollections",
        alias = "MaxCollections",
        skip_serializing_if = "Option::is_none"
    )]
    pub max_collections: Option<i32>,
}

impl PasswordManagerPlanFeaturesResponseModel {
    pub fn new() -> PasswordManagerPlanFeaturesResponseModel {
        PasswordManagerPlanFeaturesResponseModel {
            stripe_plan_id: None,
            stripe_seat_plan_id: None,
            stripe_provider_portal_seat_plan_id: None,
            base_price: None,
            seat_price: None,
            provider_portal_seat_price: None,
            allow_seat_autoscale: None,
            has_additional_seats_option: None,
            max_additional_seats: None,
            base_seats: None,
            has_premium_access_option: None,
            stripe_premium_access_plan_id: None,
            premium_access_option_price: None,
            max_seats: None,
            base_storage_gb: None,
            has_additional_storage_option: None,
            additional_storage_price_per_gb: None,
            stripe_storage_plan_id: None,
            max_additional_storage: None,
            max_collections: None,
        }
    }
}