// Code generated by private/model/cli/gen-api/main.go. DO NOT EDIT.

package cloudhsm

type CloudHsmObjectState string

// Enum values for CloudHsmObjectState
const (
	CloudHsmObjectStateReady    CloudHsmObjectState = "READY"
	CloudHsmObjectStateUpdating CloudHsmObjectState = "UPDATING"
	CloudHsmObjectStateDegraded CloudHsmObjectState = "DEGRADED"
)

func (enum CloudHsmObjectState) MarshalValue() (string, error) {
	return string(enum), nil
}

func (enum CloudHsmObjectState) MarshalValueBuf(b []byte) ([]byte, error) {
	b = b[0:0]
	return append(b, enum...), nil
}

type HsmStatus string

// Enum values for HsmStatus
const (
	HsmStatusPending     HsmStatus = "PENDING"
	HsmStatusRunning     HsmStatus = "RUNNING"
	HsmStatusUpdating    HsmStatus = "UPDATING"
	HsmStatusSuspended   HsmStatus = "SUSPENDED"
	HsmStatusTerminating HsmStatus = "TERMINATING"
	HsmStatusTerminated  HsmStatus = "TERMINATED"
	HsmStatusDegraded    HsmStatus = "DEGRADED"
)

func (enum HsmStatus) MarshalValue() (string, error) {
	return string(enum), nil
}

func (enum HsmStatus) MarshalValueBuf(b []byte) ([]byte, error) {
	b = b[0:0]
	return append(b, enum...), nil
}

// Specifies the type of subscription for the HSM.
//
//    * PRODUCTION - The HSM is being used in a production environment.
//
//    * TRIAL - The HSM is being used in a product trial.
type SubscriptionType string

// Enum values for SubscriptionType
const (
	SubscriptionTypeProduction SubscriptionType = "PRODUCTION"
)

func (enum SubscriptionType) MarshalValue() (string, error) {
	return string(enum), nil
}

func (enum SubscriptionType) MarshalValueBuf(b []byte) ([]byte, error) {
	b = b[0:0]
	return append(b, enum...), nil
}

type Version string

// Enum values for Version
const (
	Version51 Version = "5.1"
	Version53 Version = "5.3"
)

func (enum Version) MarshalValue() (string, error) {
	return string(enum), nil
}

func (enum Version) MarshalValueBuf(b []byte) ([]byte, error) {
	b = b[0:0]
	return append(b, enum...), nil
}
