bitwarden_api_api/models/
plan_type.rs1use serde::{Deserialize, Serialize};
12use serde_repr::{Deserialize_repr, Serialize_repr};
13
14use crate::models;
15#[repr(i64)]
17#[derive(
18 Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize_repr, Deserialize_repr,
19)]
20pub enum PlanType {
21 Free = 0,
22 FamiliesAnnually2019 = 1,
23 TeamsMonthly2019 = 2,
24 TeamsAnnually2019 = 3,
25 EnterpriseMonthly2019 = 4,
26 EnterpriseAnnually2019 = 5,
27 Custom = 6,
28 FamiliesAnnually2025 = 7,
29 TeamsMonthly2020 = 8,
30 TeamsAnnually2020 = 9,
31 EnterpriseMonthly2020 = 10,
32 EnterpriseAnnually2020 = 11,
33 TeamsMonthly2023 = 12,
34 TeamsAnnually2023 = 13,
35 EnterpriseMonthly2023 = 14,
36 EnterpriseAnnually2023 = 15,
37 TeamsStarter2023 = 16,
38 TeamsMonthly = 17,
39 TeamsAnnually = 18,
40 EnterpriseMonthly = 19,
41 EnterpriseAnnually = 20,
42 TeamsStarter = 21,
43 FamiliesAnnually = 22,
44}
45
46impl std::fmt::Display for PlanType {
47 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
48 write!(
49 f,
50 "{}",
51 match self {
52 Self::Free => "0",
53 Self::FamiliesAnnually2019 => "1",
54 Self::TeamsMonthly2019 => "2",
55 Self::TeamsAnnually2019 => "3",
56 Self::EnterpriseMonthly2019 => "4",
57 Self::EnterpriseAnnually2019 => "5",
58 Self::Custom => "6",
59 Self::FamiliesAnnually2025 => "7",
60 Self::TeamsMonthly2020 => "8",
61 Self::TeamsAnnually2020 => "9",
62 Self::EnterpriseMonthly2020 => "10",
63 Self::EnterpriseAnnually2020 => "11",
64 Self::TeamsMonthly2023 => "12",
65 Self::TeamsAnnually2023 => "13",
66 Self::EnterpriseMonthly2023 => "14",
67 Self::EnterpriseAnnually2023 => "15",
68 Self::TeamsStarter2023 => "16",
69 Self::TeamsMonthly => "17",
70 Self::TeamsAnnually => "18",
71 Self::EnterpriseMonthly => "19",
72 Self::EnterpriseAnnually => "20",
73 Self::TeamsStarter => "21",
74 Self::FamiliesAnnually => "22",
75 }
76 )
77 }
78}
79impl Default for PlanType {
80 fn default() -> PlanType {
81 Self::Free
82 }
83}