use crate::lc_entity_type::LcEntityType;
use crate::lc_single_action_config::LcSingleActionConfig;

/// A configuration required to run single action.
#[derive(Clone)]
pub struct LcActionConfig<T: LcEntityType> {
    pub data: Vec<LcSingleActionConfig<T>>,
}

// Single Action Cofing [] -> Action Config
impl<T: LcEntityType> From<Vec<LcSingleActionConfig<T>>> for LcActionConfig<T> {
    fn from(value: Vec<LcSingleActionConfig<T>>) -> Self {
        LcActionConfig { data: value }
    }
}

impl<T: LcEntityType> LcActionConfig<T> {
    pub fn dummy() -> LcActionConfig<T> {
        LcActionConfig { data: vec![] }
    }
}
