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

package types

type CertificateStatus string

// Enum values for CertificateStatus
const (
	CertificateStatusPendingValidation  CertificateStatus = "PENDING_VALIDATION"
	CertificateStatusIssued             CertificateStatus = "ISSUED"
	CertificateStatusInactive           CertificateStatus = "INACTIVE"
	CertificateStatusExpired            CertificateStatus = "EXPIRED"
	CertificateStatusValidationTimedOut CertificateStatus = "VALIDATION_TIMED_OUT"
	CertificateStatusRevoked            CertificateStatus = "REVOKED"
	CertificateStatusFailed             CertificateStatus = "FAILED"
)

// Values returns all known values for CertificateStatus. 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 (CertificateStatus) Values() []CertificateStatus {
	return []CertificateStatus{
		"PENDING_VALIDATION",
		"ISSUED",
		"INACTIVE",
		"EXPIRED",
		"VALIDATION_TIMED_OUT",
		"REVOKED",
		"FAILED",
	}
}

type CertificateTransparencyLoggingPreference string

// Enum values for CertificateTransparencyLoggingPreference
const (
	CertificateTransparencyLoggingPreferenceEnabled  CertificateTransparencyLoggingPreference = "ENABLED"
	CertificateTransparencyLoggingPreferenceDisabled CertificateTransparencyLoggingPreference = "DISABLED"
)

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

type CertificateType string

// Enum values for CertificateType
const (
	CertificateTypeImported     CertificateType = "IMPORTED"
	CertificateTypeAmazonIssued CertificateType = "AMAZON_ISSUED"
	CertificateTypePrivate      CertificateType = "PRIVATE"
)

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

type DomainStatus string

// Enum values for DomainStatus
const (
	DomainStatusPendingValidation DomainStatus = "PENDING_VALIDATION"
	DomainStatusSuccess           DomainStatus = "SUCCESS"
	DomainStatusFailed            DomainStatus = "FAILED"
)

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

type ExtendedKeyUsageName string

// Enum values for ExtendedKeyUsageName
const (
	ExtendedKeyUsageNameTlsWebServerAuthentication ExtendedKeyUsageName = "TLS_WEB_SERVER_AUTHENTICATION"
	ExtendedKeyUsageNameTlsWebClientAuthentication ExtendedKeyUsageName = "TLS_WEB_CLIENT_AUTHENTICATION"
	ExtendedKeyUsageNameCodeSigning                ExtendedKeyUsageName = "CODE_SIGNING"
	ExtendedKeyUsageNameEmailProtection            ExtendedKeyUsageName = "EMAIL_PROTECTION"
	ExtendedKeyUsageNameTimeStamping               ExtendedKeyUsageName = "TIME_STAMPING"
	ExtendedKeyUsageNameOcspSigning                ExtendedKeyUsageName = "OCSP_SIGNING"
	ExtendedKeyUsageNameIpsecEndSystem             ExtendedKeyUsageName = "IPSEC_END_SYSTEM"
	ExtendedKeyUsageNameIpsecTunnel                ExtendedKeyUsageName = "IPSEC_TUNNEL"
	ExtendedKeyUsageNameIpsecUser                  ExtendedKeyUsageName = "IPSEC_USER"
	ExtendedKeyUsageNameAny                        ExtendedKeyUsageName = "ANY"
	ExtendedKeyUsageNameNone                       ExtendedKeyUsageName = "NONE"
	ExtendedKeyUsageNameCustom                     ExtendedKeyUsageName = "CUSTOM"
)

// Values returns all known values for ExtendedKeyUsageName. 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 (ExtendedKeyUsageName) Values() []ExtendedKeyUsageName {
	return []ExtendedKeyUsageName{
		"TLS_WEB_SERVER_AUTHENTICATION",
		"TLS_WEB_CLIENT_AUTHENTICATION",
		"CODE_SIGNING",
		"EMAIL_PROTECTION",
		"TIME_STAMPING",
		"OCSP_SIGNING",
		"IPSEC_END_SYSTEM",
		"IPSEC_TUNNEL",
		"IPSEC_USER",
		"ANY",
		"NONE",
		"CUSTOM",
	}
}

type FailureReason string

// Enum values for FailureReason
const (
	FailureReasonNoAvailableContacts            FailureReason = "NO_AVAILABLE_CONTACTS"
	FailureReasonAdditionalVerificationRequired FailureReason = "ADDITIONAL_VERIFICATION_REQUIRED"
	FailureReasonDomainNotAllowed               FailureReason = "DOMAIN_NOT_ALLOWED"
	FailureReasonInvalidPublicDomain            FailureReason = "INVALID_PUBLIC_DOMAIN"
	FailureReasonDomainValidationDenied         FailureReason = "DOMAIN_VALIDATION_DENIED"
	FailureReasonCaaError                       FailureReason = "CAA_ERROR"
	FailureReasonPcaLimitExceeded               FailureReason = "PCA_LIMIT_EXCEEDED"
	FailureReasonPcaInvalidArn                  FailureReason = "PCA_INVALID_ARN"
	FailureReasonPcaInvalidState                FailureReason = "PCA_INVALID_STATE"
	FailureReasonPcaRequestFailed               FailureReason = "PCA_REQUEST_FAILED"
	FailureReasonPcaNameConstraintsValidation   FailureReason = "PCA_NAME_CONSTRAINTS_VALIDATION"
	FailureReasonPcaResourceNotFound            FailureReason = "PCA_RESOURCE_NOT_FOUND"
	FailureReasonPcaInvalidArgs                 FailureReason = "PCA_INVALID_ARGS"
	FailureReasonPcaInvalidDuration             FailureReason = "PCA_INVALID_DURATION"
	FailureReasonPcaAccessDenied                FailureReason = "PCA_ACCESS_DENIED"
	FailureReasonSlrNotFound                    FailureReason = "SLR_NOT_FOUND"
	FailureReasonOther                          FailureReason = "OTHER"
)

// Values returns all known values for FailureReason. 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 (FailureReason) Values() []FailureReason {
	return []FailureReason{
		"NO_AVAILABLE_CONTACTS",
		"ADDITIONAL_VERIFICATION_REQUIRED",
		"DOMAIN_NOT_ALLOWED",
		"INVALID_PUBLIC_DOMAIN",
		"DOMAIN_VALIDATION_DENIED",
		"CAA_ERROR",
		"PCA_LIMIT_EXCEEDED",
		"PCA_INVALID_ARN",
		"PCA_INVALID_STATE",
		"PCA_REQUEST_FAILED",
		"PCA_NAME_CONSTRAINTS_VALIDATION",
		"PCA_RESOURCE_NOT_FOUND",
		"PCA_INVALID_ARGS",
		"PCA_INVALID_DURATION",
		"PCA_ACCESS_DENIED",
		"SLR_NOT_FOUND",
		"OTHER",
	}
}

type KeyAlgorithm string

// Enum values for KeyAlgorithm
const (
	KeyAlgorithmRsa1024      KeyAlgorithm = "RSA_1024"
	KeyAlgorithmRsa2048      KeyAlgorithm = "RSA_2048"
	KeyAlgorithmRsa3072      KeyAlgorithm = "RSA_3072"
	KeyAlgorithmRsa4096      KeyAlgorithm = "RSA_4096"
	KeyAlgorithmEcPrime256v1 KeyAlgorithm = "EC_prime256v1"
	KeyAlgorithmEcSecp384r1  KeyAlgorithm = "EC_secp384r1"
	KeyAlgorithmEcSecp521r1  KeyAlgorithm = "EC_secp521r1"
)

// Values returns all known values for KeyAlgorithm. 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 (KeyAlgorithm) Values() []KeyAlgorithm {
	return []KeyAlgorithm{
		"RSA_1024",
		"RSA_2048",
		"RSA_3072",
		"RSA_4096",
		"EC_prime256v1",
		"EC_secp384r1",
		"EC_secp521r1",
	}
}

type KeyUsageName string

// Enum values for KeyUsageName
const (
	KeyUsageNameDigitalSignature   KeyUsageName = "DIGITAL_SIGNATURE"
	KeyUsageNameNonRepudation      KeyUsageName = "NON_REPUDIATION"
	KeyUsageNameKeyEncipherment    KeyUsageName = "KEY_ENCIPHERMENT"
	KeyUsageNameDataEncipherment   KeyUsageName = "DATA_ENCIPHERMENT"
	KeyUsageNameKeyAgreement       KeyUsageName = "KEY_AGREEMENT"
	KeyUsageNameCertificateSigning KeyUsageName = "CERTIFICATE_SIGNING"
	KeyUsageNameCrlSigning         KeyUsageName = "CRL_SIGNING"
	KeyUsageNameEnchiperOnly       KeyUsageName = "ENCIPHER_ONLY"
	KeyUsageNameDecipherOnly       KeyUsageName = "DECIPHER_ONLY"
	KeyUsageNameAny                KeyUsageName = "ANY"
	KeyUsageNameCustom             KeyUsageName = "CUSTOM"
)

// Values returns all known values for KeyUsageName. 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 (KeyUsageName) Values() []KeyUsageName {
	return []KeyUsageName{
		"DIGITAL_SIGNATURE",
		"NON_REPUDIATION",
		"KEY_ENCIPHERMENT",
		"DATA_ENCIPHERMENT",
		"KEY_AGREEMENT",
		"CERTIFICATE_SIGNING",
		"CRL_SIGNING",
		"ENCIPHER_ONLY",
		"DECIPHER_ONLY",
		"ANY",
		"CUSTOM",
	}
}

type RecordType string

// Enum values for RecordType
const (
	RecordTypeCname RecordType = "CNAME"
)

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

type RenewalEligibility string

// Enum values for RenewalEligibility
const (
	RenewalEligibilityEligible   RenewalEligibility = "ELIGIBLE"
	RenewalEligibilityIneligible RenewalEligibility = "INELIGIBLE"
)

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

type RenewalStatus string

// Enum values for RenewalStatus
const (
	RenewalStatusPendingAutoRenewal RenewalStatus = "PENDING_AUTO_RENEWAL"
	RenewalStatusPendingValidation  RenewalStatus = "PENDING_VALIDATION"
	RenewalStatusSuccess            RenewalStatus = "SUCCESS"
	RenewalStatusFailed             RenewalStatus = "FAILED"
)

// Values returns all known values for RenewalStatus. 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 (RenewalStatus) Values() []RenewalStatus {
	return []RenewalStatus{
		"PENDING_AUTO_RENEWAL",
		"PENDING_VALIDATION",
		"SUCCESS",
		"FAILED",
	}
}

type RevocationReason string

// Enum values for RevocationReason
const (
	RevocationReasonUnspecified          RevocationReason = "UNSPECIFIED"
	RevocationReasonKeyCompromise        RevocationReason = "KEY_COMPROMISE"
	RevocationReasonCaCompromise         RevocationReason = "CA_COMPROMISE"
	RevocationReasonAffiliationChanged   RevocationReason = "AFFILIATION_CHANGED"
	RevocationReasonSuperceded           RevocationReason = "SUPERCEDED"
	RevocationReasonCessationOfOperation RevocationReason = "CESSATION_OF_OPERATION"
	RevocationReasonCertificateHold      RevocationReason = "CERTIFICATE_HOLD"
	RevocationReasonRemoveFromCrl        RevocationReason = "REMOVE_FROM_CRL"
	RevocationReasonPrivilegeWithdrawn   RevocationReason = "PRIVILEGE_WITHDRAWN"
	RevocationReasonAACompromise         RevocationReason = "A_A_COMPROMISE"
)

// Values returns all known values for RevocationReason. 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 (RevocationReason) Values() []RevocationReason {
	return []RevocationReason{
		"UNSPECIFIED",
		"KEY_COMPROMISE",
		"CA_COMPROMISE",
		"AFFILIATION_CHANGED",
		"SUPERCEDED",
		"CESSATION_OF_OPERATION",
		"CERTIFICATE_HOLD",
		"REMOVE_FROM_CRL",
		"PRIVILEGE_WITHDRAWN",
		"A_A_COMPROMISE",
	}
}

type ValidationMethod string

// Enum values for ValidationMethod
const (
	ValidationMethodEmail ValidationMethod = "EMAIL"
	ValidationMethodDns   ValidationMethod = "DNS"
)

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