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

package fsx

// The type of error relating to Microsoft Active Directory. NOT_FOUND means
// that no directory was found by specifying the given directory. INCOMPATIBLE_MODE
// means that the directory specified is not a Microsoft AD directory. WRONG_VPC
// means that the specified directory isn't accessible from the specified VPC.
// WRONG_STAGE means that the specified directory isn't currently in the ACTIVE
// state.
type ActiveDirectoryErrorType string

// Enum values for ActiveDirectoryErrorType
const (
	ActiveDirectoryErrorTypeDomainNotFound         ActiveDirectoryErrorType = "DOMAIN_NOT_FOUND"
	ActiveDirectoryErrorTypeIncompatibleDomainMode ActiveDirectoryErrorType = "INCOMPATIBLE_DOMAIN_MODE"
	ActiveDirectoryErrorTypeWrongVpc               ActiveDirectoryErrorType = "WRONG_VPC"
	ActiveDirectoryErrorTypeInvalidDomainStage     ActiveDirectoryErrorType = "INVALID_DOMAIN_STAGE"
)

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

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

// The lifecycle status of the backup.
type BackupLifecycle string

// Enum values for BackupLifecycle
const (
	BackupLifecycleAvailable BackupLifecycle = "AVAILABLE"
	BackupLifecycleCreating  BackupLifecycle = "CREATING"
	BackupLifecycleDeleted   BackupLifecycle = "DELETED"
	BackupLifecycleFailed    BackupLifecycle = "FAILED"
)

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

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

// The type of the backup.
type BackupType string

// Enum values for BackupType
const (
	BackupTypeAutomatic     BackupType = "AUTOMATIC"
	BackupTypeUserInitiated BackupType = "USER_INITIATED"
)

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

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

// The lifecycle status of the file system.
type FileSystemLifecycle string

// Enum values for FileSystemLifecycle
const (
	FileSystemLifecycleAvailable     FileSystemLifecycle = "AVAILABLE"
	FileSystemLifecycleCreating      FileSystemLifecycle = "CREATING"
	FileSystemLifecycleFailed        FileSystemLifecycle = "FAILED"
	FileSystemLifecycleDeleting      FileSystemLifecycle = "DELETING"
	FileSystemLifecycleMisconfigured FileSystemLifecycle = "MISCONFIGURED"
	FileSystemLifecycleUpdating      FileSystemLifecycle = "UPDATING"
)

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

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

// An enumeration specifying the currently ongoing maintenance operation.
type FileSystemMaintenanceOperation string

// Enum values for FileSystemMaintenanceOperation
const (
	FileSystemMaintenanceOperationPatching  FileSystemMaintenanceOperation = "PATCHING"
	FileSystemMaintenanceOperationBackingUp FileSystemMaintenanceOperation = "BACKING_UP"
)

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

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

// The type of file system.
type FileSystemType string

// Enum values for FileSystemType
const (
	FileSystemTypeWindows FileSystemType = "WINDOWS"
	FileSystemTypeLustre  FileSystemType = "LUSTRE"
)

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

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

// The name for a filter.
type FilterName string

// Enum values for FilterName
const (
	FilterNameFileSystemId FilterName = "file-system-id"
	FilterNameBackupType   FilterName = "backup-type"
)

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

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

// The types of limits on your service utilization. Limits include file system
// count, total throughput capacity, total storage, and total user-initiated
// backups. These limits apply for a specific account in a specific AWS Region.
// You can increase some of them by contacting AWS Support.
type ServiceLimit string

// Enum values for ServiceLimit
const (
	ServiceLimitFileSystemCount           ServiceLimit = "FILE_SYSTEM_COUNT"
	ServiceLimitTotalThroughputCapacity   ServiceLimit = "TOTAL_THROUGHPUT_CAPACITY"
	ServiceLimitTotalStorage              ServiceLimit = "TOTAL_STORAGE"
	ServiceLimitTotalUserInitiatedBackups ServiceLimit = "TOTAL_USER_INITIATED_BACKUPS"
)

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

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

type WindowsDeploymentType string

// Enum values for WindowsDeploymentType
const (
	WindowsDeploymentTypeMultiAz1  WindowsDeploymentType = "MULTI_AZ_1"
	WindowsDeploymentTypeSingleAz1 WindowsDeploymentType = "SINGLE_AZ_1"
)

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

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