use std::sync::Arc; use domain::ports::{AuthService, PasswordHasher, RefreshSessionRepository, UserRepository}; pub struct RegisterDeps { pub user_repo: Arc, pub password_hasher: Arc, pub allow_registration: bool, } pub struct LoginDeps { pub user_repo: Arc, pub password_hasher: Arc, pub auth_service: Arc, pub refresh_repo: Arc, pub refresh_ttl_seconds: u64, } pub struct RefreshDeps { pub auth_service: Arc, pub refresh_repo: Arc, pub refresh_ttl_seconds: u64, } pub struct LogoutDeps { pub refresh_repo: Arc, }