import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface MongodbInstanceBackupRuleConfig extends cdktf.TerraformMetaArguments { /** * Specify the specific dates for automatic backups to be performed each week. Format: Enter a number between 0 and 6 to represent Sunday through Saturday (e.g., 1 represents Monday). Separate multiple dates with commas (,). Example: Entering 1,3,5 means the system will perform backups on Mondays, Wednesdays, and Fridays every week. Default: If not set, the default is a full cycle (0,1,2,3,4,5,6), meaning backups will be performed daily. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#active_weekdays MongodbInstanceBackupRule#active_weekdays} */ readonly activeWeekdays?: string; /** * Sets the alarm threshold for backup dataset storage space usage. Unit: %. Default value: 100. Value range: [50, 300]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#alarm_water_level MongodbInstanceBackupRule#alarm_water_level} */ readonly alarmWaterLevel?: number; /** * Specify the daily automatic backup frequency. 12: Back up twice a day, approximately 12 hours apart; 24: Back up once a day (default), approximately 24 hours apart. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#backup_frequency MongodbInstanceBackupRule#backup_frequency} */ readonly backupFrequency?: number; /** * Set automatic backup method. Valid values: * - 0: Logical backup; * - 1: Physical backup; * - 3: Snapshot backup (supported only in cloud disk version). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#backup_method MongodbInstanceBackupRule#backup_method} */ readonly backupMethod: number; /** * Specifies the retention period for backup data. Unit: days, default is 7 days. Value range: [7, 365]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#backup_retention_period MongodbInstanceBackupRule#backup_retention_period} */ readonly backupRetentionPeriod?: number; /** * Set the start time for automatic backup. The value range is: [0,23]. For example, setting this parameter to 2 means that backup starts at 02:00. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#backup_time MongodbInstanceBackupRule#backup_time} */ readonly backupTime: number; /** * Backup version. Old version backup is 0, advanced backup is 1. Set this value to 1 when enabling advanced backup. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#backup_version MongodbInstanceBackupRule#backup_version} */ readonly backupVersion?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#id MongodbInstanceBackupRule#id} * * Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. * If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable. */ readonly id?: string; /** * Instance ID. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#instance_id MongodbInstanceBackupRule#instance_id} */ readonly instanceId: string; /** * Specify the specific backup dates to be retained long-term. This setting only takes effect when LongTermUnit is set to weekly or monthly. Weekly Retention: Enter a number between 0 and 6 to represent Sunday through Saturday. Separate multiple dates with commas. Monthly Retention: Enter a number between 1 and 31 to represent specific dates within the month. Separate multiple dates with commas. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#long_term_active_days MongodbInstanceBackupRule#long_term_active_days} */ readonly longTermActiveDays?: string; /** * Long-term backup retention period. Value range [30, 1075]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#long_term_expired_days MongodbInstanceBackupRule#long_term_expired_days} */ readonly longTermExpiredDays?: number; /** * Long-term retention period. Supports selecting specific dates for backups on a weekly or monthly basis (e.g., backup data for the 1st and 15th of each month) to retain for a longer period. Disabled (default): Long-term retention is disabled. Weekly retention: Specify `weekly`. Monthly retention: Specify `monthly`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#long_term_unit MongodbInstanceBackupRule#long_term_unit} */ readonly longTermUnit?: string; /** * Set whether to send failure alerts when automatic backup errors occur. * - true: Send. * - false: Do not send. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#notify MongodbInstanceBackupRule#notify} */ readonly notify?: boolean | cdktf.IResolvable; /** * Incremental backup retention period. Unit: days. Default value: 7 days. Value range: [7,365]. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#oplog_expired_days MongodbInstanceBackupRule#oplog_expired_days} */ readonly oplogExpiredDays?: number; } /** * Represents a {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule tencentcloud_mongodb_instance_backup_rule} */ export declare class MongodbInstanceBackupRule extends cdktf.TerraformResource { static readonly tfResourceType = "tencentcloud_mongodb_instance_backup_rule"; /** * Generates CDKTF code for importing a MongodbInstanceBackupRule resource upon running "cdktf plan " * @param scope The scope in which to define this construct * @param importToId The construct id used in the generated config for the MongodbInstanceBackupRule to import * @param importFromId The id of the existing MongodbInstanceBackupRule that should be imported. Refer to the {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the MongodbInstanceBackupRule to import is found */ static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): any; /** * Create a new {@link https://registry.terraform.io/providers/tencentcloudstack/tencentcloud/1.82.49/docs/resources/mongodb_instance_backup_rule tencentcloud_mongodb_instance_backup_rule} Resource * * @param scope The scope in which to define this construct * @param id The scoped construct ID. Must be unique amongst siblings in the same scope * @param options MongodbInstanceBackupRuleConfig */ constructor(scope: Construct, id: string, config: MongodbInstanceBackupRuleConfig); private _activeWeekdays?; get activeWeekdays(): string; set activeWeekdays(value: string); resetActiveWeekdays(): void; get activeWeekdaysInput(): string; private _alarmWaterLevel?; get alarmWaterLevel(): number; set alarmWaterLevel(value: number); resetAlarmWaterLevel(): void; get alarmWaterLevelInput(): number; private _backupFrequency?; get backupFrequency(): number; set backupFrequency(value: number); resetBackupFrequency(): void; get backupFrequencyInput(): number; private _backupMethod?; get backupMethod(): number; set backupMethod(value: number); get backupMethodInput(): number; private _backupRetentionPeriod?; get backupRetentionPeriod(): number; set backupRetentionPeriod(value: number); resetBackupRetentionPeriod(): void; get backupRetentionPeriodInput(): number; private _backupTime?; get backupTime(): number; set backupTime(value: number); get backupTimeInput(): number; private _backupVersion?; get backupVersion(): number; set backupVersion(value: number); resetBackupVersion(): void; get backupVersionInput(): number; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _instanceId?; get instanceId(): string; set instanceId(value: string); get instanceIdInput(): string; private _longTermActiveDays?; get longTermActiveDays(): string; set longTermActiveDays(value: string); resetLongTermActiveDays(): void; get longTermActiveDaysInput(): string; private _longTermExpiredDays?; get longTermExpiredDays(): number; set longTermExpiredDays(value: number); resetLongTermExpiredDays(): void; get longTermExpiredDaysInput(): number; private _longTermUnit?; get longTermUnit(): string; set longTermUnit(value: string); resetLongTermUnit(): void; get longTermUnitInput(): string; private _notify?; get notify(): boolean | cdktf.IResolvable; set notify(value: boolean | cdktf.IResolvable); resetNotify(): void; get notifyInput(): any; private _oplogExpiredDays?; get oplogExpiredDays(): number; set oplogExpiredDays(value: number); resetOplogExpiredDays(): void; get oplogExpiredDaysInput(): number; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }