/**
 * Backwards compatibility exports for const discriminator fields.
 *
 * These were previously generated by Speakeasy for enum fields but are
 * no longer generated for const fields. We manually export them here
 * to avoid breaking changes for consumers.
 */

// Chunk types (these changed from enum to const)
export const TextChunkType = { Text: "text" } as const;
export const ThinkChunkType = { Thinking: "thinking" } as const;
export const ImageURLChunkType = { ImageUrl: "image_url" } as const;
export const DocumentURLChunkType = { DocumentUrl: "document_url" } as const;
export const AudioChunkType = { InputAudio: "input_audio" } as const;
export const ReferenceChunkType = { Reference: "reference" } as const;
export const ToolFileChunkType = { ToolFile: "tool_file" } as const;
export const ToolReferenceChunkType = { ToolReference: "tool_reference" } as const;
export const FileURLChunkType = { FileUrl: "file_url" } as const;
export const TranscriptionSegmentChunkType = { TranscriptionSegment: "transcription_segment" } as const;

// Message roles (these changed from enum to const)
export const AssistantMessageRole = { Assistant: "assistant" } as const;
export const SystemMessageRole = { System: "system" } as const;
export const UserMessageRole = { User: "user" } as const;
export const ToolMessageRole = { Tool: "tool" } as const;

// Entry types (these changed from enum to const)
export const MessageOutputEntryType = { MessageOutput: "message.output" } as const;
export const MessageInputEntryType = { MessageInput: "message.input" } as const;
export const FunctionResultEntryType = { FunctionResult: "function.result" } as const;
export const FunctionCallEntryType = { FunctionCall: "function.call" } as const;
export const ToolExecutionEntryType = { ToolExecution: "tool.execution" } as const;
export const AgentHandoffEntryType = { AgentHandoff: "agent.handoff" } as const;
export const MessageOutputEntryObject = { MessageOutput: "message.output" } as const;
export const MessageInputEntryObject = { MessageInput: "message.input" } as const;
export const FunctionResultEntryObject = { FunctionResult: "function.result" } as const;
export const FunctionCallEntryObject = { FunctionCall: "function.call" } as const;
export const ToolExecutionEntryObject = { ToolExecution: "tool.execution" } as const;
export const AgentHandoffEntryObject = { AgentHandoff: "agent.handoff" } as const;

// Event types (these changed from enum to const)
export const MessageOutputEventType = { MessageOutputDelta: "message.output.delta" } as const;
export const MessageOutputEventRole = { Assistant: "assistant" } as const;
export const FunctionCallEventType = { FunctionCallDelta: "function.call.delta" } as const;
export const ConversationEventType = { ConversationEvent: "conversation.event" } as const;
export const ResponseStartedEventType = { ResponseStarted: "response.started" } as const;
export const ResponseDoneEventType = { ResponseDone: "response.done" } as const;
export const ResponseErrorEventType = { ResponseError: "response.error" } as const;
export const ToolExecutionStartedEventType = { ToolExecutionStarted: "tool.execution.started" } as const;
export const ToolExecutionDeltaEventType = { ToolExecutionDelta: "tool.execution.delta" } as const;
export const ToolExecutionDoneEventType = { ToolExecutionDone: "tool.execution.done" } as const;
export const AgentHandoffStartedEventType = { AgentHandoffStarted: "agent.handoff.started" } as const;
export const AgentHandoffDoneEventType = { AgentHandoffDone: "agent.handoff.done" } as const;
export const StepStartedEventType = { StepStarted: "step.started" } as const;
export const StepCompletedEventType = { StepCompleted: "step.completed" } as const;
export const StepErrorEventType = { StepError: "step.error" } as const;
export const TaskStartedEventType = { TaskStarted: "task.started" } as const;
export const TaskCompletedEventType = { TaskCompleted: "task.completed" } as const;
export const TaskCanceledEventType = { TaskCanceled: "task.canceled" } as const;
export const TaskErrorEventType = { TaskError: "task.error" } as const;
export const ReportStartedEventType = { ReportStarted: "report.started" } as const;
export const ReportCompletedEventType = { ReportCompleted: "report.completed" } as const;
export const ReportErrorEventType = { ReportError: "report.error" } as const;

// Object types (these changed from enum to const)
export const AgentObject = { Agent: "agent" } as const;
export const AgentConversationObject = { AgentConversation: "agent.conversation" } as const;
export const ModelConversationObject = { ModelConversation: "model.conversation" } as const;
export const ConversationHistoryObject = { ConversationHistory: "conversation.history" } as const;
export const ConversationMessagesObject = { ConversationMessages: "conversation.messages" } as const;
export const ConversationResponseObject = { ConversationResponse: "conversation.response" } as const;

// Transcription stream types (these changed from enum to const)
export const TranscriptionStreamDoneType = { TranscriptionDone: "transcription.done" } as const;
export const TranscriptionStreamLanguageType = { TranscriptionLanguage: "transcription.language" } as const;
export const TranscriptionStreamSegmentDeltaType = { TranscriptionSegment: "transcription.segment" } as const;
export const TranscriptionStreamTextDeltaType = { TranscriptionTextDelta: "transcription.text.delta" } as const;

// Jobs types (these changed from enum to const)
export const ClassifierJobOutObject = { Job: "job" } as const;
export const ClassifierJobOutJobType = { Classifier: "classifier" } as const;
export const CompletionJobOutObject = { Job: "job" } as const;
export const CompletionJobOutJobType = { Completion: "completion" } as const;
export const ClassifierDetailedJobOutObject = { Job: "job" } as const;
export const ClassifierDetailedJobOutJobType = { Classifier: "classifier" } as const;
export const CompletionDetailedJobOutObject = { Job: "job" } as const;
export const CompletionDetailedJobOutJobType = { Completion: "completion" } as const;
export const JobsOutObject = { List: "list" } as const;
export const BatchJobOutObject = { Batch: "batch" } as const;
export const BatchJobsOutObject = { List: "list" } as const;

// Repository and integration types (these changed from enum to const)
export const GithubRepositoryOutType = { Github: "github" } as const;
export const GithubRepositoryInType = { Github: "github" } as const;
export const WandbIntegrationOutType = { Wandb: "wandb" } as const;
export const WandbIntegrationType = { Wandb: "wandb" } as const;

// FT model types (these changed from enum to const)
export const LegacyJobMetadataOutObject = { JobMetadata: "job.metadata" } as const;
export const ClassifierFTModelOutObject = { Model: "model" } as const;
export const ClassifierFTModelOutModelType = { Classifier: "classifier" } as const;
export const CompletionFTModelOutObject = { Model: "model" } as const;
export const ModelType = { Completion: "completion" } as const;
export const ArchiveFTModelOutObject = { Model: "model" } as const;
export const UnarchiveFTModelOutObject = { Model: "model" } as const;

// Tool types (single-value consts, only those not already generated)
export const FunctionToolType = { Function: "function" } as const;
