import * as core from "@terrascript/core"; export interface DxGatewayAssociationArgs extends core.ResourceArgs { /** * (Optional) VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR blo * ck of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. */ allowedPrefixes?: core.Array | core.ArrayOut; /** * (Optional) The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. */ associatedGatewayId?: string | core.StringOut; /** * (Optional) The ID of the AWS account that owns the VGW or transit gateway with which to associate th * e Direct Connect gateway. */ associatedGatewayOwnerAccountId?: string | core.StringOut; /** * (Required) The ID of the Direct Connect gateway. */ dxGatewayId: string | core.StringOut; /** * (Optional) The ID of the Direct Connect gateway association proposal. */ proposalId?: string | core.StringOut; vpnGatewayId?: string | core.StringOut; } export class DxGatewayAssociation extends core.Resource { /** * (Optional) VPC prefixes (CIDRs) to advertise to the Direct Connect gateway. Defaults to the CIDR blo * ck of the VPC associated with the Virtual Gateway. To enable drift detection, must be configured. */ @core.attr(String, { computed: true, kind: "array" }) public allowedPrefixes?: core.Array | core.ArrayOut; /** * (Optional) The ID of the VGW or transit gateway with which to associate the Direct Connect gateway. */ @core.attr(String, { computed: true }) public associatedGatewayId?: string | core.StringOut; /** * (Optional) The ID of the AWS account that owns the VGW or transit gateway with which to associate th * e Direct Connect gateway. */ @core.attr(String, { computed: true }) public associatedGatewayOwnerAccountId?: string | core.StringOut; /** * The type of the associated gateway, `transitGateway` or `virtualPrivateGateway`. */ @core.attr(String, { computed: true }) public associatedGatewayType!: string | core.StringOut; /** * The ID of the Direct Connect gateway association. */ @core.attr(String, { computed: true }) public dxGatewayAssociationId!: string | core.StringOut; /** * (Required) The ID of the Direct Connect gateway. */ @core.attr(String) public dxGatewayId!: string | core.StringOut; /** * The ID of the AWS account that owns the Direct Connect gateway. */ @core.attr(String, { computed: true }) public dxGatewayOwnerAccountId!: string | core.StringOut; /** * The ID of the Direct Connect gateway association resource. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * (Optional) The ID of the Direct Connect gateway association proposal. */ @core.attr(String) public proposalId?: string | core.StringOut; @core.attr(String) public vpnGatewayId?: string | core.StringOut; constructor(name: string, args?: DxGatewayAssociationArgs) { super(name, "aws_dx_gateway_association", args); } public override getNamespace(): string { return "aws_direct_connect"; } }