1use crate::resource::ErrorResponse;
4use reqwest::header::InvalidHeaderValue;
5use thiserror::Error;
6
7#[derive(Error, Debug)]
9pub enum Error {
10 #[error("Missing resource data on a resource")]
12 MissingResourceData,
13 #[error("Invalid resource type")]
15 InvalidResourceType,
16 #[error("Apple music error: {0:#?}")]
18 MusicError(ErrorResponse),
19 #[error("Invalid header value")]
21 InvalidHeaderValue(#[from] InvalidHeaderValue),
22 #[error(transparent)]
24 Reqwest(#[from] reqwest::Error),
25 #[error(transparent)]
27 TinyTemplate(#[from] tinytemplate::error::Error),
28 #[error(transparent)]
30 Json(#[from] serde_json::Error),
31}