github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/cur/reportDefinition.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 cur 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 // Manages Cost and Usage Report Definitions. 16 // 17 // > *NOTE:* The AWS Cost and Usage Report service is only available in `us-east-1` currently. 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/cur" 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 := cur.NewReportDefinition(ctx, "example_cur_report_definition", &cur.ReportDefinitionArgs{ 35 // ReportName: pulumi.String("example-cur-report-definition"), 36 // TimeUnit: pulumi.String("HOURLY"), 37 // Format: pulumi.String("textORcsv"), 38 // Compression: pulumi.String("GZIP"), 39 // AdditionalSchemaElements: pulumi.StringArray{ 40 // pulumi.String("RESOURCES"), 41 // pulumi.String("SPLIT_COST_ALLOCATION_DATA"), 42 // }, 43 // S3Bucket: pulumi.String("example-bucket-name"), 44 // S3Region: pulumi.String("us-east-1"), 45 // AdditionalArtifacts: pulumi.StringArray{ 46 // pulumi.String("REDSHIFT"), 47 // pulumi.String("QUICKSIGHT"), 48 // }, 49 // }) 50 // if err != nil { 51 // return err 52 // } 53 // return nil 54 // }) 55 // } 56 // 57 // ``` 58 // <!--End PulumiCodeChooser --> 59 // 60 // ## Import 61 // 62 // Using `pulumi import`, import Report Definitions using the `report_name`. For example: 63 // 64 // ```sh 65 // $ pulumi import aws:cur/reportDefinition:ReportDefinition example_cur_report_definition example-cur-report-definition 66 // ``` 67 type ReportDefinition struct { 68 pulumi.CustomResourceState 69 70 // A list of additional artifacts. Valid values are: `REDSHIFT`, `QUICKSIGHT`, `ATHENA`. When ATHENA exists within additional_artifacts, no other artifact type can be declared and reportVersioning must be `OVERWRITE_REPORT`. 71 AdditionalArtifacts pulumi.StringArrayOutput `pulumi:"additionalArtifacts"` 72 // A list of schema elements. Valid values are: `RESOURCES`, `SPLIT_COST_ALLOCATION_DATA`. 73 AdditionalSchemaElements pulumi.StringArrayOutput `pulumi:"additionalSchemaElements"` 74 // The Amazon Resource Name (ARN) specifying the cur report. 75 Arn pulumi.StringOutput `pulumi:"arn"` 76 // Compression format for report. Valid values are: `GZIP`, `ZIP`, `Parquet`. If `Parquet` is used, then format must also be `Parquet`. 77 Compression pulumi.StringOutput `pulumi:"compression"` 78 // Format for report. Valid values are: `textORcsv`, `Parquet`. If `Parquet` is used, then Compression must also be `Parquet`. 79 Format pulumi.StringOutput `pulumi:"format"` 80 // Set to true to update your reports after they have been finalized if AWS detects charges related to previous months. 81 RefreshClosedReports pulumi.BoolPtrOutput `pulumi:"refreshClosedReports"` 82 // Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters. 83 ReportName pulumi.StringOutput `pulumi:"reportName"` 84 // Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: `CREATE_NEW_REPORT` and `OVERWRITE_REPORT`. 85 ReportVersioning pulumi.StringPtrOutput `pulumi:"reportVersioning"` 86 // Name of the existing S3 bucket to hold generated reports. 87 S3Bucket pulumi.StringOutput `pulumi:"s3Bucket"` 88 // Report path prefix. Limited to 256 characters. 89 S3Prefix pulumi.StringPtrOutput `pulumi:"s3Prefix"` 90 // Region of the existing S3 bucket to hold generated reports. 91 S3Region pulumi.StringOutput `pulumi:"s3Region"` 92 // The frequency on which report data are measured and displayed. Valid values are: `DAILY`, `HOURLY`, `MONTHLY`. 93 TimeUnit pulumi.StringOutput `pulumi:"timeUnit"` 94 } 95 96 // NewReportDefinition registers a new resource with the given unique name, arguments, and options. 97 func NewReportDefinition(ctx *pulumi.Context, 98 name string, args *ReportDefinitionArgs, opts ...pulumi.ResourceOption) (*ReportDefinition, error) { 99 if args == nil { 100 return nil, errors.New("missing one or more required arguments") 101 } 102 103 if args.AdditionalSchemaElements == nil { 104 return nil, errors.New("invalid value for required argument 'AdditionalSchemaElements'") 105 } 106 if args.Compression == nil { 107 return nil, errors.New("invalid value for required argument 'Compression'") 108 } 109 if args.Format == nil { 110 return nil, errors.New("invalid value for required argument 'Format'") 111 } 112 if args.ReportName == nil { 113 return nil, errors.New("invalid value for required argument 'ReportName'") 114 } 115 if args.S3Bucket == nil { 116 return nil, errors.New("invalid value for required argument 'S3Bucket'") 117 } 118 if args.S3Region == nil { 119 return nil, errors.New("invalid value for required argument 'S3Region'") 120 } 121 if args.TimeUnit == nil { 122 return nil, errors.New("invalid value for required argument 'TimeUnit'") 123 } 124 opts = internal.PkgResourceDefaultOpts(opts) 125 var resource ReportDefinition 126 err := ctx.RegisterResource("aws:cur/reportDefinition:ReportDefinition", name, args, &resource, opts...) 127 if err != nil { 128 return nil, err 129 } 130 return &resource, nil 131 } 132 133 // GetReportDefinition gets an existing ReportDefinition resource's state with the given name, ID, and optional 134 // state properties that are used to uniquely qualify the lookup (nil if not required). 135 func GetReportDefinition(ctx *pulumi.Context, 136 name string, id pulumi.IDInput, state *ReportDefinitionState, opts ...pulumi.ResourceOption) (*ReportDefinition, error) { 137 var resource ReportDefinition 138 err := ctx.ReadResource("aws:cur/reportDefinition:ReportDefinition", name, id, state, &resource, opts...) 139 if err != nil { 140 return nil, err 141 } 142 return &resource, nil 143 } 144 145 // Input properties used for looking up and filtering ReportDefinition resources. 146 type reportDefinitionState struct { 147 // A list of additional artifacts. Valid values are: `REDSHIFT`, `QUICKSIGHT`, `ATHENA`. When ATHENA exists within additional_artifacts, no other artifact type can be declared and reportVersioning must be `OVERWRITE_REPORT`. 148 AdditionalArtifacts []string `pulumi:"additionalArtifacts"` 149 // A list of schema elements. Valid values are: `RESOURCES`, `SPLIT_COST_ALLOCATION_DATA`. 150 AdditionalSchemaElements []string `pulumi:"additionalSchemaElements"` 151 // The Amazon Resource Name (ARN) specifying the cur report. 152 Arn *string `pulumi:"arn"` 153 // Compression format for report. Valid values are: `GZIP`, `ZIP`, `Parquet`. If `Parquet` is used, then format must also be `Parquet`. 154 Compression *string `pulumi:"compression"` 155 // Format for report. Valid values are: `textORcsv`, `Parquet`. If `Parquet` is used, then Compression must also be `Parquet`. 156 Format *string `pulumi:"format"` 157 // Set to true to update your reports after they have been finalized if AWS detects charges related to previous months. 158 RefreshClosedReports *bool `pulumi:"refreshClosedReports"` 159 // Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters. 160 ReportName *string `pulumi:"reportName"` 161 // Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: `CREATE_NEW_REPORT` and `OVERWRITE_REPORT`. 162 ReportVersioning *string `pulumi:"reportVersioning"` 163 // Name of the existing S3 bucket to hold generated reports. 164 S3Bucket *string `pulumi:"s3Bucket"` 165 // Report path prefix. Limited to 256 characters. 166 S3Prefix *string `pulumi:"s3Prefix"` 167 // Region of the existing S3 bucket to hold generated reports. 168 S3Region *string `pulumi:"s3Region"` 169 // The frequency on which report data are measured and displayed. Valid values are: `DAILY`, `HOURLY`, `MONTHLY`. 170 TimeUnit *string `pulumi:"timeUnit"` 171 } 172 173 type ReportDefinitionState struct { 174 // A list of additional artifacts. Valid values are: `REDSHIFT`, `QUICKSIGHT`, `ATHENA`. When ATHENA exists within additional_artifacts, no other artifact type can be declared and reportVersioning must be `OVERWRITE_REPORT`. 175 AdditionalArtifacts pulumi.StringArrayInput 176 // A list of schema elements. Valid values are: `RESOURCES`, `SPLIT_COST_ALLOCATION_DATA`. 177 AdditionalSchemaElements pulumi.StringArrayInput 178 // The Amazon Resource Name (ARN) specifying the cur report. 179 Arn pulumi.StringPtrInput 180 // Compression format for report. Valid values are: `GZIP`, `ZIP`, `Parquet`. If `Parquet` is used, then format must also be `Parquet`. 181 Compression pulumi.StringPtrInput 182 // Format for report. Valid values are: `textORcsv`, `Parquet`. If `Parquet` is used, then Compression must also be `Parquet`. 183 Format pulumi.StringPtrInput 184 // Set to true to update your reports after they have been finalized if AWS detects charges related to previous months. 185 RefreshClosedReports pulumi.BoolPtrInput 186 // Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters. 187 ReportName pulumi.StringPtrInput 188 // Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: `CREATE_NEW_REPORT` and `OVERWRITE_REPORT`. 189 ReportVersioning pulumi.StringPtrInput 190 // Name of the existing S3 bucket to hold generated reports. 191 S3Bucket pulumi.StringPtrInput 192 // Report path prefix. Limited to 256 characters. 193 S3Prefix pulumi.StringPtrInput 194 // Region of the existing S3 bucket to hold generated reports. 195 S3Region pulumi.StringPtrInput 196 // The frequency on which report data are measured and displayed. Valid values are: `DAILY`, `HOURLY`, `MONTHLY`. 197 TimeUnit pulumi.StringPtrInput 198 } 199 200 func (ReportDefinitionState) ElementType() reflect.Type { 201 return reflect.TypeOf((*reportDefinitionState)(nil)).Elem() 202 } 203 204 type reportDefinitionArgs struct { 205 // A list of additional artifacts. Valid values are: `REDSHIFT`, `QUICKSIGHT`, `ATHENA`. When ATHENA exists within additional_artifacts, no other artifact type can be declared and reportVersioning must be `OVERWRITE_REPORT`. 206 AdditionalArtifacts []string `pulumi:"additionalArtifacts"` 207 // A list of schema elements. Valid values are: `RESOURCES`, `SPLIT_COST_ALLOCATION_DATA`. 208 AdditionalSchemaElements []string `pulumi:"additionalSchemaElements"` 209 // Compression format for report. Valid values are: `GZIP`, `ZIP`, `Parquet`. If `Parquet` is used, then format must also be `Parquet`. 210 Compression string `pulumi:"compression"` 211 // Format for report. Valid values are: `textORcsv`, `Parquet`. If `Parquet` is used, then Compression must also be `Parquet`. 212 Format string `pulumi:"format"` 213 // Set to true to update your reports after they have been finalized if AWS detects charges related to previous months. 214 RefreshClosedReports *bool `pulumi:"refreshClosedReports"` 215 // Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters. 216 ReportName string `pulumi:"reportName"` 217 // Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: `CREATE_NEW_REPORT` and `OVERWRITE_REPORT`. 218 ReportVersioning *string `pulumi:"reportVersioning"` 219 // Name of the existing S3 bucket to hold generated reports. 220 S3Bucket string `pulumi:"s3Bucket"` 221 // Report path prefix. Limited to 256 characters. 222 S3Prefix *string `pulumi:"s3Prefix"` 223 // Region of the existing S3 bucket to hold generated reports. 224 S3Region string `pulumi:"s3Region"` 225 // The frequency on which report data are measured and displayed. Valid values are: `DAILY`, `HOURLY`, `MONTHLY`. 226 TimeUnit string `pulumi:"timeUnit"` 227 } 228 229 // The set of arguments for constructing a ReportDefinition resource. 230 type ReportDefinitionArgs struct { 231 // A list of additional artifacts. Valid values are: `REDSHIFT`, `QUICKSIGHT`, `ATHENA`. When ATHENA exists within additional_artifacts, no other artifact type can be declared and reportVersioning must be `OVERWRITE_REPORT`. 232 AdditionalArtifacts pulumi.StringArrayInput 233 // A list of schema elements. Valid values are: `RESOURCES`, `SPLIT_COST_ALLOCATION_DATA`. 234 AdditionalSchemaElements pulumi.StringArrayInput 235 // Compression format for report. Valid values are: `GZIP`, `ZIP`, `Parquet`. If `Parquet` is used, then format must also be `Parquet`. 236 Compression pulumi.StringInput 237 // Format for report. Valid values are: `textORcsv`, `Parquet`. If `Parquet` is used, then Compression must also be `Parquet`. 238 Format pulumi.StringInput 239 // Set to true to update your reports after they have been finalized if AWS detects charges related to previous months. 240 RefreshClosedReports pulumi.BoolPtrInput 241 // Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters. 242 ReportName pulumi.StringInput 243 // Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: `CREATE_NEW_REPORT` and `OVERWRITE_REPORT`. 244 ReportVersioning pulumi.StringPtrInput 245 // Name of the existing S3 bucket to hold generated reports. 246 S3Bucket pulumi.StringInput 247 // Report path prefix. Limited to 256 characters. 248 S3Prefix pulumi.StringPtrInput 249 // Region of the existing S3 bucket to hold generated reports. 250 S3Region pulumi.StringInput 251 // The frequency on which report data are measured and displayed. Valid values are: `DAILY`, `HOURLY`, `MONTHLY`. 252 TimeUnit pulumi.StringInput 253 } 254 255 func (ReportDefinitionArgs) ElementType() reflect.Type { 256 return reflect.TypeOf((*reportDefinitionArgs)(nil)).Elem() 257 } 258 259 type ReportDefinitionInput interface { 260 pulumi.Input 261 262 ToReportDefinitionOutput() ReportDefinitionOutput 263 ToReportDefinitionOutputWithContext(ctx context.Context) ReportDefinitionOutput 264 } 265 266 func (*ReportDefinition) ElementType() reflect.Type { 267 return reflect.TypeOf((**ReportDefinition)(nil)).Elem() 268 } 269 270 func (i *ReportDefinition) ToReportDefinitionOutput() ReportDefinitionOutput { 271 return i.ToReportDefinitionOutputWithContext(context.Background()) 272 } 273 274 func (i *ReportDefinition) ToReportDefinitionOutputWithContext(ctx context.Context) ReportDefinitionOutput { 275 return pulumi.ToOutputWithContext(ctx, i).(ReportDefinitionOutput) 276 } 277 278 // ReportDefinitionArrayInput is an input type that accepts ReportDefinitionArray and ReportDefinitionArrayOutput values. 279 // You can construct a concrete instance of `ReportDefinitionArrayInput` via: 280 // 281 // ReportDefinitionArray{ ReportDefinitionArgs{...} } 282 type ReportDefinitionArrayInput interface { 283 pulumi.Input 284 285 ToReportDefinitionArrayOutput() ReportDefinitionArrayOutput 286 ToReportDefinitionArrayOutputWithContext(context.Context) ReportDefinitionArrayOutput 287 } 288 289 type ReportDefinitionArray []ReportDefinitionInput 290 291 func (ReportDefinitionArray) ElementType() reflect.Type { 292 return reflect.TypeOf((*[]*ReportDefinition)(nil)).Elem() 293 } 294 295 func (i ReportDefinitionArray) ToReportDefinitionArrayOutput() ReportDefinitionArrayOutput { 296 return i.ToReportDefinitionArrayOutputWithContext(context.Background()) 297 } 298 299 func (i ReportDefinitionArray) ToReportDefinitionArrayOutputWithContext(ctx context.Context) ReportDefinitionArrayOutput { 300 return pulumi.ToOutputWithContext(ctx, i).(ReportDefinitionArrayOutput) 301 } 302 303 // ReportDefinitionMapInput is an input type that accepts ReportDefinitionMap and ReportDefinitionMapOutput values. 304 // You can construct a concrete instance of `ReportDefinitionMapInput` via: 305 // 306 // ReportDefinitionMap{ "key": ReportDefinitionArgs{...} } 307 type ReportDefinitionMapInput interface { 308 pulumi.Input 309 310 ToReportDefinitionMapOutput() ReportDefinitionMapOutput 311 ToReportDefinitionMapOutputWithContext(context.Context) ReportDefinitionMapOutput 312 } 313 314 type ReportDefinitionMap map[string]ReportDefinitionInput 315 316 func (ReportDefinitionMap) ElementType() reflect.Type { 317 return reflect.TypeOf((*map[string]*ReportDefinition)(nil)).Elem() 318 } 319 320 func (i ReportDefinitionMap) ToReportDefinitionMapOutput() ReportDefinitionMapOutput { 321 return i.ToReportDefinitionMapOutputWithContext(context.Background()) 322 } 323 324 func (i ReportDefinitionMap) ToReportDefinitionMapOutputWithContext(ctx context.Context) ReportDefinitionMapOutput { 325 return pulumi.ToOutputWithContext(ctx, i).(ReportDefinitionMapOutput) 326 } 327 328 type ReportDefinitionOutput struct{ *pulumi.OutputState } 329 330 func (ReportDefinitionOutput) ElementType() reflect.Type { 331 return reflect.TypeOf((**ReportDefinition)(nil)).Elem() 332 } 333 334 func (o ReportDefinitionOutput) ToReportDefinitionOutput() ReportDefinitionOutput { 335 return o 336 } 337 338 func (o ReportDefinitionOutput) ToReportDefinitionOutputWithContext(ctx context.Context) ReportDefinitionOutput { 339 return o 340 } 341 342 // A list of additional artifacts. Valid values are: `REDSHIFT`, `QUICKSIGHT`, `ATHENA`. When ATHENA exists within additional_artifacts, no other artifact type can be declared and reportVersioning must be `OVERWRITE_REPORT`. 343 func (o ReportDefinitionOutput) AdditionalArtifacts() pulumi.StringArrayOutput { 344 return o.ApplyT(func(v *ReportDefinition) pulumi.StringArrayOutput { return v.AdditionalArtifacts }).(pulumi.StringArrayOutput) 345 } 346 347 // A list of schema elements. Valid values are: `RESOURCES`, `SPLIT_COST_ALLOCATION_DATA`. 348 func (o ReportDefinitionOutput) AdditionalSchemaElements() pulumi.StringArrayOutput { 349 return o.ApplyT(func(v *ReportDefinition) pulumi.StringArrayOutput { return v.AdditionalSchemaElements }).(pulumi.StringArrayOutput) 350 } 351 352 // The Amazon Resource Name (ARN) specifying the cur report. 353 func (o ReportDefinitionOutput) Arn() pulumi.StringOutput { 354 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput) 355 } 356 357 // Compression format for report. Valid values are: `GZIP`, `ZIP`, `Parquet`. If `Parquet` is used, then format must also be `Parquet`. 358 func (o ReportDefinitionOutput) Compression() pulumi.StringOutput { 359 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.Compression }).(pulumi.StringOutput) 360 } 361 362 // Format for report. Valid values are: `textORcsv`, `Parquet`. If `Parquet` is used, then Compression must also be `Parquet`. 363 func (o ReportDefinitionOutput) Format() pulumi.StringOutput { 364 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.Format }).(pulumi.StringOutput) 365 } 366 367 // Set to true to update your reports after they have been finalized if AWS detects charges related to previous months. 368 func (o ReportDefinitionOutput) RefreshClosedReports() pulumi.BoolPtrOutput { 369 return o.ApplyT(func(v *ReportDefinition) pulumi.BoolPtrOutput { return v.RefreshClosedReports }).(pulumi.BoolPtrOutput) 370 } 371 372 // Unique name for the report. Must start with a number/letter and is case sensitive. Limited to 256 characters. 373 func (o ReportDefinitionOutput) ReportName() pulumi.StringOutput { 374 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.ReportName }).(pulumi.StringOutput) 375 } 376 377 // Overwrite the previous version of each report or to deliver the report in addition to the previous versions. Valid values are: `CREATE_NEW_REPORT` and `OVERWRITE_REPORT`. 378 func (o ReportDefinitionOutput) ReportVersioning() pulumi.StringPtrOutput { 379 return o.ApplyT(func(v *ReportDefinition) pulumi.StringPtrOutput { return v.ReportVersioning }).(pulumi.StringPtrOutput) 380 } 381 382 // Name of the existing S3 bucket to hold generated reports. 383 func (o ReportDefinitionOutput) S3Bucket() pulumi.StringOutput { 384 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.S3Bucket }).(pulumi.StringOutput) 385 } 386 387 // Report path prefix. Limited to 256 characters. 388 func (o ReportDefinitionOutput) S3Prefix() pulumi.StringPtrOutput { 389 return o.ApplyT(func(v *ReportDefinition) pulumi.StringPtrOutput { return v.S3Prefix }).(pulumi.StringPtrOutput) 390 } 391 392 // Region of the existing S3 bucket to hold generated reports. 393 func (o ReportDefinitionOutput) S3Region() pulumi.StringOutput { 394 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.S3Region }).(pulumi.StringOutput) 395 } 396 397 // The frequency on which report data are measured and displayed. Valid values are: `DAILY`, `HOURLY`, `MONTHLY`. 398 func (o ReportDefinitionOutput) TimeUnit() pulumi.StringOutput { 399 return o.ApplyT(func(v *ReportDefinition) pulumi.StringOutput { return v.TimeUnit }).(pulumi.StringOutput) 400 } 401 402 type ReportDefinitionArrayOutput struct{ *pulumi.OutputState } 403 404 func (ReportDefinitionArrayOutput) ElementType() reflect.Type { 405 return reflect.TypeOf((*[]*ReportDefinition)(nil)).Elem() 406 } 407 408 func (o ReportDefinitionArrayOutput) ToReportDefinitionArrayOutput() ReportDefinitionArrayOutput { 409 return o 410 } 411 412 func (o ReportDefinitionArrayOutput) ToReportDefinitionArrayOutputWithContext(ctx context.Context) ReportDefinitionArrayOutput { 413 return o 414 } 415 416 func (o ReportDefinitionArrayOutput) Index(i pulumi.IntInput) ReportDefinitionOutput { 417 return pulumi.All(o, i).ApplyT(func(vs []interface{}) *ReportDefinition { 418 return vs[0].([]*ReportDefinition)[vs[1].(int)] 419 }).(ReportDefinitionOutput) 420 } 421 422 type ReportDefinitionMapOutput struct{ *pulumi.OutputState } 423 424 func (ReportDefinitionMapOutput) ElementType() reflect.Type { 425 return reflect.TypeOf((*map[string]*ReportDefinition)(nil)).Elem() 426 } 427 428 func (o ReportDefinitionMapOutput) ToReportDefinitionMapOutput() ReportDefinitionMapOutput { 429 return o 430 } 431 432 func (o ReportDefinitionMapOutput) ToReportDefinitionMapOutputWithContext(ctx context.Context) ReportDefinitionMapOutput { 433 return o 434 } 435 436 func (o ReportDefinitionMapOutput) MapIndex(k pulumi.StringInput) ReportDefinitionOutput { 437 return pulumi.All(o, k).ApplyT(func(vs []interface{}) *ReportDefinition { 438 return vs[0].(map[string]*ReportDefinition)[vs[1].(string)] 439 }).(ReportDefinitionOutput) 440 } 441 442 func init() { 443 pulumi.RegisterInputType(reflect.TypeOf((*ReportDefinitionInput)(nil)).Elem(), &ReportDefinition{}) 444 pulumi.RegisterInputType(reflect.TypeOf((*ReportDefinitionArrayInput)(nil)).Elem(), ReportDefinitionArray{}) 445 pulumi.RegisterInputType(reflect.TypeOf((*ReportDefinitionMapInput)(nil)).Elem(), ReportDefinitionMap{}) 446 pulumi.RegisterOutputType(ReportDefinitionOutput{}) 447 pulumi.RegisterOutputType(ReportDefinitionArrayOutput{}) 448 pulumi.RegisterOutputType(ReportDefinitionMapOutput{}) 449 }