openai-client-base 0.16.0

Auto-generated Rust client for the OpenAI API
/*
 * OpenAI API
 *
 * The OpenAI REST API. Please see https://platform.openai.com/docs/api-reference for more details.
 *
 * The version of the OpenAPI document: 2.3.0
 *
 * Generated by: https://openapi-generator.tech
 */

use crate::models;
use serde::{Deserialize, Serialize};

/// SessionEvent : An event emitted by a Managed Agents session.
#[derive(Clone, Debug, PartialEq, Serialize, Deserialize)]
#[serde(untagged)]
pub enum SessionEvent {
    Error(Box<models::SessionEventError>),
    AgentSessionEnvironmentReady(Box<models::SessionEventAgentSessionEnvironmentReady>),
    AgentSessionEnvironmentSuspended(Box<models::SessionEventAgentSessionEnvironmentSuspended>),
    AgentSessionEnvironmentExpired(Box<models::SessionEventAgentSessionEnvironmentExpired>),
    AgentSessionEnvironmentReset(Box<models::SessionEventAgentSessionEnvironmentReset>),
    AgentOutputCommandExecutionOutputDelta(
        Box<models::SessionEventAgentOutputCommandExecutionOutputDelta>,
    ),
    AgentSessionCreated(Box<models::SessionEventAgentSessionCreated>),
    AgentSessionTurnCreated(Box<models::SessionEventAgentSessionTurnCreated>),
    AgentSessionTurnInProgress(Box<models::SessionEventAgentSessionTurnInProgress>),
    AgentSessionTurnCompleted(Box<models::SessionEventAgentSessionTurnCompleted>),
    AgentSessionTurnFailed(Box<models::SessionEventAgentSessionTurnFailed>),
    AgentSessionTurnCancelled(Box<models::SessionEventAgentSessionTurnCancelled>),
    AgentSessionTurnItemAdded(Box<models::SessionEventAgentSessionTurnItemAdded>),
    AgentSessionIdle(Box<models::SessionEventAgentSessionIdle>),
    AgentSessionInProgress(Box<models::SessionEventAgentSessionInProgress>),
    AgentSessionRequiresAction(Box<models::SessionEventAgentSessionRequiresAction>),
    AgentSessionFailed(Box<models::SessionEventAgentSessionFailed>),
    AgentSessionEnvironmentPending(Box<models::SessionEventAgentSessionEnvironmentPending>),
    AgentSessionEnvironmentConnected(Box<models::SessionEventAgentSessionEnvironmentConnected>),
    AgentSessionEnvironmentDisconnected(
        Box<models::SessionEventAgentSessionEnvironmentDisconnected>,
    ),
    AgentSessionEnvironmentFailed(Box<models::SessionEventAgentSessionEnvironmentFailed>),
    AgentSessionSubagentCreated(Box<models::SessionEventAgentSessionSubagentCreated>),
    AgentSessionSubagentActive(Box<models::SessionEventAgentSessionSubagentActive>),
    AgentSessionSubagentClosed(Box<models::SessionEventAgentSessionSubagentClosed>),
    AgentSessionTurnItemDone(Box<models::SessionEventAgentSessionTurnItemDone>),
    AgentSessionTurnContentPartAdded(Box<models::SessionEventAgentSessionTurnContentPartAdded>),
    AgentSessionTurnContentPartDone(Box<models::SessionEventAgentSessionTurnContentPartDone>),
    AgentSessionTurnOutputTextDelta(Box<models::SessionEventAgentSessionTurnOutputTextDelta>),
    AgentSessionTurnOutputTextDone(Box<models::SessionEventAgentSessionTurnOutputTextDone>),
    AgentSessionTurnReasoningSummaryPartAdded(
        Box<models::SessionEventAgentSessionTurnReasoningSummaryPartAdded>,
    ),
    AgentSessionTurnReasoningSummaryPartDone(
        Box<models::SessionEventAgentSessionTurnReasoningSummaryPartDone>,
    ),
    AgentSessionTurnReasoningSummaryTextDelta(
        Box<models::SessionEventAgentSessionTurnReasoningSummaryTextDelta>,
    ),
    AgentSessionTurnReasoningSummaryTextDone(
        Box<models::SessionEventAgentSessionTurnReasoningSummaryTextDone>,
    ),
}

/// Present as `incomplete` when summary generation was interrupted.
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum Status {
    Incomplete,
}

impl Default for Status {
    fn default() -> Status {
        Self::Incomplete
    }
}