vapi_client/models/
knowledge_base_cost.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct KnowledgeBaseCost {
16 #[serde(rename = "type")]
18 pub r#type: TypeTrue,
19 #[serde(rename = "model")]
21 pub model: serde_json::Value,
22 #[serde(rename = "promptTokens")]
24 pub prompt_tokens: f64,
25 #[serde(rename = "completionTokens")]
27 pub completion_tokens: f64,
28 #[serde(rename = "cost")]
30 pub cost: f64,
31}
32
33impl KnowledgeBaseCost {
34 pub fn new(
35 r#type: TypeTrue,
36 model: serde_json::Value,
37 prompt_tokens: f64,
38 completion_tokens: f64,
39 cost: f64,
40 ) -> KnowledgeBaseCost {
41 KnowledgeBaseCost {
42 r#type,
43 model,
44 prompt_tokens,
45 completion_tokens,
46 cost,
47 }
48 }
49}
50#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
52pub enum TypeTrue {
53 #[serde(rename = "knowledge-base")]
54 KnowledgeBase,
55}
56
57impl Default for TypeTrue {
58 fn default() -> TypeTrue {
59 Self::KnowledgeBase
60 }
61}