import * as core from "@terrascript/core"; export interface TransitGatewayRouteTableAttachmentArgs extends core.ResourceArgs { /** * (Required) The ID of the peer for the attachment. */ peeringId: string | core.StringOut; /** * (Optional) Key-value tags for the attachment. If configured with a provider [`default_tags` configur * ation block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configur * ation-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) The ARN of the transit gateway route table for the attachment. */ transitGatewayRouteTableArn: string | core.StringOut; } export class TransitGatewayRouteTableAttachment extends core.Resource { /** * Attachment Amazon Resource Name (ARN). */ @core.attr(String, { computed: true }) public arn!: string | core.StringOut; /** * The policy rule number associated with the attachment. */ @core.attr(Number, { computed: true }) public attachmentPolicyRuleNumber!: number | core.NumberOut; /** * The type of attachment. */ @core.attr(String, { computed: true }) public attachmentType!: string | core.StringOut; /** * The ARN of the core network. */ @core.attr(String, { computed: true }) public coreNetworkArn!: string | core.StringOut; /** * The ID of the core network. */ @core.attr(String, { computed: true }) public coreNetworkId!: string | core.StringOut; /** * The edge location for the peer. */ @core.attr(String, { computed: true }) public edgeLocation!: string | core.StringOut; /** * The ID of the attachment. */ @core.attr(String, { computed: true }) public id!: string | core.StringOut; /** * The ID of the attachment account owner. */ @core.attr(String, { computed: true }) public ownerAccountId!: string | core.StringOut; /** * (Required) The ID of the peer for the attachment. */ @core.attr(String) public peeringId!: string | core.StringOut; /** * The attachment resource ARN. */ @core.attr(String, { computed: true }) public resourceArn!: string | core.StringOut; /** * The name of the segment attachment. */ @core.attr(String, { computed: true }) public segmentName!: string | core.StringOut; /** * The state of the attachment. */ @core.attr(String, { computed: true }) public state!: string | core.StringOut; /** * (Optional) Key-value tags for the attachment. If configured with a provider [`default_tags` configur * ation block](https://registry.terraform.io/providers/hashicorp/aws/latest/docs#default_tags-configur * ation-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) The ARN of the transit gateway route table for the attachment. */ @core.attr(String) public transitGatewayRouteTableArn!: string | core.StringOut; constructor(name: string, args?: TransitGatewayRouteTableAttachmentArgs) { super( name, "aws_networkmanager_transit_gateway_route_table_attachment", args ); } public override getNamespace(): string { return "aws_networkmanager"; } }