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

package types

type ConsumerStatus string

// Enum values for ConsumerStatus
const (
	ConsumerStatusCreating ConsumerStatus = "CREATING"
	ConsumerStatusDeleting ConsumerStatus = "DELETING"
	ConsumerStatusActive   ConsumerStatus = "ACTIVE"
)

// Values returns all known values for ConsumerStatus. 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 (ConsumerStatus) Values() []ConsumerStatus {
	return []ConsumerStatus{
		"CREATING",
		"DELETING",
		"ACTIVE",
	}
}

type EncryptionType string

// Enum values for EncryptionType
const (
	EncryptionTypeNone EncryptionType = "NONE"
	EncryptionTypeKms  EncryptionType = "KMS"
)

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

type MetricsName string

// Enum values for MetricsName
const (
	MetricsNameIncomingBytes                      MetricsName = "IncomingBytes"
	MetricsNameIncomingRecords                    MetricsName = "IncomingRecords"
	MetricsNameOutgoingBytes                      MetricsName = "OutgoingBytes"
	MetricsNameOutgoingRecords                    MetricsName = "OutgoingRecords"
	MetricsNameWriteProvisionedThroughputExceeded MetricsName = "WriteProvisionedThroughputExceeded"
	MetricsNameReadProvisionedThroughputExceeded  MetricsName = "ReadProvisionedThroughputExceeded"
	MetricsNameIteratorAgeMilliseconds            MetricsName = "IteratorAgeMilliseconds"
	MetricsNameAll                                MetricsName = "ALL"
)

// Values returns all known values for MetricsName. 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 (MetricsName) Values() []MetricsName {
	return []MetricsName{
		"IncomingBytes",
		"IncomingRecords",
		"OutgoingBytes",
		"OutgoingRecords",
		"WriteProvisionedThroughputExceeded",
		"ReadProvisionedThroughputExceeded",
		"IteratorAgeMilliseconds",
		"ALL",
	}
}

type ScalingType string

// Enum values for ScalingType
const (
	ScalingTypeUniformScaling ScalingType = "UNIFORM_SCALING"
)

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

type ShardFilterType string

// Enum values for ShardFilterType
const (
	ShardFilterTypeAfterShardId    ShardFilterType = "AFTER_SHARD_ID"
	ShardFilterTypeAtTrimHorizon   ShardFilterType = "AT_TRIM_HORIZON"
	ShardFilterTypeFromTrimHorizon ShardFilterType = "FROM_TRIM_HORIZON"
	ShardFilterTypeAtLatest        ShardFilterType = "AT_LATEST"
	ShardFilterTypeAtTimestamp     ShardFilterType = "AT_TIMESTAMP"
	ShardFilterTypeFromTimestamp   ShardFilterType = "FROM_TIMESTAMP"
)

// Values returns all known values for ShardFilterType. 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 (ShardFilterType) Values() []ShardFilterType {
	return []ShardFilterType{
		"AFTER_SHARD_ID",
		"AT_TRIM_HORIZON",
		"FROM_TRIM_HORIZON",
		"AT_LATEST",
		"AT_TIMESTAMP",
		"FROM_TIMESTAMP",
	}
}

type ShardIteratorType string

// Enum values for ShardIteratorType
const (
	ShardIteratorTypeAtSequenceNumber    ShardIteratorType = "AT_SEQUENCE_NUMBER"
	ShardIteratorTypeAfterSequenceNumber ShardIteratorType = "AFTER_SEQUENCE_NUMBER"
	ShardIteratorTypeTrimHorizon         ShardIteratorType = "TRIM_HORIZON"
	ShardIteratorTypeLatest              ShardIteratorType = "LATEST"
	ShardIteratorTypeAtTimestamp         ShardIteratorType = "AT_TIMESTAMP"
)

// Values returns all known values for ShardIteratorType. 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 (ShardIteratorType) Values() []ShardIteratorType {
	return []ShardIteratorType{
		"AT_SEQUENCE_NUMBER",
		"AFTER_SEQUENCE_NUMBER",
		"TRIM_HORIZON",
		"LATEST",
		"AT_TIMESTAMP",
	}
}

type StreamMode string

// Enum values for StreamMode
const (
	StreamModeProvisioned StreamMode = "PROVISIONED"
	StreamModeOnDemand    StreamMode = "ON_DEMAND"
)

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

type StreamStatus string

// Enum values for StreamStatus
const (
	StreamStatusCreating StreamStatus = "CREATING"
	StreamStatusDeleting StreamStatus = "DELETING"
	StreamStatusActive   StreamStatus = "ACTIVE"
	StreamStatusUpdating StreamStatus = "UPDATING"
)

// Values returns all known values for StreamStatus. 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 (StreamStatus) Values() []StreamStatus {
	return []StreamStatus{
		"CREATING",
		"DELETING",
		"ACTIVE",
		"UPDATING",
	}
}
