//! Domain availability check status

use serde::{Deserialize, Serialize};

/// Status of a domain availability check
///
/// This enum represents the three possible outcomes when checking
/// if a domain is available for registration.
///
/// # Examples
///
/// ```
/// use lazydomain::types::CheckStatus;
///
/// let status = CheckStatus::Available;
/// assert_eq!(status, CheckStatus::Available);
/// ```
#[derive(Debug, Clone, PartialEq, Eq, Serialize, Deserialize)]
pub enum CheckStatus {
    /// Domain is available for registration
    Available,
    /// Domain is already registered
    Taken,
    /// Check failed or encountered an error
    Error,
}
