vapi_client/models/
vapi_cost.rs1use serde::{Deserialize, Serialize};
12use utoipa::OpenApi;
13
14
15use crate::models;
16
17#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize, OpenApi)]
18pub struct VapiCost {
19 #[serde(rename = "type")]
21 pub r#type: Type,
22 #[serde(rename = "subType")]
24 pub sub_type: SubType,
25 #[serde(rename = "minutes")]
27 pub minutes: f64,
28 #[serde(rename = "cost")]
30 pub cost: f64,
31}
32
33impl VapiCost {
34 pub fn new(r#type: Type, sub_type: SubType, minutes: f64, cost: f64) -> VapiCost {
35 VapiCost {
36 r#type,
37 sub_type,
38 minutes,
39 cost,
40 }
41 }
42}
43#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
45pub enum Type {
46 #[serde(rename = "vapi")]
47 Vapi,
48}
49
50impl Default for Type {
51 fn default() -> Type {
52 Self::Vapi
53 }
54}
55#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize, OpenApi)]
57pub enum SubType {
58 #[serde(rename = "normal")]
59 Normal,
60 #[serde(rename = "overage")]
61 Overage,
62}
63
64impl Default for SubType {
65 fn default() -> SubType {
66 Self::Normal
67 }
68}