AssistantStreamEvent:
    | ThreadCreated
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunCreated
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunQueued
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunInProgress
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunRequiresAction
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunCompleted
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunIncomplete
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunFailed
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunCancelling
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunCancelled
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunExpired
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepCreated
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepInProgress
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepDelta
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepCompleted
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepFailed
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepCancelled
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadRunStepExpired
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadMessageCreated
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadMessageInProgress
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadMessageDelta
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadMessageCompleted
    | OpenAIClient.Beta.Assistants.AssistantStreamEvent.ThreadMessageIncomplete
    | ErrorEvent

Represents an event emitted when streaming a Run.

Each event in a server-sent events stream has an event and data property:

event: thread.created
data: {"id": "thread_123", "object": "thread", ...}

We emit events whenever a new object is created, transitions to a new state, or is being streamed in parts (deltas). For example, we emit thread.run.created when a new run is created, thread.run.completed when a run completes, and so on. When an Assistant chooses to create a message during a run, we emit a thread.message.created event, a thread.message.in_progress event, many thread.message.delta events, and finally a thread.message.completed event.

We may add additional events over time, so we recommend handling unknown events gracefully in your code. See the Assistants API quickstart to learn how to integrate the Assistants API with streaming.