use schemars::JsonSchema;
use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema, PartialEq, Eq, Default)]
pub struct TemplateDetectProfile {
#[serde(default)]
pub initial_rules: Vec<TemplateProbeRule>,
#[serde(default)]
pub probes: Vec<TemplateProbe>,
}
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema, PartialEq, Eq)]
pub struct TemplateProbe {
pub command: String,
#[serde(default)]
pub rules: Vec<TemplateProbeRule>,
#[serde(default)]
pub error_patterns: Vec<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize, JsonSchema, PartialEq, Eq)]
pub struct TemplateProbeRule {
pub pattern: String,
pub weight: u32,
}