# 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__ = [
    'GetPostgresRecoveryInfoPropertiesRecoveryStatus',
    'OwnerType',
    'Plan',
    'PostgresDetailPlan',
    'PostgresDetailRegion',
    'PostgresDetailRole',
    'PostgresDetailStatus',
    'PostgresDetailSuspended',
    'PostgresDetailSuspendersItem',
    'PostgresDetailVersion',
    'PostgresPlan',
    'PostgresRegion',
    'PostgresRole',
    'PostgresStatus',
    'PostgresSuspended',
    'PostgresSuspendersItem',
    'PostgresVersion',
    'RecoverPostgresSuspended',
    'RedisDetailpropertiesmaintenanceState',
    'Region',
    'Role',
    'Status',
    'Suspended',
    'SuspendersItem',
    'Version',
]


class GetPostgresRecoveryInfoPropertiesRecoveryStatus(str, Enum):
    """
    Availability of point-in-time recovery.
    """
    AVAILABLE = "AVAILABLE"
    BACKUP_NOT_READY = "BACKUP_NOT_READY"
    NOT_AVAILABLE = "NOT_AVAILABLE"


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"
    BASIC256MB = "basic_256mb"
    BASIC1GB = "basic_1gb"
    BASIC4GB = "basic_4gb"
    PRO4GB = "pro_4gb"
    PRO8GB = "pro_8gb"
    PRO16GB = "pro_16gb"
    PRO32GB = "pro_32gb"
    PRO64GB = "pro_64gb"
    PRO128GB = "pro_128gb"
    PRO192GB = "pro_192gb"
    PRO256GB = "pro_256gb"
    PRO384GB = "pro_384gb"
    PRO512GB = "pro_512gb"
    ACCELERATED16GB = "accelerated_16gb"
    ACCELERATED32GB = "accelerated_32gb"
    ACCELERATED64GB = "accelerated_64gb"
    ACCELERATED128GB = "accelerated_128gb"
    ACCELERATED256GB = "accelerated_256gb"
    ACCELERATED384GB = "accelerated_384gb"
    ACCELERATED512GB = "accelerated_512gb"
    ACCELERATED768GB = "accelerated_768gb"
    ACCELERATED1024GB = "accelerated_1024gb"


class PostgresDetailPlan(str, Enum):
    FREE = "free"
    STARTER = "starter"
    STANDARD = "standard"
    PRO = "pro"
    PRO_PLUS = "pro_plus"
    CUSTOM = "custom"
    BASIC256MB = "basic_256mb"
    BASIC1GB = "basic_1gb"
    BASIC4GB = "basic_4gb"
    PRO4GB = "pro_4gb"
    PRO8GB = "pro_8gb"
    PRO16GB = "pro_16gb"
    PRO32GB = "pro_32gb"
    PRO64GB = "pro_64gb"
    PRO128GB = "pro_128gb"
    PRO192GB = "pro_192gb"
    PRO256GB = "pro_256gb"
    PRO384GB = "pro_384gb"
    PRO512GB = "pro_512gb"
    ACCELERATED16GB = "accelerated_16gb"
    ACCELERATED32GB = "accelerated_32gb"
    ACCELERATED64GB = "accelerated_64gb"
    ACCELERATED128GB = "accelerated_128gb"
    ACCELERATED256GB = "accelerated_256gb"
    ACCELERATED384GB = "accelerated_384gb"
    ACCELERATED512GB = "accelerated_512gb"
    ACCELERATED768GB = "accelerated_768gb"
    ACCELERATED1024GB = "accelerated_1024gb"


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


class PostgresDetailRole(str, Enum):
    PRIMARY = "primary"
    REPLICA = "replica"


class PostgresDetailStatus(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 PostgresDetailSuspended(str, Enum):
    SUSPENDED = "suspended"
    NOT_SUSPENDED = "not_suspended"


class PostgresDetailSuspendersItem(str, Enum):
    ADMIN = "admin"
    BILLING = "billing"
    USER = "user"
    PARENT_SERVICE = "parent_service"
    UNKNOWN = "unknown"


class PostgresDetailVersion(str, Enum):
    """
    The PostgreSQL version
    """
    POSTGRES_DETAIL_VERSION_11 = "11"
    POSTGRES_DETAIL_VERSION_12 = "12"
    POSTGRES_DETAIL_VERSION_13 = "13"
    POSTGRES_DETAIL_VERSION_14 = "14"
    POSTGRES_DETAIL_VERSION_15 = "15"
    POSTGRES_DETAIL_VERSION_16 = "16"


class PostgresPlan(str, Enum):
    FREE = "free"
    STARTER = "starter"
    STANDARD = "standard"
    PRO = "pro"
    PRO_PLUS = "pro_plus"
    CUSTOM = "custom"
    BASIC256MB = "basic_256mb"
    BASIC1GB = "basic_1gb"
    BASIC4GB = "basic_4gb"
    PRO4GB = "pro_4gb"
    PRO8GB = "pro_8gb"
    PRO16GB = "pro_16gb"
    PRO32GB = "pro_32gb"
    PRO64GB = "pro_64gb"
    PRO128GB = "pro_128gb"
    PRO192GB = "pro_192gb"
    PRO256GB = "pro_256gb"
    PRO384GB = "pro_384gb"
    PRO512GB = "pro_512gb"
    ACCELERATED16GB = "accelerated_16gb"
    ACCELERATED32GB = "accelerated_32gb"
    ACCELERATED64GB = "accelerated_64gb"
    ACCELERATED128GB = "accelerated_128gb"
    ACCELERATED256GB = "accelerated_256gb"
    ACCELERATED384GB = "accelerated_384gb"
    ACCELERATED512GB = "accelerated_512gb"
    ACCELERATED768GB = "accelerated_768gb"
    ACCELERATED1024GB = "accelerated_1024gb"


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


class PostgresRole(str, Enum):
    PRIMARY = "primary"
    REPLICA = "replica"


class PostgresStatus(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 PostgresSuspended(str, Enum):
    SUSPENDED = "suspended"
    NOT_SUSPENDED = "not_suspended"


class PostgresSuspendersItem(str, Enum):
    ADMIN = "admin"
    BILLING = "billing"
    USER = "user"
    PARENT_SERVICE = "parent_service"
    UNKNOWN = "unknown"


class PostgresVersion(str, Enum):
    """
    The PostgreSQL version
    """
    POSTGRES_VERSION_11 = "11"
    POSTGRES_VERSION_12 = "12"
    POSTGRES_VERSION_13 = "13"
    POSTGRES_VERSION_14 = "14"
    POSTGRES_VERSION_15 = "15"
    POSTGRES_VERSION_16 = "16"


class RecoverPostgresSuspended(str, Enum):
    SUSPENDED = "suspended"
    NOT_SUSPENDED = "not_suspended"


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


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


class Role(str, Enum):
    PRIMARY = "primary"
    REPLICA = "replica"


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"


class Suspended(str, Enum):
    SUSPENDED_ = "suspended"
    NOT_SUSPENDED = "not_suspended"


class SuspendersItem(str, Enum):
    ADMIN = "admin"
    BILLING = "billing"
    USER = "user"
    PARENT_SERVICE = "parent_service"
    UNKNOWN = "unknown"


class Version(str, Enum):
    """
    The PostgreSQL version
    """
    VERSION_11 = "11"
    VERSION_12 = "12"
    VERSION_13 = "13"
    VERSION_14 = "14"
    VERSION_15 = "15"
    VERSION_16 = "16"
