github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/medialive/channel.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 medialive 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 // Resource for managing an AWS MediaLive Channel. 16 // 17 // ## Example Usage 18 // 19 // ### Basic Usage 20 // 21 // <!--Start PulumiCodeChooser --> 22 // ```go 23 // package main 24 // 25 // import ( 26 // 27 // "fmt" 28 // 29 // "github.com/pulumi/pulumi-aws/sdk/v6/go/aws/medialive" 30 // "github.com/pulumi/pulumi/sdk/v3/go/pulumi" 31 // 32 // ) 33 // 34 // func main() { 35 // pulumi.Run(func(ctx *pulumi.Context) error { 36 // _, err := medialive.NewChannel(ctx, "example", &medialive.ChannelArgs{ 37 // Name: pulumi.String("example-channel"), 38 // ChannelClass: pulumi.String("STANDARD"), 39 // RoleArn: pulumi.Any(exampleAwsIamRole.Arn), 40 // InputSpecification: &medialive.ChannelInputSpecificationArgs{ 41 // Codec: pulumi.String("AVC"), 42 // InputResolution: pulumi.String("HD"), 43 // MaximumBitrate: pulumi.String("MAX_20_MBPS"), 44 // }, 45 // InputAttachments: medialive.ChannelInputAttachmentArray{ 46 // &medialive.ChannelInputAttachmentArgs{ 47 // InputAttachmentName: pulumi.String("example-input"), 48 // InputId: pulumi.Any(exampleAwsMedialiveInput.Id), 49 // }, 50 // }, 51 // Destinations: medialive.ChannelDestinationArray{ 52 // &medialive.ChannelDestinationArgs{ 53 // Id: pulumi.String("destination"), 54 // Settings: medialive.ChannelDestinationSettingArray{ 55 // &medialive.ChannelDestinationSettingArgs{ 56 // Url: pulumi.String(fmt.Sprintf("s3://%v/test1", main.Id)), 57 // }, 58 // &medialive.ChannelDestinationSettingArgs{ 59 // Url: pulumi.String(fmt.Sprintf("s3://%v/test2", main2.Id)), 60 // }, 61 // }, 62 // }, 63 // }, 64 // EncoderSettings: &medialive.ChannelEncoderSettingsArgs{ 65 // TimecodeConfig: &medialive.ChannelEncoderSettingsTimecodeConfigArgs{ 66 // Source: pulumi.String("EMBEDDED"), 67 // }, 68 // AudioDescriptions: medialive.ChannelEncoderSettingsAudioDescriptionArray{ 69 // &medialive.ChannelEncoderSettingsAudioDescriptionArgs{ 70 // AudioSelectorName: pulumi.String("example audio selector"), 71 // Name: pulumi.String("audio-selector"), 72 // }, 73 // }, 74 // VideoDescriptions: medialive.ChannelEncoderSettingsVideoDescriptionArray{ 75 // &medialive.ChannelEncoderSettingsVideoDescriptionArgs{ 76 // Name: pulumi.String("example-video"), 77 // }, 78 // }, 79 // OutputGroups: medialive.ChannelEncoderSettingsOutputGroupArray{ 80 // &medialive.ChannelEncoderSettingsOutputGroupArgs{ 81 // OutputGroupSettings: &medialive.ChannelEncoderSettingsOutputGroupOutputGroupSettingsArgs{ 82 // ArchiveGroupSettings: medialive.ChannelEncoderSettingsOutputGroupOutputGroupSettingsArchiveGroupSettingArray{ 83 // &medialive.ChannelEncoderSettingsOutputGroupOutputGroupSettingsArchiveGroupSettingArgs{ 84 // Destination: &medialive.ChannelEncoderSettingsOutputGroupOutputGroupSettingsArchiveGroupSettingDestinationArgs{ 85 // DestinationRefId: pulumi.String("destination"), 86 // }, 87 // }, 88 // }, 89 // }, 90 // Outputs: medialive.ChannelEncoderSettingsOutputGroupOutputTypeArray{ 91 // &medialive.ChannelEncoderSettingsOutputGroupOutputTypeArgs{ 92 // OutputName: pulumi.String("example-name"), 93 // VideoDescriptionName: pulumi.String("example-video"), 94 // AudioDescriptionNames: pulumi.StringArray{ 95 // pulumi.String("audio-selector"), 96 // }, 97 // OutputSettings: &medialive.ChannelEncoderSettingsOutputGroupOutputOutputSettingsArgs{ 98 // ArchiveOutputSettings: &medialive.ChannelEncoderSettingsOutputGroupOutputOutputSettingsArchiveOutputSettingsArgs{ 99 // NameModifier: pulumi.String("_1"), 100 // Extension: pulumi.String("m2ts"), 101 // ContainerSettings: &medialive.ChannelEncoderSettingsOutputGroupOutputOutputSettingsArchiveOutputSettingsContainerSettingsArgs{ 102 // M2tsSettings: &medialive.ChannelEncoderSettingsOutputGroupOutputOutputSettingsArchiveOutputSettingsContainerSettingsM2tsSettingsArgs{ 103 // AudioBufferModel: pulumi.String("ATSC"), 104 // BufferModel: pulumi.String("MULTIPLEX"), 105 // RateMode: pulumi.String("CBR"), 106 // }, 107 // }, 108 // }, 109 // }, 110 // }, 111 // }, 112 // }, 113 // }, 114 // }, 115 // }) 116 // if err != nil { 117 // return err 118 // } 119 // return nil 120 // }) 121 // } 122 // 123 // ``` 124 // <!--End PulumiCodeChooser --> 125 // 126 // ## Import 127 // 128 // Using `pulumi import`, import MediaLive Channel using the `channel_id`. For example: 129 // 130 // ```sh 131 // $ pulumi import aws:medialive/channel:Channel example 1234567 132 // ``` 133 type Channel struct { 134 pulumi.CustomResourceState 135 136 // ARN of the Channel. 137 Arn pulumi.StringOutput `pulumi:"arn"` 138 // Specification of CDI inputs for this channel. See CDI Input Specification for more details. 139 CdiInputSpecification ChannelCdiInputSpecificationPtrOutput `pulumi:"cdiInputSpecification"` 140 // Concise argument description. 141 ChannelClass pulumi.StringOutput `pulumi:"channelClass"` 142 // ID of the channel in MediaPackage that is the destination for this output group. 143 ChannelId pulumi.StringOutput `pulumi:"channelId"` 144 // Destinations for channel. See Destinations for more details. 145 Destinations ChannelDestinationArrayOutput `pulumi:"destinations"` 146 // Encoder settings. See Encoder Settings for more details. 147 EncoderSettings ChannelEncoderSettingsOutput `pulumi:"encoderSettings"` 148 // Input attachments for the channel. See Input Attachments for more details. 149 InputAttachments ChannelInputAttachmentArrayOutput `pulumi:"inputAttachments"` 150 // Specification of network and file inputs for the channel. 151 InputSpecification ChannelInputSpecificationOutput `pulumi:"inputSpecification"` 152 // The log level to write to Cloudwatch logs. 153 LogLevel pulumi.StringOutput `pulumi:"logLevel"` 154 // Maintenance settings for this channel. See Maintenance for more details. 155 Maintenance ChannelMaintenanceOutput `pulumi:"maintenance"` 156 // Name of the Channel. 157 // 158 // The following arguments are optional: 159 Name pulumi.StringOutput `pulumi:"name"` 160 // Concise argument description. 161 RoleArn pulumi.StringPtrOutput `pulumi:"roleArn"` 162 // Whether to start/stop channel. Default: `false` 163 StartChannel pulumi.BoolPtrOutput `pulumi:"startChannel"` 164 // A map of tags to assign to the channel. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 165 Tags pulumi.StringMapOutput `pulumi:"tags"` 166 // Deprecated: Please use `tags` instead. 167 TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"` 168 // Settings for the VPC outputs. See VPC for more details. 169 Vpc ChannelVpcPtrOutput `pulumi:"vpc"` 170 } 171 172 // NewChannel registers a new resource with the given unique name, arguments, and options. 173 func NewChannel(ctx *pulumi.Context, 174 name string, args *ChannelArgs, opts ...pulumi.ResourceOption) (*Channel, error) { 175 if args == nil { 176 return nil, errors.New("missing one or more required arguments") 177 } 178 179 if args.ChannelClass == nil { 180 return nil, errors.New("invalid value for required argument 'ChannelClass'") 181 } 182 if args.Destinations == nil { 183 return nil, errors.New("invalid value for required argument 'Destinations'") 184 } 185 if args.EncoderSettings == nil { 186 return nil, errors.New("invalid value for required argument 'EncoderSettings'") 187 } 188 if args.InputAttachments == nil { 189 return nil, errors.New("invalid value for required argument 'InputAttachments'") 190 } 191 if args.InputSpecification == nil { 192 return nil, errors.New("invalid value for required argument 'InputSpecification'") 193 } 194 opts = internal.PkgResourceDefaultOpts(opts) 195 var resource Channel 196 err := ctx.RegisterResource("aws:medialive/channel:Channel", name, args, &resource, opts...) 197 if err != nil { 198 return nil, err 199 } 200 return &resource, nil 201 } 202 203 // GetChannel gets an existing Channel resource's state with the given name, ID, and optional 204 // state properties that are used to uniquely qualify the lookup (nil if not required). 205 func GetChannel(ctx *pulumi.Context, 206 name string, id pulumi.IDInput, state *ChannelState, opts ...pulumi.ResourceOption) (*Channel, error) { 207 var resource Channel 208 err := ctx.ReadResource("aws:medialive/channel:Channel", name, id, state, &resource, opts...) 209 if err != nil { 210 return nil, err 211 } 212 return &resource, nil 213 } 214 215 // Input properties used for looking up and filtering Channel resources. 216 type channelState struct { 217 // ARN of the Channel. 218 Arn *string `pulumi:"arn"` 219 // Specification of CDI inputs for this channel. See CDI Input Specification for more details. 220 CdiInputSpecification *ChannelCdiInputSpecification `pulumi:"cdiInputSpecification"` 221 // Concise argument description. 222 ChannelClass *string `pulumi:"channelClass"` 223 // ID of the channel in MediaPackage that is the destination for this output group. 224 ChannelId *string `pulumi:"channelId"` 225 // Destinations for channel. See Destinations for more details. 226 Destinations []ChannelDestination `pulumi:"destinations"` 227 // Encoder settings. See Encoder Settings for more details. 228 EncoderSettings *ChannelEncoderSettings `pulumi:"encoderSettings"` 229 // Input attachments for the channel. See Input Attachments for more details. 230 InputAttachments []ChannelInputAttachment `pulumi:"inputAttachments"` 231 // Specification of network and file inputs for the channel. 232 InputSpecification *ChannelInputSpecification `pulumi:"inputSpecification"` 233 // The log level to write to Cloudwatch logs. 234 LogLevel *string `pulumi:"logLevel"` 235 // Maintenance settings for this channel. See Maintenance for more details. 236 Maintenance *ChannelMaintenance `pulumi:"maintenance"` 237 // Name of the Channel. 238 // 239 // The following arguments are optional: 240 Name *string `pulumi:"name"` 241 // Concise argument description. 242 RoleArn *string `pulumi:"roleArn"` 243 // Whether to start/stop channel. Default: `false` 244 StartChannel *bool `pulumi:"startChannel"` 245 // A map of tags to assign to the channel. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 246 Tags map[string]string `pulumi:"tags"` 247 // Deprecated: Please use `tags` instead. 248 TagsAll map[string]string `pulumi:"tagsAll"` 249 // Settings for the VPC outputs. See VPC for more details. 250 Vpc *ChannelVpc `pulumi:"vpc"` 251 } 252 253 type ChannelState struct { 254 // ARN of the Channel. 255 Arn pulumi.StringPtrInput 256 // Specification of CDI inputs for this channel. See CDI Input Specification for more details. 257 CdiInputSpecification ChannelCdiInputSpecificationPtrInput 258 // Concise argument description. 259 ChannelClass pulumi.StringPtrInput 260 // ID of the channel in MediaPackage that is the destination for this output group. 261 ChannelId pulumi.StringPtrInput 262 // Destinations for channel. See Destinations for more details. 263 Destinations ChannelDestinationArrayInput 264 // Encoder settings. See Encoder Settings for more details. 265 EncoderSettings ChannelEncoderSettingsPtrInput 266 // Input attachments for the channel. See Input Attachments for more details. 267 InputAttachments ChannelInputAttachmentArrayInput 268 // Specification of network and file inputs for the channel. 269 InputSpecification ChannelInputSpecificationPtrInput 270 // The log level to write to Cloudwatch logs. 271 LogLevel pulumi.StringPtrInput 272 // Maintenance settings for this channel. See Maintenance for more details. 273 Maintenance ChannelMaintenancePtrInput 274 // Name of the Channel. 275 // 276 // The following arguments are optional: 277 Name pulumi.StringPtrInput 278 // Concise argument description. 279 RoleArn pulumi.StringPtrInput 280 // Whether to start/stop channel. Default: `false` 281 StartChannel pulumi.BoolPtrInput 282 // A map of tags to assign to the channel. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 283 Tags pulumi.StringMapInput 284 // Deprecated: Please use `tags` instead. 285 TagsAll pulumi.StringMapInput 286 // Settings for the VPC outputs. See VPC for more details. 287 Vpc ChannelVpcPtrInput 288 } 289 290 func (ChannelState) ElementType() reflect.Type { 291 return reflect.TypeOf((*channelState)(nil)).Elem() 292 } 293 294 type channelArgs struct { 295 // Specification of CDI inputs for this channel. See CDI Input Specification for more details. 296 CdiInputSpecification *ChannelCdiInputSpecification `pulumi:"cdiInputSpecification"` 297 // Concise argument description. 298 ChannelClass string `pulumi:"channelClass"` 299 // Destinations for channel. See Destinations for more details. 300 Destinations []ChannelDestination `pulumi:"destinations"` 301 // Encoder settings. See Encoder Settings for more details. 302 EncoderSettings ChannelEncoderSettings `pulumi:"encoderSettings"` 303 // Input attachments for the channel. See Input Attachments for more details. 304 InputAttachments []ChannelInputAttachment `pulumi:"inputAttachments"` 305 // Specification of network and file inputs for the channel. 306 InputSpecification ChannelInputSpecification `pulumi:"inputSpecification"` 307 // The log level to write to Cloudwatch logs. 308 LogLevel *string `pulumi:"logLevel"` 309 // Maintenance settings for this channel. See Maintenance for more details. 310 Maintenance *ChannelMaintenance `pulumi:"maintenance"` 311 // Name of the Channel. 312 // 313 // The following arguments are optional: 314 Name *string `pulumi:"name"` 315 // Concise argument description. 316 RoleArn *string `pulumi:"roleArn"` 317 // Whether to start/stop channel. Default: `false` 318 StartChannel *bool `pulumi:"startChannel"` 319 // A map of tags to assign to the channel. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 320 Tags map[string]string `pulumi:"tags"` 321 // Settings for the VPC outputs. See VPC for more details. 322 Vpc *ChannelVpc `pulumi:"vpc"` 323 } 324 325 // The set of arguments for constructing a Channel resource. 326 type ChannelArgs struct { 327 // Specification of CDI inputs for this channel. See CDI Input Specification for more details. 328 CdiInputSpecification ChannelCdiInputSpecificationPtrInput 329 // Concise argument description. 330 ChannelClass pulumi.StringInput 331 // Destinations for channel. See Destinations for more details. 332 Destinations ChannelDestinationArrayInput 333 // Encoder settings. See Encoder Settings for more details. 334 EncoderSettings ChannelEncoderSettingsInput 335 // Input attachments for the channel. See Input Attachments for more details. 336 InputAttachments ChannelInputAttachmentArrayInput 337 // Specification of network and file inputs for the channel. 338 InputSpecification ChannelInputSpecificationInput 339 // The log level to write to Cloudwatch logs. 340 LogLevel pulumi.StringPtrInput 341 // Maintenance settings for this channel. See Maintenance for more details. 342 Maintenance ChannelMaintenancePtrInput 343 // Name of the Channel. 344 // 345 // The following arguments are optional: 346 Name pulumi.StringPtrInput 347 // Concise argument description. 348 RoleArn pulumi.StringPtrInput 349 // Whether to start/stop channel. Default: `false` 350 StartChannel pulumi.BoolPtrInput 351 // A map of tags to assign to the channel. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 352 Tags pulumi.StringMapInput 353 // Settings for the VPC outputs. See VPC for more details. 354 Vpc ChannelVpcPtrInput 355 } 356 357 func (ChannelArgs) ElementType() reflect.Type { 358 return reflect.TypeOf((*channelArgs)(nil)).Elem() 359 } 360 361 type ChannelInput interface { 362 pulumi.Input 363 364 ToChannelOutput() ChannelOutput 365 ToChannelOutputWithContext(ctx context.Context) ChannelOutput 366 } 367 368 func (*Channel) ElementType() reflect.Type { 369 return reflect.TypeOf((**Channel)(nil)).Elem() 370 } 371 372 func (i *Channel) ToChannelOutput() ChannelOutput { 373 return i.ToChannelOutputWithContext(context.Background()) 374 } 375 376 func (i *Channel) ToChannelOutputWithContext(ctx context.Context) ChannelOutput { 377 return pulumi.ToOutputWithContext(ctx, i).(ChannelOutput) 378 } 379 380 // ChannelArrayInput is an input type that accepts ChannelArray and ChannelArrayOutput values. 381 // You can construct a concrete instance of `ChannelArrayInput` via: 382 // 383 // ChannelArray{ ChannelArgs{...} } 384 type ChannelArrayInput interface { 385 pulumi.Input 386 387 ToChannelArrayOutput() ChannelArrayOutput 388 ToChannelArrayOutputWithContext(context.Context) ChannelArrayOutput 389 } 390 391 type ChannelArray []ChannelInput 392 393 func (ChannelArray) ElementType() reflect.Type { 394 return reflect.TypeOf((*[]*Channel)(nil)).Elem() 395 } 396 397 func (i ChannelArray) ToChannelArrayOutput() ChannelArrayOutput { 398 return i.ToChannelArrayOutputWithContext(context.Background()) 399 } 400 401 func (i ChannelArray) ToChannelArrayOutputWithContext(ctx context.Context) ChannelArrayOutput { 402 return pulumi.ToOutputWithContext(ctx, i).(ChannelArrayOutput) 403 } 404 405 // ChannelMapInput is an input type that accepts ChannelMap and ChannelMapOutput values. 406 // You can construct a concrete instance of `ChannelMapInput` via: 407 // 408 // ChannelMap{ "key": ChannelArgs{...} } 409 type ChannelMapInput interface { 410 pulumi.Input 411 412 ToChannelMapOutput() ChannelMapOutput 413 ToChannelMapOutputWithContext(context.Context) ChannelMapOutput 414 } 415 416 type ChannelMap map[string]ChannelInput 417 418 func (ChannelMap) ElementType() reflect.Type { 419 return reflect.TypeOf((*map[string]*Channel)(nil)).Elem() 420 } 421 422 func (i ChannelMap) ToChannelMapOutput() ChannelMapOutput { 423 return i.ToChannelMapOutputWithContext(context.Background()) 424 } 425 426 func (i ChannelMap) ToChannelMapOutputWithContext(ctx context.Context) ChannelMapOutput { 427 return pulumi.ToOutputWithContext(ctx, i).(ChannelMapOutput) 428 } 429 430 type ChannelOutput struct{ *pulumi.OutputState } 431 432 func (ChannelOutput) ElementType() reflect.Type { 433 return reflect.TypeOf((**Channel)(nil)).Elem() 434 } 435 436 func (o ChannelOutput) ToChannelOutput() ChannelOutput { 437 return o 438 } 439 440 func (o ChannelOutput) ToChannelOutputWithContext(ctx context.Context) ChannelOutput { 441 return o 442 } 443 444 // ARN of the Channel. 445 func (o ChannelOutput) Arn() pulumi.StringOutput { 446 return o.ApplyT(func(v *Channel) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 447 } 448 449 // Specification of CDI inputs for this channel. See CDI Input Specification for more details. 450 func (o ChannelOutput) CdiInputSpecification() ChannelCdiInputSpecificationPtrOutput { 451 return o.ApplyT(func(v *Channel) ChannelCdiInputSpecificationPtrOutput { return v.CdiInputSpecification }).(ChannelCdiInputSpecificationPtrOutput) 452 } 453 454 // Concise argument description. 455 func (o ChannelOutput) ChannelClass() pulumi.StringOutput { 456 return o.ApplyT(func(v *Channel) pulumi.StringOutput { return v.ChannelClass }).(pulumi.StringOutput) 457 } 458 459 // ID of the channel in MediaPackage that is the destination for this output group. 460 func (o ChannelOutput) ChannelId() pulumi.StringOutput { 461 return o.ApplyT(func(v *Channel) pulumi.StringOutput { return v.ChannelId }).(pulumi.StringOutput) 462 } 463 464 // Destinations for channel. See Destinations for more details. 465 func (o ChannelOutput) Destinations() ChannelDestinationArrayOutput { 466 return o.ApplyT(func(v *Channel) ChannelDestinationArrayOutput { return v.Destinations }).(ChannelDestinationArrayOutput) 467 } 468 469 // Encoder settings. See Encoder Settings for more details. 470 func (o ChannelOutput) EncoderSettings() ChannelEncoderSettingsOutput { 471 return o.ApplyT(func(v *Channel) ChannelEncoderSettingsOutput { return v.EncoderSettings }).(ChannelEncoderSettingsOutput) 472 } 473 474 // Input attachments for the channel. See Input Attachments for more details. 475 func (o ChannelOutput) InputAttachments() ChannelInputAttachmentArrayOutput { 476 return o.ApplyT(func(v *Channel) ChannelInputAttachmentArrayOutput { return v.InputAttachments }).(ChannelInputAttachmentArrayOutput) 477 } 478 479 // Specification of network and file inputs for the channel. 480 func (o ChannelOutput) InputSpecification() ChannelInputSpecificationOutput { 481 return o.ApplyT(func(v *Channel) ChannelInputSpecificationOutput { return v.InputSpecification }).(ChannelInputSpecificationOutput) 482 } 483 484 // The log level to write to Cloudwatch logs. 485 func (o ChannelOutput) LogLevel() pulumi.StringOutput { 486 return o.ApplyT(func(v *Channel) pulumi.StringOutput { return v.LogLevel }).(pulumi.StringOutput) 487 } 488 489 // Maintenance settings for this channel. See Maintenance for more details. 490 func (o ChannelOutput) Maintenance() ChannelMaintenanceOutput { 491 return o.ApplyT(func(v *Channel) ChannelMaintenanceOutput { return v.Maintenance }).(ChannelMaintenanceOutput) 492 } 493 494 // Name of the Channel. 495 // 496 // The following arguments are optional: 497 func (o ChannelOutput) Name() pulumi.StringOutput { 498 return o.ApplyT(func(v *Channel) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput) 499 } 500 501 // Concise argument description. 502 func (o ChannelOutput) RoleArn() pulumi.StringPtrOutput { 503 return o.ApplyT(func(v *Channel) pulumi.StringPtrOutput { return v.RoleArn }).(pulumi.StringPtrOutput) 504 } 505 506 // Whether to start/stop channel. Default: `false` 507 func (o ChannelOutput) StartChannel() pulumi.BoolPtrOutput { 508 return o.ApplyT(func(v *Channel) pulumi.BoolPtrOutput { return v.StartChannel }).(pulumi.BoolPtrOutput) 509 } 510 511 // A map of tags to assign to the channel. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level. 512 func (o ChannelOutput) Tags() pulumi.StringMapOutput { 513 return o.ApplyT(func(v *Channel) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput) 514 } 515 516 // Deprecated: Please use `tags` instead. 517 func (o ChannelOutput) TagsAll() pulumi.StringMapOutput { 518 return o.ApplyT(func(v *Channel) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput) 519 } 520 521 // Settings for the VPC outputs. See VPC for more details. 522 func (o ChannelOutput) Vpc() ChannelVpcPtrOutput { 523 return o.ApplyT(func(v *Channel) ChannelVpcPtrOutput { return v.Vpc }).(ChannelVpcPtrOutput) 524 } 525 526 type ChannelArrayOutput struct{ *pulumi.OutputState } 527 528 func (ChannelArrayOutput) ElementType() reflect.Type { 529 return reflect.TypeOf((*[]*Channel)(nil)).Elem() 530 } 531 532 func (o ChannelArrayOutput) ToChannelArrayOutput() ChannelArrayOutput { 533 return o 534 } 535 536 func (o ChannelArrayOutput) ToChannelArrayOutputWithContext(ctx context.Context) ChannelArrayOutput { 537 return o 538 } 539 540 func (o ChannelArrayOutput) Index(i pulumi.IntInput) ChannelOutput { 541 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Channel { 542 return vs[0].([]*Channel)[vs[1].(int)] 543 }).(ChannelOutput) 544 } 545 546 type ChannelMapOutput struct{ *pulumi.OutputState } 547 548 func (ChannelMapOutput) ElementType() reflect.Type { 549 return reflect.TypeOf((*map[string]*Channel)(nil)).Elem() 550 } 551 552 func (o ChannelMapOutput) ToChannelMapOutput() ChannelMapOutput { 553 return o 554 } 555 556 func (o ChannelMapOutput) ToChannelMapOutputWithContext(ctx context.Context) ChannelMapOutput { 557 return o 558 } 559 560 func (o ChannelMapOutput) MapIndex(k pulumi.StringInput) ChannelOutput { 561 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Channel { 562 return vs[0].(map[string]*Channel)[vs[1].(string)] 563 }).(ChannelOutput) 564 } 565 566 func init() { 567 pulumi.RegisterInputType(reflect.TypeOf((*ChannelInput)(nil)).Elem(), &Channel{}) 568 pulumi.RegisterInputType(reflect.TypeOf((*ChannelArrayInput)(nil)).Elem(), ChannelArray{}) 569 pulumi.RegisterInputType(reflect.TypeOf((*ChannelMapInput)(nil)).Elem(), ChannelMap{}) 570 pulumi.RegisterOutputType(ChannelOutput{}) 571 pulumi.RegisterOutputType(ChannelArrayOutput{}) 572 pulumi.RegisterOutputType(ChannelMapOutput{}) 573 }