// Code generated by smithy-go-codegen DO NOT EDIT.

package types

type AutomationStreamStatus string

// Enum values for AutomationStreamStatus
const (
	AutomationStreamStatusEnabled  AutomationStreamStatus = "ENABLED"
	AutomationStreamStatusDisabled AutomationStreamStatus = "DISABLED"
)

// Values returns all known values for AutomationStreamStatus. Note that this can
// be expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (AutomationStreamStatus) Values() []AutomationStreamStatus {
	return []AutomationStreamStatus{
		"ENABLED",
		"DISABLED",
	}
}

type BrowserSessionStatus string

// Enum values for BrowserSessionStatus
const (
	BrowserSessionStatusReady      BrowserSessionStatus = "READY"
	BrowserSessionStatusTerminated BrowserSessionStatus = "TERMINATED"
)

// Values returns all known values for BrowserSessionStatus. Note that this can be
// expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (BrowserSessionStatus) Values() []BrowserSessionStatus {
	return []BrowserSessionStatus{
		"READY",
		"TERMINATED",
	}
}

type CodeInterpreterSessionStatus string

// Enum values for CodeInterpreterSessionStatus
const (
	CodeInterpreterSessionStatusReady      CodeInterpreterSessionStatus = "READY"
	CodeInterpreterSessionStatusTerminated CodeInterpreterSessionStatus = "TERMINATED"
)

// Values returns all known values for CodeInterpreterSessionStatus. Note that
// this can be expanded in the future, and so it is only as up to date as the
// client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (CodeInterpreterSessionStatus) Values() []CodeInterpreterSessionStatus {
	return []CodeInterpreterSessionStatus{
		"READY",
		"TERMINATED",
	}
}

type ContentBlockType string

// Enum values for ContentBlockType
const (
	ContentBlockTypeText             ContentBlockType = "text"
	ContentBlockTypeImage            ContentBlockType = "image"
	ContentBlockTypeEmbeddedResource ContentBlockType = "resource"
	ContentBlockTypeResourceLink     ContentBlockType = "resource_link"
)

// Values returns all known values for ContentBlockType. Note that this can be
// expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (ContentBlockType) Values() []ContentBlockType {
	return []ContentBlockType{
		"text",
		"image",
		"resource",
		"resource_link",
	}
}

type Oauth2FlowType string

// Enum values for Oauth2FlowType
const (
	Oauth2FlowTypeUserFederation Oauth2FlowType = "USER_FEDERATION"
	Oauth2FlowTypeM2m            Oauth2FlowType = "M2M"
)

// Values returns all known values for Oauth2FlowType. Note that this can be
// expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (Oauth2FlowType) Values() []Oauth2FlowType {
	return []Oauth2FlowType{
		"USER_FEDERATION",
		"M2M",
	}
}

type ProgrammingLanguage string

// Enum values for ProgrammingLanguage
const (
	ProgrammingLanguagePython     ProgrammingLanguage = "python"
	ProgrammingLanguageJavascript ProgrammingLanguage = "javascript"
	ProgrammingLanguageTypescript ProgrammingLanguage = "typescript"
)

// Values returns all known values for ProgrammingLanguage. Note that this can be
// expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (ProgrammingLanguage) Values() []ProgrammingLanguage {
	return []ProgrammingLanguage{
		"python",
		"javascript",
		"typescript",
	}
}

type ResourceContentType string

// Enum values for ResourceContentType
const (
	ResourceContentTypeText ResourceContentType = "text"
	ResourceContentTypeBlob ResourceContentType = "blob"
)

// Values returns all known values for ResourceContentType. Note that this can be
// expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (ResourceContentType) Values() []ResourceContentType {
	return []ResourceContentType{
		"text",
		"blob",
	}
}

type Role string

// Enum values for Role
const (
	RoleAssistant Role = "ASSISTANT"
	RoleUser      Role = "USER"
	RoleTool      Role = "TOOL"
	RoleOther     Role = "OTHER"
)

// Values returns all known values for Role. Note that this can be expanded in the
// future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (Role) Values() []Role {
	return []Role{
		"ASSISTANT",
		"USER",
		"TOOL",
		"OTHER",
	}
}

type TaskStatus string

// Enum values for TaskStatus
const (
	TaskStatusSubmitted TaskStatus = "submitted"
	TaskStatusWorking   TaskStatus = "working"
	TaskStatusCompleted TaskStatus = "completed"
	TaskStatusCanceled  TaskStatus = "canceled"
	TaskStatusFailed    TaskStatus = "failed"
)

// Values returns all known values for TaskStatus. Note that this can be expanded
// in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (TaskStatus) Values() []TaskStatus {
	return []TaskStatus{
		"submitted",
		"working",
		"completed",
		"canceled",
		"failed",
	}
}

type ToolName string

// Enum values for ToolName
const (
	ToolNameExecuteCode           ToolName = "executeCode"
	ToolNameExecuteCommand        ToolName = "executeCommand"
	ToolNameReadFiles             ToolName = "readFiles"
	ToolNameListFiles             ToolName = "listFiles"
	ToolNameRemoveFiles           ToolName = "removeFiles"
	ToolNameWriteFiles            ToolName = "writeFiles"
	ToolNameStartCommandExecution ToolName = "startCommandExecution"
	ToolNameGetTask               ToolName = "getTask"
	ToolNameStopTask              ToolName = "stopTask"
)

// Values returns all known values for ToolName. Note that this can be expanded in
// the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (ToolName) Values() []ToolName {
	return []ToolName{
		"executeCode",
		"executeCommand",
		"readFiles",
		"listFiles",
		"removeFiles",
		"writeFiles",
		"startCommandExecution",
		"getTask",
		"stopTask",
	}
}

type ValidationExceptionReason string

// Enum values for ValidationExceptionReason
const (
	ValidationExceptionReasonCannotParse                          ValidationExceptionReason = "CannotParse"
	ValidationExceptionReasonFieldValidationFailed                ValidationExceptionReason = "FieldValidationFailed"
	ValidationExceptionReasonIdempotentParameterMismatchException ValidationExceptionReason = "IdempotentParameterMismatchException"
	ValidationExceptionReasonRootEventInOtherSession              ValidationExceptionReason = "EventInOtherSession"
	ValidationExceptionReasonResourceConflict                     ValidationExceptionReason = "ResourceConflict"
)

// Values returns all known values for ValidationExceptionReason. Note that this
// can be expanded in the future, and so it is only as up to date as the client.
//
// The ordering of this slice is not guaranteed to be stable across updates.
func (ValidationExceptionReason) Values() []ValidationExceptionReason {
	return []ValidationExceptionReason{
		"CannotParse",
		"FieldValidationFailed",
		"IdempotentParameterMismatchException",
		"EventInOtherSession",
		"ResourceConflict",
	}
}
