use serde_derive::{Deserialize, Serialize};
use std::collections::HashMap;
use crate::models::task::*;
#[derive(Debug, Default, Clone, PartialEq, Serialize, Deserialize)]
pub struct ExtensionDefinition{
#[serde(rename = "extend")]
pub extend: String,
#[serde(rename = "when", skip_serializing_if = "Option::is_none")]
pub when: Option<String>,
#[serde(rename = "before", skip_serializing_if = "Option::is_none")]
pub before: Option<HashMap<String, TaskDefinition>>,
#[serde(rename = "after", skip_serializing_if = "Option::is_none")]
pub after: Option<HashMap<String, TaskDefinition>>
}