@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
1,128 lines • 245 kB
JavaScript
"use strict";
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p;
Object.defineProperty(exports, "__esModule", { value: true });
exports.S3BucketLifecycleConfiguration = exports.S3BucketLifecycleConfigurationTimeoutsOutputReference = exports.s3BucketLifecycleConfigurationTimeoutsToHclTerraform = exports.s3BucketLifecycleConfigurationTimeoutsToTerraform = exports.S3BucketLifecycleConfigurationRuleList = exports.S3BucketLifecycleConfigurationRuleOutputReference = exports.s3BucketLifecycleConfigurationRuleToHclTerraform = exports.s3BucketLifecycleConfigurationRuleToTerraform = exports.S3BucketLifecycleConfigurationRuleTransitionList = exports.S3BucketLifecycleConfigurationRuleTransitionOutputReference = exports.s3BucketLifecycleConfigurationRuleTransitionToHclTerraform = exports.s3BucketLifecycleConfigurationRuleTransitionToTerraform = exports.S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionList = exports.S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference = exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToHclTerraform = exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToTerraform = exports.S3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationOutputReference = exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToHclTerraform = exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToTerraform = exports.S3BucketLifecycleConfigurationRuleFilterOutputReference = exports.s3BucketLifecycleConfigurationRuleFilterToHclTerraform = exports.s3BucketLifecycleConfigurationRuleFilterToTerraform = exports.S3BucketLifecycleConfigurationRuleFilterTagOutputReference = exports.s3BucketLifecycleConfigurationRuleFilterTagToHclTerraform = exports.s3BucketLifecycleConfigurationRuleFilterTagToTerraform = exports.S3BucketLifecycleConfigurationRuleFilterAndOutputReference = exports.s3BucketLifecycleConfigurationRuleFilterAndToHclTerraform = exports.s3BucketLifecycleConfigurationRuleFilterAndToTerraform = exports.S3BucketLifecycleConfigurationRuleExpirationOutputReference = exports.s3BucketLifecycleConfigurationRuleExpirationToHclTerraform = exports.s3BucketLifecycleConfigurationRuleExpirationToTerraform = exports.S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadOutputReference = exports.s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToHclTerraform = exports.s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToTerraform = void 0;
const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
const cdktf = require("cdktf");
function s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToTerraform(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 {
days_after_initiation: cdktf.numberToTerraform(struct.daysAfterInitiation),
};
}
exports.s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToTerraform = s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToTerraform;
function s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToHclTerraform(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 = {
days_after_initiation: {
value: cdktf.numberToHclTerraform(struct.daysAfterInitiation),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToHclTerraform = s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToHclTerraform;
class S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadOutputReference 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._daysAfterInitiation !== undefined) {
hasAnyValues = true;
internalValueResult.daysAfterInitiation = this._daysAfterInitiation;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._daysAfterInitiation = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._daysAfterInitiation = value.daysAfterInitiation;
}
}
get daysAfterInitiation() {
return this.getNumberAttribute('days_after_initiation');
}
set daysAfterInitiation(value) {
this._daysAfterInitiation = value;
}
resetDaysAfterInitiation() {
this._daysAfterInitiation = undefined;
}
// Temporarily expose input value. Use with caution.
get daysAfterInitiationInput() {
return this._daysAfterInitiation;
}
}
exports.S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadOutputReference = S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadOutputReference;
_a = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadOutputReference[_a] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadOutputReference", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleExpirationToTerraform(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 {
date: cdktf.stringToTerraform(struct.date),
days: cdktf.numberToTerraform(struct.days),
expired_object_delete_marker: cdktf.booleanToTerraform(struct.expiredObjectDeleteMarker),
};
}
exports.s3BucketLifecycleConfigurationRuleExpirationToTerraform = s3BucketLifecycleConfigurationRuleExpirationToTerraform;
function s3BucketLifecycleConfigurationRuleExpirationToHclTerraform(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 = {
date: {
value: cdktf.stringToHclTerraform(struct.date),
isBlock: false,
type: "simple",
storageClassType: "string",
},
days: {
value: cdktf.numberToHclTerraform(struct.days),
isBlock: false,
type: "simple",
storageClassType: "number",
},
expired_object_delete_marker: {
value: cdktf.booleanToHclTerraform(struct.expiredObjectDeleteMarker),
isBlock: false,
type: "simple",
storageClassType: "boolean",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleExpirationToHclTerraform = s3BucketLifecycleConfigurationRuleExpirationToHclTerraform;
class S3BucketLifecycleConfigurationRuleExpirationOutputReference 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._date !== undefined) {
hasAnyValues = true;
internalValueResult.date = this._date;
}
if (this._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
if (this._expiredObjectDeleteMarker !== undefined) {
hasAnyValues = true;
internalValueResult.expiredObjectDeleteMarker = this._expiredObjectDeleteMarker;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._date = undefined;
this._days = undefined;
this._expiredObjectDeleteMarker = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._date = value.date;
this._days = value.days;
this._expiredObjectDeleteMarker = value.expiredObjectDeleteMarker;
}
}
get date() {
return this.getStringAttribute('date');
}
set date(value) {
this._date = value;
}
resetDate() {
this._date = undefined;
}
// Temporarily expose input value. Use with caution.
get dateInput() {
return this._date;
}
get days() {
return this.getNumberAttribute('days');
}
set days(value) {
this._days = value;
}
resetDays() {
this._days = undefined;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
get expiredObjectDeleteMarker() {
return this.getBooleanAttribute('expired_object_delete_marker');
}
set expiredObjectDeleteMarker(value) {
this._expiredObjectDeleteMarker = value;
}
resetExpiredObjectDeleteMarker() {
this._expiredObjectDeleteMarker = undefined;
}
// Temporarily expose input value. Use with caution.
get expiredObjectDeleteMarkerInput() {
return this._expiredObjectDeleteMarker;
}
}
exports.S3BucketLifecycleConfigurationRuleExpirationOutputReference = S3BucketLifecycleConfigurationRuleExpirationOutputReference;
_b = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleExpirationOutputReference[_b] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleExpirationOutputReference", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleFilterAndToTerraform(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 {
object_size_greater_than: cdktf.numberToTerraform(struct.objectSizeGreaterThan),
object_size_less_than: cdktf.numberToTerraform(struct.objectSizeLessThan),
prefix: cdktf.stringToTerraform(struct.prefix),
tags: cdktf.hashMapper(cdktf.stringToTerraform)(struct.tags),
};
}
exports.s3BucketLifecycleConfigurationRuleFilterAndToTerraform = s3BucketLifecycleConfigurationRuleFilterAndToTerraform;
function s3BucketLifecycleConfigurationRuleFilterAndToHclTerraform(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 = {
object_size_greater_than: {
value: cdktf.numberToHclTerraform(struct.objectSizeGreaterThan),
isBlock: false,
type: "simple",
storageClassType: "number",
},
object_size_less_than: {
value: cdktf.numberToHclTerraform(struct.objectSizeLessThan),
isBlock: false,
type: "simple",
storageClassType: "number",
},
prefix: {
value: cdktf.stringToHclTerraform(struct.prefix),
isBlock: false,
type: "simple",
storageClassType: "string",
},
tags: {
value: cdktf.hashMapperHcl(cdktf.stringToHclTerraform)(struct.tags),
isBlock: false,
type: "map",
storageClassType: "stringMap",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleFilterAndToHclTerraform = s3BucketLifecycleConfigurationRuleFilterAndToHclTerraform;
class S3BucketLifecycleConfigurationRuleFilterAndOutputReference 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._objectSizeGreaterThan !== undefined) {
hasAnyValues = true;
internalValueResult.objectSizeGreaterThan = this._objectSizeGreaterThan;
}
if (this._objectSizeLessThan !== undefined) {
hasAnyValues = true;
internalValueResult.objectSizeLessThan = this._objectSizeLessThan;
}
if (this._prefix !== undefined) {
hasAnyValues = true;
internalValueResult.prefix = this._prefix;
}
if (this._tags !== undefined) {
hasAnyValues = true;
internalValueResult.tags = this._tags;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._objectSizeGreaterThan = undefined;
this._objectSizeLessThan = undefined;
this._prefix = undefined;
this._tags = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._objectSizeGreaterThan = value.objectSizeGreaterThan;
this._objectSizeLessThan = value.objectSizeLessThan;
this._prefix = value.prefix;
this._tags = value.tags;
}
}
get objectSizeGreaterThan() {
return this.getNumberAttribute('object_size_greater_than');
}
set objectSizeGreaterThan(value) {
this._objectSizeGreaterThan = value;
}
resetObjectSizeGreaterThan() {
this._objectSizeGreaterThan = undefined;
}
// Temporarily expose input value. Use with caution.
get objectSizeGreaterThanInput() {
return this._objectSizeGreaterThan;
}
get objectSizeLessThan() {
return this.getNumberAttribute('object_size_less_than');
}
set objectSizeLessThan(value) {
this._objectSizeLessThan = value;
}
resetObjectSizeLessThan() {
this._objectSizeLessThan = undefined;
}
// Temporarily expose input value. Use with caution.
get objectSizeLessThanInput() {
return this._objectSizeLessThan;
}
get prefix() {
return this.getStringAttribute('prefix');
}
set prefix(value) {
this._prefix = value;
}
resetPrefix() {
this._prefix = undefined;
}
// Temporarily expose input value. Use with caution.
get prefixInput() {
return this._prefix;
}
get tags() {
return this.getStringMapAttribute('tags');
}
set tags(value) {
this._tags = value;
}
resetTags() {
this._tags = undefined;
}
// Temporarily expose input value. Use with caution.
get tagsInput() {
return this._tags;
}
}
exports.S3BucketLifecycleConfigurationRuleFilterAndOutputReference = S3BucketLifecycleConfigurationRuleFilterAndOutputReference;
_c = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleFilterAndOutputReference[_c] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleFilterAndOutputReference", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleFilterTagToTerraform(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 {
key: cdktf.stringToTerraform(struct.key),
value: cdktf.stringToTerraform(struct.value),
};
}
exports.s3BucketLifecycleConfigurationRuleFilterTagToTerraform = s3BucketLifecycleConfigurationRuleFilterTagToTerraform;
function s3BucketLifecycleConfigurationRuleFilterTagToHclTerraform(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 = {
key: {
value: cdktf.stringToHclTerraform(struct.key),
isBlock: false,
type: "simple",
storageClassType: "string",
},
value: {
value: cdktf.stringToHclTerraform(struct.value),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleFilterTagToHclTerraform = s3BucketLifecycleConfigurationRuleFilterTagToHclTerraform;
class S3BucketLifecycleConfigurationRuleFilterTagOutputReference 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._key !== undefined) {
hasAnyValues = true;
internalValueResult.key = this._key;
}
if (this._value !== undefined) {
hasAnyValues = true;
internalValueResult.value = this._value;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._key = undefined;
this._value = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._key = value.key;
this._value = value.value;
}
}
get key() {
return this.getStringAttribute('key');
}
set key(value) {
this._key = value;
}
// Temporarily expose input value. Use with caution.
get keyInput() {
return this._key;
}
get value() {
return this.getStringAttribute('value');
}
set value(value) {
this._value = value;
}
// Temporarily expose input value. Use with caution.
get valueInput() {
return this._value;
}
}
exports.S3BucketLifecycleConfigurationRuleFilterTagOutputReference = S3BucketLifecycleConfigurationRuleFilterTagOutputReference;
_d = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleFilterTagOutputReference[_d] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleFilterTagOutputReference", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleFilterToTerraform(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 {
object_size_greater_than: cdktf.stringToTerraform(struct.objectSizeGreaterThan),
object_size_less_than: cdktf.stringToTerraform(struct.objectSizeLessThan),
prefix: cdktf.stringToTerraform(struct.prefix),
and: s3BucketLifecycleConfigurationRuleFilterAndToTerraform(struct.and),
tag: s3BucketLifecycleConfigurationRuleFilterTagToTerraform(struct.tag),
};
}
exports.s3BucketLifecycleConfigurationRuleFilterToTerraform = s3BucketLifecycleConfigurationRuleFilterToTerraform;
function s3BucketLifecycleConfigurationRuleFilterToHclTerraform(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 = {
object_size_greater_than: {
value: cdktf.stringToHclTerraform(struct.objectSizeGreaterThan),
isBlock: false,
type: "simple",
storageClassType: "string",
},
object_size_less_than: {
value: cdktf.stringToHclTerraform(struct.objectSizeLessThan),
isBlock: false,
type: "simple",
storageClassType: "string",
},
prefix: {
value: cdktf.stringToHclTerraform(struct.prefix),
isBlock: false,
type: "simple",
storageClassType: "string",
},
and: {
value: s3BucketLifecycleConfigurationRuleFilterAndToHclTerraform(struct.and),
isBlock: true,
type: "list",
storageClassType: "S3BucketLifecycleConfigurationRuleFilterAndList",
},
tag: {
value: s3BucketLifecycleConfigurationRuleFilterTagToHclTerraform(struct.tag),
isBlock: true,
type: "list",
storageClassType: "S3BucketLifecycleConfigurationRuleFilterTagList",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleFilterToHclTerraform = s3BucketLifecycleConfigurationRuleFilterToHclTerraform;
class S3BucketLifecycleConfigurationRuleFilterOutputReference 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;
// and - computed: false, optional: true, required: false
this._and = new S3BucketLifecycleConfigurationRuleFilterAndOutputReference(this, "and");
// tag - computed: false, optional: true, required: false
this._tag = new S3BucketLifecycleConfigurationRuleFilterTagOutputReference(this, "tag");
}
get internalValue() {
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._objectSizeGreaterThan !== undefined) {
hasAnyValues = true;
internalValueResult.objectSizeGreaterThan = this._objectSizeGreaterThan;
}
if (this._objectSizeLessThan !== undefined) {
hasAnyValues = true;
internalValueResult.objectSizeLessThan = this._objectSizeLessThan;
}
if (this._prefix !== undefined) {
hasAnyValues = true;
internalValueResult.prefix = this._prefix;
}
if (this._and?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.and = this._and?.internalValue;
}
if (this._tag?.internalValue !== undefined) {
hasAnyValues = true;
internalValueResult.tag = this._tag?.internalValue;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._objectSizeGreaterThan = undefined;
this._objectSizeLessThan = undefined;
this._prefix = undefined;
this._and.internalValue = undefined;
this._tag.internalValue = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._objectSizeGreaterThan = value.objectSizeGreaterThan;
this._objectSizeLessThan = value.objectSizeLessThan;
this._prefix = value.prefix;
this._and.internalValue = value.and;
this._tag.internalValue = value.tag;
}
}
get objectSizeGreaterThan() {
return this.getStringAttribute('object_size_greater_than');
}
set objectSizeGreaterThan(value) {
this._objectSizeGreaterThan = value;
}
resetObjectSizeGreaterThan() {
this._objectSizeGreaterThan = undefined;
}
// Temporarily expose input value. Use with caution.
get objectSizeGreaterThanInput() {
return this._objectSizeGreaterThan;
}
get objectSizeLessThan() {
return this.getStringAttribute('object_size_less_than');
}
set objectSizeLessThan(value) {
this._objectSizeLessThan = value;
}
resetObjectSizeLessThan() {
this._objectSizeLessThan = undefined;
}
// Temporarily expose input value. Use with caution.
get objectSizeLessThanInput() {
return this._objectSizeLessThan;
}
get prefix() {
return this.getStringAttribute('prefix');
}
set prefix(value) {
this._prefix = value;
}
resetPrefix() {
this._prefix = undefined;
}
// Temporarily expose input value. Use with caution.
get prefixInput() {
return this._prefix;
}
get and() {
return this._and;
}
putAnd(value) {
this._and.internalValue = value;
}
resetAnd() {
this._and.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get andInput() {
return this._and.internalValue;
}
get tag() {
return this._tag;
}
putTag(value) {
this._tag.internalValue = value;
}
resetTag() {
this._tag.internalValue = undefined;
}
// Temporarily expose input value. Use with caution.
get tagInput() {
return this._tag.internalValue;
}
}
exports.S3BucketLifecycleConfigurationRuleFilterOutputReference = S3BucketLifecycleConfigurationRuleFilterOutputReference;
_e = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleFilterOutputReference[_e] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleFilterOutputReference", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToTerraform(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 {
newer_noncurrent_versions: cdktf.stringToTerraform(struct.newerNoncurrentVersions),
noncurrent_days: cdktf.numberToTerraform(struct.noncurrentDays),
};
}
exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToTerraform = s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToTerraform;
function s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToHclTerraform(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 = {
newer_noncurrent_versions: {
value: cdktf.stringToHclTerraform(struct.newerNoncurrentVersions),
isBlock: false,
type: "simple",
storageClassType: "string",
},
noncurrent_days: {
value: cdktf.numberToHclTerraform(struct.noncurrentDays),
isBlock: false,
type: "simple",
storageClassType: "number",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToHclTerraform = s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToHclTerraform;
class S3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationOutputReference 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._newerNoncurrentVersions !== undefined) {
hasAnyValues = true;
internalValueResult.newerNoncurrentVersions = this._newerNoncurrentVersions;
}
if (this._noncurrentDays !== undefined) {
hasAnyValues = true;
internalValueResult.noncurrentDays = this._noncurrentDays;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this._newerNoncurrentVersions = undefined;
this._noncurrentDays = undefined;
}
else {
this.isEmptyObject = Object.keys(value).length === 0;
this._newerNoncurrentVersions = value.newerNoncurrentVersions;
this._noncurrentDays = value.noncurrentDays;
}
}
get newerNoncurrentVersions() {
return this.getStringAttribute('newer_noncurrent_versions');
}
set newerNoncurrentVersions(value) {
this._newerNoncurrentVersions = value;
}
resetNewerNoncurrentVersions() {
this._newerNoncurrentVersions = undefined;
}
// Temporarily expose input value. Use with caution.
get newerNoncurrentVersionsInput() {
return this._newerNoncurrentVersions;
}
get noncurrentDays() {
return this.getNumberAttribute('noncurrent_days');
}
set noncurrentDays(value) {
this._noncurrentDays = value;
}
resetNoncurrentDays() {
this._noncurrentDays = undefined;
}
// Temporarily expose input value. Use with caution.
get noncurrentDaysInput() {
return this._noncurrentDays;
}
}
exports.S3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationOutputReference = S3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationOutputReference;
_f = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationOutputReference[_f] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationOutputReference", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToTerraform(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 {
newer_noncurrent_versions: cdktf.stringToTerraform(struct.newerNoncurrentVersions),
noncurrent_days: cdktf.numberToTerraform(struct.noncurrentDays),
storage_class: cdktf.stringToTerraform(struct.storageClass),
};
}
exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToTerraform = s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToTerraform;
function s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToHclTerraform(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 = {
newer_noncurrent_versions: {
value: cdktf.stringToHclTerraform(struct.newerNoncurrentVersions),
isBlock: false,
type: "simple",
storageClassType: "string",
},
noncurrent_days: {
value: cdktf.numberToHclTerraform(struct.noncurrentDays),
isBlock: false,
type: "simple",
storageClassType: "number",
},
storage_class: {
value: cdktf.stringToHclTerraform(struct.storageClass),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToHclTerraform = s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToHclTerraform;
class S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference 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;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._newerNoncurrentVersions !== undefined) {
hasAnyValues = true;
internalValueResult.newerNoncurrentVersions = this._newerNoncurrentVersions;
}
if (this._noncurrentDays !== undefined) {
hasAnyValues = true;
internalValueResult.noncurrentDays = this._noncurrentDays;
}
if (this._storageClass !== undefined) {
hasAnyValues = true;
internalValueResult.storageClass = this._storageClass;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._newerNoncurrentVersions = undefined;
this._noncurrentDays = undefined;
this._storageClass = 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._newerNoncurrentVersions = value.newerNoncurrentVersions;
this._noncurrentDays = value.noncurrentDays;
this._storageClass = value.storageClass;
}
}
get newerNoncurrentVersions() {
return this.getStringAttribute('newer_noncurrent_versions');
}
set newerNoncurrentVersions(value) {
this._newerNoncurrentVersions = value;
}
resetNewerNoncurrentVersions() {
this._newerNoncurrentVersions = undefined;
}
// Temporarily expose input value. Use with caution.
get newerNoncurrentVersionsInput() {
return this._newerNoncurrentVersions;
}
get noncurrentDays() {
return this.getNumberAttribute('noncurrent_days');
}
set noncurrentDays(value) {
this._noncurrentDays = value;
}
resetNoncurrentDays() {
this._noncurrentDays = undefined;
}
// Temporarily expose input value. Use with caution.
get noncurrentDaysInput() {
return this._noncurrentDays;
}
get storageClass() {
return this.getStringAttribute('storage_class');
}
set storageClass(value) {
this._storageClass = value;
}
// Temporarily expose input value. Use with caution.
get storageClassInput() {
return this._storageClass;
}
}
exports.S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference = S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference;
_g = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference[_g] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference", version: "19.50.0" };
class S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionList 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 S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionList = S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionList;
_h = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionList[_h] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionList", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleTransitionToTerraform(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 {
date: cdktf.stringToTerraform(struct.date),
days: cdktf.numberToTerraform(struct.days),
storage_class: cdktf.stringToTerraform(struct.storageClass),
};
}
exports.s3BucketLifecycleConfigurationRuleTransitionToTerraform = s3BucketLifecycleConfigurationRuleTransitionToTerraform;
function s3BucketLifecycleConfigurationRuleTransitionToHclTerraform(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 = {
date: {
value: cdktf.stringToHclTerraform(struct.date),
isBlock: false,
type: "simple",
storageClassType: "string",
},
days: {
value: cdktf.numberToHclTerraform(struct.days),
isBlock: false,
type: "simple",
storageClassType: "number",
},
storage_class: {
value: cdktf.stringToHclTerraform(struct.storageClass),
isBlock: false,
type: "simple",
storageClassType: "string",
},
};
// remove undefined attributes
return Object.fromEntries(Object.entries(attrs).filter(([_, value]) => value !== undefined && value.value !== undefined));
}
exports.s3BucketLifecycleConfigurationRuleTransitionToHclTerraform = s3BucketLifecycleConfigurationRuleTransitionToHclTerraform;
class S3BucketLifecycleConfigurationRuleTransitionOutputReference 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;
}
get internalValue() {
if (this.resolvableValue) {
return this.resolvableValue;
}
let hasAnyValues = this.isEmptyObject;
const internalValueResult = {};
if (this._date !== undefined) {
hasAnyValues = true;
internalValueResult.date = this._date;
}
if (this._days !== undefined) {
hasAnyValues = true;
internalValueResult.days = this._days;
}
if (this._storageClass !== undefined) {
hasAnyValues = true;
internalValueResult.storageClass = this._storageClass;
}
return hasAnyValues ? internalValueResult : undefined;
}
set internalValue(value) {
if (value === undefined) {
this.isEmptyObject = false;
this.resolvableValue = undefined;
this._date = undefined;
this._days = undefined;
this._storageClass = 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._date = value.date;
this._days = value.days;
this._storageClass = value.storageClass;
}
}
get date() {
return this.getStringAttribute('date');
}
set date(value) {
this._date = value;
}
resetDate() {
this._date = undefined;
}
// Temporarily expose input value. Use with caution.
get dateInput() {
return this._date;
}
get days() {
return this.getNumberAttribute('days');
}
set days(value) {
this._days = value;
}
resetDays() {
this._days = undefined;
}
// Temporarily expose input value. Use with caution.
get daysInput() {
return this._days;
}
get storageClass() {
return this.getStringAttribute('storage_class');
}
set storageClass(value) {
this._storageClass = value;
}
// Temporarily expose input value. Use with caution.
get storageClassInput() {
return this._storageClass;
}
}
exports.S3BucketLifecycleConfigurationRuleTransitionOutputReference = S3BucketLifecycleConfigurationRuleTransitionOutputReference;
_j = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleTransitionOutputReference[_j] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleTransitionOutputReference", version: "19.50.0" };
class S3BucketLifecycleConfigurationRuleTransitionList 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 S3BucketLifecycleConfigurationRuleTransitionOutputReference(this.terraformResource, this.terraformAttribute, index, this.wrapsSet);
}
}
exports.S3BucketLifecycleConfigurationRuleTransitionList = S3BucketLifecycleConfigurationRuleTransitionList;
_k = JSII_RTTI_SYMBOL_1;
S3BucketLifecycleConfigurationRuleTransitionList[_k] = { fqn: "@cdktf/provider-aws.s3BucketLifecycleConfiguration.S3BucketLifecycleConfigurationRuleTransitionList", version: "19.50.0" };
function s3BucketLifecycleConfigurationRuleToTerraform(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 {
id: cdktf.stringToTerraform(struct.id),
prefix: cdktf.stringToTerraform(struct.prefix),
status: cdktf.stringToTerraform(struct.status),
abort_incomplete_multipart_upload: s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToTerraform(struct.abortIncompleteMultipartUpload),
expiration: s3BucketLifecycleConfigurationRuleExpirationToTerraform(struct.expiration),
filter: s3BucketLifecycleConfigurationRuleFilterToTerraform(struct.filter),
noncurrent_version_expiration: s3BucketLifecycleConfigurationRuleNoncurrentVersionExpirationToTerraform(struct.noncurrentVersionExpiration),
noncurrent_version_transition: cdktf.listMapper(s3BucketLifecycleConfigurationRuleNoncurrentVersionTransitionToTerraform, true)(struct.noncurrentVersionTransition),
transition: cdktf.listMapper(s3BucketLifecycleConfigurationRuleTransitionToTerraform, true)(struct.transition),
};
}
exports.s3BucketLifecycleConfigurationRuleToTerraform = s3BucketLifecycleConfigurationRuleToTerraform;
function s3BucketLifecycleConfigurationRuleToHclTerraform(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 = {
id: {
value: cdktf.stringToHclTerraform(struct.id),
isBlock: false,
type: "simple",
storageClassType: "string",
},
prefix: {
value: cdktf.stringToHclTerraform(struct.prefix),
isBlock: false,
type: "simple",
storageClassType: "string",
},
status: {
value: cdktf.stringToHclTerraform(struct.status),
isBlock: false,
type: "simple",
storageClassType: "string",
},
abort_incomplete_multipart_upload: {
value: s3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadToHclTerraform(struct.abortIncompleteMultipartUpload),
isBlock: true,
type: "list",
storageClassType: "S3BucketLifecycleConfigurationRuleAbortIncompleteMultipartUploadList",
},
expiration: {
value: s3BucketLifecycleConfigurationRuleExpirationToHclTerraform(struct.expiration),
isBlock: true,
type: "list",
storageClassType: "S3BucketLifecycleConfigurationRuleExpirationList",
},
filter: {
value: s3BucketLifecycleConfigurationRuleFilterToHclTerraform(struct.filter),
isBlock: true,
type: "list",
storageClassType: "S3BucketLifecycleConfigurationRuleFilterList",
},
noncurrent_version_expiration: {
value: s3BucketLifecycleConf