pub mod commands;
pub mod dto;
pub mod handlers;
pub mod queries;
pub mod services;
pub mod shared;
pub use commands::*;
pub use queries::*;
pub use shared::AdjustmentUrgency;
pub type ApplicationResult<T> = Result<T, ApplicationError>;
#[derive(Debug, thiserror::Error)]
pub enum ApplicationError {
#[error("Domain error: {0}")]
Domain(#[from] crate::domain::DomainError),
#[error("Validation error: {0}")]
Validation(String),
#[error("Authorization error: {0}")]
Authorization(String),
#[error("Concurrency error: {0}")]
Concurrency(String),
#[error("Not found: {0}")]
NotFound(String),
#[error("Conflict: {0}")]
Conflict(String),
#[error("Application logic error: {0}")]
Logic(String),
}