github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/directconnect/hostedTransitVirtualInterface.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 directconnect 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 // Provides a Direct Connect hosted transit virtual interface resource. 16 // This resource represents the allocator's side of the hosted virtual interface. 17 // A hosted virtual interface is a virtual interface that is owned by another AWS account. 18 // 19 // ## Example Usage 20 // 21 // <!--Start PulumiCodeChooser --> 22 // ```go 23 // package main 24 // 25 // import ( 26 // 27 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/directconnect" 28 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 29 // 30 // ) 31 // 32 // func main() { 33 // pulumi.Run(func(ctx *pulumi.Context) error { 34 // _, err := directconnect.NewHostedTransitVirtualInterface(ctx, "example", &directconnect.HostedTransitVirtualInterfaceArgs{ 35 // ConnectionId: pulumi.Any(exampleAwsDxConnection.Id), 36 // Name: pulumi.String("tf-transit-vif-example"), 37 // Vlan: pulumi.Int(4094), 38 // AddressFamily: pulumi.String("ipv4"), 39 // BgpAsn: pulumi.Int(65352), 40 // }) 41 // if err != nil { 42 // return err 43 // } 44 // return nil 45 // }) 46 // } 47 // 48 // ``` 49 // <!--End PulumiCodeChooser --> 50 // 51 // ## Import 52 // 53 // Using `pulumi import`, import Direct Connect hosted transit virtual interfaces using the VIF `id`. For example: 54 // 55 // ```sh 56 // $ pulumi import aws:directconnect/hostedTransitVirtualInterface:HostedTransitVirtualInterface test dxvif-33cc44dd 57 // ``` 58 type HostedTransitVirtualInterface struct { 59 pulumi.CustomResourceState 60 61 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 62 AddressFamily pulumi.StringOutput `pulumi:"addressFamily"` 63 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 64 AmazonAddress pulumi.StringOutput `pulumi:"amazonAddress"` 65 AmazonSideAsn pulumi.StringOutput `pulumi:"amazonSideAsn"` 66 // The ARN of the virtual interface. 67 Arn pulumi.StringOutput `pulumi:"arn"` 68 // The Direct Connect endpoint on which the virtual interface terminates. 69 AwsDevice pulumi.StringOutput `pulumi:"awsDevice"` 70 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 71 BgpAsn pulumi.IntOutput `pulumi:"bgpAsn"` 72 // The authentication key for BGP configuration. 73 BgpAuthKey pulumi.StringOutput `pulumi:"bgpAuthKey"` 74 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 75 ConnectionId pulumi.StringOutput `pulumi:"connectionId"` 76 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 77 CustomerAddress pulumi.StringOutput `pulumi:"customerAddress"` 78 // Indicates whether jumbo frames (8500 MTU) are supported. 79 JumboFrameCapable pulumi.BoolOutput `pulumi:"jumboFrameCapable"` 80 // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. 81 Mtu pulumi.IntPtrOutput `pulumi:"mtu"` 82 // The name for the virtual interface. 83 Name pulumi.StringOutput `pulumi:"name"` 84 // The AWS account that will own the new virtual interface. 85 OwnerAccountId pulumi.StringOutput `pulumi:"ownerAccountId"` 86 // The VLAN ID. 87 Vlan pulumi.IntOutput `pulumi:"vlan"` 88 } 89 90 // NewHostedTransitVirtualInterface registers a new resource with the given unique name, arguments, and options. 91 func NewHostedTransitVirtualInterface(ctx *pulumi.Context, 92 name string, args *HostedTransitVirtualInterfaceArgs, opts ...pulumi.ResourceOption) (*HostedTransitVirtualInterface, error) { 93 if args == nil { 94 return nil, errors.New("missing one or more required arguments") 95 } 96 97 if args.AddressFamily == nil { 98 return nil, errors.New("invalid value for required argument 'AddressFamily'") 99 } 100 if args.BgpAsn == nil { 101 return nil, errors.New("invalid value for required argument 'BgpAsn'") 102 } 103 if args.ConnectionId == nil { 104 return nil, errors.New("invalid value for required argument 'ConnectionId'") 105 } 106 if args.OwnerAccountId == nil { 107 return nil, errors.New("invalid value for required argument 'OwnerAccountId'") 108 } 109 if args.Vlan == nil { 110 return nil, errors.New("invalid value for required argument 'Vlan'") 111 } 112 opts = internal.PkgResourceDefaultOpts(opts) 113 var resource HostedTransitVirtualInterface 114 err := ctx.RegisterResource("aws:directconnect/hostedTransitVirtualInterface:HostedTransitVirtualInterface", name, args, &resource, opts...) 115 if err != nil { 116 return nil, err 117 } 118 return &resource, nil 119 } 120 121 // GetHostedTransitVirtualInterface gets an existing HostedTransitVirtualInterface resource's state with the given name, ID, and optional 122 // state properties that are used to uniquely qualify the lookup (nil if not required). 123 func GetHostedTransitVirtualInterface(ctx *pulumi.Context, 124 name string, id pulumi.IDInput, state *HostedTransitVirtualInterfaceState, opts ...pulumi.ResourceOption) (*HostedTransitVirtualInterface, error) { 125 var resource HostedTransitVirtualInterface 126 err := ctx.ReadResource("aws:directconnect/hostedTransitVirtualInterface:HostedTransitVirtualInterface", name, id, state, &resource, opts...) 127 if err != nil { 128 return nil, err 129 } 130 return &resource, nil 131 } 132 133 // Input properties used for looking up and filtering HostedTransitVirtualInterface resources. 134 type hostedTransitVirtualInterfaceState struct { 135 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 136 AddressFamily *string `pulumi:"addressFamily"` 137 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 138 AmazonAddress *string `pulumi:"amazonAddress"` 139 AmazonSideAsn *string `pulumi:"amazonSideAsn"` 140 // The ARN of the virtual interface. 141 Arn *string `pulumi:"arn"` 142 // The Direct Connect endpoint on which the virtual interface terminates. 143 AwsDevice *string `pulumi:"awsDevice"` 144 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 145 BgpAsn *int `pulumi:"bgpAsn"` 146 // The authentication key for BGP configuration. 147 BgpAuthKey *string `pulumi:"bgpAuthKey"` 148 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 149 ConnectionId *string `pulumi:"connectionId"` 150 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 151 CustomerAddress *string `pulumi:"customerAddress"` 152 // Indicates whether jumbo frames (8500 MTU) are supported. 153 JumboFrameCapable *bool `pulumi:"jumboFrameCapable"` 154 // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. 155 Mtu *int `pulumi:"mtu"` 156 // The name for the virtual interface. 157 Name *string `pulumi:"name"` 158 // The AWS account that will own the new virtual interface. 159 OwnerAccountId *string `pulumi:"ownerAccountId"` 160 // The VLAN ID. 161 Vlan *int `pulumi:"vlan"` 162 } 163 164 type HostedTransitVirtualInterfaceState struct { 165 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 166 AddressFamily pulumi.StringPtrInput 167 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 168 AmazonAddress pulumi.StringPtrInput 169 AmazonSideAsn pulumi.StringPtrInput 170 // The ARN of the virtual interface. 171 Arn pulumi.StringPtrInput 172 // The Direct Connect endpoint on which the virtual interface terminates. 173 AwsDevice pulumi.StringPtrInput 174 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 175 BgpAsn pulumi.IntPtrInput 176 // The authentication key for BGP configuration. 177 BgpAuthKey pulumi.StringPtrInput 178 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 179 ConnectionId pulumi.StringPtrInput 180 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 181 CustomerAddress pulumi.StringPtrInput 182 // Indicates whether jumbo frames (8500 MTU) are supported. 183 JumboFrameCapable pulumi.BoolPtrInput 184 // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. 185 Mtu pulumi.IntPtrInput 186 // The name for the virtual interface. 187 Name pulumi.StringPtrInput 188 // The AWS account that will own the new virtual interface. 189 OwnerAccountId pulumi.StringPtrInput 190 // The VLAN ID. 191 Vlan pulumi.IntPtrInput 192 } 193 194 func (HostedTransitVirtualInterfaceState) ElementType() reflect.Type { 195 return reflect.TypeOf((*hostedTransitVirtualInterfaceState)(nil)).Elem() 196 } 197 198 type hostedTransitVirtualInterfaceArgs struct { 199 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 200 AddressFamily string `pulumi:"addressFamily"` 201 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 202 AmazonAddress *string `pulumi:"amazonAddress"` 203 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 204 BgpAsn int `pulumi:"bgpAsn"` 205 // The authentication key for BGP configuration. 206 BgpAuthKey *string `pulumi:"bgpAuthKey"` 207 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 208 ConnectionId string `pulumi:"connectionId"` 209 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 210 CustomerAddress *string `pulumi:"customerAddress"` 211 // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. 212 Mtu *int `pulumi:"mtu"` 213 // The name for the virtual interface. 214 Name *string `pulumi:"name"` 215 // The AWS account that will own the new virtual interface. 216 OwnerAccountId string `pulumi:"ownerAccountId"` 217 // The VLAN ID. 218 Vlan int `pulumi:"vlan"` 219 } 220 221 // The set of arguments for constructing a HostedTransitVirtualInterface resource. 222 type HostedTransitVirtualInterfaceArgs struct { 223 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 224 AddressFamily pulumi.StringInput 225 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 226 AmazonAddress pulumi.StringPtrInput 227 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 228 BgpAsn pulumi.IntInput 229 // The authentication key for BGP configuration. 230 BgpAuthKey pulumi.StringPtrInput 231 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 232 ConnectionId pulumi.StringInput 233 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 234 CustomerAddress pulumi.StringPtrInput 235 // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. 236 Mtu pulumi.IntPtrInput 237 // The name for the virtual interface. 238 Name pulumi.StringPtrInput 239 // The AWS account that will own the new virtual interface. 240 OwnerAccountId pulumi.StringInput 241 // The VLAN ID. 242 Vlan pulumi.IntInput 243 } 244 245 func (HostedTransitVirtualInterfaceArgs) ElementType() reflect.Type { 246 return reflect.TypeOf((*hostedTransitVirtualInterfaceArgs)(nil)).Elem() 247 } 248 249 type HostedTransitVirtualInterfaceInput interface { 250 pulumi.Input 251 252 ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput 253 ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput 254 } 255 256 func (*HostedTransitVirtualInterface) ElementType() reflect.Type { 257 return reflect.TypeOf((**HostedTransitVirtualInterface)(nil)).Elem() 258 } 259 260 func (i *HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput { 261 return i.ToHostedTransitVirtualInterfaceOutputWithContext(context.Background()) 262 } 263 264 func (i *HostedTransitVirtualInterface) ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput { 265 return pulumi.ToOutputWithContext(ctx, i).(HostedTransitVirtualInterfaceOutput) 266 } 267 268 // HostedTransitVirtualInterfaceArrayInput is an input type that accepts HostedTransitVirtualInterfaceArray and HostedTransitVirtualInterfaceArrayOutput values. 269 // You can construct a concrete instance of `HostedTransitVirtualInterfaceArrayInput` via: 270 // 271 // HostedTransitVirtualInterfaceArray{ HostedTransitVirtualInterfaceArgs{...} } 272 type HostedTransitVirtualInterfaceArrayInput interface { 273 pulumi.Input 274 275 ToHostedTransitVirtualInterfaceArrayOutput() HostedTransitVirtualInterfaceArrayOutput 276 ToHostedTransitVirtualInterfaceArrayOutputWithContext(context.Context) HostedTransitVirtualInterfaceArrayOutput 277 } 278 279 type HostedTransitVirtualInterfaceArray []HostedTransitVirtualInterfaceInput 280 281 func (HostedTransitVirtualInterfaceArray) ElementType() reflect.Type { 282 return reflect.TypeOf((*[]*HostedTransitVirtualInterface)(nil)).Elem() 283 } 284 285 func (i HostedTransitVirtualInterfaceArray) ToHostedTransitVirtualInterfaceArrayOutput() HostedTransitVirtualInterfaceArrayOutput { 286 return i.ToHostedTransitVirtualInterfaceArrayOutputWithContext(context.Background()) 287 } 288 289 func (i HostedTransitVirtualInterfaceArray) ToHostedTransitVirtualInterfaceArrayOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceArrayOutput { 290 return pulumi.ToOutputWithContext(ctx, i).(HostedTransitVirtualInterfaceArrayOutput) 291 } 292 293 // HostedTransitVirtualInterfaceMapInput is an input type that accepts HostedTransitVirtualInterfaceMap and HostedTransitVirtualInterfaceMapOutput values. 294 // You can construct a concrete instance of `HostedTransitVirtualInterfaceMapInput` via: 295 // 296 // HostedTransitVirtualInterfaceMap{ "key": HostedTransitVirtualInterfaceArgs{...} } 297 type HostedTransitVirtualInterfaceMapInput interface { 298 pulumi.Input 299 300 ToHostedTransitVirtualInterfaceMapOutput() HostedTransitVirtualInterfaceMapOutput 301 ToHostedTransitVirtualInterfaceMapOutputWithContext(context.Context) HostedTransitVirtualInterfaceMapOutput 302 } 303 304 type HostedTransitVirtualInterfaceMap map[string]HostedTransitVirtualInterfaceInput 305 306 func (HostedTransitVirtualInterfaceMap) ElementType() reflect.Type { 307 return reflect.TypeOf((*map[string]*HostedTransitVirtualInterface)(nil)).Elem() 308 } 309 310 func (i HostedTransitVirtualInterfaceMap) ToHostedTransitVirtualInterfaceMapOutput() HostedTransitVirtualInterfaceMapOutput { 311 return i.ToHostedTransitVirtualInterfaceMapOutputWithContext(context.Background()) 312 } 313 314 func (i HostedTransitVirtualInterfaceMap) ToHostedTransitVirtualInterfaceMapOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceMapOutput { 315 return pulumi.ToOutputWithContext(ctx, i).(HostedTransitVirtualInterfaceMapOutput) 316 } 317 318 type HostedTransitVirtualInterfaceOutput struct{ *pulumi.OutputState } 319 320 func (HostedTransitVirtualInterfaceOutput) ElementType() reflect.Type { 321 return reflect.TypeOf((**HostedTransitVirtualInterface)(nil)).Elem() 322 } 323 324 func (o HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutput() HostedTransitVirtualInterfaceOutput { 325 return o 326 } 327 328 func (o HostedTransitVirtualInterfaceOutput) ToHostedTransitVirtualInterfaceOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceOutput { 329 return o 330 } 331 332 // The address family for the BGP peer. ` ipv4 ` or `ipv6`. 333 func (o HostedTransitVirtualInterfaceOutput) AddressFamily() pulumi.StringOutput { 334 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.AddressFamily }).(pulumi.StringOutput) 335 } 336 337 // The IPv4 CIDR address to use to send traffic to Amazon. Required for IPv4 BGP peers. 338 func (o HostedTransitVirtualInterfaceOutput) AmazonAddress() pulumi.StringOutput { 339 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.AmazonAddress }).(pulumi.StringOutput) 340 } 341 342 func (o HostedTransitVirtualInterfaceOutput) AmazonSideAsn() pulumi.StringOutput { 343 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.AmazonSideAsn }).(pulumi.StringOutput) 344 } 345 346 // The ARN of the virtual interface. 347 func (o HostedTransitVirtualInterfaceOutput) Arn() pulumi.StringOutput { 348 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 349 } 350 351 // The Direct Connect endpoint on which the virtual interface terminates. 352 func (o HostedTransitVirtualInterfaceOutput) AwsDevice() pulumi.StringOutput { 353 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.AwsDevice }).(pulumi.StringOutput) 354 } 355 356 // The autonomous system (AS) number for Border Gateway Protocol (BGP) configuration. 357 func (o HostedTransitVirtualInterfaceOutput) BgpAsn() pulumi.IntOutput { 358 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.IntOutput { return v.BgpAsn }).(pulumi.IntOutput) 359 } 360 361 // The authentication key for BGP configuration. 362 func (o HostedTransitVirtualInterfaceOutput) BgpAuthKey() pulumi.StringOutput { 363 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.BgpAuthKey }).(pulumi.StringOutput) 364 } 365 366 // The ID of the Direct Connect connection (or LAG) on which to create the virtual interface. 367 func (o HostedTransitVirtualInterfaceOutput) ConnectionId() pulumi.StringOutput { 368 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.ConnectionId }).(pulumi.StringOutput) 369 } 370 371 // The IPv4 CIDR destination address to which Amazon should send traffic. Required for IPv4 BGP peers. 372 func (o HostedTransitVirtualInterfaceOutput) CustomerAddress() pulumi.StringOutput { 373 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.CustomerAddress }).(pulumi.StringOutput) 374 } 375 376 // Indicates whether jumbo frames (8500 MTU) are supported. 377 func (o HostedTransitVirtualInterfaceOutput) JumboFrameCapable() pulumi.BoolOutput { 378 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.BoolOutput { return v.JumboFrameCapable }).(pulumi.BoolOutput) 379 } 380 381 // The maximum transmission unit (MTU) is the size, in bytes, of the largest permissible packet that can be passed over the connection. The MTU of a virtual transit interface can be either `1500` or `8500` (jumbo frames). Default is `1500`. 382 func (o HostedTransitVirtualInterfaceOutput) Mtu() pulumi.IntPtrOutput { 383 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.IntPtrOutput { return v.Mtu }).(pulumi.IntPtrOutput) 384 } 385 386 // The name for the virtual interface. 387 func (o HostedTransitVirtualInterfaceOutput) Name() pulumi.StringOutput { 388 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 389 } 390 391 // The AWS account that will own the new virtual interface. 392 func (o HostedTransitVirtualInterfaceOutput) OwnerAccountId() pulumi.StringOutput { 393 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.StringOutput { return v.OwnerAccountId }).(pulumi.StringOutput) 394 } 395 396 // The VLAN ID. 397 func (o HostedTransitVirtualInterfaceOutput) Vlan() pulumi.IntOutput { 398 return o.ApplyT(func(v *HostedTransitVirtualInterface) pulumi.IntOutput { return v.Vlan }).(pulumi.IntOutput) 399 } 400 401 type HostedTransitVirtualInterfaceArrayOutput struct{ *pulumi.OutputState } 402 403 func (HostedTransitVirtualInterfaceArrayOutput) ElementType() reflect.Type { 404 return reflect.TypeOf((*[]*HostedTransitVirtualInterface)(nil)).Elem() 405 } 406 407 func (o HostedTransitVirtualInterfaceArrayOutput) ToHostedTransitVirtualInterfaceArrayOutput() HostedTransitVirtualInterfaceArrayOutput { 408 return o 409 } 410 411 func (o HostedTransitVirtualInterfaceArrayOutput) ToHostedTransitVirtualInterfaceArrayOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceArrayOutput { 412 return o 413 } 414 415 func (o HostedTransitVirtualInterfaceArrayOutput) Index(i pulumi.IntInput) HostedTransitVirtualInterfaceOutput { 416 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *HostedTransitVirtualInterface { 417 return vs[0].([]*HostedTransitVirtualInterface)[vs[1].(int)] 418 }).(HostedTransitVirtualInterfaceOutput) 419 } 420 421 type HostedTransitVirtualInterfaceMapOutput struct{ *pulumi.OutputState } 422 423 func (HostedTransitVirtualInterfaceMapOutput) ElementType() reflect.Type { 424 return reflect.TypeOf((*map[string]*HostedTransitVirtualInterface)(nil)).Elem() 425 } 426 427 func (o HostedTransitVirtualInterfaceMapOutput) ToHostedTransitVirtualInterfaceMapOutput() HostedTransitVirtualInterfaceMapOutput { 428 return o 429 } 430 431 func (o HostedTransitVirtualInterfaceMapOutput) ToHostedTransitVirtualInterfaceMapOutputWithContext(ctx context.Context) HostedTransitVirtualInterfaceMapOutput { 432 return o 433 } 434 435 func (o HostedTransitVirtualInterfaceMapOutput) MapIndex(k pulumi.StringInput) HostedTransitVirtualInterfaceOutput { 436 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *HostedTransitVirtualInterface { 437 return vs[0].(map[string]*HostedTransitVirtualInterface)[vs[1].(string)] 438 }).(HostedTransitVirtualInterfaceOutput) 439 } 440 441 func init() { 442 pulumi.RegisterInputType(reflect.TypeOf((*HostedTransitVirtualInterfaceInput)(nil)).Elem(), &HostedTransitVirtualInterface{}) 443 pulumi.RegisterInputType(reflect.TypeOf((*HostedTransitVirtualInterfaceArrayInput)(nil)).Elem(), HostedTransitVirtualInterfaceArray{}) 444 pulumi.RegisterInputType(reflect.TypeOf((*HostedTransitVirtualInterfaceMapInput)(nil)).Elem(), HostedTransitVirtualInterfaceMap{}) 445 pulumi.RegisterOutputType(HostedTransitVirtualInterfaceOutput{}) 446 pulumi.RegisterOutputType(HostedTransitVirtualInterfaceArrayOutput{}) 447 pulumi.RegisterOutputType(HostedTransitVirtualInterfaceMapOutput{}) 448 }