// Code generated by oagen. DO NOT EDIT.

#[allow(unused_imports)]
use super::*;
#[allow(unused_imports)]
use crate::enums::*;
use serde::{Deserialize, Serialize};
/// Gate when a conditional-block-style JSON condition matches.
/// The `condition` payload uses the same shape as workflow conditional blocks:
/// one condition group with `sub_conditions` and a `logical_operator`. Paths are
/// evaluated against a review condition root, for example `data.invoice_total`
/// or `likelihoods.invoice_total`.
#[derive(Debug, Clone, Serialize, Deserialize)]
pub struct ReviewJsonCondition {
    /// Defaults to `json_condition`.
    #[serde(skip_serializing_if = "Option::is_none", default)]
    pub kind: Option<String>,
    /// Conditional-block Condition payload.
    pub condition: std::collections::HashMap<String, serde_json::Value>,
}
impl ReviewJsonCondition {
    /// Construct a new `ReviewJsonCondition` with the required fields set.
    #[allow(deprecated)]
    pub fn new(condition: std::collections::HashMap<String, serde_json::Value>) -> Self {
        Self {
            kind: Default::default(),
            condition,
        }
    }
}
