github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/quicksight/analysis.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 quicksight
     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 a QuickSight Analysis.
    16  //
    17  // ## Example Usage
    18  //
    19  // ### From Source Template
    20  //
    21  // <!--Start PulumiCodeChooser -->
    22  // ```go
    23  // package main
    24  //
    25  // import (
    26  //
    27  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight"
    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 := quicksight.NewAnalysis(ctx, "example", &quicksight.AnalysisArgs{
    35  //				AnalysisId: pulumi.String("example-id"),
    36  //				Name:       pulumi.String("example-name"),
    37  //				SourceEntity: &quicksight.AnalysisSourceEntityArgs{
    38  //					SourceTemplate: &quicksight.AnalysisSourceEntitySourceTemplateArgs{
    39  //						Arn: pulumi.Any(source.Arn),
    40  //						DataSetReferences: quicksight.AnalysisSourceEntitySourceTemplateDataSetReferenceArray{
    41  //							&quicksight.AnalysisSourceEntitySourceTemplateDataSetReferenceArgs{
    42  //								DataSetArn:         pulumi.Any(dataset.Arn),
    43  //								DataSetPlaceholder: pulumi.String("1"),
    44  //							},
    45  //						},
    46  //					},
    47  //				},
    48  //			})
    49  //			if err != nil {
    50  //				return err
    51  //			}
    52  //			return nil
    53  //		})
    54  //	}
    55  //
    56  // ```
    57  // <!--End PulumiCodeChooser -->
    58  //
    59  // ## Import
    60  //
    61  // Using `pulumi import`, import a QuickSight Analysis using the AWS account ID and analysis ID separated by a comma (`,`). For example:
    62  //
    63  // ```sh
    64  // $ pulumi import aws:quicksight/analysis:Analysis example 123456789012,example-id
    65  // ```
    66  type Analysis struct {
    67  	pulumi.CustomResourceState
    68  
    69  	// Identifier for the analysis.
    70  	AnalysisId pulumi.StringOutput `pulumi:"analysisId"`
    71  	// The Amazon Resource Name (ARN) of the resource.
    72  	Arn pulumi.StringOutput `pulumi:"arn"`
    73  	// AWS account ID.
    74  	AwsAccountId pulumi.StringOutput `pulumi:"awsAccountId"`
    75  	// The time that the analysis was created.
    76  	CreatedTime       pulumi.StringOutput `pulumi:"createdTime"`
    77  	LastPublishedTime pulumi.StringOutput `pulumi:"lastPublishedTime"`
    78  	// The time that the analysis was last updated.
    79  	LastUpdatedTime pulumi.StringOutput `pulumi:"lastUpdatedTime"`
    80  	// Display name for the analysis.
    81  	//
    82  	// The following arguments are optional:
    83  	Name pulumi.StringOutput `pulumi:"name"`
    84  	// The parameters for the creation of the analysis, which you want to use to override the default settings. An analysis can have any type of parameters, and some parameters might accept multiple values. See parameters.
    85  	Parameters AnalysisParametersOutput `pulumi:"parameters"`
    86  	// A set of resource permissions on the analysis. Maximum of 64 items. See permissions.
    87  	Permissions AnalysisPermissionArrayOutput `pulumi:"permissions"`
    88  	// A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. Use `0` to force deletion without recovery. Minimum value of `7`. Maximum value of `30`. Default to `30`.
    89  	RecoveryWindowInDays pulumi.IntPtrOutput `pulumi:"recoveryWindowInDays"`
    90  	// The entity that you are using as a source when you create the analysis (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
    91  	SourceEntity AnalysisSourceEntityPtrOutput `pulumi:"sourceEntity"`
    92  	// The analysis creation status.
    93  	Status pulumi.StringOutput `pulumi:"status"`
    94  	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
    95  	Tags pulumi.StringMapOutput `pulumi:"tags"`
    96  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
    97  	//
    98  	// Deprecated: Please use `tags` instead.
    99  	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
   100  	// The Amazon Resource Name (ARN) of the theme that is being used for this analysis. The theme ARN must exist in the same AWS account where you create the analysis.
   101  	ThemeArn pulumi.StringPtrOutput `pulumi:"themeArn"`
   102  }
   103  
   104  // NewAnalysis registers a new resource with the given unique name, arguments, and options.
   105  func NewAnalysis(ctx *pulumi.Context,
   106  	name string, args *AnalysisArgs, opts ...pulumi.ResourceOption) (*Analysis, error) {
   107  	if args == nil {
   108  		return nil, errors.New("missing one or more required arguments")
   109  	}
   110  
   111  	if args.AnalysisId == nil {
   112  		return nil, errors.New("invalid value for required argument 'AnalysisId'")
   113  	}
   114  	opts = internal.PkgResourceDefaultOpts(opts)
   115  	var resource Analysis
   116  	err := ctx.RegisterResource("aws:quicksight/analysis:Analysis", name, args, &resource, opts...)
   117  	if err != nil {
   118  		return nil, err
   119  	}
   120  	return &resource, nil
   121  }
   122  
   123  // GetAnalysis gets an existing Analysis resource's state with the given name, ID, and optional
   124  // state properties that are used to uniquely qualify the lookup (nil if not required).
   125  func GetAnalysis(ctx *pulumi.Context,
   126  	name string, id pulumi.IDInput, state *AnalysisState, opts ...pulumi.ResourceOption) (*Analysis, error) {
   127  	var resource Analysis
   128  	err := ctx.ReadResource("aws:quicksight/analysis:Analysis", name, id, state, &resource, opts...)
   129  	if err != nil {
   130  		return nil, err
   131  	}
   132  	return &resource, nil
   133  }
   134  
   135  // Input properties used for looking up and filtering Analysis resources.
   136  type analysisState struct {
   137  	// Identifier for the analysis.
   138  	AnalysisId *string `pulumi:"analysisId"`
   139  	// The Amazon Resource Name (ARN) of the resource.
   140  	Arn *string `pulumi:"arn"`
   141  	// AWS account ID.
   142  	AwsAccountId *string `pulumi:"awsAccountId"`
   143  	// The time that the analysis was created.
   144  	CreatedTime       *string `pulumi:"createdTime"`
   145  	LastPublishedTime *string `pulumi:"lastPublishedTime"`
   146  	// The time that the analysis was last updated.
   147  	LastUpdatedTime *string `pulumi:"lastUpdatedTime"`
   148  	// Display name for the analysis.
   149  	//
   150  	// The following arguments are optional:
   151  	Name *string `pulumi:"name"`
   152  	// The parameters for the creation of the analysis, which you want to use to override the default settings. An analysis can have any type of parameters, and some parameters might accept multiple values. See parameters.
   153  	Parameters *AnalysisParameters `pulumi:"parameters"`
   154  	// A set of resource permissions on the analysis. Maximum of 64 items. See permissions.
   155  	Permissions []AnalysisPermission `pulumi:"permissions"`
   156  	// A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. Use `0` to force deletion without recovery. Minimum value of `7`. Maximum value of `30`. Default to `30`.
   157  	RecoveryWindowInDays *int `pulumi:"recoveryWindowInDays"`
   158  	// The entity that you are using as a source when you create the analysis (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   159  	SourceEntity *AnalysisSourceEntity `pulumi:"sourceEntity"`
   160  	// The analysis creation status.
   161  	Status *string `pulumi:"status"`
   162  	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   163  	Tags map[string]string `pulumi:"tags"`
   164  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   165  	//
   166  	// Deprecated: Please use `tags` instead.
   167  	TagsAll map[string]string `pulumi:"tagsAll"`
   168  	// The Amazon Resource Name (ARN) of the theme that is being used for this analysis. The theme ARN must exist in the same AWS account where you create the analysis.
   169  	ThemeArn *string `pulumi:"themeArn"`
   170  }
   171  
   172  type AnalysisState struct {
   173  	// Identifier for the analysis.
   174  	AnalysisId pulumi.StringPtrInput
   175  	// The Amazon Resource Name (ARN) of the resource.
   176  	Arn pulumi.StringPtrInput
   177  	// AWS account ID.
   178  	AwsAccountId pulumi.StringPtrInput
   179  	// The time that the analysis was created.
   180  	CreatedTime       pulumi.StringPtrInput
   181  	LastPublishedTime pulumi.StringPtrInput
   182  	// The time that the analysis was last updated.
   183  	LastUpdatedTime pulumi.StringPtrInput
   184  	// Display name for the analysis.
   185  	//
   186  	// The following arguments are optional:
   187  	Name pulumi.StringPtrInput
   188  	// The parameters for the creation of the analysis, which you want to use to override the default settings. An analysis can have any type of parameters, and some parameters might accept multiple values. See parameters.
   189  	Parameters AnalysisParametersPtrInput
   190  	// A set of resource permissions on the analysis. Maximum of 64 items. See permissions.
   191  	Permissions AnalysisPermissionArrayInput
   192  	// A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. Use `0` to force deletion without recovery. Minimum value of `7`. Maximum value of `30`. Default to `30`.
   193  	RecoveryWindowInDays pulumi.IntPtrInput
   194  	// The entity that you are using as a source when you create the analysis (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   195  	SourceEntity AnalysisSourceEntityPtrInput
   196  	// The analysis creation status.
   197  	Status pulumi.StringPtrInput
   198  	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   199  	Tags pulumi.StringMapInput
   200  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   201  	//
   202  	// Deprecated: Please use `tags` instead.
   203  	TagsAll pulumi.StringMapInput
   204  	// The Amazon Resource Name (ARN) of the theme that is being used for this analysis. The theme ARN must exist in the same AWS account where you create the analysis.
   205  	ThemeArn pulumi.StringPtrInput
   206  }
   207  
   208  func (AnalysisState) ElementType() reflect.Type {
   209  	return reflect.TypeOf((*analysisState)(nil)).Elem()
   210  }
   211  
   212  type analysisArgs struct {
   213  	// Identifier for the analysis.
   214  	AnalysisId string `pulumi:"analysisId"`
   215  	// AWS account ID.
   216  	AwsAccountId *string `pulumi:"awsAccountId"`
   217  	// Display name for the analysis.
   218  	//
   219  	// The following arguments are optional:
   220  	Name *string `pulumi:"name"`
   221  	// The parameters for the creation of the analysis, which you want to use to override the default settings. An analysis can have any type of parameters, and some parameters might accept multiple values. See parameters.
   222  	Parameters *AnalysisParameters `pulumi:"parameters"`
   223  	// A set of resource permissions on the analysis. Maximum of 64 items. See permissions.
   224  	Permissions []AnalysisPermission `pulumi:"permissions"`
   225  	// A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. Use `0` to force deletion without recovery. Minimum value of `7`. Maximum value of `30`. Default to `30`.
   226  	RecoveryWindowInDays *int `pulumi:"recoveryWindowInDays"`
   227  	// The entity that you are using as a source when you create the analysis (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   228  	SourceEntity *AnalysisSourceEntity `pulumi:"sourceEntity"`
   229  	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   230  	Tags map[string]string `pulumi:"tags"`
   231  	// The Amazon Resource Name (ARN) of the theme that is being used for this analysis. The theme ARN must exist in the same AWS account where you create the analysis.
   232  	ThemeArn *string `pulumi:"themeArn"`
   233  }
   234  
   235  // The set of arguments for constructing a Analysis resource.
   236  type AnalysisArgs struct {
   237  	// Identifier for the analysis.
   238  	AnalysisId pulumi.StringInput
   239  	// AWS account ID.
   240  	AwsAccountId pulumi.StringPtrInput
   241  	// Display name for the analysis.
   242  	//
   243  	// The following arguments are optional:
   244  	Name pulumi.StringPtrInput
   245  	// The parameters for the creation of the analysis, which you want to use to override the default settings. An analysis can have any type of parameters, and some parameters might accept multiple values. See parameters.
   246  	Parameters AnalysisParametersPtrInput
   247  	// A set of resource permissions on the analysis. Maximum of 64 items. See permissions.
   248  	Permissions AnalysisPermissionArrayInput
   249  	// A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. Use `0` to force deletion without recovery. Minimum value of `7`. Maximum value of `30`. Default to `30`.
   250  	RecoveryWindowInDays pulumi.IntPtrInput
   251  	// The entity that you are using as a source when you create the analysis (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   252  	SourceEntity AnalysisSourceEntityPtrInput
   253  	// Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   254  	Tags pulumi.StringMapInput
   255  	// The Amazon Resource Name (ARN) of the theme that is being used for this analysis. The theme ARN must exist in the same AWS account where you create the analysis.
   256  	ThemeArn pulumi.StringPtrInput
   257  }
   258  
   259  func (AnalysisArgs) ElementType() reflect.Type {
   260  	return reflect.TypeOf((*analysisArgs)(nil)).Elem()
   261  }
   262  
   263  type AnalysisInput interface {
   264  	pulumi.Input
   265  
   266  	ToAnalysisOutput() AnalysisOutput
   267  	ToAnalysisOutputWithContext(ctx context.Context) AnalysisOutput
   268  }
   269  
   270  func (*Analysis) ElementType() reflect.Type {
   271  	return reflect.TypeOf((**Analysis)(nil)).Elem()
   272  }
   273  
   274  func (i *Analysis) ToAnalysisOutput() AnalysisOutput {
   275  	return i.ToAnalysisOutputWithContext(context.Background())
   276  }
   277  
   278  func (i *Analysis) ToAnalysisOutputWithContext(ctx context.Context) AnalysisOutput {
   279  	return pulumi.ToOutputWithContext(ctx, i).(AnalysisOutput)
   280  }
   281  
   282  // AnalysisArrayInput is an input type that accepts AnalysisArray and AnalysisArrayOutput values.
   283  // You can construct a concrete instance of `AnalysisArrayInput` via:
   284  //
   285  //	AnalysisArray{ AnalysisArgs{...} }
   286  type AnalysisArrayInput interface {
   287  	pulumi.Input
   288  
   289  	ToAnalysisArrayOutput() AnalysisArrayOutput
   290  	ToAnalysisArrayOutputWithContext(context.Context) AnalysisArrayOutput
   291  }
   292  
   293  type AnalysisArray []AnalysisInput
   294  
   295  func (AnalysisArray) ElementType() reflect.Type {
   296  	return reflect.TypeOf((*[]*Analysis)(nil)).Elem()
   297  }
   298  
   299  func (i AnalysisArray) ToAnalysisArrayOutput() AnalysisArrayOutput {
   300  	return i.ToAnalysisArrayOutputWithContext(context.Background())
   301  }
   302  
   303  func (i AnalysisArray) ToAnalysisArrayOutputWithContext(ctx context.Context) AnalysisArrayOutput {
   304  	return pulumi.ToOutputWithContext(ctx, i).(AnalysisArrayOutput)
   305  }
   306  
   307  // AnalysisMapInput is an input type that accepts AnalysisMap and AnalysisMapOutput values.
   308  // You can construct a concrete instance of `AnalysisMapInput` via:
   309  //
   310  //	AnalysisMap{ "key": AnalysisArgs{...} }
   311  type AnalysisMapInput interface {
   312  	pulumi.Input
   313  
   314  	ToAnalysisMapOutput() AnalysisMapOutput
   315  	ToAnalysisMapOutputWithContext(context.Context) AnalysisMapOutput
   316  }
   317  
   318  type AnalysisMap map[string]AnalysisInput
   319  
   320  func (AnalysisMap) ElementType() reflect.Type {
   321  	return reflect.TypeOf((*map[string]*Analysis)(nil)).Elem()
   322  }
   323  
   324  func (i AnalysisMap) ToAnalysisMapOutput() AnalysisMapOutput {
   325  	return i.ToAnalysisMapOutputWithContext(context.Background())
   326  }
   327  
   328  func (i AnalysisMap) ToAnalysisMapOutputWithContext(ctx context.Context) AnalysisMapOutput {
   329  	return pulumi.ToOutputWithContext(ctx, i).(AnalysisMapOutput)
   330  }
   331  
   332  type AnalysisOutput struct{ *pulumi.OutputState }
   333  
   334  func (AnalysisOutput) ElementType() reflect.Type {
   335  	return reflect.TypeOf((**Analysis)(nil)).Elem()
   336  }
   337  
   338  func (o AnalysisOutput) ToAnalysisOutput() AnalysisOutput {
   339  	return o
   340  }
   341  
   342  func (o AnalysisOutput) ToAnalysisOutputWithContext(ctx context.Context) AnalysisOutput {
   343  	return o
   344  }
   345  
   346  // Identifier for the analysis.
   347  func (o AnalysisOutput) AnalysisId() pulumi.StringOutput {
   348  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.AnalysisId }).(pulumi.StringOutput)
   349  }
   350  
   351  // The Amazon Resource Name (ARN) of the resource.
   352  func (o AnalysisOutput) Arn() pulumi.StringOutput {
   353  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   354  }
   355  
   356  // AWS account ID.
   357  func (o AnalysisOutput) AwsAccountId() pulumi.StringOutput {
   358  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.AwsAccountId }).(pulumi.StringOutput)
   359  }
   360  
   361  // The time that the analysis was created.
   362  func (o AnalysisOutput) CreatedTime() pulumi.StringOutput {
   363  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.CreatedTime }).(pulumi.StringOutput)
   364  }
   365  
   366  func (o AnalysisOutput) LastPublishedTime() pulumi.StringOutput {
   367  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.LastPublishedTime }).(pulumi.StringOutput)
   368  }
   369  
   370  // The time that the analysis was last updated.
   371  func (o AnalysisOutput) LastUpdatedTime() pulumi.StringOutput {
   372  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.LastUpdatedTime }).(pulumi.StringOutput)
   373  }
   374  
   375  // Display name for the analysis.
   376  //
   377  // The following arguments are optional:
   378  func (o AnalysisOutput) Name() pulumi.StringOutput {
   379  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
   380  }
   381  
   382  // The parameters for the creation of the analysis, which you want to use to override the default settings. An analysis can have any type of parameters, and some parameters might accept multiple values. See parameters.
   383  func (o AnalysisOutput) Parameters() AnalysisParametersOutput {
   384  	return o.ApplyT(func(v *Analysis) AnalysisParametersOutput { return v.Parameters }).(AnalysisParametersOutput)
   385  }
   386  
   387  // A set of resource permissions on the analysis. Maximum of 64 items. See permissions.
   388  func (o AnalysisOutput) Permissions() AnalysisPermissionArrayOutput {
   389  	return o.ApplyT(func(v *Analysis) AnalysisPermissionArrayOutput { return v.Permissions }).(AnalysisPermissionArrayOutput)
   390  }
   391  
   392  // A value that specifies the number of days that Amazon QuickSight waits before it deletes the analysis. Use `0` to force deletion without recovery. Minimum value of `7`. Maximum value of `30`. Default to `30`.
   393  func (o AnalysisOutput) RecoveryWindowInDays() pulumi.IntPtrOutput {
   394  	return o.ApplyT(func(v *Analysis) pulumi.IntPtrOutput { return v.RecoveryWindowInDays }).(pulumi.IntPtrOutput)
   395  }
   396  
   397  // The entity that you are using as a source when you create the analysis (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   398  func (o AnalysisOutput) SourceEntity() AnalysisSourceEntityPtrOutput {
   399  	return o.ApplyT(func(v *Analysis) AnalysisSourceEntityPtrOutput { return v.SourceEntity }).(AnalysisSourceEntityPtrOutput)
   400  }
   401  
   402  // The analysis creation status.
   403  func (o AnalysisOutput) Status() pulumi.StringOutput {
   404  	return o.ApplyT(func(v *Analysis) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput)
   405  }
   406  
   407  // Key-value map of resource tags. If configured with a provider `defaultTags` configuration block present, tags with matching keys will overwrite those defined at the provider-level.
   408  func (o AnalysisOutput) Tags() pulumi.StringMapOutput {
   409  	return o.ApplyT(func(v *Analysis) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   410  }
   411  
   412  // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   413  //
   414  // Deprecated: Please use `tags` instead.
   415  func (o AnalysisOutput) TagsAll() pulumi.StringMapOutput {
   416  	return o.ApplyT(func(v *Analysis) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   417  }
   418  
   419  // The Amazon Resource Name (ARN) of the theme that is being used for this analysis. The theme ARN must exist in the same AWS account where you create the analysis.
   420  func (o AnalysisOutput) ThemeArn() pulumi.StringPtrOutput {
   421  	return o.ApplyT(func(v *Analysis) pulumi.StringPtrOutput { return v.ThemeArn }).(pulumi.StringPtrOutput)
   422  }
   423  
   424  type AnalysisArrayOutput struct{ *pulumi.OutputState }
   425  
   426  func (AnalysisArrayOutput) ElementType() reflect.Type {
   427  	return reflect.TypeOf((*[]*Analysis)(nil)).Elem()
   428  }
   429  
   430  func (o AnalysisArrayOutput) ToAnalysisArrayOutput() AnalysisArrayOutput {
   431  	return o
   432  }
   433  
   434  func (o AnalysisArrayOutput) ToAnalysisArrayOutputWithContext(ctx context.Context) AnalysisArrayOutput {
   435  	return o
   436  }
   437  
   438  func (o AnalysisArrayOutput) Index(i pulumi.IntInput) AnalysisOutput {
   439  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Analysis {
   440  		return vs[0].([]*Analysis)[vs[1].(int)]
   441  	}).(AnalysisOutput)
   442  }
   443  
   444  type AnalysisMapOutput struct{ *pulumi.OutputState }
   445  
   446  func (AnalysisMapOutput) ElementType() reflect.Type {
   447  	return reflect.TypeOf((*map[string]*Analysis)(nil)).Elem()
   448  }
   449  
   450  func (o AnalysisMapOutput) ToAnalysisMapOutput() AnalysisMapOutput {
   451  	return o
   452  }
   453  
   454  func (o AnalysisMapOutput) ToAnalysisMapOutputWithContext(ctx context.Context) AnalysisMapOutput {
   455  	return o
   456  }
   457  
   458  func (o AnalysisMapOutput) MapIndex(k pulumi.StringInput) AnalysisOutput {
   459  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Analysis {
   460  		return vs[0].(map[string]*Analysis)[vs[1].(string)]
   461  	}).(AnalysisOutput)
   462  }
   463  
   464  func init() {
   465  	pulumi.RegisterInputType(reflect.TypeOf((*AnalysisInput)(nil)).Elem(), &Analysis{})
   466  	pulumi.RegisterInputType(reflect.TypeOf((*AnalysisArrayInput)(nil)).Elem(), AnalysisArray{})
   467  	pulumi.RegisterInputType(reflect.TypeOf((*AnalysisMapInput)(nil)).Elem(), AnalysisMap{})
   468  	pulumi.RegisterOutputType(AnalysisOutput{})
   469  	pulumi.RegisterOutputType(AnalysisArrayOutput{})
   470  	pulumi.RegisterOutputType(AnalysisMapOutput{})
   471  }