@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,163 lines • 217 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackupPolicyVmWorkload = exports.BackupPolicyVmWorkloadTimeoutsOutputReference = exports.backupPolicyVmWorkloadTimeoutsToHclTerraform = exports.backupPolicyVmWorkloadTimeoutsToTerraform = exports.BackupPolicyVmWorkloadSettingsOutputReference = exports.backupPolicyVmWorkloadSettingsToHclTerraform = exports.backupPolicyVmWorkloadSettingsToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicyList = exports.BackupPolicyVmWorkloadProtectionPolicyOutputReference = exports.backupPolicyVmWorkloadProtectionPolicyToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicyToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference = exports.backupPolicyVmWorkloadProtectionPolicySimpleRetentionToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicySimpleRetentionToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference = exports.backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference = exports.backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference = exports.backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference = exports.backupPolicyVmWorkloadProtectionPolicyRetentionDailyToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicyRetentionDailyToTerraform = exports.BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference = exports.backupPolicyVmWorkloadProtectionPolicyBackupToHclTerraform = exports.backupPolicyVmWorkloadProtectionPolicyBackupToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function backupPolicyVmWorkloadProtectionPolicyBackupToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
frequency: cdktf.stringToTerraform(struct.frequency),
frequency_in_minutes: cdktf.numberToTerraform(struct.frequencyInMinutes),
time: cdktf.stringToTerraform(struct.time),
weekdays: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weekdays),
};
}
exports.backupPolicyVmWorkloadProtectionPolicyBackupToTerraform = backupPolicyVmWorkloadProtectionPolicyBackupToTerraform;
function backupPolicyVmWorkloadProtectionPolicyBackupToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
frequency: {
value: cdktf.stringToHclTerraform(struct.frequency),
isBlock: false,
type: "simple",
storageClassType: "string",
},
frequency_in_minutes: {
value: cdktf.numberToHclTerraform(struct.frequencyInMinutes),
isBlock: false,
type: "simple",
storageClassType: "number",
},
time: {
value: cdktf.stringToHclTerraform(struct.time),
isBlock: false,
type: "simple",
storageClassType: "string",
},
weekdays: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.weekdays),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicyBackupToHclTerraform = backupPolicyVmWorkloadProtectionPolicyBackupToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._frequency !== undefined) {
hasAnyValues = true;
internalValueResult.frequency = this._frequency;
}
if (this._frequencyInMinutes !== undefined) {
hasAnyValues = true;
internalValueResult.frequencyInMinutes = this._frequencyInMinutes;
}
if (this._time !== undefined) {
hasAnyValues = true;
internalValueResult.time = this._time;
}
if (this._weekdays !== undefined) {
hasAnyValues = true;
internalValueResult.weekdays = this._weekdays;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._frequency = undefined;
this._frequencyInMinutes = undefined;
this._time = undefined;
this._weekdays = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._frequency = value.frequency;
this._frequencyInMinutes = value.frequencyInMinutes;
this._time = value.time;
this._weekdays = value.weekdays;
}
}
get frequency() {
return this.getStringAttribute('frequency');
}
set frequency(value) {
this._frequency = value;
}
resetFrequency() {
this._frequency = undefined;
}
// Temporarily expose input value. Use with caution.
get frequencyInput() {
return this._frequency;
}
get frequencyInMinutes() {
return this.getNumberAttribute('frequency_in_minutes');
}
set frequencyInMinutes(value) {
this._frequencyInMinutes = value;
}
resetFrequencyInMinutes() {
this._frequencyInMinutes = undefined;
}
// Temporarily expose input value. Use with caution.
get frequencyInMinutesInput() {
return this._frequencyInMinutes;
}
get time() {
return this.getStringAttribute('time');
}
set time(value) {
this._time = value;
}
resetTime() {
this._time = undefined;
}
// Temporarily expose input value. Use with caution.
get timeInput() {
return this._time;
}
get weekdays() {
return cdktf.Fn.tolist(this.getListAttribute('weekdays'));
}
set weekdays(value) {
this._weekdays = value;
}
resetWeekdays() {
this._weekdays = undefined;
}
// Temporarily expose input value. Use with caution.
get weekdaysInput() {
return this._weekdays;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference = BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference;
_a = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadProtectionPolicyRetentionDailyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
count: cdktf.numberToTerraform(struct.count),
};
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionDailyToTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionDailyToTerraform;
function backupPolicyVmWorkloadProtectionPolicyRetentionDailyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
count: {
value: cdktf.numberToHclTerraform(struct.count),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionDailyToHclTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionDailyToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._count !== undefined) {
hasAnyValues = true;
internalValueResult.count = this._count;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._count = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
}
}
get count() {
return this.getNumberAttribute('count');
}
set count(value) {
this._count = value;
}
// Temporarily expose input value. Use with caution.
get countInput() {
return this._count;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference = BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference;
_b = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
count: cdktf.numberToTerraform(struct.count),
format_type: cdktf.stringToTerraform(struct.formatType),
monthdays: cdktf.listMapper(cdktf.numberToTerraform, false)(struct.monthdays),
weekdays: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weekdays),
weeks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weeks),
};
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToTerraform;
function backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
count: {
value: cdktf.numberToHclTerraform(struct.count),
isBlock: false,
type: "simple",
storageClassType: "number",
},
format_type: {
value: cdktf.stringToHclTerraform(struct.formatType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
monthdays: {
value: cdktf.listMapperHcl(cdktf.numberToHclTerraform, false)(struct.monthdays),
isBlock: false,
type: "set",
storageClassType: "numberList",
},
weekdays: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.weekdays),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
weeks: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.weeks),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToHclTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._count !== undefined) {
hasAnyValues = true;
internalValueResult.count = this._count;
}
if (this._formatType !== undefined) {
hasAnyValues = true;
internalValueResult.formatType = this._formatType;
}
if (this._monthdays !== undefined) {
hasAnyValues = true;
internalValueResult.monthdays = this._monthdays;
}
if (this._weekdays !== undefined) {
hasAnyValues = true;
internalValueResult.weekdays = this._weekdays;
}
if (this._weeks !== undefined) {
hasAnyValues = true;
internalValueResult.weeks = this._weeks;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._count = undefined;
this._formatType = undefined;
this._monthdays = undefined;
this._weekdays = undefined;
this._weeks = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
this._formatType = value.formatType;
this._monthdays = value.monthdays;
this._weekdays = value.weekdays;
this._weeks = value.weeks;
}
}
get count() {
return this.getNumberAttribute('count');
}
set count(value) {
this._count = value;
}
// Temporarily expose input value. Use with caution.
get countInput() {
return this._count;
}
get formatType() {
return this.getStringAttribute('format_type');
}
set formatType(value) {
this._formatType = value;
}
// Temporarily expose input value. Use with caution.
get formatTypeInput() {
return this._formatType;
}
get monthdays() {
return cdktf.Token.asNumberList(cdktf.Fn.tolist(this.getNumberListAttribute('monthdays')));
}
set monthdays(value) {
this._monthdays = value;
}
resetMonthdays() {
this._monthdays = undefined;
}
// Temporarily expose input value. Use with caution.
get monthdaysInput() {
return this._monthdays;
}
get weekdays() {
return cdktf.Fn.tolist(this.getListAttribute('weekdays'));
}
set weekdays(value) {
this._weekdays = value;
}
resetWeekdays() {
this._weekdays = undefined;
}
// Temporarily expose input value. Use with caution.
get weekdaysInput() {
return this._weekdays;
}
get weeks() {
return cdktf.Fn.tolist(this.getListAttribute('weeks'));
}
set weeks(value) {
this._weeks = value;
}
resetWeeks() {
this._weeks = undefined;
}
// Temporarily expose input value. Use with caution.
get weeksInput() {
return this._weeks;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference = BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference;
_c = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
count: cdktf.numberToTerraform(struct.count),
weekdays: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weekdays),
};
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToTerraform;
function backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
count: {
value: cdktf.numberToHclTerraform(struct.count),
isBlock: false,
type: "simple",
storageClassType: "number",
},
weekdays: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.weekdays),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToHclTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._count !== undefined) {
hasAnyValues = true;
internalValueResult.count = this._count;
}
if (this._weekdays !== undefined) {
hasAnyValues = true;
internalValueResult.weekdays = this._weekdays;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._count = undefined;
this._weekdays = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
this._weekdays = value.weekdays;
}
}
get count() {
return this.getNumberAttribute('count');
}
set count(value) {
this._count = value;
}
// Temporarily expose input value. Use with caution.
get countInput() {
return this._count;
}
get weekdays() {
return cdktf.Fn.tolist(this.getListAttribute('weekdays'));
}
set weekdays(value) {
this._weekdays = value;
}
// Temporarily expose input value. Use with caution.
get weekdaysInput() {
return this._weekdays;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference = BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference;
_d = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
count: cdktf.numberToTerraform(struct.count),
format_type: cdktf.stringToTerraform(struct.formatType),
monthdays: cdktf.listMapper(cdktf.numberToTerraform, false)(struct.monthdays),
months: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.months),
weekdays: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weekdays),
weeks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weeks),
};
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToTerraform;
function backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
count: {
value: cdktf.numberToHclTerraform(struct.count),
isBlock: false,
type: "simple",
storageClassType: "number",
},
format_type: {
value: cdktf.stringToHclTerraform(struct.formatType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
monthdays: {
value: cdktf.listMapperHcl(cdktf.numberToHclTerraform, false)(struct.monthdays),
isBlock: false,
type: "set",
storageClassType: "numberList",
},
months: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.months),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
weekdays: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.weekdays),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
weeks: {
value: cdktf.listMapperHcl(cdktf.stringToHclTerraform, false)(struct.weeks),
isBlock: false,
type: "set",
storageClassType: "stringList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToHclTerraform = backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._count !== undefined) {
hasAnyValues = true;
internalValueResult.count = this._count;
}
if (this._formatType !== undefined) {
hasAnyValues = true;
internalValueResult.formatType = this._formatType;
}
if (this._monthdays !== undefined) {
hasAnyValues = true;
internalValueResult.monthdays = this._monthdays;
}
if (this._months !== undefined) {
hasAnyValues = true;
internalValueResult.months = this._months;
}
if (this._weekdays !== undefined) {
hasAnyValues = true;
internalValueResult.weekdays = this._weekdays;
}
if (this._weeks !== undefined) {
hasAnyValues = true;
internalValueResult.weeks = this._weeks;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._count = undefined;
this._formatType = undefined;
this._monthdays = undefined;
this._months = undefined;
this._weekdays = undefined;
this._weeks = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
this._formatType = value.formatType;
this._monthdays = value.monthdays;
this._months = value.months;
this._weekdays = value.weekdays;
this._weeks = value.weeks;
}
}
get count() {
return this.getNumberAttribute('count');
}
set count(value) {
this._count = value;
}
// Temporarily expose input value. Use with caution.
get countInput() {
return this._count;
}
get formatType() {
return this.getStringAttribute('format_type');
}
set formatType(value) {
this._formatType = value;
}
// Temporarily expose input value. Use with caution.
get formatTypeInput() {
return this._formatType;
}
get monthdays() {
return cdktf.Token.asNumberList(cdktf.Fn.tolist(this.getNumberListAttribute('monthdays')));
}
set monthdays(value) {
this._monthdays = value;
}
resetMonthdays() {
this._monthdays = undefined;
}
// Temporarily expose input value. Use with caution.
get monthdaysInput() {
return this._monthdays;
}
get months() {
return cdktf.Fn.tolist(this.getListAttribute('months'));
}
set months(value) {
this._months = value;
}
// Temporarily expose input value. Use with caution.
get monthsInput() {
return this._months;
}
get weekdays() {
return cdktf.Fn.tolist(this.getListAttribute('weekdays'));
}
set weekdays(value) {
this._weekdays = value;
}
resetWeekdays() {
this._weekdays = undefined;
}
// Temporarily expose input value. Use with caution.
get weekdaysInput() {
return this._weekdays;
}
get weeks() {
return cdktf.Fn.tolist(this.getListAttribute('weeks'));
}
set weeks(value) {
this._weeks = value;
}
resetWeeks() {
this._weeks = undefined;
}
// Temporarily expose input value. Use with caution.
get weeksInput() {
return this._weeks;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference = BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference;
_e = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadProtectionPolicySimpleRetentionToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
count: cdktf.numberToTerraform(struct.count),
};
}
exports.backupPolicyVmWorkloadProtectionPolicySimpleRetentionToTerraform = backupPolicyVmWorkloadProtectionPolicySimpleRetentionToTerraform;
function backupPolicyVmWorkloadProtectionPolicySimpleRetentionToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
count: {
value: cdktf.numberToHclTerraform(struct.count),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicySimpleRetentionToHclTerraform = backupPolicyVmWorkloadProtectionPolicySimpleRetentionToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._count !== undefined) {
hasAnyValues = true;
internalValueResult.count = this._count;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._count = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
}
}
get count() {
return this.getNumberAttribute('count');
}
set count(value) {
this._count = value;
}
// Temporarily expose input value. Use with caution.
get countInput() {
return this._count;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference = BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference;
_f = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadProtectionPolicyToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
policy_type: cdktf.stringToTerraform(struct.policyType),
backup: backupPolicyVmWorkloadProtectionPolicyBackupToTerraform(struct.backup),
retention_daily: backupPolicyVmWorkloadProtectionPolicyRetentionDailyToTerraform(struct.retentionDaily),
retention_monthly: backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToTerraform(struct.retentionMonthly),
retention_weekly: backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToTerraform(struct.retentionWeekly),
retention_yearly: backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToTerraform(struct.retentionYearly),
simple_retention: backupPolicyVmWorkloadProtectionPolicySimpleRetentionToTerraform(struct.simpleRetention),
};
}
exports.backupPolicyVmWorkloadProtectionPolicyToTerraform = backupPolicyVmWorkloadProtectionPolicyToTerraform;
function backupPolicyVmWorkloadProtectionPolicyToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
policy_type: {
value: cdktf.stringToHclTerraform(struct.policyType),
isBlock: false,
type: "simple",
storageClassType: "string",
},
backup: {
value: backupPolicyVmWorkloadProtectionPolicyBackupToHclTerraform(struct.backup),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyVmWorkloadProtectionPolicyBackupList",
},
retention_daily: {
value: backupPolicyVmWorkloadProtectionPolicyRetentionDailyToHclTerraform(struct.retentionDaily),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyVmWorkloadProtectionPolicyRetentionDailyList",
},
retention_monthly: {
value: backupPolicyVmWorkloadProtectionPolicyRetentionMonthlyToHclTerraform(struct.retentionMonthly),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyList",
},
retention_weekly: {
value: backupPolicyVmWorkloadProtectionPolicyRetentionWeeklyToHclTerraform(struct.retentionWeekly),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyList",
},
retention_yearly: {
value: backupPolicyVmWorkloadProtectionPolicyRetentionYearlyToHclTerraform(struct.retentionYearly),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyList",
},
simple_retention: {
value: backupPolicyVmWorkloadProtectionPolicySimpleRetentionToHclTerraform(struct.simpleRetention),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyVmWorkloadProtectionPolicySimpleRetentionList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadProtectionPolicyToHclTerraform = backupPolicyVmWorkloadProtectionPolicyToHclTerraform;
class BackupPolicyVmWorkloadProtectionPolicyOutputReference extends cdktf.ComplexObject {
/**
* @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, terraformAttribute, complexObjectIndex, complexObjectIsFromSet) {
super(terraformResource, terraformAttribute, complexObjectIsFromSet, complexObjectIndex);
this.isEmptyObject = false;
// backup - computed: false, optional: false, required: true
this._backup = new BackupPolicyVmWorkloadProtectionPolicyBackupOutputReference(this, "backup");
// retention_daily - computed: false, optional: true, required: false
this._retentionDaily = new BackupPolicyVmWorkloadProtectionPolicyRetentionDailyOutputReference(this, "retention_daily");
// retention_monthly - computed: false, optional: true, required: false
this._retentionMonthly = new BackupPolicyVmWorkloadProtectionPolicyRetentionMonthlyOutputReference(this, "retention_monthly");
// retention_weekly - computed: false, optional: true, required: false
this._retentionWeekly = new BackupPolicyVmWorkloadProtectionPolicyRetentionWeeklyOutputReference(this, "retention_weekly");
// retention_yearly - computed: false, optional: true, required: false
this._retentionYearly = new BackupPolicyVmWorkloadProtectionPolicyRetentionYearlyOutputReference(this, "retention_yearly");
// simple_retention - computed: false, optional: true, required: false
this._simpleRetention = new BackupPolicyVmWorkloadProtectionPolicySimpleRetentionOutputReference(this, "simple_retention");
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._policyType !== undefined) {
hasAnyValues = true;
internalValueResult.policyType = this._policyType;
}
if (this._backup?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.backup = this._backup?.internalValue;
}
if (this._retentionDaily?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.retentionDaily = this._retentionDaily?.internalValue;
}
if (this._retentionMonthly?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.retentionMonthly = this._retentionMonthly?.internalValue;
}
if (this._retentionWeekly?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.retentionWeekly = this._retentionWeekly?.internalValue;
}
if (this._retentionYearly?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.retentionYearly = this._retentionYearly?.internalValue;
}
if (this._simpleRetention?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.simpleRetention = this._simpleRetention?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._policyType = undefined;
this._backup.internalValue = undefined;
this._retentionDaily.internalValue = undefined;
this._retentionMonthly.internalValue = undefined;
this._retentionWeekly.internalValue = undefined;
this._retentionYearly.internalValue = undefined;
this._simpleRetention.internalValue = undefined;
}
else if (cdktf.Tokenization.isResolvable(value)) {
this.isEmptyObject = false;
this.resolvableValue = value;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this.resolvableValue = undefined;
this._policyType = value.policyType;
this._backup.internalValue = value.backup;
this._retentionDaily.internalValue = value.retentionDaily;
this._retentionMonthly.internalValue = value.retentionMonthly;
this._retentionWeekly.internalValue = value.retentionWeekly;
this._retentionYearly.internalValue = value.retentionYearly;
this._simpleRetention.internalValue = value.simpleRetention;
}
}
get policyType() {
return this.getStringAttribute('policy_type');
}
set policyType(value) {
this._policyType = value;
}
// Temporarily expose input value. Use with caution.
get policyTypeInput() {
return this._policyType;
}
get backup() {
return this._backup;
}
putBackup(value) {
this._backup.internalValue = value;
}
// Temporarily expose input value. Use with caution.
get backupInput() {
return this._backup.internalValue;
}
get retentionDaily() {
return this._retentionDaily;
}
putRetentionDaily(value) {
this._retentionDaily.internalValue = value;
}
resetRetentionDaily() {
this._retentionDaily.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get retentionDailyInput() {
return this._retentionDaily.internalValue;
}
get retentionMonthly() {
return this._retentionMonthly;
}
putRetentionMonthly(value) {
this._retentionMonthly.internalValue = value;
}
resetRetentionMonthly() {
this._retentionMonthly.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get retentionMonthlyInput() {
return this._retentionMonthly.internalValue;
}
get retentionWeekly() {
return this._retentionWeekly;
}
putRetentionWeekly(value) {
this._retentionWeekly.internalValue = value;
}
resetRetentionWeekly() {
this._retentionWeekly.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get retentionWeeklyInput() {
return this._retentionWeekly.internalValue;
}
get retentionYearly() {
return this._retentionYearly;
}
putRetentionYearly(value) {
this._retentionYearly.internalValue = value;
}
resetRetentionYearly() {
this._retentionYearly.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get retentionYearlyInput() {
return this._retentionYearly.internalValue;
}
get simpleRetention() {
return this._simpleRetention;
}
putSimpleRetention(value) {
this._simpleRetention.internalValue = value;
}
resetSimpleRetention() {
this._simpleRetention.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get simpleRetentionInput() {
return this._simpleRetention.internalValue;
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyOutputReference = BackupPolicyVmWorkloadProtectionPolicyOutputReference;
_g = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyOutputReference", version: "12.27.0" };
class BackupPolicyVmWorkloadProtectionPolicyList extends cdktf.ComplexList {
/**
* @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, terraformAttribute, wrapsSet) {
super(terraformResource, terraformAttribute, wrapsSet);
this.terraformResource = terraformResource;
this.terraformAttribute = terraformAttribute;
this.wrapsSet = wrapsSet;
}
/**
* @param index the index of the item to return
*/
get(index) {
return new BackupPolicyVmWorkloadProtectionPolicyOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.BackupPolicyVmWorkloadProtectionPolicyList = BackupPolicyVmWorkloadProtectionPolicyList;
_h = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadProtectionPolicyList[_h] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadProtectionPolicyList", version: "12.27.0" };
function backupPolicyVmWorkloadSettingsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
compression_enabled: cdktf.booleanToTerraform(struct.compressionEnabled),
time_zone: cdktf.stringToTerraform(struct.timeZone),
};
}
exports.backupPolicyVmWorkloadSettingsToTerraform = backupPolicyVmWorkloadSettingsToTerraform;
function backupPolicyVmWorkloadSettingsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
const attrs = {
compression_enabled: {
value: cdktf.booleanToHclTerraform(struct.compressionEnabled),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
time_zone: {
value: cdktf.stringToHclTerraform(struct.timeZone),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyVmWorkloadSettingsToHclTerraform = backupPolicyVmWorkloadSettingsToHclTerraform;
class BackupPolicyVmWorkloadSettingsOutputReference extends cdktf.ComplexObject {
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource, terraformAttribute) {
super(terraformResource, terraformAttribute, false, 0);
this.isEmptyObject = false;
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._compressionEnabled !== undefined) {
hasAnyValues = true;
internalValueResult.compressionEnabled = this._compressionEnabled;
}
if (this._timeZone !== undefined) {
hasAnyValues = true;
internalValueResult.timeZone = this._timeZone;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._compressionEnabled = undefined;
this._timeZone = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._compressionEnabled = value.compressionEnabled;
this._timeZone = value.timeZone;
}
}
get compressionEnabled() {
return this.getBooleanAttribute('compression_enabled');
}
set compressionEnabled(value) {
this._compressionEnabled = value;
}
resetCompressionEnabled() {
this._compressionEnabled = undefined;
}
// Temporarily expose input value. Use with caution.
get compressionEnabledInput() {
return this._compressionEnabled;
}
get timeZone() {
return this.getStringAttribute('time_zone');
}
set timeZone(value) {
this._timeZone = value;
}
// Temporarily expose input value. Use with caution.
get timeZoneInput() {
return this._timeZone;
}
}
exports.BackupPolicyVmWorkloadSettingsOutputReference = BackupPolicyVmWorkloadSettingsOutputReference;
_j = JSII_RTTI_SYMBOL_1;
BackupPolicyVmWorkloadSettingsOutputReference[_j] = { fqn: "@cdktf/provider-azurerm.backupPolicyVmWorkload.BackupPolicyVmWorkloadSettingsOutputReference", version: "12.27.0" };
function backupPolicyVmWorkloadTimeoutsToTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct)) {
throw new Error("A complex element was used as configuration, this is not supported: https://cdk.tf/complex-object-as-configuration");
}
return {
create: cdktf.stringToTerraform(struct.create),
delete: cdktf.stringToTerraform(struct.delete),
read: cdktf.stringToTerraform(struct.read),
update: cdktf.stringToTerraform(struct.update),
};
}
exports.backupPolicyVmWorkloadTimeoutsToTerraform = backupPolicyVmWorkloadTimeoutsToTerraform;
function backupPolicyVmWorkloadTimeoutsToHclTerraform(struct) {
if (!cdktf.canInspect(struct) || cdktf.Tokenization.isResolvable(struct)) {
return struct;
}
if (cdktf.isComplexElement(struct))