1use crate::core::{
14 error::{DbError, HandlerError},
15 model::data_flow::TransitionError,
16};
17
18pub type SdkResult<T> = Result<T, SdkError>;
19
20#[derive(Debug, thiserror::Error)]
21pub enum SdkError {
22 #[error("Handler error: {0}")]
23 Handler(#[from] HandlerError),
24 #[error("Repository error: {0}")]
25 Repo(#[from] DbError),
26 #[error("Transition error: {0}")]
27 Transition(#[from] TransitionError),
28 #[error("Notification transport error: {0}")]
29 Notification(#[from] reqwest::Error),
30 #[error("Notification rejected with status {status}: {body}")]
31 NotificationStatus { status: u16, body: String },
32}