UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

507 lines (506 loc) 25.3 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface ElasticacheClusterConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#apply_immediately ElasticacheCluster#apply_immediately} */ readonly applyImmediately?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#auto_minor_version_upgrade ElasticacheCluster#auto_minor_version_upgrade} */ readonly autoMinorVersionUpgrade?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#availability_zone ElasticacheCluster#availability_zone} */ readonly availabilityZone?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#az_mode ElasticacheCluster#az_mode} */ readonly azMode?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#cluster_id ElasticacheCluster#cluster_id} */ readonly clusterId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#engine ElasticacheCluster#engine} */ readonly engine?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#engine_version ElasticacheCluster#engine_version} */ readonly engineVersion?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#final_snapshot_identifier ElasticacheCluster#final_snapshot_identifier} */ readonly finalSnapshotIdentifier?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#id ElasticacheCluster#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/6.25.0/docs/resources/elasticache_cluster#ip_discovery ElasticacheCluster#ip_discovery} */ readonly ipDiscovery?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#maintenance_window ElasticacheCluster#maintenance_window} */ readonly maintenanceWindow?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#network_type ElasticacheCluster#network_type} */ readonly networkType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#node_type ElasticacheCluster#node_type} */ readonly nodeType?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#notification_topic_arn ElasticacheCluster#notification_topic_arn} */ readonly notificationTopicArn?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#num_cache_nodes ElasticacheCluster#num_cache_nodes} */ readonly numCacheNodes?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#outpost_mode ElasticacheCluster#outpost_mode} */ readonly outpostMode?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#parameter_group_name ElasticacheCluster#parameter_group_name} */ readonly parameterGroupName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#port ElasticacheCluster#port} */ readonly port?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#preferred_availability_zones ElasticacheCluster#preferred_availability_zones} */ readonly preferredAvailabilityZones?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#preferred_outpost_arn ElasticacheCluster#preferred_outpost_arn} */ readonly preferredOutpostArn?: string; /** * Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the [provider configuration](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#aws-configuration-reference). * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#region ElasticacheCluster#region} */ readonly region?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#replication_group_id ElasticacheCluster#replication_group_id} */ readonly replicationGroupId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#security_group_ids ElasticacheCluster#security_group_ids} */ readonly securityGroupIds?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#snapshot_arns ElasticacheCluster#snapshot_arns} */ readonly snapshotArns?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#snapshot_name ElasticacheCluster#snapshot_name} */ readonly snapshotName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#snapshot_retention_limit ElasticacheCluster#snapshot_retention_limit} */ readonly snapshotRetentionLimit?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#snapshot_window ElasticacheCluster#snapshot_window} */ readonly snapshotWindow?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#subnet_group_name ElasticacheCluster#subnet_group_name} */ readonly subnetGroupName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#tags ElasticacheCluster#tags} */ readonly tags?: { [key: string]: string; }; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#tags_all ElasticacheCluster#tags_all} */ readonly tagsAll?: { [key: string]: string; }; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#transit_encryption_enabled ElasticacheCluster#transit_encryption_enabled} */ readonly transitEncryptionEnabled?: boolean | cdktf.IResolvable; /** * log_delivery_configuration block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#log_delivery_configuration ElasticacheCluster#log_delivery_configuration} */ readonly logDeliveryConfiguration?: ElasticacheClusterLogDeliveryConfiguration[] | cdktf.IResolvable; /** * timeouts block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#timeouts ElasticacheCluster#timeouts} */ readonly timeouts?: ElasticacheClusterTimeouts; } export interface ElasticacheClusterCacheNodes { } export declare function elasticacheClusterCacheNodesToTerraform(struct?: ElasticacheClusterCacheNodes): any; export declare function elasticacheClusterCacheNodesToHclTerraform(struct?: ElasticacheClusterCacheNodes): any; export declare class ElasticacheClusterCacheNodesOutputReference extends cdktf.ComplexObject { private isEmptyObject; /** * @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(): ElasticacheClusterCacheNodes | undefined; set internalValue(value: ElasticacheClusterCacheNodes | undefined); get address(): string; get availabilityZone(): string; get id(): string; get outpostArn(): string; get port(): number; } export declare class ElasticacheClusterCacheNodesList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; /** * @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): ElasticacheClusterCacheNodesOutputReference; } export interface ElasticacheClusterLogDeliveryConfiguration { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#destination ElasticacheCluster#destination} */ readonly destination: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#destination_type ElasticacheCluster#destination_type} */ readonly destinationType: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#log_format ElasticacheCluster#log_format} */ readonly logFormat: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#log_type ElasticacheCluster#log_type} */ readonly logType: string; } export declare function elasticacheClusterLogDeliveryConfigurationToTerraform(struct?: ElasticacheClusterLogDeliveryConfiguration | cdktf.IResolvable): any; export declare function elasticacheClusterLogDeliveryConfigurationToHclTerraform(struct?: ElasticacheClusterLogDeliveryConfiguration | cdktf.IResolvable): any; export declare class ElasticacheClusterLogDeliveryConfigurationOutputReference 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(): ElasticacheClusterLogDeliveryConfiguration | cdktf.IResolvable | undefined; set internalValue(value: ElasticacheClusterLogDeliveryConfiguration | cdktf.IResolvable | undefined); private _destination?; get destination(): string; set destination(value: string); get destinationInput(): string | undefined; private _destinationType?; get destinationType(): string; set destinationType(value: string); get destinationTypeInput(): string | undefined; private _logFormat?; get logFormat(): string; set logFormat(value: string); get logFormatInput(): string | undefined; private _logType?; get logType(): string; set logType(value: string); get logTypeInput(): string | undefined; } export declare class ElasticacheClusterLogDeliveryConfigurationList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: ElasticacheClusterLogDeliveryConfiguration[] | 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): ElasticacheClusterLogDeliveryConfigurationOutputReference; } export interface ElasticacheClusterTimeouts { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#create ElasticacheCluster#create} */ readonly create?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#delete ElasticacheCluster#delete} */ readonly delete?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#update ElasticacheCluster#update} */ readonly update?: string; } export declare function elasticacheClusterTimeoutsToTerraform(struct?: ElasticacheClusterTimeouts | cdktf.IResolvable): any; export declare function elasticacheClusterTimeoutsToHclTerraform(struct?: ElasticacheClusterTimeouts | cdktf.IResolvable): any; export declare class ElasticacheClusterTimeoutsOutputReference extends cdktf.ComplexObject { private isEmptyObject; private resolvableValue?; /** * @param terraformResource The parent resource * @param terraformAttribute The attribute on the parent resource this class is referencing */ constructor(terraformResource: cdktf.IInterpolatingParent, terraformAttribute: string); get internalValue(): ElasticacheClusterTimeouts | cdktf.IResolvable | undefined; set internalValue(value: ElasticacheClusterTimeouts | cdktf.IResolvable | undefined); private _create?; get create(): string; set create(value: string); resetCreate(): void; get createInput(): string | undefined; private _delete?; get delete(): string; set delete(value: string); resetDelete(): void; get deleteInput(): string | undefined; private _update?; get update(): string; set update(value: string); resetUpdate(): void; get updateInput(): string | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster aws_elasticache_cluster} */ export declare class ElasticacheCluster extends cdktf.TerraformResource { static readonly tfResourceType = "aws_elasticache_cluster"; /** * Generates CDKTF code for importing a ElasticacheCluster 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 ElasticacheCluster to import * @param importFromId The id of the existing ElasticacheCluster that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/6.25.0/docs/resources/elasticache_cluster#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the ElasticacheCluster 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/6.25.0/docs/resources/elasticache_cluster aws_elasticache_cluster} 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 ElasticacheClusterConfig */ constructor(scope: Construct, id: string, config: ElasticacheClusterConfig); private _applyImmediately?; get applyImmediately(): boolean | cdktf.IResolvable; set applyImmediately(value: boolean | cdktf.IResolvable); resetApplyImmediately(): void; get applyImmediatelyInput(): boolean | cdktf.IResolvable | undefined; get arn(): string; private _autoMinorVersionUpgrade?; get autoMinorVersionUpgrade(): string; set autoMinorVersionUpgrade(value: string); resetAutoMinorVersionUpgrade(): void; get autoMinorVersionUpgradeInput(): string | undefined; private _availabilityZone?; get availabilityZone(): string; set availabilityZone(value: string); resetAvailabilityZone(): void; get availabilityZoneInput(): string | undefined; private _azMode?; get azMode(): string; set azMode(value: string); resetAzMode(): void; get azModeInput(): string | undefined; private _cacheNodes; get cacheNodes(): ElasticacheClusterCacheNodesList; get clusterAddress(): string; private _clusterId?; get clusterId(): string; set clusterId(value: string); get clusterIdInput(): string | undefined; get configurationEndpoint(): string; private _engine?; get engine(): string; set engine(value: string); resetEngine(): void; get engineInput(): string | undefined; private _engineVersion?; get engineVersion(): string; set engineVersion(value: string); resetEngineVersion(): void; get engineVersionInput(): string | undefined; get engineVersionActual(): string; private _finalSnapshotIdentifier?; get finalSnapshotIdentifier(): string; set finalSnapshotIdentifier(value: string); resetFinalSnapshotIdentifier(): void; get finalSnapshotIdentifierInput(): string | undefined; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _ipDiscovery?; get ipDiscovery(): string; set ipDiscovery(value: string); resetIpDiscovery(): void; get ipDiscoveryInput(): string | undefined; private _maintenanceWindow?; get maintenanceWindow(): string; set maintenanceWindow(value: string); resetMaintenanceWindow(): void; get maintenanceWindowInput(): string | undefined; private _networkType?; get networkType(): string; set networkType(value: string); resetNetworkType(): void; get networkTypeInput(): string | undefined; private _nodeType?; get nodeType(): string; set nodeType(value: string); resetNodeType(): void; get nodeTypeInput(): string | undefined; private _notificationTopicArn?; get notificationTopicArn(): string; set notificationTopicArn(value: string); resetNotificationTopicArn(): void; get notificationTopicArnInput(): string | undefined; private _numCacheNodes?; get numCacheNodes(): number; set numCacheNodes(value: number); resetNumCacheNodes(): void; get numCacheNodesInput(): number | undefined; private _outpostMode?; get outpostMode(): string; set outpostMode(value: string); resetOutpostMode(): void; get outpostModeInput(): string | undefined; private _parameterGroupName?; get parameterGroupName(): string; set parameterGroupName(value: string); resetParameterGroupName(): void; get parameterGroupNameInput(): string | undefined; private _port?; get port(): number; set port(value: number); resetPort(): void; get portInput(): number | undefined; private _preferredAvailabilityZones?; get preferredAvailabilityZones(): string[]; set preferredAvailabilityZones(value: string[]); resetPreferredAvailabilityZones(): void; get preferredAvailabilityZonesInput(): string[] | undefined; private _preferredOutpostArn?; get preferredOutpostArn(): string; set preferredOutpostArn(value: string); resetPreferredOutpostArn(): void; get preferredOutpostArnInput(): string | undefined; private _region?; get region(): string; set region(value: string); resetRegion(): void; get regionInput(): string | undefined; private _replicationGroupId?; get replicationGroupId(): string; set replicationGroupId(value: string); resetReplicationGroupId(): void; get replicationGroupIdInput(): string | undefined; private _securityGroupIds?; get securityGroupIds(): string[]; set securityGroupIds(value: string[]); resetSecurityGroupIds(): void; get securityGroupIdsInput(): string[] | undefined; private _snapshotArns?; get snapshotArns(): string[]; set snapshotArns(value: string[]); resetSnapshotArns(): void; get snapshotArnsInput(): string[] | undefined; private _snapshotName?; get snapshotName(): string; set snapshotName(value: string); resetSnapshotName(): void; get snapshotNameInput(): string | undefined; private _snapshotRetentionLimit?; get snapshotRetentionLimit(): number; set snapshotRetentionLimit(value: number); resetSnapshotRetentionLimit(): void; get snapshotRetentionLimitInput(): number | undefined; private _snapshotWindow?; get snapshotWindow(): string; set snapshotWindow(value: string); resetSnapshotWindow(): void; get snapshotWindowInput(): string | undefined; private _subnetGroupName?; get subnetGroupName(): string; set subnetGroupName(value: string); resetSubnetGroupName(): void; get subnetGroupNameInput(): string | undefined; private _tags?; get tags(): { [key: string]: string; }; set tags(value: { [key: string]: string; }); resetTags(): void; get tagsInput(): { [key: string]: string; } | undefined; private _tagsAll?; get tagsAll(): { [key: string]: string; }; set tagsAll(value: { [key: string]: string; }); resetTagsAll(): void; get tagsAllInput(): { [key: string]: string; } | undefined; private _transitEncryptionEnabled?; get transitEncryptionEnabled(): boolean | cdktf.IResolvable; set transitEncryptionEnabled(value: boolean | cdktf.IResolvable); resetTransitEncryptionEnabled(): void; get transitEncryptionEnabledInput(): boolean | cdktf.IResolvable | undefined; private _logDeliveryConfiguration; get logDeliveryConfiguration(): ElasticacheClusterLogDeliveryConfigurationList; putLogDeliveryConfiguration(value: ElasticacheClusterLogDeliveryConfiguration[] | cdktf.IResolvable): void; resetLogDeliveryConfiguration(): void; get logDeliveryConfigurationInput(): cdktf.IResolvable | ElasticacheClusterLogDeliveryConfiguration[] | undefined; private _timeouts; get timeouts(): ElasticacheClusterTimeoutsOutputReference; putTimeouts(value: ElasticacheClusterTimeouts): void; resetTimeouts(): void; get timeoutsInput(): cdktf.IResolvable | ElasticacheClusterTimeouts | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }