import * as core from "@terrascript/core"; export interface Ec2TransitGatewayMulticastDomainArgs extends core.ResourceArgs { /** * (Optional) Whether to automatically accept cross-account subnet associations that are associated wit * h the EC2 Transit Gateway Multicast Domain. Valid values: `disable`, `enable`. Default value: `disab * le`. */ autoAcceptSharedAssociations?: string | core.StringOut; /** * (Optional) Whether to enable Internet Group Management Protocol (IGMP) version 2 for the EC2 Transit * Gateway Multicast Domain. Valid values: `disable`, `enable`. Default value: `disable`. */ igmpv2Support?: string | core.StringOut; /** * (Optional) Whether to enable support for statically configuring multicast group sources for the EC2 * Transit Gateway Multicast Domain. Valid values: `disable`, `enable`. Default value: `disable`. */ staticSourcesSupport?: string | core.StringOut; /** * (Optional) Key-value tags for the EC2 Transit Gateway Multicast Domain. If configured with a provide * r [`default_tags` configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/ * docs#default_tags-configuration-block) present, tags with matching keys will overwrite those defined * at the provider-level. */ 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; /** * (Required) EC2 Transit Gateway identifier. The EC2 Transit Gateway must have `multicast_support` ena * bled. */ transitGatewayId: string | core.StringOut; } export class Ec2TransitGatewayMulticastDomain extends core.Resource { /** * EC2 Transit Gateway Multicast Domain Amazon Resource Name (ARN). */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * (Optional) Whether to automatically accept cross-account subnet associations that are associated wit * h the EC2 Transit Gateway Multicast Domain. Valid values: `disable`, `enable`. Default value: `disab * le`. */ @core.attr(String) public autoAcceptSharedAssociations?: string | core.StringOut; /** * EC2 Transit Gateway Multicast Domain identifier. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) Whether to enable Internet Group Management Protocol (IGMP) version 2 for the EC2 Transit * Gateway Multicast Domain. Valid values: `disable`, `enable`. Default value: `disable`. */ @core.attr(String) public igmpv2Support?: string | core.StringOut; /** * Identifier of the AWS account that owns the EC2 Transit Gateway Multicast Domain. */ @core.attr(String, { computed: true }) public ownerId!: string | core.StringOut; /** * (Optional) Whether to enable support for statically configuring multicast group sources for the EC2 * Transit Gateway Multicast Domain. Valid values: `disable`, `enable`. Default value: `disable`. */ @core.attr(String) public staticSourcesSupport?: string | core.StringOut; /** * (Optional) Key-value tags for the EC2 Transit Gateway Multicast Domain. If configured with a provide * r [`default_tags` configuration block](https://registry.terraform.io/providers/hashicorp/aws/latest/ * docs#default_tags-configuration-block) present, tags with matching keys will overwrite those defined * at the provider-level. */ @core.attr(String, { kind: "map" }) public 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). */ @core.attr(String, { computed: true, kind: "map" }) public tagsAll?: core.Map | core.MapOut; /** * (Required) EC2 Transit Gateway identifier. The EC2 Transit Gateway must have `multicast_support` ena * bled. */ @core.attr(String) public transitGatewayId!: string | core.StringOut; constructor(name: string, args?: Ec2TransitGatewayMulticastDomainArgs) { super(name, "aws_ec2_transit_gateway_multicast_domain", args); } public override getNamespace(): string { return "aws_transit_gateway"; } }