use serde::{Deserialize, Serialize};
/// Breakdown of tokens used in a completion.
#[derive(Debug, Deserialize, Serialize, Clone, PartialEq, Default)]
pub struct CompletionTokensDetails {
pub accepted_prediction_tokens: Option<u32>,
/// Audio input tokens generated by the model.
pub audio_tokens: Option<u32>,
/// Tokens generated by the model for reasoning.
pub reasoning_tokens: Option<u32>,
/// When using Predicted Outputs, the number of tokens in the
/// prediction that did not appear in the completion. However, like
/// reasoning tokens, these tokens are still counted in the total
/// completion tokens for purposes of billing, output, and context
/// window limits.
pub rejected_prediction_tokens: Option<u32>,
}