import * as core from "@terrascript/core"; export interface MainArgs extends core.ResourceArgs { /** * (Optional) Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You can * not specify the range of IP addresses, or the size of the CIDR block. Default is `false`. Conflicts * with `ipv6_ipam_pool_id` */ assignGeneratedIpv6CidrBlock?: boolean | core.BooleanOut; /** * (Optional) The IPv4 CIDR block for the VPC. CIDR can be explicitly set or it can be derived from IPA * M using `ipv4_netmask_length`. */ cidrBlock?: string | core.StringOut; /** * (Optional) A boolean flag to enable/disable ClassicLink */ enableClassiclink?: boolean | core.BooleanOut; /** * (Optional) A boolean flag to enable/disable ClassicLink DNS Support for the VPC. */ enableClassiclinkDnsSupport?: boolean | core.BooleanOut; /** * (Optional) A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false. */ enableDnsHostnames?: boolean | core.BooleanOut; /** * (Optional) A boolean flag to enable/disable DNS support in the VPC. Defaults true. */ enableDnsSupport?: boolean | core.BooleanOut; /** * (Optional) A tenancy option for instances launched into the VPC. Default is `default`, which ensures * that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the E * C2 instance is launched. The only other option is `dedicated`, which ensures that EC2 instances laun * ched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specifie * d at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage f * ee. */ instanceTenancy?: string | core.StringOut; /** * (Optional) The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC * feature that you can use to automate your IP address management workflows including assigning, trac * king, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can * monitor IP address usage throughout your AWS Organization. */ ipv4IpamPoolId?: string | core.StringOut; /** * (Optional) The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying * a `ipv4_ipam_pool_id`. */ ipv4NetmaskLength?: number | core.NumberOut; /** * (Optional) IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM * using `ipv6_netmask_length`. */ ipv6CidrBlock?: string | core.StringOut; /** * (Optional) By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_borde * r_group will be set to the region of the VPC. This can be changed to restrict advertisement of publi * c addresses to specific Network Border Groups such as LocalZones. */ ipv6CidrBlockNetworkBorderGroup?: string | core.StringOut; /** * (Optional) IPAM Pool ID for a IPv6 pool. Conflicts with `assign_generated_ipv6_cidr_block`. */ ipv6IpamPoolId?: string | core.StringOut; /** * (Optional) Netmask length to request from IPAM Pool. Conflicts with `ipv6_cidr_block`. This can be o * mitted if IPAM pool as a `allocation_default_netmask_length` set. Valid values: `56`. */ ipv6NetmaskLength?: number | core.NumberOut; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; } export declare class Main extends core.Resource { /** * Amazon Resource Name (ARN) of VPC */ arn: string | core.StringOut; /** * (Optional) Requests an Amazon-provided IPv6 CIDR block with a /56 prefix length for the VPC. You can * not specify the range of IP addresses, or the size of the CIDR block. Default is `false`. Conflicts * with `ipv6_ipam_pool_id` */ assignGeneratedIpv6CidrBlock?: boolean | core.BooleanOut; /** * (Optional) The IPv4 CIDR block for the VPC. CIDR can be explicitly set or it can be derived from IPA * M using `ipv4_netmask_length`. */ cidrBlock?: string | core.StringOut; /** * The ID of the network ACL created by default on VPC creation */ defaultNetworkAclId: string | core.StringOut; /** * The ID of the route table created by default on VPC creation */ defaultRouteTableId: string | core.StringOut; /** * The ID of the security group created by default on VPC creation */ defaultSecurityGroupId: string | core.StringOut; dhcpOptionsId: string | core.StringOut; /** * (Optional) A boolean flag to enable/disable ClassicLink */ enableClassiclink?: boolean | core.BooleanOut; /** * (Optional) A boolean flag to enable/disable ClassicLink DNS Support for the VPC. */ enableClassiclinkDnsSupport?: boolean | core.BooleanOut; /** * (Optional) A boolean flag to enable/disable DNS hostnames in the VPC. Defaults false. */ enableDnsHostnames?: boolean | core.BooleanOut; /** * (Optional) A boolean flag to enable/disable DNS support in the VPC. Defaults true. */ enableDnsSupport?: boolean | core.BooleanOut; /** * The ID of the VPC */ id: string | core.StringOut; /** * (Optional) A tenancy option for instances launched into the VPC. Default is `default`, which ensures * that EC2 instances launched in this VPC use the EC2 instance tenancy attribute specified when the E * C2 instance is launched. The only other option is `dedicated`, which ensures that EC2 instances laun * ched in this VPC are run on dedicated tenancy instances regardless of the tenancy attribute specifie * d at launch. This has a dedicated per region fee of $2 per hour, plus an hourly per instance usage f * ee. */ instanceTenancy?: string | core.StringOut; /** * (Optional) The ID of an IPv4 IPAM pool you want to use for allocating this VPC's CIDR. IPAM is a VPC * feature that you can use to automate your IP address management workflows including assigning, trac * king, troubleshooting, and auditing IP addresses across AWS Regions and accounts. Using IPAM you can * monitor IP address usage throughout your AWS Organization. */ ipv4IpamPoolId?: string | core.StringOut; /** * (Optional) The netmask length of the IPv4 CIDR you want to allocate to this VPC. Requires specifying * a `ipv4_ipam_pool_id`. */ ipv4NetmaskLength?: number | core.NumberOut; /** * The association ID for the IPv6 CIDR block. */ ipv6AssociationId: string | core.StringOut; /** * (Optional) IPv6 CIDR block to request from an IPAM Pool. Can be set explicitly or derived from IPAM * using `ipv6_netmask_length`. */ ipv6CidrBlock?: string | core.StringOut; /** * (Optional) By default when an IPv6 CIDR is assigned to a VPC a default ipv6_cidr_block_network_borde * r_group will be set to the region of the VPC. This can be changed to restrict advertisement of publi * c addresses to specific Network Border Groups such as LocalZones. */ ipv6CidrBlockNetworkBorderGroup?: string | core.StringOut; /** * (Optional) IPAM Pool ID for a IPv6 pool. Conflicts with `assign_generated_ipv6_cidr_block`. */ ipv6IpamPoolId?: string | core.StringOut; /** * (Optional) Netmask length to request from IPAM Pool. Conflicts with `ipv6_cidr_block`. This can be o * mitted if IPAM pool as a `allocation_default_netmask_length` set. Valid values: `56`. */ ipv6NetmaskLength?: number | core.NumberOut; /** * The ID of the main route table associated with */ mainRouteTableId: string | core.StringOut; /** * The ID of the AWS account that owns the VPC. */ ownerId: string | core.StringOut; /** * (Optional) A map of tags to assign to the resource. If configured with a provider [`default_tags` co * nfiguration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-co * nfiguration-block) present, tags with matching keys will overwrite those defined at the provider-lev * el. */ tags?: core.Map | core.MapOut; /** * A map of tags assigned to the resource, including those inherited from the provider [`default_tags` * configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags- * configuration-block). */ tagsAll?: core.Map | core.MapOut; constructor(name: string, args?: MainArgs); getNamespace(): string; } //# sourceMappingURL=main.d.ts.map