/*
* Mistral AI API
*
* Our Chat Completion and Embeddings APIs specification. Create your account on [La Plateforme](https://console.mistral.ai) to get access and read the [docs](https://docs.mistral.ai) to learn how to use it.
*
* The version of the OpenAPI document: 1.0.0
*
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct ChatCompletionEvent {
#[serde(rename = "event_id")]
pub event_id: String,
#[serde(rename = "correlation_id")]
pub correlation_id: String,
#[serde(rename = "created_at")]
pub created_at: String,
#[serde(rename = "extra_fields")]
pub extra_fields: std::collections::HashMap<String, models::ExtraFieldsValue>,
#[serde(rename = "nb_input_tokens")]
pub nb_input_tokens: i32,
#[serde(rename = "nb_output_tokens")]
pub nb_output_tokens: i32,
#[serde(rename = "enabled_tools")]
pub enabled_tools: Vec<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "request_messages")]
pub request_messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "response_messages")]
pub response_messages: Vec<std::collections::HashMap<String, serde_json::Value>>,
#[serde(rename = "nb_messages")]
pub nb_messages: i32,
#[serde(rename = "chat_transcription_events")]
pub chat_transcription_events: Vec<models::ChatTranscriptionEvent>,
}
impl ChatCompletionEvent {
pub fn new(event_id: String, correlation_id: String, created_at: String, extra_fields: std::collections::HashMap<String, models::ExtraFieldsValue>, nb_input_tokens: i32, nb_output_tokens: i32, enabled_tools: Vec<std::collections::HashMap<String, serde_json::Value>>, request_messages: Vec<std::collections::HashMap<String, serde_json::Value>>, response_messages: Vec<std::collections::HashMap<String, serde_json::Value>>, nb_messages: i32, chat_transcription_events: Vec<models::ChatTranscriptionEvent>) -> ChatCompletionEvent {
ChatCompletionEvent {
event_id,
correlation_id,
created_at,
extra_fields,
nb_input_tokens,
nb_output_tokens,
enabled_tools,
request_messages,
response_messages,
nb_messages,
chat_transcription_events,
}
}
}