@cdktf/provider-aws
Version:
Prebuilt aws Provider for Terraform CDK (cdktf)
685 lines (684 loc) • 44.5 kB
TypeScript
/**
* Copyright (c) HashiCorp, Inc.
* SPDX-License-Identifier: MPL-2.0
*/
import { Construct } from 'constructs';
import * as cdktf from 'cdktf';
export interface S3BucketReplicationConfigurationAConfig extends cdktf.TerraformMetaArguments {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#bucket S3BucketReplicationConfigurationA#bucket}
*/
readonly bucket: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#id S3BucketReplicationConfigurationA#id}
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*/
readonly id?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#role S3BucketReplicationConfigurationA#role}
*/
readonly role: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#token S3BucketReplicationConfigurationA#token}
*/
readonly token?: string;
/**
* rule block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#rule S3BucketReplicationConfigurationA#rule}
*/
readonly rule: S3BucketReplicationConfigurationRule[] | cdktf.IResolvable;
}
export interface S3BucketReplicationConfigurationRuleDeleteMarkerReplication {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
}
export declare function s3BucketReplicationConfigurationRuleDeleteMarkerReplicationToTerraform(struct?: S3BucketReplicationConfigurationRuleDeleteMarkerReplicationOutputReference | S3BucketReplicationConfigurationRuleDeleteMarkerReplication): any;
export declare function s3BucketReplicationConfigurationRuleDeleteMarkerReplicationToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDeleteMarkerReplicationOutputReference | S3BucketReplicationConfigurationRuleDeleteMarkerReplication): any;
export declare class S3BucketReplicationConfigurationRuleDeleteMarkerReplicationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDeleteMarkerReplication | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDeleteMarkerReplication | undefined);
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#owner S3BucketReplicationConfigurationA#owner}
*/
readonly owner: string;
}
export declare function s3BucketReplicationConfigurationRuleDestinationAccessControlTranslationToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationAccessControlTranslationOutputReference | S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation): any;
export declare function s3BucketReplicationConfigurationRuleDestinationAccessControlTranslationToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationAccessControlTranslationOutputReference | S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation): any;
export declare class S3BucketReplicationConfigurationRuleDestinationAccessControlTranslationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation | undefined);
private _owner?;
get owner(): string;
set owner(value: string);
get ownerInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#replica_kms_key_id S3BucketReplicationConfigurationA#replica_kms_key_id}
*/
readonly replicaKmsKeyId: string;
}
export declare function s3BucketReplicationConfigurationRuleDestinationEncryptionConfigurationToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationEncryptionConfigurationOutputReference | S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration): any;
export declare function s3BucketReplicationConfigurationRuleDestinationEncryptionConfigurationToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationEncryptionConfigurationOutputReference | S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration): any;
export declare class S3BucketReplicationConfigurationRuleDestinationEncryptionConfigurationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration | undefined);
private _replicaKmsKeyId?;
get replicaKmsKeyId(): string;
set replicaKmsKeyId(value: string);
get replicaKmsKeyIdInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#minutes S3BucketReplicationConfigurationA#minutes}
*/
readonly minutes: number;
}
export declare function s3BucketReplicationConfigurationRuleDestinationMetricsEventThresholdToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationMetricsEventThresholdOutputReference | S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold): any;
export declare function s3BucketReplicationConfigurationRuleDestinationMetricsEventThresholdToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationMetricsEventThresholdOutputReference | S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold): any;
export declare class S3BucketReplicationConfigurationRuleDestinationMetricsEventThresholdOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold | undefined);
private _minutes?;
get minutes(): number;
set minutes(value: number);
get minutesInput(): number | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestinationMetrics {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
/**
* event_threshold block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#event_threshold S3BucketReplicationConfigurationA#event_threshold}
*/
readonly eventThreshold?: S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold;
}
export declare function s3BucketReplicationConfigurationRuleDestinationMetricsToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationMetricsOutputReference | S3BucketReplicationConfigurationRuleDestinationMetrics): any;
export declare function s3BucketReplicationConfigurationRuleDestinationMetricsToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationMetricsOutputReference | S3BucketReplicationConfigurationRuleDestinationMetrics): any;
export declare class S3BucketReplicationConfigurationRuleDestinationMetricsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestinationMetrics | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestinationMetrics | undefined);
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
private _eventThreshold;
get eventThreshold(): S3BucketReplicationConfigurationRuleDestinationMetricsEventThresholdOutputReference;
putEventThreshold(value: S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold): void;
resetEventThreshold(): void;
get eventThresholdInput(): S3BucketReplicationConfigurationRuleDestinationMetricsEventThreshold | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#minutes S3BucketReplicationConfigurationA#minutes}
*/
readonly minutes: number;
}
export declare function s3BucketReplicationConfigurationRuleDestinationReplicationTimeTimeToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationReplicationTimeTimeOutputReference | S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime): any;
export declare function s3BucketReplicationConfigurationRuleDestinationReplicationTimeTimeToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationReplicationTimeTimeOutputReference | S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime): any;
export declare class S3BucketReplicationConfigurationRuleDestinationReplicationTimeTimeOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime | undefined);
private _minutes?;
get minutes(): number;
set minutes(value: number);
get minutesInput(): number | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestinationReplicationTime {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
/**
* time block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#time S3BucketReplicationConfigurationA#time}
*/
readonly time: S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime;
}
export declare function s3BucketReplicationConfigurationRuleDestinationReplicationTimeToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationReplicationTimeOutputReference | S3BucketReplicationConfigurationRuleDestinationReplicationTime): any;
export declare function s3BucketReplicationConfigurationRuleDestinationReplicationTimeToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationReplicationTimeOutputReference | S3BucketReplicationConfigurationRuleDestinationReplicationTime): any;
export declare class S3BucketReplicationConfigurationRuleDestinationReplicationTimeOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestinationReplicationTime | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestinationReplicationTime | undefined);
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
private _time;
get time(): S3BucketReplicationConfigurationRuleDestinationReplicationTimeTimeOutputReference;
putTime(value: S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime): void;
get timeInput(): S3BucketReplicationConfigurationRuleDestinationReplicationTimeTime | undefined;
}
export interface S3BucketReplicationConfigurationRuleDestination {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#account S3BucketReplicationConfigurationA#account}
*/
readonly account?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#bucket S3BucketReplicationConfigurationA#bucket}
*/
readonly bucket: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#storage_class S3BucketReplicationConfigurationA#storage_class}
*/
readonly storageClass?: string;
/**
* access_control_translation block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#access_control_translation S3BucketReplicationConfigurationA#access_control_translation}
*/
readonly accessControlTranslation?: S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation;
/**
* encryption_configuration block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#encryption_configuration S3BucketReplicationConfigurationA#encryption_configuration}
*/
readonly encryptionConfiguration?: S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration;
/**
* metrics block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#metrics S3BucketReplicationConfigurationA#metrics}
*/
readonly metrics?: S3BucketReplicationConfigurationRuleDestinationMetrics;
/**
* replication_time block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#replication_time S3BucketReplicationConfigurationA#replication_time}
*/
readonly replicationTime?: S3BucketReplicationConfigurationRuleDestinationReplicationTime;
}
export declare function s3BucketReplicationConfigurationRuleDestinationToTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationOutputReference | S3BucketReplicationConfigurationRuleDestination): any;
export declare function s3BucketReplicationConfigurationRuleDestinationToHclTerraform(struct?: S3BucketReplicationConfigurationRuleDestinationOutputReference | S3BucketReplicationConfigurationRuleDestination): any;
export declare class S3BucketReplicationConfigurationRuleDestinationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleDestination | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleDestination | undefined);
private _account?;
get account(): string;
set account(value: string);
resetAccount(): void;
get accountInput(): string | undefined;
private _bucket?;
get bucket(): string;
set bucket(value: string);
get bucketInput(): string | undefined;
private _storageClass?;
get storageClass(): string;
set storageClass(value: string);
resetStorageClass(): void;
get storageClassInput(): string | undefined;
private _accessControlTranslation;
get accessControlTranslation(): S3BucketReplicationConfigurationRuleDestinationAccessControlTranslationOutputReference;
putAccessControlTranslation(value: S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation): void;
resetAccessControlTranslation(): void;
get accessControlTranslationInput(): S3BucketReplicationConfigurationRuleDestinationAccessControlTranslation | undefined;
private _encryptionConfiguration;
get encryptionConfiguration(): S3BucketReplicationConfigurationRuleDestinationEncryptionConfigurationOutputReference;
putEncryptionConfiguration(value: S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration): void;
resetEncryptionConfiguration(): void;
get encryptionConfigurationInput(): S3BucketReplicationConfigurationRuleDestinationEncryptionConfiguration | undefined;
private _metrics;
get metrics(): S3BucketReplicationConfigurationRuleDestinationMetricsOutputReference;
putMetrics(value: S3BucketReplicationConfigurationRuleDestinationMetrics): void;
resetMetrics(): void;
get metricsInput(): S3BucketReplicationConfigurationRuleDestinationMetrics | undefined;
private _replicationTime;
get replicationTime(): S3BucketReplicationConfigurationRuleDestinationReplicationTimeOutputReference;
putReplicationTime(value: S3BucketReplicationConfigurationRuleDestinationReplicationTime): void;
resetReplicationTime(): void;
get replicationTimeInput(): S3BucketReplicationConfigurationRuleDestinationReplicationTime | undefined;
}
export interface S3BucketReplicationConfigurationRuleExistingObjectReplication {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
}
export declare function s3BucketReplicationConfigurationRuleExistingObjectReplicationToTerraform(struct?: S3BucketReplicationConfigurationRuleExistingObjectReplicationOutputReference | S3BucketReplicationConfigurationRuleExistingObjectReplication): any;
export declare function s3BucketReplicationConfigurationRuleExistingObjectReplicationToHclTerraform(struct?: S3BucketReplicationConfigurationRuleExistingObjectReplicationOutputReference | S3BucketReplicationConfigurationRuleExistingObjectReplication): any;
export declare class S3BucketReplicationConfigurationRuleExistingObjectReplicationOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleExistingObjectReplication | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleExistingObjectReplication | undefined);
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleFilterAnd {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#prefix S3BucketReplicationConfigurationA#prefix}
*/
readonly prefix?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#tags S3BucketReplicationConfigurationA#tags}
*/
readonly tags?: {
[key: string]: string;
};
}
export declare function s3BucketReplicationConfigurationRuleFilterAndToTerraform(struct?: S3BucketReplicationConfigurationRuleFilterAndOutputReference | S3BucketReplicationConfigurationRuleFilterAnd): any;
export declare function s3BucketReplicationConfigurationRuleFilterAndToHclTerraform(struct?: S3BucketReplicationConfigurationRuleFilterAndOutputReference | S3BucketReplicationConfigurationRuleFilterAnd): any;
export declare class S3BucketReplicationConfigurationRuleFilterAndOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleFilterAnd | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleFilterAnd | undefined);
private _prefix?;
get prefix(): string;
set prefix(value: string);
resetPrefix(): void;
get prefixInput(): string | undefined;
private _tags?;
get tags(): {
[key: string]: string;
};
set tags(value: {
[key: string]: string;
});
resetTags(): void;
get tagsInput(): {
[key: string]: string;
} | undefined;
}
export interface S3BucketReplicationConfigurationRuleFilterTag {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#key S3BucketReplicationConfigurationA#key}
*/
readonly key: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#value S3BucketReplicationConfigurationA#value}
*/
readonly value: string;
}
export declare function s3BucketReplicationConfigurationRuleFilterTagToTerraform(struct?: S3BucketReplicationConfigurationRuleFilterTagOutputReference | S3BucketReplicationConfigurationRuleFilterTag): any;
export declare function s3BucketReplicationConfigurationRuleFilterTagToHclTerraform(struct?: S3BucketReplicationConfigurationRuleFilterTagOutputReference | S3BucketReplicationConfigurationRuleFilterTag): any;
export declare class S3BucketReplicationConfigurationRuleFilterTagOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleFilterTag | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleFilterTag | undefined);
private _key?;
get key(): string;
set key(value: string);
get keyInput(): string | undefined;
private _value?;
get value(): string;
set value(value: string);
get valueInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleFilter {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#prefix S3BucketReplicationConfigurationA#prefix}
*/
readonly prefix?: string;
/**
* and block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#and S3BucketReplicationConfigurationA#and}
*/
readonly and?: S3BucketReplicationConfigurationRuleFilterAnd;
/**
* tag block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#tag S3BucketReplicationConfigurationA#tag}
*/
readonly tag?: S3BucketReplicationConfigurationRuleFilterTag;
}
export declare function s3BucketReplicationConfigurationRuleFilterToTerraform(struct?: S3BucketReplicationConfigurationRuleFilterOutputReference | S3BucketReplicationConfigurationRuleFilter): any;
export declare function s3BucketReplicationConfigurationRuleFilterToHclTerraform(struct?: S3BucketReplicationConfigurationRuleFilterOutputReference | S3BucketReplicationConfigurationRuleFilter): any;
export declare class S3BucketReplicationConfigurationRuleFilterOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleFilter | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleFilter | undefined);
private _prefix?;
get prefix(): string;
set prefix(value: string);
resetPrefix(): void;
get prefixInput(): string | undefined;
private _and;
get and(): S3BucketReplicationConfigurationRuleFilterAndOutputReference;
putAnd(value: S3BucketReplicationConfigurationRuleFilterAnd): void;
resetAnd(): void;
get andInput(): S3BucketReplicationConfigurationRuleFilterAnd | undefined;
private _tag;
get tag(): S3BucketReplicationConfigurationRuleFilterTagOutputReference;
putTag(value: S3BucketReplicationConfigurationRuleFilterTag): void;
resetTag(): void;
get tagInput(): S3BucketReplicationConfigurationRuleFilterTag | undefined;
}
export interface S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
}
export declare function s3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModificationsToTerraform(struct?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModificationsOutputReference | S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications): any;
export declare function s3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModificationsToHclTerraform(struct?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModificationsOutputReference | S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications): any;
export declare class S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModificationsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications | undefined);
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
}
export declare function s3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsToTerraform(struct?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsOutputReference | S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects): any;
export declare function s3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsToHclTerraform(struct?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsOutputReference | S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects): any;
export declare class S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects | undefined);
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
}
export interface S3BucketReplicationConfigurationRuleSourceSelectionCriteria {
/**
* replica_modifications block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#replica_modifications S3BucketReplicationConfigurationA#replica_modifications}
*/
readonly replicaModifications?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications;
/**
* sse_kms_encrypted_objects block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#sse_kms_encrypted_objects S3BucketReplicationConfigurationA#sse_kms_encrypted_objects}
*/
readonly sseKmsEncryptedObjects?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects;
}
export declare function s3BucketReplicationConfigurationRuleSourceSelectionCriteriaToTerraform(struct?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaOutputReference | S3BucketReplicationConfigurationRuleSourceSelectionCriteria): any;
export declare function s3BucketReplicationConfigurationRuleSourceSelectionCriteriaToHclTerraform(struct?: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaOutputReference | S3BucketReplicationConfigurationRuleSourceSelectionCriteria): any;
export declare class S3BucketReplicationConfigurationRuleSourceSelectionCriteriaOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string);
get internalValue(): S3BucketReplicationConfigurationRuleSourceSelectionCriteria | undefined;
set internalValue(value: S3BucketReplicationConfigurationRuleSourceSelectionCriteria | undefined);
private _replicaModifications;
get replicaModifications(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModificationsOutputReference;
putReplicaModifications(value: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications): void;
resetReplicaModifications(): void;
get replicaModificationsInput(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaReplicaModifications | undefined;
private _sseKmsEncryptedObjects;
get sseKmsEncryptedObjects(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjectsOutputReference;
putSseKmsEncryptedObjects(value: S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects): void;
resetSseKmsEncryptedObjects(): void;
get sseKmsEncryptedObjectsInput(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaSseKmsEncryptedObjects | undefined;
}
export interface S3BucketReplicationConfigurationRule {
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#id S3BucketReplicationConfigurationA#id}
*
* Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
* If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
*/
readonly id?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#prefix S3BucketReplicationConfigurationA#prefix}
*/
readonly prefix?: string;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#priority S3BucketReplicationConfigurationA#priority}
*/
readonly priority?: number;
/**
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#status S3BucketReplicationConfigurationA#status}
*/
readonly status: string;
/**
* delete_marker_replication block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#delete_marker_replication S3BucketReplicationConfigurationA#delete_marker_replication}
*/
readonly deleteMarkerReplication?: S3BucketReplicationConfigurationRuleDeleteMarkerReplication;
/**
* destination block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#destination S3BucketReplicationConfigurationA#destination}
*/
readonly destination: S3BucketReplicationConfigurationRuleDestination;
/**
* existing_object_replication block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#existing_object_replication S3BucketReplicationConfigurationA#existing_object_replication}
*/
readonly existingObjectReplication?: S3BucketReplicationConfigurationRuleExistingObjectReplication;
/**
* filter block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#filter S3BucketReplicationConfigurationA#filter}
*/
readonly filter?: S3BucketReplicationConfigurationRuleFilter;
/**
* source_selection_criteria block
*
* Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#source_selection_criteria S3BucketReplicationConfigurationA#source_selection_criteria}
*/
readonly sourceSelectionCriteria?: S3BucketReplicationConfigurationRuleSourceSelectionCriteria;
}
export declare function s3BucketReplicationConfigurationRuleToTerraform(struct?: S3BucketReplicationConfigurationRule | cdktf.IResolvable): any;
export declare function s3BucketReplicationConfigurationRuleToHclTerraform(struct?: S3BucketReplicationConfigurationRule | cdktf.IResolvable): any;
export declare class S3BucketReplicationConfigurationRuleOutputReference extends cdktf.ComplexObject {
private isEmptyObject;
private resolvableValue?;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param complexObjectIndex the index of this item in the list
* @param complexObjectIsFromSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, complexObjectIndex: number, complexObjectIsFromSet: boolean);
get internalValue(): S3BucketReplicationConfigurationRule | cdktf.IResolvable | undefined;
set internalValue(value: S3BucketReplicationConfigurationRule | cdktf.IResolvable | undefined);
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _prefix?;
get prefix(): string;
set prefix(value: string);
resetPrefix(): void;
get prefixInput(): string | undefined;
private _priority?;
get priority(): number;
set priority(value: number);
resetPriority(): void;
get priorityInput(): number | undefined;
private _status?;
get status(): string;
set status(value: string);
get statusInput(): string | undefined;
private _deleteMarkerReplication;
get deleteMarkerReplication(): S3BucketReplicationConfigurationRuleDeleteMarkerReplicationOutputReference;
putDeleteMarkerReplication(value: S3BucketReplicationConfigurationRuleDeleteMarkerReplication): void;
resetDeleteMarkerReplication(): void;
get deleteMarkerReplicationInput(): S3BucketReplicationConfigurationRuleDeleteMarkerReplication | undefined;
private _destination;
get destination(): S3BucketReplicationConfigurationRuleDestinationOutputReference;
putDestination(value: S3BucketReplicationConfigurationRuleDestination): void;
get destinationInput(): S3BucketReplicationConfigurationRuleDestination | undefined;
private _existingObjectReplication;
get existingObjectReplication(): S3BucketReplicationConfigurationRuleExistingObjectReplicationOutputReference;
putExistingObjectReplication(value: S3BucketReplicationConfigurationRuleExistingObjectReplication): void;
resetExistingObjectReplication(): void;
get existingObjectReplicationInput(): S3BucketReplicationConfigurationRuleExistingObjectReplication | undefined;
private _filter;
get filter(): S3BucketReplicationConfigurationRuleFilterOutputReference;
putFilter(value: S3BucketReplicationConfigurationRuleFilter): void;
resetFilter(): void;
get filterInput(): S3BucketReplicationConfigurationRuleFilter | undefined;
private _sourceSelectionCriteria;
get sourceSelectionCriteria(): S3BucketReplicationConfigurationRuleSourceSelectionCriteriaOutputReference;
putSourceSelectionCriteria(value: S3BucketReplicationConfigurationRuleSourceSelectionCriteria): void;
resetSourceSelectionCriteria(): void;
get sourceSelectionCriteriaInput(): S3BucketReplicationConfigurationRuleSourceSelectionCriteria | undefined;
}
export declare class S3BucketReplicationConfigurationRuleList extends cdktf.ComplexList {
protected terraformResource: cdktf.IInterpolatingParent;
protected terraformAttribute: string;
protected wrapsSet: boolean;
internalValue?: S3BucketReplicationConfigurationRule[] | cdktf.IResolvable;
/**
* @param terraformResource The parent resource
* @param terraformAttribute The attribute on the parent resource this class is referencing
* @param wrapsSet whether the list is wrapping a set (will add tolist() to be able to access an item via an index)
*/
constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string, wrapsSet: boolean);
/**
* @param index the index of the item to return
*/
get(index: number): S3BucketReplicationConfigurationRuleOutputReference;
}
/**
* Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration aws_s3_bucket_replication_configuration}
*/
export declare class S3BucketReplicationConfigurationA extends cdktf.TerraformResource {
static readonly tfResourceType = "aws_s3_bucket_replication_configuration";
/**
* Generates CDKTF code for importing a S3BucketReplicationConfigurationA 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 S3BucketReplicationConfigurationA to import
* @param importFromId The id of the existing S3BucketReplicationConfigurationA that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration#import import section} in the documentation of this resource for the id to use
* @param provider? Optional instance of the provider where the S3BucketReplicationConfigurationA to import is found
*/
static generateConfigForImport(scope: Construct, importToId: string, importFromId: string, provider?: cdktf.TerraformProvider): cdktf.ImportableResource;
/**
* Create a new {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/s3_bucket_replication_configuration aws_s3_bucket_replication_configuration} 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 S3BucketReplicationConfigurationAConfig
*/
constructor(scope: Construct, id: string, config: S3BucketReplicationConfigurationAConfig);
private _bucket?;
get bucket(): string;
set bucket(value: string);
get bucketInput(): string | undefined;
private _id?;
get id(): string;
set id(value: string);
resetId(): void;
get idInput(): string | undefined;
private _role?;
get role(): string;
set role(value: string);
get roleInput(): string | undefined;
private _token?;
get token(): string;
set token(value: string);
resetToken(): void;
get tokenInput(): string | undefined;
private _rule;
get rule(): S3BucketReplicationConfigurationRuleList;
putRule(value: S3BucketReplicationConfigurationRule[] | cdktf.IResolvable): void;
get ruleInput(): cdktf.IResolvable | S3BucketReplicationConfigurationRule[] | undefined;
protected synthesizeAttributes(): {
[name: string]: any;
};
protected synthesizeHclAttributes(): {
[name: string]: any;
};
}