// SPDX-FileCopyrightText: 2024 Aravinth Manivannan <realaravinth@batsense.net> // // SPDX-License-Identifier: AGPL-3.0-or-later pub mod command; pub mod events; pub mod service; use super::errors::*; #[async_trait::async_trait] pub trait DeleteUserUseCase: Send + Sync { async fn delete_user( &self, cmd: command::DeleteUserCommand, //) -> errors::ProcessAuthorizationServiceResult<String>; ); } pub type DeleteUserServiceObj = std::sync::Arc<dyn DeleteUserUseCase>;