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 FamiliesAnnually = 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}
44
45impl std::fmt::Display for PlanType {
46 fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result {
47 write!(
48 f,
49 "{}",
50 match self {
51 Self::Free => "0",
52 Self::FamiliesAnnually2019 => "1",
53 Self::TeamsMonthly2019 => "2",
54 Self::TeamsAnnually2019 => "3",
55 Self::EnterpriseMonthly2019 => "4",
56 Self::EnterpriseAnnually2019 => "5",
57 Self::Custom => "6",
58 Self::FamiliesAnnually => "7",
59 Self::TeamsMonthly2020 => "8",
60 Self::TeamsAnnually2020 => "9",
61 Self::EnterpriseMonthly2020 => "10",
62 Self::EnterpriseAnnually2020 => "11",
63 Self::TeamsMonthly2023 => "12",
64 Self::TeamsAnnually2023 => "13",
65 Self::EnterpriseMonthly2023 => "14",
66 Self::EnterpriseAnnually2023 => "15",
67 Self::TeamsStarter2023 => "16",
68 Self::TeamsMonthly => "17",
69 Self::TeamsAnnually => "18",
70 Self::EnterpriseMonthly => "19",
71 Self::EnterpriseAnnually => "20",
72 Self::TeamsStarter => "21",
73 }
74 )
75 }
76}
77impl Default for PlanType {
78 fn default() -> PlanType {
79 Self::Free
80 }
81}