use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct PlanLimits {
#[serde(rename = "current_events")]
pub current_events: i64,
#[serde(rename = "current_members")]
pub current_members: i64,
#[serde(rename = "current_workflows")]
pub current_workflows: i64,
#[serde(rename = "max_events", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub max_events: Option<Option<u64>>,
#[serde(rename = "max_team_members", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub max_team_members: Option<Option<u32>>,
#[serde(rename = "max_workflows", default, with = "::serde_with::rust::double_option", skip_serializing_if = "Option::is_none")]
pub max_workflows: Option<Option<u32>>,
#[serde(rename = "plan")]
pub plan: models::Plan,
}
impl PlanLimits {
pub fn new(current_events: i64, current_members: i64, current_workflows: i64, plan: models::Plan) -> PlanLimits {
PlanLimits {
current_events,
current_members,
current_workflows,
max_events: None,
max_team_members: None,
max_workflows: None,
plan,
}
}
}