1use thiserror::Error;
2
3pub type KagiResult<T> = Result<T, KagiError>;
5
6#[derive(Debug, Error)]
7pub enum KagiError {
8 #[error("Config error: {0}")]
10 ConfigError(config::ConfigError),
11
12 #[error("Request failed: {0}")]
14 ReqwestError(reqwest::Error),
15
16 #[error("HTTP StatusCode: {0}")]
17 StatusCodeError(reqwest::StatusCode),
18
19 #[error("Request failed: {0}")]
21 ReqwestMiddlewareError(reqwest_middleware::Error),
22
23 #[error("VCRMiddleware failed: {0}")]
25 VCRMiddlewareError(String),
26
27 #[error("URL error: {0}")]
29 UrlError(url::ParseError),
30
31 #[error("Invalid header: {0}")]
33 HeaderError(String),
34
35 #[error("Environment error: {0}")]
37 EnvError(&'static str),
38}