santui_core/auth.rs
1#[derive(Clone, Debug)]
2pub struct User {
3 pub id: String,
4 pub email: String,
5 pub name: String,
6 pub avatar_url: Option<String>,
7 pub provider: String,
8}
9
10pub trait AuthHandle: Send + Sync {
11 fn current_user(&self) -> Option<User>;
12 fn bearer_token(&self) -> Option<String>;
13 fn sign_in(&self, provider: &str) -> Result<User, Box<dyn std::error::Error>>;
14 fn sign_out(&self);
15}