# coding=utf-8
# *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
# *** Do not edit by hand unless you're certain you know what you are doing! ***

import builtins
import copy
import warnings
import sys
import pulumi
import pulumi.runtime
from typing import Any, Mapping, Optional, Sequence, Union, overload
if sys.version_info >= (3, 11):
    from typing import NotRequired, TypedDict, TypeAlias
else:
    from typing_extensions import NotRequired, TypedDict, TypeAlias
from .. import _utilities

__all__ = ['BackupArgs', 'Backup']

@pulumi.input_type
class BackupArgs:
    def __init__(__self__, *,
                 instance_id: pulumi.Input[builtins.str],
                 backup_method: Optional[pulumi.Input[builtins.str]] = None,
                 backup_retention_period: Optional[pulumi.Input[builtins.int]] = None,
                 backup_time: Optional[pulumi.Input[builtins.str]] = None,
                 backup_type: Optional[pulumi.Input[builtins.str]] = None,
                 full_backup_period: Optional[pulumi.Input[builtins.str]] = None):
        """
        The set of arguments for constructing a Backup resource.
        :param pulumi.Input[builtins.str] instance_id: 实例ID。
        :param pulumi.Input[builtins.str] backup_method: 备份方式，目前仅支持物理备份。
        :param pulumi.Input[builtins.int] backup_retention_period: 数据备份保留天数。
        :param pulumi.Input[builtins.str] backup_time: 执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        :param pulumi.Input[builtins.str] backup_type: 备份类型，目前仅支持全量备份。
        :param pulumi.Input[builtins.str] full_backup_period: 全量备份周期，多个取值用英文逗号（,）隔开。
        """
        pulumi.set(__self__, "instance_id", instance_id)
        if backup_method is not None:
            pulumi.set(__self__, "backup_method", backup_method)
        if backup_retention_period is not None:
            pulumi.set(__self__, "backup_retention_period", backup_retention_period)
        if backup_time is not None:
            pulumi.set(__self__, "backup_time", backup_time)
        if backup_type is not None:
            pulumi.set(__self__, "backup_type", backup_type)
        if full_backup_period is not None:
            pulumi.set(__self__, "full_backup_period", full_backup_period)

    @property
    @pulumi.getter(name="instanceId")
    def instance_id(self) -> pulumi.Input[builtins.str]:
        """
        实例ID。
        """
        return pulumi.get(self, "instance_id")

    @instance_id.setter
    def instance_id(self, value: pulumi.Input[builtins.str]):
        pulumi.set(self, "instance_id", value)

    @property
    @pulumi.getter(name="backupMethod")
    def backup_method(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份方式，目前仅支持物理备份。
        """
        return pulumi.get(self, "backup_method")

    @backup_method.setter
    def backup_method(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_method", value)

    @property
    @pulumi.getter(name="backupRetentionPeriod")
    def backup_retention_period(self) -> Optional[pulumi.Input[builtins.int]]:
        """
        数据备份保留天数。
        """
        return pulumi.get(self, "backup_retention_period")

    @backup_retention_period.setter
    def backup_retention_period(self, value: Optional[pulumi.Input[builtins.int]]):
        pulumi.set(self, "backup_retention_period", value)

    @property
    @pulumi.getter(name="backupTime")
    def backup_time(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_time")

    @backup_time.setter
    def backup_time(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_time", value)

    @property
    @pulumi.getter(name="backupType")
    def backup_type(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份类型，目前仅支持全量备份。
        """
        return pulumi.get(self, "backup_type")

    @backup_type.setter
    def backup_type(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_type", value)

    @property
    @pulumi.getter(name="fullBackupPeriod")
    def full_backup_period(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        全量备份周期，多个取值用英文逗号（,）隔开。
        """
        return pulumi.get(self, "full_backup_period")

    @full_backup_period.setter
    def full_backup_period(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "full_backup_period", value)


@pulumi.input_type
class _BackupState:
    def __init__(__self__, *,
                 backup_end_time: Optional[pulumi.Input[builtins.str]] = None,
                 backup_file_size: Optional[pulumi.Input[builtins.int]] = None,
                 backup_id: Optional[pulumi.Input[builtins.str]] = None,
                 backup_method: Optional[pulumi.Input[builtins.str]] = None,
                 backup_retention_period: Optional[pulumi.Input[builtins.int]] = None,
                 backup_start_time: Optional[pulumi.Input[builtins.str]] = None,
                 backup_status: Optional[pulumi.Input[builtins.str]] = None,
                 backup_time: Optional[pulumi.Input[builtins.str]] = None,
                 backup_type: Optional[pulumi.Input[builtins.str]] = None,
                 consistent_time: Optional[pulumi.Input[builtins.str]] = None,
                 continue_backup: Optional[pulumi.Input[builtins.bool]] = None,
                 create_type: Optional[pulumi.Input[builtins.str]] = None,
                 full_backup_period: Optional[pulumi.Input[builtins.str]] = None,
                 instance_id: Optional[pulumi.Input[builtins.str]] = None):
        """
        Input properties used for looking up and filtering Backup resources.
        :param pulumi.Input[builtins.str] backup_end_time: 备份的结束时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        :param pulumi.Input[builtins.int] backup_file_size: 备份文件大小，单位为 KiB。
        :param pulumi.Input[builtins.str] backup_id: 备份 ID。
        :param pulumi.Input[builtins.str] backup_method: 备份方式，目前仅支持物理备份。
        :param pulumi.Input[builtins.int] backup_retention_period: 数据备份保留天数。
        :param pulumi.Input[builtins.str] backup_start_time: 备份的开始时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        :param pulumi.Input[builtins.str] backup_status: 备份状态。
        :param pulumi.Input[builtins.str] backup_time: 执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        :param pulumi.Input[builtins.str] backup_type: 备份类型，目前仅支持全量备份。
        :param pulumi.Input[builtins.str] consistent_time: 一致性备份的时间点，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        :param pulumi.Input[builtins.bool] continue_backup: 是否开启持续备份，取值固定为 true。
        :param pulumi.Input[builtins.str] create_type: 创建类型。
        :param pulumi.Input[builtins.str] full_backup_period: 全量备份周期，多个取值用英文逗号（,）隔开。
        :param pulumi.Input[builtins.str] instance_id: 实例ID。
        """
        if backup_end_time is not None:
            pulumi.set(__self__, "backup_end_time", backup_end_time)
        if backup_file_size is not None:
            pulumi.set(__self__, "backup_file_size", backup_file_size)
        if backup_id is not None:
            pulumi.set(__self__, "backup_id", backup_id)
        if backup_method is not None:
            pulumi.set(__self__, "backup_method", backup_method)
        if backup_retention_period is not None:
            pulumi.set(__self__, "backup_retention_period", backup_retention_period)
        if backup_start_time is not None:
            pulumi.set(__self__, "backup_start_time", backup_start_time)
        if backup_status is not None:
            pulumi.set(__self__, "backup_status", backup_status)
        if backup_time is not None:
            pulumi.set(__self__, "backup_time", backup_time)
        if backup_type is not None:
            pulumi.set(__self__, "backup_type", backup_type)
        if consistent_time is not None:
            pulumi.set(__self__, "consistent_time", consistent_time)
        if continue_backup is not None:
            pulumi.set(__self__, "continue_backup", continue_backup)
        if create_type is not None:
            pulumi.set(__self__, "create_type", create_type)
        if full_backup_period is not None:
            pulumi.set(__self__, "full_backup_period", full_backup_period)
        if instance_id is not None:
            pulumi.set(__self__, "instance_id", instance_id)

    @property
    @pulumi.getter(name="backupEndTime")
    def backup_end_time(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份的结束时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_end_time")

    @backup_end_time.setter
    def backup_end_time(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_end_time", value)

    @property
    @pulumi.getter(name="backupFileSize")
    def backup_file_size(self) -> Optional[pulumi.Input[builtins.int]]:
        """
        备份文件大小，单位为 KiB。
        """
        return pulumi.get(self, "backup_file_size")

    @backup_file_size.setter
    def backup_file_size(self, value: Optional[pulumi.Input[builtins.int]]):
        pulumi.set(self, "backup_file_size", value)

    @property
    @pulumi.getter(name="backupId")
    def backup_id(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份 ID。
        """
        return pulumi.get(self, "backup_id")

    @backup_id.setter
    def backup_id(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_id", value)

    @property
    @pulumi.getter(name="backupMethod")
    def backup_method(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份方式，目前仅支持物理备份。
        """
        return pulumi.get(self, "backup_method")

    @backup_method.setter
    def backup_method(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_method", value)

    @property
    @pulumi.getter(name="backupRetentionPeriod")
    def backup_retention_period(self) -> Optional[pulumi.Input[builtins.int]]:
        """
        数据备份保留天数。
        """
        return pulumi.get(self, "backup_retention_period")

    @backup_retention_period.setter
    def backup_retention_period(self, value: Optional[pulumi.Input[builtins.int]]):
        pulumi.set(self, "backup_retention_period", value)

    @property
    @pulumi.getter(name="backupStartTime")
    def backup_start_time(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份的开始时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_start_time")

    @backup_start_time.setter
    def backup_start_time(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_start_time", value)

    @property
    @pulumi.getter(name="backupStatus")
    def backup_status(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份状态。
        """
        return pulumi.get(self, "backup_status")

    @backup_status.setter
    def backup_status(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_status", value)

    @property
    @pulumi.getter(name="backupTime")
    def backup_time(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_time")

    @backup_time.setter
    def backup_time(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_time", value)

    @property
    @pulumi.getter(name="backupType")
    def backup_type(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        备份类型，目前仅支持全量备份。
        """
        return pulumi.get(self, "backup_type")

    @backup_type.setter
    def backup_type(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "backup_type", value)

    @property
    @pulumi.getter(name="consistentTime")
    def consistent_time(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        一致性备份的时间点，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        """
        return pulumi.get(self, "consistent_time")

    @consistent_time.setter
    def consistent_time(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "consistent_time", value)

    @property
    @pulumi.getter(name="continueBackup")
    def continue_backup(self) -> Optional[pulumi.Input[builtins.bool]]:
        """
        是否开启持续备份，取值固定为 true。
        """
        return pulumi.get(self, "continue_backup")

    @continue_backup.setter
    def continue_backup(self, value: Optional[pulumi.Input[builtins.bool]]):
        pulumi.set(self, "continue_backup", value)

    @property
    @pulumi.getter(name="createType")
    def create_type(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        创建类型。
        """
        return pulumi.get(self, "create_type")

    @create_type.setter
    def create_type(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "create_type", value)

    @property
    @pulumi.getter(name="fullBackupPeriod")
    def full_backup_period(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        全量备份周期，多个取值用英文逗号（,）隔开。
        """
        return pulumi.get(self, "full_backup_period")

    @full_backup_period.setter
    def full_backup_period(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "full_backup_period", value)

    @property
    @pulumi.getter(name="instanceId")
    def instance_id(self) -> Optional[pulumi.Input[builtins.str]]:
        """
        实例ID。
        """
        return pulumi.get(self, "instance_id")

    @instance_id.setter
    def instance_id(self, value: Optional[pulumi.Input[builtins.str]]):
        pulumi.set(self, "instance_id", value)


@pulumi.type_token("bytepluscc:vedbm/backup:Backup")
class Backup(pulumi.CustomResource):
    @overload
    def __init__(__self__,
                 resource_name: str,
                 opts: Optional[pulumi.ResourceOptions] = None,
                 backup_method: Optional[pulumi.Input[builtins.str]] = None,
                 backup_retention_period: Optional[pulumi.Input[builtins.int]] = None,
                 backup_time: Optional[pulumi.Input[builtins.str]] = None,
                 backup_type: Optional[pulumi.Input[builtins.str]] = None,
                 full_backup_period: Optional[pulumi.Input[builtins.str]] = None,
                 instance_id: Optional[pulumi.Input[builtins.str]] = None,
                 __props__=None):
        """
        云数据库 veDB备份管理

        ## Example Usage

        ```python
        import pulumi
        import pulumi_bytepluscc as bytepluscc

        vedbmbackup_demo = bytepluscc.vedbm.Backup("vedbmbackupDemo",
            instance_id="vedbm-i34lvm3j***",
            backup_type="Full",
            backup_method="Physical",
            backup_time="00:00Z-02:00Z",
            full_backup_period="Sunday",
            backup_retention_period=11)
        ```

        ## Import

        ```sh
        $ pulumi import bytepluscc:vedbm/backup:Backup example "instance_id|backup_id"
        ```

        :param str resource_name: The name of the resource.
        :param pulumi.ResourceOptions opts: Options for the resource.
        :param pulumi.Input[builtins.str] backup_method: 备份方式，目前仅支持物理备份。
        :param pulumi.Input[builtins.int] backup_retention_period: 数据备份保留天数。
        :param pulumi.Input[builtins.str] backup_time: 执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        :param pulumi.Input[builtins.str] backup_type: 备份类型，目前仅支持全量备份。
        :param pulumi.Input[builtins.str] full_backup_period: 全量备份周期，多个取值用英文逗号（,）隔开。
        :param pulumi.Input[builtins.str] instance_id: 实例ID。
        """
        ...
    @overload
    def __init__(__self__,
                 resource_name: str,
                 args: BackupArgs,
                 opts: Optional[pulumi.ResourceOptions] = None):
        """
        云数据库 veDB备份管理

        ## Example Usage

        ```python
        import pulumi
        import pulumi_bytepluscc as bytepluscc

        vedbmbackup_demo = bytepluscc.vedbm.Backup("vedbmbackupDemo",
            instance_id="vedbm-i34lvm3j***",
            backup_type="Full",
            backup_method="Physical",
            backup_time="00:00Z-02:00Z",
            full_backup_period="Sunday",
            backup_retention_period=11)
        ```

        ## Import

        ```sh
        $ pulumi import bytepluscc:vedbm/backup:Backup example "instance_id|backup_id"
        ```

        :param str resource_name: The name of the resource.
        :param BackupArgs args: The arguments to use to populate this resource's properties.
        :param pulumi.ResourceOptions opts: Options for the resource.
        """
        ...
    def __init__(__self__, resource_name: str, *args, **kwargs):
        resource_args, opts = _utilities.get_resource_args_opts(BackupArgs, pulumi.ResourceOptions, *args, **kwargs)
        if resource_args is not None:
            __self__._internal_init(resource_name, opts, **resource_args.__dict__)
        else:
            __self__._internal_init(resource_name, *args, **kwargs)

    def _internal_init(__self__,
                 resource_name: str,
                 opts: Optional[pulumi.ResourceOptions] = None,
                 backup_method: Optional[pulumi.Input[builtins.str]] = None,
                 backup_retention_period: Optional[pulumi.Input[builtins.int]] = None,
                 backup_time: Optional[pulumi.Input[builtins.str]] = None,
                 backup_type: Optional[pulumi.Input[builtins.str]] = None,
                 full_backup_period: Optional[pulumi.Input[builtins.str]] = None,
                 instance_id: Optional[pulumi.Input[builtins.str]] = None,
                 __props__=None):
        opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
        if not isinstance(opts, pulumi.ResourceOptions):
            raise TypeError('Expected resource options to be a ResourceOptions instance')
        if opts.id is None:
            if __props__ is not None:
                raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
            __props__ = BackupArgs.__new__(BackupArgs)

            __props__.__dict__["backup_method"] = backup_method
            __props__.__dict__["backup_retention_period"] = backup_retention_period
            __props__.__dict__["backup_time"] = backup_time
            __props__.__dict__["backup_type"] = backup_type
            __props__.__dict__["full_backup_period"] = full_backup_period
            if instance_id is None and not opts.urn:
                raise TypeError("Missing required property 'instance_id'")
            __props__.__dict__["instance_id"] = instance_id
            __props__.__dict__["backup_end_time"] = None
            __props__.__dict__["backup_file_size"] = None
            __props__.__dict__["backup_id"] = None
            __props__.__dict__["backup_start_time"] = None
            __props__.__dict__["backup_status"] = None
            __props__.__dict__["consistent_time"] = None
            __props__.__dict__["continue_backup"] = None
            __props__.__dict__["create_type"] = None
        super(Backup, __self__).__init__(
            'bytepluscc:vedbm/backup:Backup',
            resource_name,
            __props__,
            opts)

    @staticmethod
    def get(resource_name: str,
            id: pulumi.Input[str],
            opts: Optional[pulumi.ResourceOptions] = None,
            backup_end_time: Optional[pulumi.Input[builtins.str]] = None,
            backup_file_size: Optional[pulumi.Input[builtins.int]] = None,
            backup_id: Optional[pulumi.Input[builtins.str]] = None,
            backup_method: Optional[pulumi.Input[builtins.str]] = None,
            backup_retention_period: Optional[pulumi.Input[builtins.int]] = None,
            backup_start_time: Optional[pulumi.Input[builtins.str]] = None,
            backup_status: Optional[pulumi.Input[builtins.str]] = None,
            backup_time: Optional[pulumi.Input[builtins.str]] = None,
            backup_type: Optional[pulumi.Input[builtins.str]] = None,
            consistent_time: Optional[pulumi.Input[builtins.str]] = None,
            continue_backup: Optional[pulumi.Input[builtins.bool]] = None,
            create_type: Optional[pulumi.Input[builtins.str]] = None,
            full_backup_period: Optional[pulumi.Input[builtins.str]] = None,
            instance_id: Optional[pulumi.Input[builtins.str]] = None) -> 'Backup':
        """
        Get an existing Backup resource's state with the given name, id, and optional extra
        properties used to qualify the lookup.

        :param str resource_name: The unique name of the resulting resource.
        :param pulumi.Input[str] id: The unique provider ID of the resource to lookup.
        :param pulumi.ResourceOptions opts: Options for the resource.
        :param pulumi.Input[builtins.str] backup_end_time: 备份的结束时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        :param pulumi.Input[builtins.int] backup_file_size: 备份文件大小，单位为 KiB。
        :param pulumi.Input[builtins.str] backup_id: 备份 ID。
        :param pulumi.Input[builtins.str] backup_method: 备份方式，目前仅支持物理备份。
        :param pulumi.Input[builtins.int] backup_retention_period: 数据备份保留天数。
        :param pulumi.Input[builtins.str] backup_start_time: 备份的开始时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        :param pulumi.Input[builtins.str] backup_status: 备份状态。
        :param pulumi.Input[builtins.str] backup_time: 执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        :param pulumi.Input[builtins.str] backup_type: 备份类型，目前仅支持全量备份。
        :param pulumi.Input[builtins.str] consistent_time: 一致性备份的时间点，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        :param pulumi.Input[builtins.bool] continue_backup: 是否开启持续备份，取值固定为 true。
        :param pulumi.Input[builtins.str] create_type: 创建类型。
        :param pulumi.Input[builtins.str] full_backup_period: 全量备份周期，多个取值用英文逗号（,）隔开。
        :param pulumi.Input[builtins.str] instance_id: 实例ID。
        """
        opts = pulumi.ResourceOptions.merge(opts, pulumi.ResourceOptions(id=id))

        __props__ = _BackupState.__new__(_BackupState)

        __props__.__dict__["backup_end_time"] = backup_end_time
        __props__.__dict__["backup_file_size"] = backup_file_size
        __props__.__dict__["backup_id"] = backup_id
        __props__.__dict__["backup_method"] = backup_method
        __props__.__dict__["backup_retention_period"] = backup_retention_period
        __props__.__dict__["backup_start_time"] = backup_start_time
        __props__.__dict__["backup_status"] = backup_status
        __props__.__dict__["backup_time"] = backup_time
        __props__.__dict__["backup_type"] = backup_type
        __props__.__dict__["consistent_time"] = consistent_time
        __props__.__dict__["continue_backup"] = continue_backup
        __props__.__dict__["create_type"] = create_type
        __props__.__dict__["full_backup_period"] = full_backup_period
        __props__.__dict__["instance_id"] = instance_id
        return Backup(resource_name, opts=opts, __props__=__props__)

    @property
    @pulumi.getter(name="backupEndTime")
    def backup_end_time(self) -> pulumi.Output[builtins.str]:
        """
        备份的结束时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_end_time")

    @property
    @pulumi.getter(name="backupFileSize")
    def backup_file_size(self) -> pulumi.Output[builtins.int]:
        """
        备份文件大小，单位为 KiB。
        """
        return pulumi.get(self, "backup_file_size")

    @property
    @pulumi.getter(name="backupId")
    def backup_id(self) -> pulumi.Output[builtins.str]:
        """
        备份 ID。
        """
        return pulumi.get(self, "backup_id")

    @property
    @pulumi.getter(name="backupMethod")
    def backup_method(self) -> pulumi.Output[builtins.str]:
        """
        备份方式，目前仅支持物理备份。
        """
        return pulumi.get(self, "backup_method")

    @property
    @pulumi.getter(name="backupRetentionPeriod")
    def backup_retention_period(self) -> pulumi.Output[builtins.int]:
        """
        数据备份保留天数。
        """
        return pulumi.get(self, "backup_retention_period")

    @property
    @pulumi.getter(name="backupStartTime")
    def backup_start_time(self) -> pulumi.Output[builtins.str]:
        """
        备份的开始时间，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_start_time")

    @property
    @pulumi.getter(name="backupStatus")
    def backup_status(self) -> pulumi.Output[builtins.str]:
        """
        备份状态。
        """
        return pulumi.get(self, "backup_status")

    @property
    @pulumi.getter(name="backupTime")
    def backup_time(self) -> pulumi.Output[builtins.str]:
        """
        执行备份任务的时间，间隔窗口为两小时。格式：HH:mmZ-HH:mmZ（UTC 时间）。
        """
        return pulumi.get(self, "backup_time")

    @property
    @pulumi.getter(name="backupType")
    def backup_type(self) -> pulumi.Output[builtins.str]:
        """
        备份类型，目前仅支持全量备份。
        """
        return pulumi.get(self, "backup_type")

    @property
    @pulumi.getter(name="consistentTime")
    def consistent_time(self) -> pulumi.Output[builtins.str]:
        """
        一致性备份的时间点，格式：yyyy-MM-ddTHH:mm:ssZ（UTC 时间）。
        """
        return pulumi.get(self, "consistent_time")

    @property
    @pulumi.getter(name="continueBackup")
    def continue_backup(self) -> pulumi.Output[builtins.bool]:
        """
        是否开启持续备份，取值固定为 true。
        """
        return pulumi.get(self, "continue_backup")

    @property
    @pulumi.getter(name="createType")
    def create_type(self) -> pulumi.Output[builtins.str]:
        """
        创建类型。
        """
        return pulumi.get(self, "create_type")

    @property
    @pulumi.getter(name="fullBackupPeriod")
    def full_backup_period(self) -> pulumi.Output[builtins.str]:
        """
        全量备份周期，多个取值用英文逗号（,）隔开。
        """
        return pulumi.get(self, "full_backup_period")

    @property
    @pulumi.getter(name="instanceId")
    def instance_id(self) -> pulumi.Output[builtins.str]:
        """
        实例ID。
        """
        return pulumi.get(self, "instance_id")

