use thiserror::Error; #[derive(Error, Debug)] pub enum WardenError { #[error(transparent)] Datastore(#[from] sqlx::Error), #[error(transparent)] Migration(#[from] sqlx::migrate::MigrateError), #[error(transparent)] Url(#[from] url::ParseError), #[error(transparent)] Pagination(#[from] base64::DecodeError), #[error(transparent)] PaginationCursor(#[from] std::string::FromUtf8Error), #[error("Missing required configuration values:\n`{0}`")] Config(String), #[error("invalid header (expected {expected:?}, found {found:?})")] InvalidHeader { expected: String, found: String }, #[error("unknown data store error")] Unknown, }