use abstract_core::{objects::validation::ValidationError, AbstractError};
use abstract_interface::AbstractInterfaceError;
use thiserror::Error;
#[derive(Error, Debug)]
#[allow(missing_docs)] pub enum AbstractClientError {
#[error("{0}")]
Abstract(#[from] AbstractError),
#[error("{0}")]
Interface(#[from] AbstractInterfaceError),
#[error("{0}")]
CwOrch(#[from] cw_orch::prelude::CwOrchError),
#[error("{0}")]
Semver(#[from] semver::Error),
#[error("{0}")]
ValidationError(#[from] ValidationError),
#[error("Module not installed")]
ModuleNotInstalled {},
#[error("Account is Renounced and does not have an owner.")]
RenouncedAccount {},
}