import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface BackupPolicyConfig extends cdktf.TerraformMetaArguments { /** * The name of generated archives. Default `[Machine Name]-[Plan ID]-[Unique ID]a`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#archive_name BackupPolicy#archive_name} */ readonly archiveName?: string; /** * Configuration of Changed Block Tracking. Available values are: `USE_IF_ENABLED`, `ENABLED_AND_USE`, `DO_NOT_USE`. Default `DO_NOT_USE`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#cbt BackupPolicy#cbt} */ readonly cbt?: string; /** * Archive compression level. Affects CPU. Available values: `NORMAL`, `HIGH`, `MAX`, `OFF`. Default: `NORMAL`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#compression BackupPolicy#compression} */ readonly compression?: string; /** * If true, determines whether a file has changed by the file size and timestamp. Otherwise, the entire file contents are compared to those stored in the backup. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#fast_backup_enabled BackupPolicy#fast_backup_enabled} */ readonly fastBackupEnabled?: boolean | cdktf.IResolvable; /** * The folder identifier that resource belongs to. If it is not provided, the default provider `folder-id` is used. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#folder_id BackupPolicy#folder_id} */ readonly folderId?: string; /** * Format of the backup. It's strongly recommend to leave this option empty or `AUTO`. Available values: `AUTO`, `VERSION_11`, `VERSION_12`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#format BackupPolicy#format} */ readonly format?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#id BackupPolicy#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; /** * LVM will be used to create the volume snapshot. If LVM fails to create a snapshot (for example, because there is not enough free space), the software will create the snapshot itself. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#lvm_snapshotting_enabled BackupPolicy#lvm_snapshotting_enabled} */ readonly lvmSnapshottingEnabled?: boolean | cdktf.IResolvable; /** * If true, snapshots of multiple volumes will be taken simultaneously. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#multi_volume_snapshotting_enabled BackupPolicy#multi_volume_snapshotting_enabled} */ readonly multiVolumeSnapshottingEnabled?: boolean | cdktf.IResolvable; /** * The resource name. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#name BackupPolicy#name} */ readonly name: string; /** * Time windows for performance limitations of backup. Default `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#performance_window_enabled BackupPolicy#performance_window_enabled} */ readonly performanceWindowEnabled?: boolean | cdktf.IResolvable; /** * If true, a quiesced snapshot of the virtual machine will be taken. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#preserve_file_security_settings BackupPolicy#preserve_file_security_settings} */ readonly preserveFileSecuritySettings?: boolean | cdktf.IResolvable; /** * If true, a quiesced snapshot of the virtual machine will be taken. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#quiesce_snapshotting_enabled BackupPolicy#quiesce_snapshotting_enabled} */ readonly quiesceSnapshottingEnabled?: boolean | cdktf.IResolvable; /** * A sector-by-sector backup of a disk or volume creates a backup copy of all sectors of the disk or volume, including those that do not contain data. Therefore, the size of such a backup copy will be equal to the size of the original disk or volume. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#sector_by_sector BackupPolicy#sector_by_sector} */ readonly sectorBySector?: boolean | cdktf.IResolvable; /** * If true, a user interaction will be avoided when possible. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#silent_mode_enabled BackupPolicy#silent_mode_enabled} */ readonly silentModeEnabled?: boolean | cdktf.IResolvable; /** * Determines the size to split backups. It's better to leave this option unchanged. Default `9223372036854775807`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#splitting_bytes BackupPolicy#splitting_bytes} */ readonly splittingBytes?: string; /** * Validation is a time-consuming process, even with incremental or differential backups of small amounts of data. This is because not only the data physically contained in the backup copy is verified, but all data restored when it is selected. This option requires access to previously created backup copies. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#validation_enabled BackupPolicy#validation_enabled} */ readonly validationEnabled?: boolean | cdktf.IResolvable; /** * Settings for the volume shadow copy service. Available values are: `NATIVE`, `TARGET_SYSTEM_DEFINED`. Default `NATIVE`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#vss_provider BackupPolicy#vss_provider} */ readonly vssProvider?: string; /** * file_filters block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#file_filters BackupPolicy#file_filters} */ readonly fileFilters?: BackupPolicyFileFilters; /** * reattempts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#reattempts BackupPolicy#reattempts} */ readonly reattempts: BackupPolicyReattempts; /** * retention block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#retention BackupPolicy#retention} */ readonly retention: BackupPolicyRetention; /** * scheduling block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#scheduling BackupPolicy#scheduling} */ readonly scheduling: BackupPolicyScheduling; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#timeouts BackupPolicy#timeouts} */ readonly timeouts?: BackupPolicyTimeouts; /** * vm_snapshot_reattempts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#vm_snapshot_reattempts BackupPolicy#vm_snapshot_reattempts} */ readonly vmSnapshotReattempts: BackupPolicyVmSnapshotReattempts; } export interface BackupPolicyFileFilters { /** * Do not backup files that match the following criteria. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#exclusion_masks BackupPolicy#exclusion_masks} */ readonly exclusionMasks?: string[]; /** * Backup only files that match the following criteria. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#inclusion_masks BackupPolicy#inclusion_masks} */ readonly inclusionMasks?: string[]; } export declare function backupPolicyFileFiltersToTerraform(struct?: BackupPolicyFileFiltersOutputReference | BackupPolicyFileFilters): any; export declare function backupPolicyFileFiltersToHclTerraform(struct?: BackupPolicyFileFiltersOutputReference | BackupPolicyFileFilters): any; export declare class BackupPolicyFileFiltersOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): BackupPolicyFileFilters | undefined; set internalValue(value: BackupPolicyFileFilters | undefined); private _exclusionMasks?; get exclusionMasks(): string[]; set exclusionMasks(value: string[]); resetExclusionMasks(): void; get exclusionMasksInput(): string[]; private _inclusionMasks?; get inclusionMasks(): string[]; set inclusionMasks(value: string[]); resetInclusionMasks(): void; get inclusionMasksInput(): string[]; } export interface BackupPolicyReattempts { /** * Enable flag. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#enabled BackupPolicy#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * Retry interval. See `interval_type` for available values. Default: `5m`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#interval BackupPolicy#interval} */ readonly interval?: string; /** * Maximum number of attempts before throwing an error. Default `5`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#max_attempts BackupPolicy#max_attempts} */ readonly maxAttempts?: number; } export declare function backupPolicyReattemptsToTerraform(struct?: BackupPolicyReattemptsOutputReference | BackupPolicyReattempts): any; export declare function backupPolicyReattemptsToHclTerraform(struct?: BackupPolicyReattemptsOutputReference | BackupPolicyReattempts): any; export declare class BackupPolicyReattemptsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): BackupPolicyReattempts | undefined; set internalValue(value: BackupPolicyReattempts | undefined); private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): any; private _interval?; get interval(): string; set interval(value: string); resetInterval(): void; get intervalInput(): string; private _maxAttempts?; get maxAttempts(): number; set maxAttempts(value: number); resetMaxAttempts(): void; get maxAttemptsInput(): number; } export interface BackupPolicyRetentionRules { /** * Deletes backups that older than `max_age`. Exactly one of `max_count` or `max_age` should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#max_age BackupPolicy#max_age} */ readonly maxAge?: string; /** * Deletes backups if it's count exceeds `max_count`. Exactly one of `max_count` or `max_age` should be set. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#max_count BackupPolicy#max_count} */ readonly maxCount?: number; /** * Possible types: `REPEATE_PERIOD_UNSPECIFIED`, `HOURLY`, `DAILY`, `WEEKLY`, `MONTHLY`. Specifies repeat period of the backupset. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#repeat_period BackupPolicy#repeat_period} */ readonly repeatPeriod?: string[]; } export declare function backupPolicyRetentionRulesToTerraform(struct?: BackupPolicyRetentionRules | cdktf.IResolvable): any; export declare function backupPolicyRetentionRulesToHclTerraform(struct?: BackupPolicyRetentionRules | cdktf.IResolvable): any; export declare class BackupPolicyRetentionRulesOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): BackupPolicyRetentionRules | cdktf.IResolvable | undefined; set internalValue(value: BackupPolicyRetentionRules | cdktf.IResolvable | undefined); private _maxAge?; get maxAge(): string; set maxAge(value: string); resetMaxAge(): void; get maxAgeInput(): string; private _maxCount?; get maxCount(): number; set maxCount(value: number); resetMaxCount(): void; get maxCountInput(): number; private _repeatPeriod?; get repeatPeriod(): string[]; set repeatPeriod(value: string[]); resetRepeatPeriod(): void; get repeatPeriodInput(): string[]; } export declare class BackupPolicyRetentionRulesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: BackupPolicyRetentionRules[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): BackupPolicyRetentionRulesOutputReference; } export interface BackupPolicyRetention { /** * Defines whether retention rule applies after creating backup or before. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#after_backup BackupPolicy#after_backup} */ readonly afterBackup?: boolean | cdktf.IResolvable; /** * rules block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#rules BackupPolicy#rules} */ readonly rules?: BackupPolicyRetentionRules[] | cdktf.IResolvable; } export declare function backupPolicyRetentionToTerraform(struct?: BackupPolicyRetentionOutputReference | BackupPolicyRetention): any; export declare function backupPolicyRetentionToHclTerraform(struct?: BackupPolicyRetentionOutputReference | BackupPolicyRetention): any; export declare class BackupPolicyRetentionOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): BackupPolicyRetention | undefined; set internalValue(value: BackupPolicyRetention | undefined); private _afterBackup?; get afterBackup(): boolean | cdktf.IResolvable; set afterBackup(value: boolean | cdktf.IResolvable); resetAfterBackup(): void; get afterBackupInput(): any; private _rules; get rules(): BackupPolicyRetentionRulesList; putRules(value: BackupPolicyRetentionRules[] | cdktf.IResolvable): void; resetRules(): void; get rulesInput(): any; } export interface BackupPolicySchedulingBackupSetsExecuteByTime { /** * If true, schedule will be applied on the last day of month. See `day_type` for available values. Default `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#include_last_day_of_month BackupPolicy#include_last_day_of_month} */ readonly includeLastDayOfMonth?: boolean | cdktf.IResolvable; /** * List of days when schedule applies. Used in `MONTHLY` type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#monthdays BackupPolicy#monthdays} */ readonly monthdays?: number[]; /** * Set of values. Allowed values form 1 to 12. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#months BackupPolicy#months} */ readonly months?: number[]; /** * List of time in format `HH:MM` (24-hours format), when the schedule applies. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#repeat_at BackupPolicy#repeat_at} */ readonly repeatAt?: string[]; /** * Frequency of backup repetition. See `interval_type` for available values. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#repeat_every BackupPolicy#repeat_every} */ readonly repeatEvery?: string; /** * If true and if the machine is off, launch missed tasks on boot up. Default `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#run_later BackupPolicy#run_later} */ readonly runLater?: boolean | cdktf.IResolvable; /** * Type of the scheduling. Available values are: `HOURLY`, `DAILY`, `WEEKLY`, `MONTHLY`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#type BackupPolicy#type} */ readonly type: string; /** * List of weekdays when the backup will be applied. Used in `WEEKLY` type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#weekdays BackupPolicy#weekdays} */ readonly weekdays?: string[]; } export declare function backupPolicySchedulingBackupSetsExecuteByTimeToTerraform(struct?: BackupPolicySchedulingBackupSetsExecuteByTime | cdktf.IResolvable): any; export declare function backupPolicySchedulingBackupSetsExecuteByTimeToHclTerraform(struct?: BackupPolicySchedulingBackupSetsExecuteByTime | cdktf.IResolvable): any; export declare class BackupPolicySchedulingBackupSetsExecuteByTimeOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): BackupPolicySchedulingBackupSetsExecuteByTime | cdktf.IResolvable | undefined; set internalValue(value: BackupPolicySchedulingBackupSetsExecuteByTime | cdktf.IResolvable | undefined); private _includeLastDayOfMonth?; get includeLastDayOfMonth(): boolean | cdktf.IResolvable; set includeLastDayOfMonth(value: boolean | cdktf.IResolvable); resetIncludeLastDayOfMonth(): void; get includeLastDayOfMonthInput(): any; private _monthdays?; get monthdays(): number[]; set monthdays(value: number[]); resetMonthdays(): void; get monthdaysInput(): number[]; private _months?; get months(): number[]; set months(value: number[]); resetMonths(): void; get monthsInput(): number[]; private _repeatAt?; get repeatAt(): string[]; set repeatAt(value: string[]); resetRepeatAt(): void; get repeatAtInput(): string[]; private _repeatEvery?; get repeatEvery(): string; set repeatEvery(value: string); resetRepeatEvery(): void; get repeatEveryInput(): string; private _runLater?; get runLater(): boolean | cdktf.IResolvable; set runLater(value: boolean | cdktf.IResolvable); resetRunLater(): void; get runLaterInput(): any; private _type?; get type(): string; set type(value: string); get typeInput(): string; private _weekdays?; get weekdays(): string[]; set weekdays(value: string[]); resetWeekdays(): void; get weekdaysInput(): string[]; } export declare class BackupPolicySchedulingBackupSetsExecuteByTimeList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: BackupPolicySchedulingBackupSetsExecuteByTime[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): BackupPolicySchedulingBackupSetsExecuteByTimeOutputReference; } export interface BackupPolicySchedulingBackupSets { /** * Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See `interval_type` for available values. Exactly on of options should be set: `execute_by_interval` or `execute_by_time`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#execute_by_interval BackupPolicy#execute_by_interval} */ readonly executeByInterval?: number; /** * BackupSet type. See `backup_set_type` for available values. Default `TYPE_AUTO`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#type BackupPolicy#type} */ readonly type?: string; /** * execute_by_time block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#execute_by_time BackupPolicy#execute_by_time} */ readonly executeByTime?: BackupPolicySchedulingBackupSetsExecuteByTime[] | cdktf.IResolvable; } export declare function backupPolicySchedulingBackupSetsToTerraform(struct?: BackupPolicySchedulingBackupSets | cdktf.IResolvable): any; export declare function backupPolicySchedulingBackupSetsToHclTerraform(struct?: BackupPolicySchedulingBackupSets | cdktf.IResolvable): any; export declare class BackupPolicySchedulingBackupSetsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): BackupPolicySchedulingBackupSets | cdktf.IResolvable | undefined; set internalValue(value: BackupPolicySchedulingBackupSets | cdktf.IResolvable | undefined); private _executeByInterval?; get executeByInterval(): number; set executeByInterval(value: number); resetExecuteByInterval(): void; get executeByIntervalInput(): number; private _type?; get type(): string; set type(value: string); resetType(): void; get typeInput(): string; private _executeByTime; get executeByTime(): BackupPolicySchedulingBackupSetsExecuteByTimeList; putExecuteByTime(value: BackupPolicySchedulingBackupSetsExecuteByTime[] | cdktf.IResolvable): void; resetExecuteByTime(): void; get executeByTimeInput(): any; } export declare class BackupPolicySchedulingBackupSetsList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: BackupPolicySchedulingBackupSets[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): BackupPolicySchedulingBackupSetsOutputReference; } export interface BackupPolicySchedulingExecuteByTime { /** * If true, schedule will be applied on the last day of month. See `day_type` for available values. Default `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#include_last_day_of_month BackupPolicy#include_last_day_of_month} */ readonly includeLastDayOfMonth?: boolean | cdktf.IResolvable; /** * List of days when schedule applies. Used in `MONTHLY` type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#monthdays BackupPolicy#monthdays} */ readonly monthdays?: number[]; /** * Set of values. Allowed values form 1 to 12. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#months BackupPolicy#months} */ readonly months?: number[]; /** * List of time in format `HH:MM` (24-hours format), when the schedule applies. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#repeat_at BackupPolicy#repeat_at} */ readonly repeatAt?: string[]; /** * Frequency of backup repetition. See `interval_type` for available values. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#repeat_every BackupPolicy#repeat_every} */ readonly repeatEvery?: string; /** * If true and if the machine is off, launch missed tasks on boot up. Default `false`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#run_later BackupPolicy#run_later} */ readonly runLater?: boolean | cdktf.IResolvable; /** * Type of the scheduling. Available values are: `HOURLY`, `DAILY`, `WEEKLY`, `MONTHLY`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#type BackupPolicy#type} */ readonly type: string; /** * List of weekdays when the backup will be applied. Used in `WEEKLY` type. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#weekdays BackupPolicy#weekdays} */ readonly weekdays?: string[]; } export declare function backupPolicySchedulingExecuteByTimeToTerraform(struct?: BackupPolicySchedulingExecuteByTime | cdktf.IResolvable): any; export declare function backupPolicySchedulingExecuteByTimeToHclTerraform(struct?: BackupPolicySchedulingExecuteByTime | cdktf.IResolvable): any; export declare class BackupPolicySchedulingExecuteByTimeOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param complexObjectIndex the index of this item in the list * @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean); get internalValue(): BackupPolicySchedulingExecuteByTime | cdktf.IResolvable | undefined; set internalValue(value: BackupPolicySchedulingExecuteByTime | cdktf.IResolvable | undefined); private _includeLastDayOfMonth?; get includeLastDayOfMonth(): boolean | cdktf.IResolvable; set includeLastDayOfMonth(value: boolean | cdktf.IResolvable); resetIncludeLastDayOfMonth(): void; get includeLastDayOfMonthInput(): any; private _monthdays?; get monthdays(): number[]; set monthdays(value: number[]); resetMonthdays(): void; get monthdaysInput(): number[]; private _months?; get months(): number[]; set months(value: number[]); resetMonths(): void; get monthsInput(): number[]; private _repeatAt?; get repeatAt(): string[]; set repeatAt(value: string[]); resetRepeatAt(): void; get repeatAtInput(): string[]; private _repeatEvery?; get repeatEvery(): string; set repeatEvery(value: string); resetRepeatEvery(): void; get repeatEveryInput(): string; private _runLater?; get runLater(): boolean | cdktf.IResolvable; set runLater(value: boolean | cdktf.IResolvable); resetRunLater(): void; get runLaterInput(): any; private _type?; get type(): string; set type(value: string); get typeInput(): string; private _weekdays?; get weekdays(): string[]; set weekdays(value: string[]); resetWeekdays(): void; get weekdaysInput(): string[]; } export declare class BackupPolicySchedulingExecuteByTimeList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: BackupPolicySchedulingExecuteByTime[] | cdktf.IResolvable; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing * @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index) */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean); /** * @param index the index of the item to return */ get(index: number): BackupPolicySchedulingExecuteByTimeOutputReference; } export interface BackupPolicyScheduling { /** * Enables or disables scheduling. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#enabled BackupPolicy#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** *  Perform backup by interval, since last backup of the host. Maximum value is: 9999 days. See `interval_type` for available values. Exactly on of options should be set: `execute_by_interval` or `execute_by_time`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#execute_by_interval BackupPolicy#execute_by_interval} */ readonly executeByInterval?: number; /** * Maximum number of backup processes allowed to run in parallel. 0 for unlimited. Default `0`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#max_parallel_backups BackupPolicy#max_parallel_backups} */ readonly maxParallelBackups?: number; /** * Configuration of the random delay between the execution of parallel tasks. See `interval_type` for available values. Default `30m`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#random_max_delay BackupPolicy#random_max_delay} */ readonly randomMaxDelay?: string; /** * Scheme of the backups. Available values are: `ALWAYS_INCREMENTAL`, `ALWAYS_FULL`, `WEEKLY_FULL_DAILY_INCREMENTAL`, `WEEKLY_INCREMENTAL`. Default `ALWAYS_INCREMENTAL`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#scheme BackupPolicy#scheme} */ readonly scheme?: string; /** * A day of week to start weekly backups. See `day_type` for available values. Default `MONDAY`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#weekly_backup_day BackupPolicy#weekly_backup_day} */ readonly weeklyBackupDay?: string; /** * backup_sets block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#backup_sets BackupPolicy#backup_sets} */ readonly backupSets?: BackupPolicySchedulingBackupSets[] | cdktf.IResolvable; /** * execute_by_time block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#execute_by_time BackupPolicy#execute_by_time} */ readonly executeByTime?: BackupPolicySchedulingExecuteByTime[] | cdktf.IResolvable; } export declare function backupPolicySchedulingToTerraform(struct?: BackupPolicySchedulingOutputReference | BackupPolicyScheduling): any; export declare function backupPolicySchedulingToHclTerraform(struct?: BackupPolicySchedulingOutputReference | BackupPolicyScheduling): any; export declare class BackupPolicySchedulingOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): BackupPolicyScheduling | undefined; set internalValue(value: BackupPolicyScheduling | undefined); private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): any; private _executeByInterval?; get executeByInterval(): number; set executeByInterval(value: number); resetExecuteByInterval(): void; get executeByIntervalInput(): number; private _maxParallelBackups?; get maxParallelBackups(): number; set maxParallelBackups(value: number); resetMaxParallelBackups(): void; get maxParallelBackupsInput(): number; private _randomMaxDelay?; get randomMaxDelay(): string; set randomMaxDelay(value: string); resetRandomMaxDelay(): void; get randomMaxDelayInput(): string; private _scheme?; get scheme(): string; set scheme(value: string); resetScheme(): void; get schemeInput(): string; private _weeklyBackupDay?; get weeklyBackupDay(): string; set weeklyBackupDay(value: string); resetWeeklyBackupDay(): void; get weeklyBackupDayInput(): string; private _backupSets; get backupSets(): BackupPolicySchedulingBackupSetsList; putBackupSets(value: BackupPolicySchedulingBackupSets[] | cdktf.IResolvable): void; resetBackupSets(): void; get backupSetsInput(): any; private _executeByTime; get executeByTime(): BackupPolicySchedulingExecuteByTimeList; putExecuteByTime(value: BackupPolicySchedulingExecuteByTime[] | cdktf.IResolvable): void; resetExecuteByTime(): void; get executeByTimeInput(): any; } export interface BackupPolicyTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#create BackupPolicy#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#delete BackupPolicy#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#read BackupPolicy#read} */ readonly read?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#update BackupPolicy#update} */ readonly update?: string; } export declare function backupPolicyTimeoutsToTerraform(struct?: BackupPolicyTimeouts | cdktf.IResolvable): any; export declare function backupPolicyTimeoutsToHclTerraform(struct?: BackupPolicyTimeouts | cdktf.IResolvable): any; export declare class BackupPolicyTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): BackupPolicyTimeouts | cdktf.IResolvable | undefined; set internalValue(value: BackupPolicyTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string; private _read?; get read(): string; set read(value: string); resetRead(): void; get readInput(): string; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string; } export interface BackupPolicyVmSnapshotReattempts { /** * Enable flag. Default `true`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#enabled BackupPolicy#enabled} */ readonly enabled?: boolean | cdktf.IResolvable; /** * Retry interval. See `interval_type` for available values. Default: `5m`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#interval BackupPolicy#interval} */ readonly interval?: string; /** * Maximum number of attempts before throwing an error. Default `5`. * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#max_attempts BackupPolicy#max_attempts} */ readonly maxAttempts?: number; } export declare function backupPolicyVmSnapshotReattemptsToTerraform(struct?: BackupPolicyVmSnapshotReattemptsOutputReference | BackupPolicyVmSnapshotReattempts): any; export declare function backupPolicyVmSnapshotReattemptsToHclTerraform(struct?: BackupPolicyVmSnapshotReattemptsOutputReference | BackupPolicyVmSnapshotReattempts): any; export declare class BackupPolicyVmSnapshotReattemptsOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): BackupPolicyVmSnapshotReattempts | undefined; set internalValue(value: BackupPolicyVmSnapshotReattempts | undefined); private _enabled?; get enabled(): boolean | cdktf.IResolvable; set enabled(value: boolean | cdktf.IResolvable); resetEnabled(): void; get enabledInput(): any; private _interval?; get interval(): string; set interval(value: string); resetInterval(): void; get intervalInput(): string; private _maxAttempts?; get maxAttempts(): number; set maxAttempts(value: number); resetMaxAttempts(): void; get maxAttemptsInput(): number; } /** * Represents a {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy yandex_backup_policy} */ export declare class BackupPolicy extends cdktf.TerraformResource { static readonly tfResourceType = "yandex_backup_policy"; /** * Generates CDKTF code for importing a BackupPolicy 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 BackupPolicy to import * @param importFromId The id of the existing BackupPolicy that should be imported. Refer to the {@link https://registry.terraform.io/providers/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the BackupPolicy 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/yandex-cloud/yandex/0.177.0/docs/resources/backup_policy yandex_backup_policy} 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 BackupPolicyConfig */ constructor(scope: Construct, id: string, config: BackupPolicyConfig); private _archiveName?; get archiveName(): string; set archiveName(value: string); resetArchiveName(): void; get archiveNameInput(): string; private _cbt?; get cbt(): string; set cbt(value: string); resetCbt(): void; get cbtInput(): string; private _compression?; get compression(): string; set compression(value: string); resetCompression(): void; get compressionInput(): string; get createdAt(): any; get enabled(): any; private _fastBackupEnabled?; get fastBackupEnabled(): boolean | cdktf.IResolvable; set fastBackupEnabled(value: boolean | cdktf.IResolvable); resetFastBackupEnabled(): void; get fastBackupEnabledInput(): any; private _folderId?; get folderId(): string; set folderId(value: string); resetFolderId(): void; get folderIdInput(): string; private _format?; get format(): string; set format(value: string); resetFormat(): void; get formatInput(): string; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string; private _lvmSnapshottingEnabled?; get lvmSnapshottingEnabled(): boolean | cdktf.IResolvable; set lvmSnapshottingEnabled(value: boolean | cdktf.IResolvable); resetLvmSnapshottingEnabled(): void; get lvmSnapshottingEnabledInput(): any; private _multiVolumeSnapshottingEnabled?; get multiVolumeSnapshottingEnabled(): boolean | cdktf.IResolvable; set multiVolumeSnapshottingEnabled(value: boolean | cdktf.IResolvable); resetMultiVolumeSnapshottingEnabled(): void; get multiVolumeSnapshottingEnabledInput(): any; private _name?; get name(): string; set name(value: string); get nameInput(): string; private _performanceWindowEnabled?; get performanceWindowEnabled(): boolean | cdktf.IResolvable; set performanceWindowEnabled(value: boolean | cdktf.IResolvable); resetPerformanceWindowEnabled(): void; get performanceWindowEnabledInput(): any; private _preserveFileSecuritySettings?; get preserveFileSecuritySettings(): boolean | cdktf.IResolvable; set preserveFileSecuritySettings(value: boolean | cdktf.IResolvable); resetPreserveFileSecuritySettings(): void; get preserveFileSecuritySettingsInput(): any; private _quiesceSnapshottingEnabled?; get quiesceSnapshottingEnabled(): boolean | cdktf.IResolvable; set quiesceSnapshottingEnabled(value: boolean | cdktf.IResolvable); resetQuiesceSnapshottingEnabled(): void; get quiesceSnapshottingEnabledInput(): any; private _sectorBySector?; get sectorBySector(): boolean | cdktf.IResolvable; set sectorBySector(value: boolean | cdktf.IResolvable); resetSectorBySector(): void; get sectorBySectorInput(): any; private _silentModeEnabled?; get silentModeEnabled(): boolean | cdktf.IResolvable; set silentModeEnabled(value: boolean | cdktf.IResolvable); resetSilentModeEnabled(): void; get silentModeEnabledInput(): any; private _splittingBytes?; get splittingBytes(): string; set splittingBytes(value: string); resetSplittingBytes(): void; get splittingBytesInput(): string; get updatedAt(): any; private _validationEnabled?; get validationEnabled(): boolean | cdktf.IResolvable; set validationEnabled(value: boolean | cdktf.IResolvable); resetValidationEnabled(): void; get validationEnabledInput(): any; private _vssProvider?; get vssProvider(): string; set vssProvider(value: string); resetVssProvider(): void; get vssProviderInput(): string; private _fileFilters; get fileFilters(): BackupPolicyFileFiltersOutputReference; putFileFilters(value: BackupPolicyFileFilters): void; resetFileFilters(): void; get fileFiltersInput(): BackupPolicyFileFilters; private _reattempts; get reattempts(): BackupPolicyReattemptsOutputReference; putReattempts(value: BackupPolicyReattempts): void; get reattemptsInput(): BackupPolicyReattempts; private _retention; get retention(): BackupPolicyRetentionOutputReference; putRetention(value: BackupPolicyRetention): void; get retentionInput(): BackupPolicyRetention; private _scheduling; get scheduling(): BackupPolicySchedulingOutputReference; putScheduling(value: BackupPolicyScheduling): void; get schedulingInput(): BackupPolicyScheduling; private _timeouts; get timeouts(): BackupPolicyTimeoutsOutputReference; putTimeouts(value: BackupPolicyTimeouts): void; resetTimeouts(): void; get timeoutsInput(): any; private _vmSnapshotReattempts; get vmSnapshotReattempts(): BackupPolicyVmSnapshotReattemptsOutputReference; putVmSnapshotReattempts(value: BackupPolicyVmSnapshotReattempts): void; get vmSnapshotReattemptsInput(): BackupPolicyVmSnapshotReattempts; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }