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

package types

type ArtifactStatus string

// Enum values for ArtifactStatus
const (
	ArtifactStatusApproved   ArtifactStatus = "APPROVED"
	ArtifactStatusRejected   ArtifactStatus = "REJECTED"
	ArtifactStatusInProgress ArtifactStatus = "IN_PROGRESS"
)

// Values returns all known values for ArtifactStatus. 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 (ArtifactStatus) Values() []ArtifactStatus {
	return []ArtifactStatus{
		"APPROVED",
		"REJECTED",
		"IN_PROGRESS",
	}
}

type ChatItemType string

// Enum values for ChatItemType
const (
	ChatItemTypeTyping            ChatItemType = "TYPING"
	ChatItemTypeParticipantJoined ChatItemType = "PARTICIPANT_JOINED"
	ChatItemTypeParticipantLeft   ChatItemType = "PARTICIPANT_LEFT"
	ChatItemTypeChatEnded         ChatItemType = "CHAT_ENDED"
	ChatItemTypeTransferSucceeded ChatItemType = "TRANSFER_SUCCEEDED"
	ChatItemTypeTransferFailed    ChatItemType = "TRANSFER_FAILED"
	ChatItemTypeMessage           ChatItemType = "MESSAGE"
	ChatItemTypeEvent             ChatItemType = "EVENT"
	ChatItemTypeAttachment        ChatItemType = "ATTACHMENT"
	ChatItemTypeConnectionAck     ChatItemType = "CONNECTION_ACK"
)

// Values returns all known values for ChatItemType. 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 (ChatItemType) Values() []ChatItemType {
	return []ChatItemType{
		"TYPING",
		"PARTICIPANT_JOINED",
		"PARTICIPANT_LEFT",
		"CHAT_ENDED",
		"TRANSFER_SUCCEEDED",
		"TRANSFER_FAILED",
		"MESSAGE",
		"EVENT",
		"ATTACHMENT",
		"CONNECTION_ACK",
	}
}

type ConnectionType string

// Enum values for ConnectionType
const (
	ConnectionTypeWebsocket             ConnectionType = "WEBSOCKET"
	ConnectionTypeConnectionCredentials ConnectionType = "CONNECTION_CREDENTIALS"
)

// Values returns all known values for ConnectionType. 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 (ConnectionType) Values() []ConnectionType {
	return []ConnectionType{
		"WEBSOCKET",
		"CONNECTION_CREDENTIALS",
	}
}

type ParticipantRole string

// Enum values for ParticipantRole
const (
	ParticipantRoleAgent    ParticipantRole = "AGENT"
	ParticipantRoleCustomer ParticipantRole = "CUSTOMER"
	ParticipantRoleSystem   ParticipantRole = "SYSTEM"
)

// Values returns all known values for ParticipantRole. 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 (ParticipantRole) Values() []ParticipantRole {
	return []ParticipantRole{
		"AGENT",
		"CUSTOMER",
		"SYSTEM",
	}
}

type ScanDirection string

// Enum values for ScanDirection
const (
	ScanDirectionForward  ScanDirection = "FORWARD"
	ScanDirectionBackward ScanDirection = "BACKWARD"
)

// Values returns all known values for ScanDirection. 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 (ScanDirection) Values() []ScanDirection {
	return []ScanDirection{
		"FORWARD",
		"BACKWARD",
	}
}

type SortKey string

// Enum values for SortKey
const (
	SortKeyDescending SortKey = "DESCENDING"
	SortKeyAscending  SortKey = "ASCENDING"
)

// Values returns all known values for SortKey. 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 (SortKey) Values() []SortKey {
	return []SortKey{
		"DESCENDING",
		"ASCENDING",
	}
}
