github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/networkmanager/transitGatewayRouteTableAttachment.go (about)

     1  // Code generated by the Pulumi Terraform Bridge (tfgen) Tool DO NOT EDIT.
     2  // *** WARNING: Do not edit by hand unless you're certain you know what you are doing! ***
     3  
     4  package networkmanager
     5  
     6  import (
     7  	"context"
     8  	"reflect"
     9  
    10  	"errors"
    11  	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/internal"
    12  	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    13  )
    14  
    15  // Creates a transit gateway route table attachment.
    16  //
    17  // ## Example Usage
    18  //
    19  // <!--Start PulumiCodeChooser -->
    20  // ```go
    21  // package main
    22  //
    23  // import (
    24  //
    25  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/networkmanager"
    26  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    27  //
    28  // )
    29  //
    30  //	func main() {
    31  //		pulumi.Run(func(ctx *pulumi.Context) error {
    32  //			_, err := networkmanager.NewTransitGatewayRouteTableAttachment(ctx, "example", &networkmanager.TransitGatewayRouteTableAttachmentArgs{
    33  //				PeeringId:                   pulumi.Any(exampleAwsNetworkmanagerTransitGatewayPeering.Id),
    34  //				TransitGatewayRouteTableArn: pulumi.Any(exampleAwsEc2TransitGatewayRouteTable.Arn),
    35  //			})
    36  //			if err != nil {
    37  //				return err
    38  //			}
    39  //			return nil
    40  //		})
    41  //	}
    42  //
    43  // ```
    44  // <!--End PulumiCodeChooser -->
    45  //
    46  // ## Import
    47  //
    48  // Using `pulumi import`, import `aws_networkmanager_transit_gateway_route_table_attachment` using the attachment ID. For example:
    49  //
    50  // ```sh
    51  // $ pulumi import aws:networkmanager/transitGatewayRouteTableAttachment:TransitGatewayRouteTableAttachment example attachment-0f8fa60d2238d1bd8
    52  // ```
    53  type TransitGatewayRouteTableAttachment struct {
    54  	pulumi.CustomResourceState
    55  
    56  	// Attachment Amazon Resource Name (ARN).
    57  	Arn pulumi.StringOutput `pulumi:"arn"`
    58  	// The policy rule number associated with the attachment.
    59  	AttachmentPolicyRuleNumber pulumi.IntOutput `pulumi:"attachmentPolicyRuleNumber"`
    60  	// The type of attachment.
    61  	AttachmentType pulumi.StringOutput `pulumi:"attachmentType"`
    62  	// The ARN of the core network.
    63  	CoreNetworkArn pulumi.StringOutput `pulumi:"coreNetworkArn"`
    64  	// The ID of the core network.
    65  	CoreNetworkId pulumi.StringOutput `pulumi:"coreNetworkId"`
    66  	// The edge location for the peer.
    67  	EdgeLocation pulumi.StringOutput `pulumi:"edgeLocation"`
    68  	// The ID of the attachment account owner.
    69  	OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"`
    70  	// The ID of the peer for the attachment.
    71  	PeeringId pulumi.StringOutput `pulumi:"peeringId"`
    72  	// The attachment resource ARN.
    73  	ResourceArn pulumi.StringOutput `pulumi:"resourceArn"`
    74  	// The name of the segment attachment.
    75  	SegmentName pulumi.StringOutput `pulumi:"segmentName"`
    76  	// The state of the attachment.
    77  	State pulumi.StringOutput `pulumi:"state"`
    78  	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    79  	Tags pulumi.StringMapOutput `pulumi:"tags"`
    80  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
    81  	//
    82  	// Deprecated: Please use `tags` instead.
    83  	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
    84  	// The ARN of the transit gateway route table for the attachment.
    85  	TransitGatewayRouteTableArn pulumi.StringOutput `pulumi:"transitGatewayRouteTableArn"`
    86  }
    87  
    88  // NewTransitGatewayRouteTableAttachment registers a new resource with the given unique name, arguments, and options.
    89  func NewTransitGatewayRouteTableAttachment(ctx *pulumi.Context,
    90  	name string, args *TransitGatewayRouteTableAttachmentArgs, opts ...pulumi.ResourceOption) (*TransitGatewayRouteTableAttachment, error) {
    91  	if args == nil {
    92  		return nil, errors.New("missing one or more required arguments")
    93  	}
    94  
    95  	if args.PeeringId == nil {
    96  		return nil, errors.New("invalid value for required argument 'PeeringId'")
    97  	}
    98  	if args.TransitGatewayRouteTableArn == nil {
    99  		return nil, errors.New("invalid value for required argument 'TransitGatewayRouteTableArn'")
   100  	}
   101  	opts = internal.PkgResourceDefaultOpts(opts)
   102  	var resource TransitGatewayRouteTableAttachment
   103  	err := ctx.RegisterResource("aws:networkmanager/transitGatewayRouteTableAttachment:TransitGatewayRouteTableAttachment", name, args, &resource, opts...)
   104  	if err != nil {
   105  		return nil, err
   106  	}
   107  	return &resource, nil
   108  }
   109  
   110  // GetTransitGatewayRouteTableAttachment gets an existing TransitGatewayRouteTableAttachment resource's state with the given name, ID, and optional
   111  // state properties that are used to uniquely qualify the lookup (nil if not required).
   112  func GetTransitGatewayRouteTableAttachment(ctx *pulumi.Context,
   113  	name string, id pulumi.IDInput, state *TransitGatewayRouteTableAttachmentState, opts ...pulumi.ResourceOption) (*TransitGatewayRouteTableAttachment, error) {
   114  	var resource TransitGatewayRouteTableAttachment
   115  	err := ctx.ReadResource("aws:networkmanager/transitGatewayRouteTableAttachment:TransitGatewayRouteTableAttachment", name, id, state, &resource, opts...)
   116  	if err != nil {
   117  		return nil, err
   118  	}
   119  	return &resource, nil
   120  }
   121  
   122  // Input properties used for looking up and filtering TransitGatewayRouteTableAttachment resources.
   123  type transitGatewayRouteTableAttachmentState struct {
   124  	// Attachment Amazon Resource Name (ARN).
   125  	Arn *string `pulumi:"arn"`
   126  	// The policy rule number associated with the attachment.
   127  	AttachmentPolicyRuleNumber *int `pulumi:"attachmentPolicyRuleNumber"`
   128  	// The type of attachment.
   129  	AttachmentType *string `pulumi:"attachmentType"`
   130  	// The ARN of the core network.
   131  	CoreNetworkArn *string `pulumi:"coreNetworkArn"`
   132  	// The ID of the core network.
   133  	CoreNetworkId *string `pulumi:"coreNetworkId"`
   134  	// The edge location for the peer.
   135  	EdgeLocation *string `pulumi:"edgeLocation"`
   136  	// The ID of the attachment account owner.
   137  	OwnerAccountId *string `pulumi:"ownerAccountId"`
   138  	// The ID of the peer for the attachment.
   139  	PeeringId *string `pulumi:"peeringId"`
   140  	// The attachment resource ARN.
   141  	ResourceArn *string `pulumi:"resourceArn"`
   142  	// The name of the segment attachment.
   143  	SegmentName *string `pulumi:"segmentName"`
   144  	// The state of the attachment.
   145  	State *string `pulumi:"state"`
   146  	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   147  	Tags map[string]string `pulumi:"tags"`
   148  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   149  	//
   150  	// Deprecated: Please use `tags` instead.
   151  	TagsAll map[string]string `pulumi:"tagsAll"`
   152  	// The ARN of the transit gateway route table for the attachment.
   153  	TransitGatewayRouteTableArn *string `pulumi:"transitGatewayRouteTableArn"`
   154  }
   155  
   156  type TransitGatewayRouteTableAttachmentState struct {
   157  	// Attachment Amazon Resource Name (ARN).
   158  	Arn pulumi.StringPtrInput
   159  	// The policy rule number associated with the attachment.
   160  	AttachmentPolicyRuleNumber pulumi.IntPtrInput
   161  	// The type of attachment.
   162  	AttachmentType pulumi.StringPtrInput
   163  	// The ARN of the core network.
   164  	CoreNetworkArn pulumi.StringPtrInput
   165  	// The ID of the core network.
   166  	CoreNetworkId pulumi.StringPtrInput
   167  	// The edge location for the peer.
   168  	EdgeLocation pulumi.StringPtrInput
   169  	// The ID of the attachment account owner.
   170  	OwnerAccountId pulumi.StringPtrInput
   171  	// The ID of the peer for the attachment.
   172  	PeeringId pulumi.StringPtrInput
   173  	// The attachment resource ARN.
   174  	ResourceArn pulumi.StringPtrInput
   175  	// The name of the segment attachment.
   176  	SegmentName pulumi.StringPtrInput
   177  	// The state of the attachment.
   178  	State pulumi.StringPtrInput
   179  	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   180  	Tags pulumi.StringMapInput
   181  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   182  	//
   183  	// Deprecated: Please use `tags` instead.
   184  	TagsAll pulumi.StringMapInput
   185  	// The ARN of the transit gateway route table for the attachment.
   186  	TransitGatewayRouteTableArn pulumi.StringPtrInput
   187  }
   188  
   189  func (TransitGatewayRouteTableAttachmentState) ElementType() reflect.Type {
   190  	return reflect.TypeOf((*transitGatewayRouteTableAttachmentState)(nil)).Elem()
   191  }
   192  
   193  type transitGatewayRouteTableAttachmentArgs struct {
   194  	// The ID of the peer for the attachment.
   195  	PeeringId string `pulumi:"peeringId"`
   196  	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   197  	Tags map[string]string `pulumi:"tags"`
   198  	// The ARN of the transit gateway route table for the attachment.
   199  	TransitGatewayRouteTableArn string `pulumi:"transitGatewayRouteTableArn"`
   200  }
   201  
   202  // The set of arguments for constructing a TransitGatewayRouteTableAttachment resource.
   203  type TransitGatewayRouteTableAttachmentArgs struct {
   204  	// The ID of the peer for the attachment.
   205  	PeeringId pulumi.StringInput
   206  	// Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   207  	Tags pulumi.StringMapInput
   208  	// The ARN of the transit gateway route table for the attachment.
   209  	TransitGatewayRouteTableArn pulumi.StringInput
   210  }
   211  
   212  func (TransitGatewayRouteTableAttachmentArgs) ElementType() reflect.Type {
   213  	return reflect.TypeOf((*transitGatewayRouteTableAttachmentArgs)(nil)).Elem()
   214  }
   215  
   216  type TransitGatewayRouteTableAttachmentInput interface {
   217  	pulumi.Input
   218  
   219  	ToTransitGatewayRouteTableAttachmentOutput() TransitGatewayRouteTableAttachmentOutput
   220  	ToTransitGatewayRouteTableAttachmentOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentOutput
   221  }
   222  
   223  func (*TransitGatewayRouteTableAttachment) ElementType() reflect.Type {
   224  	return reflect.TypeOf((**TransitGatewayRouteTableAttachment)(nil)).Elem()
   225  }
   226  
   227  func (i *TransitGatewayRouteTableAttachment) ToTransitGatewayRouteTableAttachmentOutput() TransitGatewayRouteTableAttachmentOutput {
   228  	return i.ToTransitGatewayRouteTableAttachmentOutputWithContext(context.Background())
   229  }
   230  
   231  func (i *TransitGatewayRouteTableAttachment) ToTransitGatewayRouteTableAttachmentOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentOutput {
   232  	return pulumi.ToOutputWithContext(ctx, i).(TransitGatewayRouteTableAttachmentOutput)
   233  }
   234  
   235  // TransitGatewayRouteTableAttachmentArrayInput is an input type that accepts TransitGatewayRouteTableAttachmentArray and TransitGatewayRouteTableAttachmentArrayOutput values.
   236  // You can construct a concrete instance of `TransitGatewayRouteTableAttachmentArrayInput` via:
   237  //
   238  //	TransitGatewayRouteTableAttachmentArray{ TransitGatewayRouteTableAttachmentArgs{...} }
   239  type TransitGatewayRouteTableAttachmentArrayInput interface {
   240  	pulumi.Input
   241  
   242  	ToTransitGatewayRouteTableAttachmentArrayOutput() TransitGatewayRouteTableAttachmentArrayOutput
   243  	ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(context.Context) TransitGatewayRouteTableAttachmentArrayOutput
   244  }
   245  
   246  type TransitGatewayRouteTableAttachmentArray []TransitGatewayRouteTableAttachmentInput
   247  
   248  func (TransitGatewayRouteTableAttachmentArray) ElementType() reflect.Type {
   249  	return reflect.TypeOf((*[]*TransitGatewayRouteTableAttachment)(nil)).Elem()
   250  }
   251  
   252  func (i TransitGatewayRouteTableAttachmentArray) ToTransitGatewayRouteTableAttachmentArrayOutput() TransitGatewayRouteTableAttachmentArrayOutput {
   253  	return i.ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(context.Background())
   254  }
   255  
   256  func (i TransitGatewayRouteTableAttachmentArray) ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentArrayOutput {
   257  	return pulumi.ToOutputWithContext(ctx, i).(TransitGatewayRouteTableAttachmentArrayOutput)
   258  }
   259  
   260  // TransitGatewayRouteTableAttachmentMapInput is an input type that accepts TransitGatewayRouteTableAttachmentMap and TransitGatewayRouteTableAttachmentMapOutput values.
   261  // You can construct a concrete instance of `TransitGatewayRouteTableAttachmentMapInput` via:
   262  //
   263  //	TransitGatewayRouteTableAttachmentMap{ "key": TransitGatewayRouteTableAttachmentArgs{...} }
   264  type TransitGatewayRouteTableAttachmentMapInput interface {
   265  	pulumi.Input
   266  
   267  	ToTransitGatewayRouteTableAttachmentMapOutput() TransitGatewayRouteTableAttachmentMapOutput
   268  	ToTransitGatewayRouteTableAttachmentMapOutputWithContext(context.Context) TransitGatewayRouteTableAttachmentMapOutput
   269  }
   270  
   271  type TransitGatewayRouteTableAttachmentMap map[string]TransitGatewayRouteTableAttachmentInput
   272  
   273  func (TransitGatewayRouteTableAttachmentMap) ElementType() reflect.Type {
   274  	return reflect.TypeOf((*map[string]*TransitGatewayRouteTableAttachment)(nil)).Elem()
   275  }
   276  
   277  func (i TransitGatewayRouteTableAttachmentMap) ToTransitGatewayRouteTableAttachmentMapOutput() TransitGatewayRouteTableAttachmentMapOutput {
   278  	return i.ToTransitGatewayRouteTableAttachmentMapOutputWithContext(context.Background())
   279  }
   280  
   281  func (i TransitGatewayRouteTableAttachmentMap) ToTransitGatewayRouteTableAttachmentMapOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentMapOutput {
   282  	return pulumi.ToOutputWithContext(ctx, i).(TransitGatewayRouteTableAttachmentMapOutput)
   283  }
   284  
   285  type TransitGatewayRouteTableAttachmentOutput struct{ *pulumi.OutputState }
   286  
   287  func (TransitGatewayRouteTableAttachmentOutput) ElementType() reflect.Type {
   288  	return reflect.TypeOf((**TransitGatewayRouteTableAttachment)(nil)).Elem()
   289  }
   290  
   291  func (o TransitGatewayRouteTableAttachmentOutput) ToTransitGatewayRouteTableAttachmentOutput() TransitGatewayRouteTableAttachmentOutput {
   292  	return o
   293  }
   294  
   295  func (o TransitGatewayRouteTableAttachmentOutput) ToTransitGatewayRouteTableAttachmentOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentOutput {
   296  	return o
   297  }
   298  
   299  // Attachment Amazon Resource Name (ARN).
   300  func (o TransitGatewayRouteTableAttachmentOutput) Arn() pulumi.StringOutput {
   301  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   302  }
   303  
   304  // The policy rule number associated with the attachment.
   305  func (o TransitGatewayRouteTableAttachmentOutput) AttachmentPolicyRuleNumber() pulumi.IntOutput {
   306  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.IntOutput { return v.AttachmentPolicyRuleNumber }).(pulumi.IntOutput)
   307  }
   308  
   309  // The type of attachment.
   310  func (o TransitGatewayRouteTableAttachmentOutput) AttachmentType() pulumi.StringOutput {
   311  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.AttachmentType }).(pulumi.StringOutput)
   312  }
   313  
   314  // The ARN of the core network.
   315  func (o TransitGatewayRouteTableAttachmentOutput) CoreNetworkArn() pulumi.StringOutput {
   316  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.CoreNetworkArn }).(pulumi.StringOutput)
   317  }
   318  
   319  // The ID of the core network.
   320  func (o TransitGatewayRouteTableAttachmentOutput) CoreNetworkId() pulumi.StringOutput {
   321  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.CoreNetworkId }).(pulumi.StringOutput)
   322  }
   323  
   324  // The edge location for the peer.
   325  func (o TransitGatewayRouteTableAttachmentOutput) EdgeLocation() pulumi.StringOutput {
   326  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.EdgeLocation }).(pulumi.StringOutput)
   327  }
   328  
   329  // The ID of the attachment account owner.
   330  func (o TransitGatewayRouteTableAttachmentOutput) OwnerAccountId() pulumi.StringOutput {
   331  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.OwnerAccountId }).(pulumi.StringOutput)
   332  }
   333  
   334  // The ID of the peer for the attachment.
   335  func (o TransitGatewayRouteTableAttachmentOutput) PeeringId() pulumi.StringOutput {
   336  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.PeeringId }).(pulumi.StringOutput)
   337  }
   338  
   339  // The attachment resource ARN.
   340  func (o TransitGatewayRouteTableAttachmentOutput) ResourceArn() pulumi.StringOutput {
   341  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.ResourceArn }).(pulumi.StringOutput)
   342  }
   343  
   344  // The name of the segment attachment.
   345  func (o TransitGatewayRouteTableAttachmentOutput) SegmentName() pulumi.StringOutput {
   346  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.SegmentName }).(pulumi.StringOutput)
   347  }
   348  
   349  // The state of the attachment.
   350  func (o TransitGatewayRouteTableAttachmentOutput) State() pulumi.StringOutput {
   351  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.State }).(pulumi.StringOutput)
   352  }
   353  
   354  // Key-value tags for the attachment. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   355  func (o TransitGatewayRouteTableAttachmentOutput) Tags() pulumi.StringMapOutput {
   356  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   357  }
   358  
   359  // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   360  //
   361  // Deprecated: Please use `tags` instead.
   362  func (o TransitGatewayRouteTableAttachmentOutput) TagsAll() pulumi.StringMapOutput {
   363  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   364  }
   365  
   366  // The ARN of the transit gateway route table for the attachment.
   367  func (o TransitGatewayRouteTableAttachmentOutput) TransitGatewayRouteTableArn() pulumi.StringOutput {
   368  	return o.ApplyT(func(v *TransitGatewayRouteTableAttachment) pulumi.StringOutput { return v.TransitGatewayRouteTableArn }).(pulumi.StringOutput)
   369  }
   370  
   371  type TransitGatewayRouteTableAttachmentArrayOutput struct{ *pulumi.OutputState }
   372  
   373  func (TransitGatewayRouteTableAttachmentArrayOutput) ElementType() reflect.Type {
   374  	return reflect.TypeOf((*[]*TransitGatewayRouteTableAttachment)(nil)).Elem()
   375  }
   376  
   377  func (o TransitGatewayRouteTableAttachmentArrayOutput) ToTransitGatewayRouteTableAttachmentArrayOutput() TransitGatewayRouteTableAttachmentArrayOutput {
   378  	return o
   379  }
   380  
   381  func (o TransitGatewayRouteTableAttachmentArrayOutput) ToTransitGatewayRouteTableAttachmentArrayOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentArrayOutput {
   382  	return o
   383  }
   384  
   385  func (o TransitGatewayRouteTableAttachmentArrayOutput) Index(i pulumi.IntInput) TransitGatewayRouteTableAttachmentOutput {
   386  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *TransitGatewayRouteTableAttachment {
   387  		return vs[0].([]*TransitGatewayRouteTableAttachment)[vs[1].(int)]
   388  	}).(TransitGatewayRouteTableAttachmentOutput)
   389  }
   390  
   391  type TransitGatewayRouteTableAttachmentMapOutput struct{ *pulumi.OutputState }
   392  
   393  func (TransitGatewayRouteTableAttachmentMapOutput) ElementType() reflect.Type {
   394  	return reflect.TypeOf((*map[string]*TransitGatewayRouteTableAttachment)(nil)).Elem()
   395  }
   396  
   397  func (o TransitGatewayRouteTableAttachmentMapOutput) ToTransitGatewayRouteTableAttachmentMapOutput() TransitGatewayRouteTableAttachmentMapOutput {
   398  	return o
   399  }
   400  
   401  func (o TransitGatewayRouteTableAttachmentMapOutput) ToTransitGatewayRouteTableAttachmentMapOutputWithContext(ctx context.Context) TransitGatewayRouteTableAttachmentMapOutput {
   402  	return o
   403  }
   404  
   405  func (o TransitGatewayRouteTableAttachmentMapOutput) MapIndex(k pulumi.StringInput) TransitGatewayRouteTableAttachmentOutput {
   406  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *TransitGatewayRouteTableAttachment {
   407  		return vs[0].(map[string]*TransitGatewayRouteTableAttachment)[vs[1].(string)]
   408  	}).(TransitGatewayRouteTableAttachmentOutput)
   409  }
   410  
   411  func init() {
   412  	pulumi.RegisterInputType(reflect.TypeOf((*TransitGatewayRouteTableAttachmentInput)(nil)).Elem(), &TransitGatewayRouteTableAttachment{})
   413  	pulumi.RegisterInputType(reflect.TypeOf((*TransitGatewayRouteTableAttachmentArrayInput)(nil)).Elem(), TransitGatewayRouteTableAttachmentArray{})
   414  	pulumi.RegisterInputType(reflect.TypeOf((*TransitGatewayRouteTableAttachmentMapInput)(nil)).Elem(), TransitGatewayRouteTableAttachmentMap{})
   415  	pulumi.RegisterOutputType(TransitGatewayRouteTableAttachmentOutput{})
   416  	pulumi.RegisterOutputType(TransitGatewayRouteTableAttachmentArrayOutput{})
   417  	pulumi.RegisterOutputType(TransitGatewayRouteTableAttachmentMapOutput{})
   418  }