import * as core from "@terrascript/core"; export interface Ipv6CidrBlockAssociationArgs extends core.ResourceArgs { /** * (Optional) The IPv6 CIDR block for the VPC. CIDR can be explicitly set or it can be derived from IPA * M using `ipv6_netmask_length`. This parameter is required if `ipv6_netmask_length` is not set and he * IPAM pool does not have `allocation_default_netmask` set. */ ipv6CidrBlock?: string | core.StringOut; /** * (Required) The ID of an IPv6 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. */ ipv6IpamPoolId: string | core.StringOut; /** * (Optional) The netmask length of the IPv6 CIDR you want to allocate to this VPC. Requires specifying * a `ipv6_ipam_pool_id`. This parameter is optional if the IPAM pool has `allocation_default_netmask` * set, otherwise it or `cidr_block` are required */ ipv6NetmaskLength?: number | core.NumberOut; /** * (Required) The ID of the VPC to make the association with. */ vpcId: string | core.StringOut; } export class Ipv6CidrBlockAssociation extends core.Resource { /** * The ID of the VPC CIDR association */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The IPv6 CIDR block for the VPC. CIDR can be explicitly set or it can be derived from IPA * M using `ipv6_netmask_length`. This parameter is required if `ipv6_netmask_length` is not set and he * IPAM pool does not have `allocation_default_netmask` set. */ @core.attr(String, { computed: true }) public ipv6CidrBlock?: string | core.StringOut; /** * (Required) The ID of an IPv6 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. */ @core.attr(String) public ipv6IpamPoolId!: string | core.StringOut; /** * (Optional) The netmask length of the IPv6 CIDR you want to allocate to this VPC. Requires specifying * a `ipv6_ipam_pool_id`. This parameter is optional if the IPAM pool has `allocation_default_netmask` * set, otherwise it or `cidr_block` are required */ @core.attr(Number) public ipv6NetmaskLength?: number | core.NumberOut; /** * (Required) The ID of the VPC to make the association with. */ @core.attr(String) public vpcId!: string | core.StringOut; constructor(name: string, args?: Ipv6CidrBlockAssociationArgs) { super(name, "aws_vpc_ipv6_cidr_block_association", args); } public override getNamespace(): string { return "aws_vpc"; } }