# coding=utf-8
# *** WARNING: this file was generated by pulumigen. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

from enum import Enum

__all__ = [
    'MaintenancePropertiesState',
    'MaxmemoryPolicy',
    'OwnerType',
    'Plan',
    'RedisDetailMaintenancePropertiesState',
    'RedisDetailPlan',
    'RedisDetailRegion',
    'RedisDetailStatus',
    'RedisPlan',
    'RedisRegion',
    'RedisStatus',
    'Region',
    'Status',
]


class MaintenancePropertiesState(str, Enum):
    SCHEDULED = "scheduled"
    IN_PROGRESS = "in_progress"
    USER_FIX_REQUIRED = "user_fix_required"
    CANCELLED = "cancelled"
    SUCCEEDED = "succeeded"
    FAILED = "failed"


class MaxmemoryPolicy(str, Enum):
    """
    The eviction policy for the Redis instance
    """
    NOEVICTION = "noeviction"
    ALLKEYS_LFU = "allkeys_lfu"
    ALLKEYS_LRU = "allkeys_lru"
    ALLKEYS_RANDOM = "allkeys_random"
    VOLATILE_LFU = "volatile_lfu"
    VOLATILE_LRU = "volatile_lru"
    VOLATILE_RANDOM = "volatile_random"
    VOLATILE_TTL = "volatile_ttl"


class OwnerType(str, Enum):
    USER = "user"
    TEAM = "team"


class Plan(str, Enum):
    FREE = "free"
    STARTER = "starter"
    STANDARD = "standard"
    PRO = "pro"
    PRO_PLUS = "pro_plus"
    CUSTOM = "custom"


class RedisDetailMaintenancePropertiesState(str, Enum):
    SCHEDULED = "scheduled"
    IN_PROGRESS = "in_progress"
    USER_FIX_REQUIRED = "user_fix_required"
    CANCELLED = "cancelled"
    SUCCEEDED = "succeeded"
    FAILED = "failed"


class RedisDetailPlan(str, Enum):
    FREE = "free"
    STARTER = "starter"
    STANDARD = "standard"
    PRO = "pro"
    PRO_PLUS = "pro_plus"
    CUSTOM = "custom"


class RedisDetailRegion(str, Enum):
    """
    Defaults to "oregon"
    """
    FRANKFURT = "frankfurt"
    OREGON = "oregon"
    OHIO = "ohio"
    SINGAPORE = "singapore"
    VIRGINIA = "virginia"


class RedisDetailStatus(str, Enum):
    CREATING = "creating"
    AVAILABLE = "available"
    UNAVAILABLE = "unavailable"
    CONFIG_RESTART = "config_restart"
    SUSPENDED = "suspended"
    MAINTENANCE_SCHEDULED = "maintenance_scheduled"
    MAINTENANCE_IN_PROGRESS = "maintenance_in_progress"
    RECOVERY_FAILED = "recovery_failed"
    RECOVERY_IN_PROGRESS = "recovery_in_progress"
    UNKNOWN = "unknown"
    UPDATING_INSTANCE = "updating_instance"


class RedisPlan(str, Enum):
    FREE = "free"
    STARTER = "starter"
    STANDARD = "standard"
    PRO = "pro"
    PRO_PLUS = "pro_plus"
    CUSTOM = "custom"


class RedisRegion(str, Enum):
    """
    Defaults to "oregon"
    """
    FRANKFURT = "frankfurt"
    OREGON = "oregon"
    OHIO = "ohio"
    SINGAPORE = "singapore"
    VIRGINIA = "virginia"


class RedisStatus(str, Enum):
    CREATING = "creating"
    AVAILABLE = "available"
    UNAVAILABLE = "unavailable"
    CONFIG_RESTART = "config_restart"
    SUSPENDED = "suspended"
    MAINTENANCE_SCHEDULED = "maintenance_scheduled"
    MAINTENANCE_IN_PROGRESS = "maintenance_in_progress"
    RECOVERY_FAILED = "recovery_failed"
    RECOVERY_IN_PROGRESS = "recovery_in_progress"
    UNKNOWN = "unknown"
    UPDATING_INSTANCE = "updating_instance"


class Region(str, Enum):
    """
    Defaults to "oregon"
    """
    FRANKFURT = "frankfurt"
    OREGON = "oregon"
    OHIO = "ohio"
    SINGAPORE = "singapore"
    VIRGINIA = "virginia"


class Status(str, Enum):
    CREATING = "creating"
    AVAILABLE = "available"
    UNAVAILABLE = "unavailable"
    CONFIG_RESTART = "config_restart"
    SUSPENDED = "suspended"
    MAINTENANCE_SCHEDULED = "maintenance_scheduled"
    MAINTENANCE_IN_PROGRESS = "maintenance_in_progress"
    RECOVERY_FAILED = "recovery_failed"
    RECOVERY_IN_PROGRESS = "recovery_in_progress"
    UNKNOWN = "unknown"
    UPDATING_INSTANCE = "updating_instance"
