import * as core from "@terrascript/core"; export interface EndpointSecurityGroupAssociationArgs extends core.ResourceArgs { /** * (Optional) Whether this association should replace the association with the VPC's default security g * roup that is created when no security groups are specified during VPC endpoint creation. At most 1 a * ssociation per-VPC endpoint should be configured with `replace_default_association = true`. */ replaceDefaultAssociation?: boolean | core.BooleanOut; /** * (Required) The ID of the security group to be associated with the VPC endpoint. */ securityGroupId: string | core.StringOut; /** * (Required) The ID of the VPC endpoint with which the security group will be associated. */ vpcEndpointId: string | core.StringOut; } export class EndpointSecurityGroupAssociation extends core.Resource { /** * The ID of the association. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) Whether this association should replace the association with the VPC's default security g * roup that is created when no security groups are specified during VPC endpoint creation. At most 1 a * ssociation per-VPC endpoint should be configured with `replace_default_association = true`. */ @core.attr(Boolean) public replaceDefaultAssociation?: boolean | core.BooleanOut; /** * (Required) The ID of the security group to be associated with the VPC endpoint. */ @core.attr(String) public securityGroupId!: string | core.StringOut; /** * (Required) The ID of the VPC endpoint with which the security group will be associated. */ @core.attr(String) public vpcEndpointId!: string | core.StringOut; constructor(name: string, args?: EndpointSecurityGroupAssociationArgs) { super(name, "aws_vpc_endpoint_security_group_association", args); } public override getNamespace(): string { return "aws_vpc"; } }