use pdk_core::classy::hl::HttpClientError;
#[allow(unused)]
use crate::ContractValidator;
#[non_exhaustive]
#[derive(thiserror::Error, Debug, Clone, PartialEq, Eq)]
pub enum AuthenticationError {
#[error("Client ID does not match.")]
InvalidClientId,
#[error("Client Secret does not match.")]
InvalidClientSecret,
#[error("Contract does not have client_secret configured; client credentials authentication is not supported for this contract.")]
ContractHasNoClientSecret,
#[error("Contracts are unavailable.")]
UnavailableContracts,
}
#[non_exhaustive]
#[derive(thiserror::Error, Debug, Clone, PartialEq, Eq)]
pub enum AuthorizationError {
#[error("Client ID does not match.")]
InvalidClientId,
#[error("Contracts are unavailable.")]
UnavailableContracts,
}
#[non_exhaustive]
#[derive(thiserror::Error, Debug)]
pub enum UpdateError {
#[error("Contracts upstream login problem.")]
InvalidLogin(HttpClientError),
#[error("Contracts upstream request problem.")]
InvalidRequest(HttpClientError),
}