vapi_client/models/
condition.rs

1/*
2 * Vapi API
3 *
4 * API for building voice assistants
5 *
6 * The version of the OpenAPI document: 1.0
7 *
8 * Generated by: https://openapi-generator.tech
9 */
10
11use serde::{Deserialize, Serialize};
12use utoipa::ToSchema;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, ToSchema)]
18pub struct Condition {
19    /// This is the operator you want to use to compare the parameter and value.
20    #[serde(rename = "operator")]
21    pub operator: Operator,
22    /// This is the name of the parameter that you want to check.
23    #[serde(rename = "param")]
24    pub param: String,
25    /// This is the value you want to compare against the parameter.
26    #[serde(rename = "value")]
27    pub value: serde_json::Value,
28}
29
30impl Condition {
31    pub fn new(operator: Operator, param: String, value: serde_json::Value) -> Condition {
32        Condition {
33            operator,
34            param,
35            value,
36        }
37    }
38}
39/// This is the operator you want to use to compare the parameter and value.
40#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, ToSchema)]
41pub enum Operator {
42    #[serde(rename = "eq")]
43    Eq,
44    #[serde(rename = "neq")]
45    Neq,
46    #[serde(rename = "gt")]
47    Gt,
48    #[serde(rename = "gte")]
49    Gte,
50    #[serde(rename = "lt")]
51    Lt,
52    #[serde(rename = "lte")]
53    Lte,
54}
55
56impl Default for Operator {
57    fn default() -> Operator {
58        Self::Eq
59    }
60}