UNPKG

@cdktf/provider-aws

Version:

Prebuilt aws Provider for Terraform CDK (cdktf)

499 lines (498 loc) 26.3 kB
/** * Copyright (c) HashiCorp, Inc. * SPDX-License-Identifier: MPL-2.0 */ import { Construct } from 'constructs'; import * as cdktf from 'cdktf'; export interface LaunchConfigurationConfig extends cdktf.TerraformMetaArguments { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#associate_public_ip_address LaunchConfiguration#associate_public_ip_address} */ readonly associatePublicIpAddress?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#ebs_optimized LaunchConfiguration#ebs_optimized} */ readonly ebsOptimized?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#enable_monitoring LaunchConfiguration#enable_monitoring} */ readonly enableMonitoring?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#iam_instance_profile LaunchConfiguration#iam_instance_profile} */ readonly iamInstanceProfile?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#id LaunchConfiguration#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/launch_configuration#image_id LaunchConfiguration#image_id} */ readonly imageId: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#instance_type LaunchConfiguration#instance_type} */ readonly instanceType: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#key_name LaunchConfiguration#key_name} */ readonly keyName?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#name LaunchConfiguration#name} */ readonly name?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#name_prefix LaunchConfiguration#name_prefix} */ readonly namePrefix?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#placement_tenancy LaunchConfiguration#placement_tenancy} */ readonly placementTenancy?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#security_groups LaunchConfiguration#security_groups} */ readonly securityGroups?: string[]; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#spot_price LaunchConfiguration#spot_price} */ readonly spotPrice?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#user_data LaunchConfiguration#user_data} */ readonly userData?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#user_data_base64 LaunchConfiguration#user_data_base64} */ readonly userDataBase64?: string; /** * ebs_block_device block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#ebs_block_device LaunchConfiguration#ebs_block_device} */ readonly ebsBlockDevice?: LaunchConfigurationEbsBlockDevice[] | cdktf.IResolvable; /** * ephemeral_block_device block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#ephemeral_block_device LaunchConfiguration#ephemeral_block_device} */ readonly ephemeralBlockDevice?: LaunchConfigurationEphemeralBlockDevice[] | cdktf.IResolvable; /** * metadata_options block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#metadata_options LaunchConfiguration#metadata_options} */ readonly metadataOptions?: LaunchConfigurationMetadataOptions; /** * root_block_device block * * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#root_block_device LaunchConfiguration#root_block_device} */ readonly rootBlockDevice?: LaunchConfigurationRootBlockDevice; } export interface LaunchConfigurationEbsBlockDevice { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#delete_on_termination LaunchConfiguration#delete_on_termination} */ readonly deleteOnTermination?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#device_name LaunchConfiguration#device_name} */ readonly deviceName: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#encrypted LaunchConfiguration#encrypted} */ readonly encrypted?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#iops LaunchConfiguration#iops} */ readonly iops?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#no_device LaunchConfiguration#no_device} */ readonly noDevice?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#snapshot_id LaunchConfiguration#snapshot_id} */ readonly snapshotId?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#throughput LaunchConfiguration#throughput} */ readonly throughput?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#volume_size LaunchConfiguration#volume_size} */ readonly volumeSize?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#volume_type LaunchConfiguration#volume_type} */ readonly volumeType?: string; } export declare function launchConfigurationEbsBlockDeviceToTerraform(struct?: LaunchConfigurationEbsBlockDevice | cdktf.IResolvable): any; export declare function launchConfigurationEbsBlockDeviceToHclTerraform(struct?: LaunchConfigurationEbsBlockDevice | cdktf.IResolvable): any; export declare class LaunchConfigurationEbsBlockDeviceOutputReference 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(): LaunchConfigurationEbsBlockDevice | cdktf.IResolvable | undefined; set internalValue(value: LaunchConfigurationEbsBlockDevice | cdktf.IResolvable | undefined); private _deleteOnTermination?; get deleteOnTermination(): boolean | cdktf.IResolvable; set deleteOnTermination(value: boolean | cdktf.IResolvable); resetDeleteOnTermination(): void; get deleteOnTerminationInput(): boolean | cdktf.IResolvable | undefined; private _deviceName?; get deviceName(): string; set deviceName(value: string); get deviceNameInput(): string | undefined; private _encrypted?; get encrypted(): boolean | cdktf.IResolvable; set encrypted(value: boolean | cdktf.IResolvable); resetEncrypted(): void; get encryptedInput(): boolean | cdktf.IResolvable | undefined; private _iops?; get iops(): number; set iops(value: number); resetIops(): void; get iopsInput(): number | undefined; private _noDevice?; get noDevice(): boolean | cdktf.IResolvable; set noDevice(value: boolean | cdktf.IResolvable); resetNoDevice(): void; get noDeviceInput(): boolean | cdktf.IResolvable | undefined; private _snapshotId?; get snapshotId(): string; set snapshotId(value: string); resetSnapshotId(): void; get snapshotIdInput(): string | undefined; private _throughput?; get throughput(): number; set throughput(value: number); resetThroughput(): void; get throughputInput(): number | undefined; private _volumeSize?; get volumeSize(): number; set volumeSize(value: number); resetVolumeSize(): void; get volumeSizeInput(): number | undefined; private _volumeType?; get volumeType(): string; set volumeType(value: string); resetVolumeType(): void; get volumeTypeInput(): string | undefined; } export declare class LaunchConfigurationEbsBlockDeviceList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: LaunchConfigurationEbsBlockDevice[] | 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): LaunchConfigurationEbsBlockDeviceOutputReference; } export interface LaunchConfigurationEphemeralBlockDevice { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#device_name LaunchConfiguration#device_name} */ readonly deviceName: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#no_device LaunchConfiguration#no_device} */ readonly noDevice?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#virtual_name LaunchConfiguration#virtual_name} */ readonly virtualName?: string; } export declare function launchConfigurationEphemeralBlockDeviceToTerraform(struct?: LaunchConfigurationEphemeralBlockDevice | cdktf.IResolvable): any; export declare function launchConfigurationEphemeralBlockDeviceToHclTerraform(struct?: LaunchConfigurationEphemeralBlockDevice | cdktf.IResolvable): any; export declare class LaunchConfigurationEphemeralBlockDeviceOutputReference 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(): LaunchConfigurationEphemeralBlockDevice | cdktf.IResolvable | undefined; set internalValue(value: LaunchConfigurationEphemeralBlockDevice | cdktf.IResolvable | undefined); private _deviceName?; get deviceName(): string; set deviceName(value: string); get deviceNameInput(): string | undefined; private _noDevice?; get noDevice(): boolean | cdktf.IResolvable; set noDevice(value: boolean | cdktf.IResolvable); resetNoDevice(): void; get noDeviceInput(): boolean | cdktf.IResolvable | undefined; private _virtualName?; get virtualName(): string; set virtualName(value: string); resetVirtualName(): void; get virtualNameInput(): string | undefined; } export declare class LaunchConfigurationEphemeralBlockDeviceList extends cdktf.ComplexList { protected terraformResource: cdktf.IInterpolatingParent; protected terraformAttribute: string; protected wrapsSet: boolean; internalValue?: LaunchConfigurationEphemeralBlockDevice[] | 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): LaunchConfigurationEphemeralBlockDeviceOutputReference; } export interface LaunchConfigurationMetadataOptions { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#http_endpoint LaunchConfiguration#http_endpoint} */ readonly httpEndpoint?: string; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#http_put_response_hop_limit LaunchConfiguration#http_put_response_hop_limit} */ readonly httpPutResponseHopLimit?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#http_tokens LaunchConfiguration#http_tokens} */ readonly httpTokens?: string; } export declare function launchConfigurationMetadataOptionsToTerraform(struct?: LaunchConfigurationMetadataOptionsOutputReference | LaunchConfigurationMetadataOptions): any; export declare function launchConfigurationMetadataOptionsToHclTerraform(struct?: LaunchConfigurationMetadataOptionsOutputReference | LaunchConfigurationMetadataOptions): any; export declare class LaunchConfigurationMetadataOptionsOutputReference 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(): LaunchConfigurationMetadataOptions | undefined; set internalValue(value: LaunchConfigurationMetadataOptions | undefined); private _httpEndpoint?; get httpEndpoint(): string; set httpEndpoint(value: string); resetHttpEndpoint(): void; get httpEndpointInput(): string | undefined; private _httpPutResponseHopLimit?; get httpPutResponseHopLimit(): number; set httpPutResponseHopLimit(value: number); resetHttpPutResponseHopLimit(): void; get httpPutResponseHopLimitInput(): number | undefined; private _httpTokens?; get httpTokens(): string; set httpTokens(value: string); resetHttpTokens(): void; get httpTokensInput(): string | undefined; } export interface LaunchConfigurationRootBlockDevice { /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#delete_on_termination LaunchConfiguration#delete_on_termination} */ readonly deleteOnTermination?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#encrypted LaunchConfiguration#encrypted} */ readonly encrypted?: boolean | cdktf.IResolvable; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#iops LaunchConfiguration#iops} */ readonly iops?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#throughput LaunchConfiguration#throughput} */ readonly throughput?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#volume_size LaunchConfiguration#volume_size} */ readonly volumeSize?: number; /** * Docs at Terraform Registry: {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#volume_type LaunchConfiguration#volume_type} */ readonly volumeType?: string; } export declare function launchConfigurationRootBlockDeviceToTerraform(struct?: LaunchConfigurationRootBlockDeviceOutputReference | LaunchConfigurationRootBlockDevice): any; export declare function launchConfigurationRootBlockDeviceToHclTerraform(struct?: LaunchConfigurationRootBlockDeviceOutputReference | LaunchConfigurationRootBlockDevice): any; export declare class LaunchConfigurationRootBlockDeviceOutputReference 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(): LaunchConfigurationRootBlockDevice | undefined; set internalValue(value: LaunchConfigurationRootBlockDevice | undefined); private _deleteOnTermination?; get deleteOnTermination(): boolean | cdktf.IResolvable; set deleteOnTermination(value: boolean | cdktf.IResolvable); resetDeleteOnTermination(): void; get deleteOnTerminationInput(): boolean | cdktf.IResolvable | undefined; private _encrypted?; get encrypted(): boolean | cdktf.IResolvable; set encrypted(value: boolean | cdktf.IResolvable); resetEncrypted(): void; get encryptedInput(): boolean | cdktf.IResolvable | undefined; private _iops?; get iops(): number; set iops(value: number); resetIops(): void; get iopsInput(): number | undefined; private _throughput?; get throughput(): number; set throughput(value: number); resetThroughput(): void; get throughputInput(): number | undefined; private _volumeSize?; get volumeSize(): number; set volumeSize(value: number); resetVolumeSize(): void; get volumeSizeInput(): number | undefined; private _volumeType?; get volumeType(): string; set volumeType(value: string); resetVolumeType(): void; get volumeTypeInput(): string | undefined; } /** * Represents a {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration aws_launch_configuration} */ export declare class LaunchConfiguration extends cdktf.TerraformResource { static readonly tfResourceType = "aws_launch_configuration"; /** * Generates CDKTF code for importing a LaunchConfiguration 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 LaunchConfiguration to import * @param importFromId The id of the existing LaunchConfiguration that should be imported. Refer to the {@link https://registry.terraform.io/providers/hashicorp/aws/5.84.0/docs/resources/launch_configuration#import import section} in the documentation of this resource for the id to use * @param provider? Optional instance of the provider where the LaunchConfiguration 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/launch_configuration aws_launch_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 LaunchConfigurationConfig */ constructor(scope: Construct, id: string, config: LaunchConfigurationConfig); get arn(): string; private _associatePublicIpAddress?; get associatePublicIpAddress(): boolean | cdktf.IResolvable; set associatePublicIpAddress(value: boolean | cdktf.IResolvable); resetAssociatePublicIpAddress(): void; get associatePublicIpAddressInput(): boolean | cdktf.IResolvable | undefined; private _ebsOptimized?; get ebsOptimized(): boolean | cdktf.IResolvable; set ebsOptimized(value: boolean | cdktf.IResolvable); resetEbsOptimized(): void; get ebsOptimizedInput(): boolean | cdktf.IResolvable | undefined; private _enableMonitoring?; get enableMonitoring(): boolean | cdktf.IResolvable; set enableMonitoring(value: boolean | cdktf.IResolvable); resetEnableMonitoring(): void; get enableMonitoringInput(): boolean | cdktf.IResolvable | undefined; private _iamInstanceProfile?; get iamInstanceProfile(): string; set iamInstanceProfile(value: string); resetIamInstanceProfile(): void; get iamInstanceProfileInput(): string | undefined; private _id?; get id(): string; set id(value: string); resetId(): void; get idInput(): string | undefined; private _imageId?; get imageId(): string; set imageId(value: string); get imageIdInput(): string | undefined; private _instanceType?; get instanceType(): string; set instanceType(value: string); get instanceTypeInput(): string | undefined; private _keyName?; get keyName(): string; set keyName(value: string); resetKeyName(): void; get keyNameInput(): string | undefined; private _name?; get name(): string; set name(value: string); resetName(): void; get nameInput(): string | undefined; private _namePrefix?; get namePrefix(): string; set namePrefix(value: string); resetNamePrefix(): void; get namePrefixInput(): string | undefined; private _placementTenancy?; get placementTenancy(): string; set placementTenancy(value: string); resetPlacementTenancy(): void; get placementTenancyInput(): string | undefined; private _securityGroups?; get securityGroups(): string[]; set securityGroups(value: string[]); resetSecurityGroups(): void; get securityGroupsInput(): string[] | undefined; private _spotPrice?; get spotPrice(): string; set spotPrice(value: string); resetSpotPrice(): void; get spotPriceInput(): string | undefined; private _userData?; get userData(): string; set userData(value: string); resetUserData(): void; get userDataInput(): string | undefined; private _userDataBase64?; get userDataBase64(): string; set userDataBase64(value: string); resetUserDataBase64(): void; get userDataBase64Input(): string | undefined; private _ebsBlockDevice; get ebsBlockDevice(): LaunchConfigurationEbsBlockDeviceList; putEbsBlockDevice(value: LaunchConfigurationEbsBlockDevice[] | cdktf.IResolvable): void; resetEbsBlockDevice(): void; get ebsBlockDeviceInput(): cdktf.IResolvable | LaunchConfigurationEbsBlockDevice[] | undefined; private _ephemeralBlockDevice; get ephemeralBlockDevice(): LaunchConfigurationEphemeralBlockDeviceList; putEphemeralBlockDevice(value: LaunchConfigurationEphemeralBlockDevice[] | cdktf.IResolvable): void; resetEphemeralBlockDevice(): void; get ephemeralBlockDeviceInput(): cdktf.IResolvable | LaunchConfigurationEphemeralBlockDevice[] | undefined; private _metadataOptions; get metadataOptions(): LaunchConfigurationMetadataOptionsOutputReference; putMetadataOptions(value: LaunchConfigurationMetadataOptions): void; resetMetadataOptions(): void; get metadataOptionsInput(): LaunchConfigurationMetadataOptions | undefined; private _rootBlockDevice; get rootBlockDevice(): LaunchConfigurationRootBlockDeviceOutputReference; putRootBlockDevice(value: LaunchConfigurationRootBlockDevice): void; resetRootBlockDevice(): void; get rootBlockDeviceInput(): LaunchConfigurationRootBlockDevice | undefined; protected synthesizeAttributes(): { [name: string]: any; }; protected synthesizeHclAttributes(): { [name: string]: any; }; }