use std::collections::HashMap;
use serde::{Serialize, Deserialize};
use crate::types::*;
use crate::util::*;
#[derive(Debug, Clone, Default, PartialEq, Eq, Serialize, Deserialize, Suitability)]
#[serde(deny_unknown_fields)]
pub struct Commons {
#[serde(default, skip_serializing_if = "is_default")]
pub conditions: HashMap<String, Condition>,
#[serde(default, skip_serializing_if = "is_default")]
pub actions: HashMap<String, Action>,
#[serde(default, skip_serializing_if = "is_default")]
pub string_sources: HashMap<String, StringSource>,
#[serde(default, skip_serializing_if = "is_default")]
pub string_modifications: HashMap<String, StringModification>,
#[serde(default, skip_serializing_if = "is_default")]
pub string_matchers: HashMap<String, StringMatcher>
}