use snarkvm_algorithms::errors::SNARKError;
use snarkvm_fields::ConstraintFieldError;
use snarkvm_parameters::errors::ParameterError;
use std::io::Error as IoError;
use thiserror::Error;
#[derive(Debug, Error)]
pub enum PoswError {
#[error("could not load PoSW parameters: {0}")]
Parameters(#[from] ParameterError),
#[error("could not verify PoSW")]
PoswVerificationFailed,
#[error(transparent)]
SnarkError(#[from] SNARKError),
#[error(transparent)]
IoError(#[from] IoError),
#[error(transparent)]
ConstraintFieldError(#[from] ConstraintFieldError),
}