1use num_derive::{FromPrimitive, ToPrimitive};
2
3use crate::{email::EmailAddress, password::Password};
4
5#[rustfmt::skip]
6#[derive(Debug, Clone, PartialEq, Eq)]
7pub struct User {
8 pub email : EmailAddress,
9 pub email_confirmed : bool,
10 pub password : Password,
11 pub role : Role,
12}
13
14#[rustfmt::skip]
15#[derive(Debug, Default, Clone, Copy, PartialEq, Eq, PartialOrd, Ord, FromPrimitive, ToPrimitive)]
16pub enum Role {
17 #[default]
18 Guest = 0,
19 User = 1,
20 Scout = 2,
21 Admin = 3,
22}