mistral_openapi_client/models/
entries_inner.rs1use crate::models;
12use serde::{Deserialize, Serialize};
13
14#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
15pub struct EntriesInner {
16 #[serde(rename = "object", skip_serializing_if = "Option::is_none")]
17 pub object: Option<Object>,
18 #[serde(rename = "type", skip_serializing_if = "Option::is_none")]
19 pub r#type: Option<Type>,
20 #[serde(rename = "created_at", skip_serializing_if = "Option::is_none")]
21 pub created_at: Option<String>,
22 #[serde(rename = "completed_at", skip_serializing_if = "Option::is_none")]
23 pub completed_at: Option<String>,
24 #[serde(rename = "id", skip_serializing_if = "Option::is_none")]
25 pub id: Option<String>,
26 #[serde(rename = "role")]
27 pub role: Role,
28 #[serde(rename = "content")]
29 pub content: Box<models::Content1>,
30 #[serde(rename = "prefix", skip_serializing_if = "Option::is_none")]
31 pub prefix: Option<bool>,
32 #[serde(rename = "agent_id", skip_serializing_if = "Option::is_none")]
33 pub agent_id: Option<String>,
34 #[serde(rename = "model", skip_serializing_if = "Option::is_none")]
35 pub model: Option<String>,
36 #[serde(rename = "tool_call_id")]
37 pub tool_call_id: String,
38 #[serde(rename = "result")]
39 pub result: String,
40 #[serde(rename = "name")]
41 pub name: Box<models::Name>,
42 #[serde(rename = "arguments")]
43 pub arguments: String,
44 #[serde(rename = "confirmation_status", skip_serializing_if = "Option::is_none")]
45 pub confirmation_status: Option<ConfirmationStatus>,
46 #[serde(rename = "info", skip_serializing_if = "Option::is_none")]
47 pub info: Option<std::collections::HashMap<String, serde_json::Value>>,
48 #[serde(rename = "previous_agent_id")]
49 pub previous_agent_id: String,
50 #[serde(rename = "previous_agent_name")]
51 pub previous_agent_name: String,
52 #[serde(rename = "next_agent_id")]
53 pub next_agent_id: String,
54 #[serde(rename = "next_agent_name")]
55 pub next_agent_name: String,
56}
57
58impl EntriesInner {
59 pub fn new(role: Role, content: models::Content1, tool_call_id: String, result: String, name: models::Name, arguments: String, previous_agent_id: String, previous_agent_name: String, next_agent_id: String, next_agent_name: String) -> EntriesInner {
60 EntriesInner {
61 object: None,
62 r#type: None,
63 created_at: None,
64 completed_at: None,
65 id: None,
66 role,
67 content: Box::new(content),
68 prefix: None,
69 agent_id: None,
70 model: None,
71 tool_call_id,
72 result,
73 name: Box::new(name),
74 arguments,
75 confirmation_status: None,
76 info: None,
77 previous_agent_id,
78 previous_agent_name,
79 next_agent_id,
80 next_agent_name,
81 }
82 }
83}
84#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
86pub enum Object {
87 #[serde(rename = "entry")]
88 Entry,
89}
90
91impl Default for Object {
92 fn default() -> Object {
93 Self::Entry
94 }
95}
96#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
98pub enum Type {
99 #[serde(rename = "message.input")]
100 MessageInput,
101 #[serde(rename = "message.output")]
102 MessageOutput,
103 #[serde(rename = "function.result")]
104 FunctionResult,
105 #[serde(rename = "function.call")]
106 FunctionCall,
107 #[serde(rename = "tool.execution")]
108 ToolExecution,
109 #[serde(rename = "agent.handoff")]
110 AgentHandoff,
111}
112
113impl Default for Type {
114 fn default() -> Type {
115 Self::MessageInput
116 }
117}
118#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
120pub enum Role {
121 #[serde(rename = "assistant")]
122 Assistant,
123}
124
125impl Default for Role {
126 fn default() -> Role {
127 Self::Assistant
128 }
129}
130#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
132pub enum ConfirmationStatus {
133 #[serde(rename = "pending")]
134 Pending,
135 #[serde(rename = "allowed")]
136 Allowed,
137 #[serde(rename = "denied")]
138 Denied,
139}
140
141impl Default for ConfirmationStatus {
142 fn default() -> ConfirmationStatus {
143 Self::Pending
144 }
145}
146