1use thiserror::Error;
2
3#[derive(Error, Debug)]
4pub enum LcAppError {
5 #[error("Looks like your cookies has been expired kindly update your cookies in config.toml Look for help to edit the config file.")]
6 CookiesExpiredError,
7
8 #[error("Deserialization/serialization failed: {0}")]
9 DeserializeError(#[from] serde_json::Error),
10
11 #[error("Network request error.")]
12 RequestError(#[from] reqwest::Error),
13
14 #[error("Status {code:?}: {contents:?}")]
15 StatusCodeError { code: String, contents: String },
16
17 #[error("Error while building reqwest client: {0}")]
18 ClientBuildError(#[from] reqwest::header::InvalidHeaderValue),
19
20 #[error("Language does not exist for question {0}")]
21 LanguageDoesNotExistError(String),
22}
23
24pub type AppResult<T> = Result<T, LcAppError>;