@cdktf/provider-azurerm
Version:
Prebuilt azurerm Provider for Terraform CDK (cdktf)
1,255 lines • 172 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h;
Object.defineProperty(exports, "__esModule", { value: true });
exports.BackupPolicyFileShare = exports.BackupPolicyFileShareTimeoutsOutputReference = exports.backupPolicyFileShareTimeoutsToHclTerraform = exports.backupPolicyFileShareTimeoutsToTerraform = exports.BackupPolicyFileShareRetentionYearlyOutputReference = exports.backupPolicyFileShareRetentionYearlyToHclTerraform = exports.backupPolicyFileShareRetentionYearlyToTerraform = exports.BackupPolicyFileShareRetentionWeeklyOutputReference = exports.backupPolicyFileShareRetentionWeeklyToHclTerraform = exports.backupPolicyFileShareRetentionWeeklyToTerraform = exports.BackupPolicyFileShareRetentionMonthlyOutputReference = exports.backupPolicyFileShareRetentionMonthlyToHclTerraform = exports.backupPolicyFileShareRetentionMonthlyToTerraform = exports.BackupPolicyFileShareRetentionDailyOutputReference = exports.backupPolicyFileShareRetentionDailyToHclTerraform = exports.backupPolicyFileShareRetentionDailyToTerraform = exports.BackupPolicyFileShareBackupOutputReference = exports.backupPolicyFileShareBackupToHclTerraform = exports.backupPolicyFileShareBackupToTerraform = exports.BackupPolicyFileShareBackupHourlyOutputReference = exports.backupPolicyFileShareBackupHourlyToHclTerraform = exports.backupPolicyFileShareBackupHourlyToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function backupPolicyFileShareBackupHourlyToTerraform(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 {
interval: cdktf.numberToTerraform(struct.interval),
start_time: cdktf.stringToTerraform(struct.startTime),
window_duration: cdktf.numberToTerraform(struct.windowDuration),
};
}
exports.backupPolicyFileShareBackupHourlyToTerraform = backupPolicyFileShareBackupHourlyToTerraform;
function backupPolicyFileShareBackupHourlyToHclTerraform(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 = {
interval: {
value: cdktf.numberToHclTerraform(struct.interval),
isBlock: false,
type: "simple",
storageClassType: "number",
},
start_time: {
value: cdktf.stringToHclTerraform(struct.startTime),
isBlock: false,
type: "simple",
storageClassType: "string",
},
window_duration: {
value: cdktf.numberToHclTerraform(struct.windowDuration),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyFileShareBackupHourlyToHclTerraform = backupPolicyFileShareBackupHourlyToHclTerraform;
class BackupPolicyFileShareBackupHourlyOutputReference 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._interval !== undefined) {
hasAnyValues = true;
internalValueResult.interval = this._interval;
}
if (this._startTime !== undefined) {
hasAnyValues = true;
internalValueResult.startTime = this._startTime;
}
if (this._windowDuration !== undefined) {
hasAnyValues = true;
internalValueResult.windowDuration = this._windowDuration;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._interval = undefined;
this._startTime = undefined;
this._windowDuration = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._interval = value.interval;
this._startTime = value.startTime;
this._windowDuration = value.windowDuration;
}
}
get interval() {
return this.getNumberAttribute('interval');
}
set interval(value) {
this._interval = value;
}
// Temporarily expose input value. Use with caution.
get intervalInput() {
return this._interval;
}
get startTime() {
return this.getStringAttribute('start_time');
}
set startTime(value) {
this._startTime = value;
}
// Temporarily expose input value. Use with caution.
get startTimeInput() {
return this._startTime;
}
get windowDuration() {
return this.getNumberAttribute('window_duration');
}
set windowDuration(value) {
this._windowDuration = value;
}
// Temporarily expose input value. Use with caution.
get windowDurationInput() {
return this._windowDuration;
}
}
exports.BackupPolicyFileShareBackupHourlyOutputReference = BackupPolicyFileShareBackupHourlyOutputReference;
_a = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareBackupHourlyOutputReference[_a] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareBackupHourlyOutputReference", version: "12.27.0" };
function backupPolicyFileShareBackupToTerraform(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),
time: cdktf.stringToTerraform(struct.time),
hourly: backupPolicyFileShareBackupHourlyToTerraform(struct.hourly),
};
}
exports.backupPolicyFileShareBackupToTerraform = backupPolicyFileShareBackupToTerraform;
function backupPolicyFileShareBackupToHclTerraform(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",
},
time: {
value: cdktf.stringToHclTerraform(struct.time),
isBlock: false,
type: "simple",
storageClassType: "string",
},
hourly: {
value: backupPolicyFileShareBackupHourlyToHclTerraform(struct.hourly),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyFileShareBackupHourlyList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyFileShareBackupToHclTerraform = backupPolicyFileShareBackupToHclTerraform;
class BackupPolicyFileShareBackupOutputReference 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;
// hourly - computed: false, optional: true, required: false
this._hourly = new BackupPolicyFileShareBackupHourlyOutputReference(this, "hourly");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._frequency !== undefined) {
hasAnyValues = true;
internalValueResult.frequency = this._frequency;
}
if (this._time !== undefined) {
hasAnyValues = true;
internalValueResult.time = this._time;
}
if (this._hourly?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.hourly = this._hourly?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._frequency = undefined;
this._time = undefined;
this._hourly.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._frequency = value.frequency;
this._time = value.time;
this._hourly.internalValue = value.hourly;
}
}
get frequency() {
return this.getStringAttribute('frequency');
}
set frequency(value) {
this._frequency = value;
}
// Temporarily expose input value. Use with caution.
get frequencyInput() {
return this._frequency;
}
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 hourly() {
return this._hourly;
}
putHourly(value) {
this._hourly.internalValue = value;
}
resetHourly() {
this._hourly.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get hourlyInput() {
return this._hourly.internalValue;
}
}
exports.BackupPolicyFileShareBackupOutputReference = BackupPolicyFileShareBackupOutputReference;
_b = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareBackupOutputReference[_b] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareBackupOutputReference", version: "12.27.0" };
function backupPolicyFileShareRetentionDailyToTerraform(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.backupPolicyFileShareRetentionDailyToTerraform = backupPolicyFileShareRetentionDailyToTerraform;
function backupPolicyFileShareRetentionDailyToHclTerraform(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.backupPolicyFileShareRetentionDailyToHclTerraform = backupPolicyFileShareRetentionDailyToHclTerraform;
class BackupPolicyFileShareRetentionDailyOutputReference 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.BackupPolicyFileShareRetentionDailyOutputReference = BackupPolicyFileShareRetentionDailyOutputReference;
_c = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareRetentionDailyOutputReference[_c] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareRetentionDailyOutputReference", version: "12.27.0" };
function backupPolicyFileShareRetentionMonthlyToTerraform(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),
days: cdktf.listMapper(cdktf.numberToTerraform, false)(struct.days),
include_last_days: cdktf.booleanToTerraform(struct.includeLastDays),
weekdays: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weekdays),
weeks: cdktf.listMapper(cdktf.stringToTerraform, false)(struct.weeks),
};
}
exports.backupPolicyFileShareRetentionMonthlyToTerraform = backupPolicyFileShareRetentionMonthlyToTerraform;
function backupPolicyFileShareRetentionMonthlyToHclTerraform(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",
},
days: {
value: cdktf.listMapperHcl(cdktf.numberToHclTerraform, false)(struct.days),
isBlock: false,
type: "set",
storageClassType: "numberList",
},
include_last_days: {
value: cdktf.booleanToHclTerraform(struct.includeLastDays),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
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.backupPolicyFileShareRetentionMonthlyToHclTerraform = backupPolicyFileShareRetentionMonthlyToHclTerraform;
class BackupPolicyFileShareRetentionMonthlyOutputReference 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._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
if (this._includeLastDays !== undefined) {
hasAnyValues = true;
internalValueResult.includeLastDays = this._includeLastDays;
}
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._days = undefined;
this._includeLastDays = undefined;
this._weekdays = undefined;
this._weeks = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
this._days = value.days;
this._includeLastDays = value.includeLastDays;
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 days() {
return cdktf.Token.asNumberList(cdktf.Fn.tolist(this.getNumberListAttribute('days')));
}
set days(value) {
this._days = value;
}
resetDays() {
this._days = undefined;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
get includeLastDays() {
return this.getBooleanAttribute('include_last_days');
}
set includeLastDays(value) {
this._includeLastDays = value;
}
resetIncludeLastDays() {
this._includeLastDays = undefined;
}
// Temporarily expose input value. Use with caution.
get includeLastDaysInput() {
return this._includeLastDays;
}
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.BackupPolicyFileShareRetentionMonthlyOutputReference = BackupPolicyFileShareRetentionMonthlyOutputReference;
_d = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareRetentionMonthlyOutputReference[_d] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareRetentionMonthlyOutputReference", version: "12.27.0" };
function backupPolicyFileShareRetentionWeeklyToTerraform(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.backupPolicyFileShareRetentionWeeklyToTerraform = backupPolicyFileShareRetentionWeeklyToTerraform;
function backupPolicyFileShareRetentionWeeklyToHclTerraform(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.backupPolicyFileShareRetentionWeeklyToHclTerraform = backupPolicyFileShareRetentionWeeklyToHclTerraform;
class BackupPolicyFileShareRetentionWeeklyOutputReference 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.BackupPolicyFileShareRetentionWeeklyOutputReference = BackupPolicyFileShareRetentionWeeklyOutputReference;
_e = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareRetentionWeeklyOutputReference[_e] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareRetentionWeeklyOutputReference", version: "12.27.0" };
function backupPolicyFileShareRetentionYearlyToTerraform(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),
days: cdktf.listMapper(cdktf.numberToTerraform, false)(struct.days),
include_last_days: cdktf.booleanToTerraform(struct.includeLastDays),
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.backupPolicyFileShareRetentionYearlyToTerraform = backupPolicyFileShareRetentionYearlyToTerraform;
function backupPolicyFileShareRetentionYearlyToHclTerraform(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",
},
days: {
value: cdktf.listMapperHcl(cdktf.numberToHclTerraform, false)(struct.days),
isBlock: false,
type: "set",
storageClassType: "numberList",
},
include_last_days: {
value: cdktf.booleanToHclTerraform(struct.includeLastDays),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
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.backupPolicyFileShareRetentionYearlyToHclTerraform = backupPolicyFileShareRetentionYearlyToHclTerraform;
class BackupPolicyFileShareRetentionYearlyOutputReference 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._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
if (this._includeLastDays !== undefined) {
hasAnyValues = true;
internalValueResult.includeLastDays = this._includeLastDays;
}
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._days = undefined;
this._includeLastDays = undefined;
this._months = undefined;
this._weekdays = undefined;
this._weeks = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._count = value.count;
this._days = value.days;
this._includeLastDays = value.includeLastDays;
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 days() {
return cdktf.Token.asNumberList(cdktf.Fn.tolist(this.getNumberListAttribute('days')));
}
set days(value) {
this._days = value;
}
resetDays() {
this._days = undefined;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
get includeLastDays() {
return this.getBooleanAttribute('include_last_days');
}
set includeLastDays(value) {
this._includeLastDays = value;
}
resetIncludeLastDays() {
this._includeLastDays = undefined;
}
// Temporarily expose input value. Use with caution.
get includeLastDaysInput() {
return this._includeLastDays;
}
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.BackupPolicyFileShareRetentionYearlyOutputReference = BackupPolicyFileShareRetentionYearlyOutputReference;
_f = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareRetentionYearlyOutputReference[_f] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareRetentionYearlyOutputReference", version: "12.27.0" };
function backupPolicyFileShareTimeoutsToTerraform(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.backupPolicyFileShareTimeoutsToTerraform = backupPolicyFileShareTimeoutsToTerraform;
function backupPolicyFileShareTimeoutsToHclTerraform(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 = {
create: {
value: cdktf.stringToHclTerraform(struct.create),
isBlock: false,
type: "simple",
storageClassType: "string",
},
delete: {
value: cdktf.stringToHclTerraform(struct.delete),
isBlock: false,
type: "simple",
storageClassType: "string",
},
read: {
value: cdktf.stringToHclTerraform(struct.read),
isBlock: false,
type: "simple",
storageClassType: "string",
},
update: {
value: cdktf.stringToHclTerraform(struct.update),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.backupPolicyFileShareTimeoutsToHclTerraform = backupPolicyFileShareTimeoutsToHclTerraform;
class BackupPolicyFileShareTimeoutsOutputReference 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);
this.isEmptyObject = false;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._create !== undefined) {
hasAnyValues = true;
internalValueResult.create = this._create;
}
if (this._delete !== undefined) {
hasAnyValues = true;
internalValueResult.delete = this._delete;
}
if (this._read !== undefined) {
hasAnyValues = true;
internalValueResult.read = this._read;
}
if (this._update !== undefined) {
hasAnyValues = true;
internalValueResult.update = this._update;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._create = undefined;
this._delete = undefined;
this._read = undefined;
this._update = 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._create = value.create;
this._delete = value.delete;
this._read = value.read;
this._update = value.update;
}
}
get create() {
return this.getStringAttribute('create');
}
set create(value) {
this._create = value;
}
resetCreate() {
this._create = undefined;
}
// Temporarily expose input value. Use with caution.
get createInput() {
return this._create;
}
get delete() {
return this.getStringAttribute('delete');
}
set delete(value) {
this._delete = value;
}
resetDelete() {
this._delete = undefined;
}
// Temporarily expose input value. Use with caution.
get deleteInput() {
return this._delete;
}
get read() {
return this.getStringAttribute('read');
}
set read(value) {
this._read = value;
}
resetRead() {
this._read = undefined;
}
// Temporarily expose input value. Use with caution.
get readInput() {
return this._read;
}
get update() {
return this.getStringAttribute('update');
}
set update(value) {
this._update = value;
}
resetUpdate() {
this._update = undefined;
}
// Temporarily expose input value. Use with caution.
get updateInput() {
return this._update;
}
}
exports.BackupPolicyFileShareTimeoutsOutputReference = BackupPolicyFileShareTimeoutsOutputReference;
_g = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShareTimeoutsOutputReference[_g] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShareTimeoutsOutputReference", version: "12.27.0" };
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/backup_policy_file_share azurerm_backup_policy_file_share}
*/
class BackupPolicyFileShare extends cdktf.TerraformResource {
// ==============
// STATIC Methods
// ==============
/**
* Generates CDKTF code for importing a BackupPolicyFileShare resource upon running "cdktf plan <stack-name>"
* @param scope The scope in which to define this construct
* @param importToId The construct id used in the generated config for the BackupPolicyFileShare to import
* @param importFromId The id of the existing BackupPolicyFileShare that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/backup_policy_file_share#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the BackupPolicyFileShare to import is found
*/
static generateConfigForImport(scope, importToId, importFromId, provider) {
return new cdktf.ImportableResource(scope, importToId, { terraformResourceType: "azurerm_backup_policy_file_share", importId: importFromId, provider });
}
// ===========
// INITIALIZER
// ===========
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/azurerm/3.116.0/docs/resources/backup_policy_file_share azurerm_backup_policy_file_share} 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 BackupPolicyFileShareConfig
*/
constructor(scope, id, config) {
super(scope, id, {
terraformResourceType: 'azurerm_backup_policy_file_share',
terraformGeneratorMetadata: {
providerName: 'azurerm',
providerVersion: '3.116.0',
providerVersionConstraint: '~> 3.10'
},
provider: config.provider,
dependsOn: config.dependsOn,
count: config.count,
lifecycle: config.lifecycle,
provisioners: config.provisioners,
connection: config.connection,
forEach: config.forEach
});
// backup - computed: false, optional: false, required: true
this._backup = new BackupPolicyFileShareBackupOutputReference(this, "backup");
// retention_daily - computed: false, optional: false, required: true
this._retentionDaily = new BackupPolicyFileShareRetentionDailyOutputReference(this, "retention_daily");
// retention_monthly - computed: false, optional: true, required: false
this._retentionMonthly = new BackupPolicyFileShareRetentionMonthlyOutputReference(this, "retention_monthly");
// retention_weekly - computed: false, optional: true, required: false
this._retentionWeekly = new BackupPolicyFileShareRetentionWeeklyOutputReference(this, "retention_weekly");
// retention_yearly - computed: false, optional: true, required: false
this._retentionYearly = new BackupPolicyFileShareRetentionYearlyOutputReference(this, "retention_yearly");
// timeouts - computed: false, optional: true, required: false
this._timeouts = new BackupPolicyFileShareTimeoutsOutputReference(this, "timeouts");
this._id = config.id;
this._name = config.name;
this._recoveryVaultName = config.recoveryVaultName;
this._resourceGroupName = config.resourceGroupName;
this._timezone = config.timezone;
this._backup.internalValue = config.backup;
this._retentionDaily.internalValue = config.retentionDaily;
this._retentionMonthly.internalValue = config.retentionMonthly;
this._retentionWeekly.internalValue = config.retentionWeekly;
this._retentionYearly.internalValue = config.retentionYearly;
this._timeouts.internalValue = config.timeouts;
}
get id() {
return this.getStringAttribute('id');
}
set id(value) {
this._id = value;
}
resetId() {
this._id = undefined;
}
// Temporarily expose input value. Use with caution.
get idInput() {
return this._id;
}
get name() {
return this.getStringAttribute('name');
}
set name(value) {
this._name = value;
}
// Temporarily expose input value. Use with caution.
get nameInput() {
return this._name;
}
get recoveryVaultName() {
return this.getStringAttribute('recovery_vault_name');
}
set recoveryVaultName(value) {
this._recoveryVaultName = value;
}
// Temporarily expose input value. Use with caution.
get recoveryVaultNameInput() {
return this._recoveryVaultName;
}
get resourceGroupName() {
return this.getStringAttribute('resource_group_name');
}
set resourceGroupName(value) {
this._resourceGroupName = value;
}
// Temporarily expose input value. Use with caution.
get resourceGroupNameInput() {
return this._resourceGroupName;
}
get timezone() {
return this.getStringAttribute('timezone');
}
set timezone(value) {
this._timezone = value;
}
resetTimezone() {
this._timezone = undefined;
}
// Temporarily expose input value. Use with caution.
get timezoneInput() {
return this._timezone;
}
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;
}
// 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 timeouts() {
return this._timeouts;
}
putTimeouts(value) {
this._timeouts.internalValue = value;
}
resetTimeouts() {
this._timeouts.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get timeoutsInput() {
return this._timeouts.internalValue;
}
// =========
// SYNTHESIS
// =========
synthesizeAttributes() {
return {
id: cdktf.stringToTerraform(this._id),
name: cdktf.stringToTerraform(this._name),
recovery_vault_name: cdktf.stringToTerraform(this._recoveryVaultName),
resource_group_name: cdktf.stringToTerraform(this._resourceGroupName),
timezone: cdktf.stringToTerraform(this._timezone),
backup: backupPolicyFileShareBackupToTerraform(this._backup.internalValue),
retention_daily: backupPolicyFileShareRetentionDailyToTerraform(this._retentionDaily.internalValue),
retention_monthly: backupPolicyFileShareRetentionMonthlyToTerraform(this._retentionMonthly.internalValue),
retention_weekly: backupPolicyFileShareRetentionWeeklyToTerraform(this._retentionWeekly.internalValue),
retention_yearly: backupPolicyFileShareRetentionYearlyToTerraform(this._retentionYearly.internalValue),
timeouts: backupPolicyFileShareTimeoutsToTerraform(this._timeouts.internalValue),
};
}
synthesizeHclAttributes() {
const attrs = {
id: {
value: cdktf.stringToHclTerraform(this._id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
name: {
value: cdktf.stringToHclTerraform(this._name),
isBlock: false,
type: "simple",
storageClassType: "string",
},
recovery_vault_name: {
value: cdktf.stringToHclTerraform(this._recoveryVaultName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
resource_group_name: {
value: cdktf.stringToHclTerraform(this._resourceGroupName),
isBlock: false,
type: "simple",
storageClassType: "string",
},
timezone: {
value: cdktf.stringToHclTerraform(this._timezone),
isBlock: false,
type: "simple",
storageClassType: "string",
},
backup: {
value: backupPolicyFileShareBackupToHclTerraform(this._backup.internalValue),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyFileShareBackupList",
},
retention_daily: {
value: backupPolicyFileShareRetentionDailyToHclTerraform(this._retentionDaily.internalValue),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyFileShareRetentionDailyList",
},
retention_monthly: {
value: backupPolicyFileShareRetentionMonthlyToHclTerraform(this._retentionMonthly.internalValue),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyFileShareRetentionMonthlyList",
},
retention_weekly: {
value: backupPolicyFileShareRetentionWeeklyToHclTerraform(this._retentionWeekly.internalValue),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyFileShareRetentionWeeklyList",
},
retention_yearly: {
value: backupPolicyFileShareRetentionYearlyToHclTerraform(this._retentionYearly.internalValue),
isBlock: true,
type: "list",
storageClassType: "BackupPolicyFileShareRetentionYearlyList",
},
timeouts: {
value: backupPolicyFileShareTimeoutsToHclTerraform(this._timeouts.internalValue),
isBlock: true,
type: "struct",
storageClassType: "BackupPolicyFileShareTimeouts",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
}
exports.BackupPolicyFileShare = BackupPolicyFileShare;
_h = JSII_RTTI_SYMBOL_1;
BackupPolicyFileShare[_h] = { fqn: "@cdktf/provider-azurerm.backupPolicyFileShare.BackupPolicyFileShare", version: "12.27.0" };
// =================
// STATIC PROPERTIES
// =================
BackupPolicyFileShare.tfResourceType = "azurerm_backup_policy_file_share";
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYmFja3VwLXBvbGljeS1maWxlLXNoYXJlL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7O0FBU0EsK0JBQStCO0FBZ0YvQixTQUFnQiw0Q0FBNEMsQ0FBQyxNQUE2RjtJQUN4SixJQUFJLENBQUMsS0FBSyxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsSUFBSSxLQUFLLENBQUMsWUFBWSxDQUFDLFlBQVksQ0FBQyxNQUFNLENBQUMsRUFBRSxDQUFDO1FBQUMsT0FBTyxNQUFNLENBQUM7SUFBQyxDQUFDO0lBQzVGLElBQUksS0FBSyxDQUFDLGdCQUFnQixDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7UUFDbkMsTUFBTSxJQUFJLEtBQUssQ0FBQyxvSEFBb0gsQ0FBQyxDQUFDO0lBQ3hJLENBQUM7SUFDRCxPQUFPO1FBQ0wsUUFBUSxFQUFFLEtBQUssQ0FBQyxpQkFBaUIsQ0FBQyxNQUFPLENBQUMsUUFBUSxDQUFDO1FBQ25ELFVBQVUsRUFBRSxLQUFLLENBQUMsaUJBQWlCLENBQUMsTUFBTyxDQUFDLFNBQVMsQ0FBQztRQUN0RCxlQUFlLEVBQUU