1use thiserror::Error;
2
3pub type Result<T> = std::result::Result<T, ClientError>;
4
5#[derive(Error, Debug)]
7pub enum ClientError {
8 #[error("Unable to load manifest: {0:?}")]
11 ManifestLoad(anyhow::Error),
12 #[error(transparent)]
14 NatsError(#[from] async_nats::RequestError),
15 #[error("Invalid request: {0}")]
17 ApiError(String),
18 #[error("Model not found: {0}")]
20 NotFound(String),
21 #[error("Unable to parse manifest: {0:?}")]
23 Serialization(#[from] SerializationError),
24 #[error(transparent)]
26 Other(#[from] anyhow::Error),
27}
28
29#[derive(Error, Debug)]
31pub enum SerializationError {
32 #[error(transparent)]
33 Yaml(#[from] serde_yaml::Error),
34 #[error(transparent)]
35 Json(#[from] serde_json::Error),
36}