use crate::AnalysisLayerStatus;
use crate::types::orders::recommendation::DecisionType;
use serde::{Deserialize, Serialize};

#[derive(Debug, Clone, PartialEq, Serialize, Deserialize)]
pub struct TriggeredRules {
    pub priority: i64,
    pub name: String,
    pub analysis_type: AnalysisLayerStatus,
    pub decision: DecisionType,
}

impl TriggeredRules {
    pub fn new(
        priority: i64,
        name: String,
        analysis_type: AnalysisLayerStatus,
        decision: DecisionType,
    ) -> Self {
        Self {
            priority,
            name,
            analysis_type,
            decision,
        }
    }
}
