github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/quicksight/dashboard.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 Dashboard.
    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.NewDashboard(ctx, "example", &quicksight.DashboardArgs{
    35  //				DashboardId:        pulumi.String("example-id"),
    36  //				Name:               pulumi.String("example-name"),
    37  //				VersionDescription: pulumi.String("version"),
    38  //				SourceEntity: &quicksight.DashboardSourceEntityArgs{
    39  //					SourceTemplate: &quicksight.DashboardSourceEntitySourceTemplateArgs{
    40  //						Arn: pulumi.Any(source.Arn),
    41  //						DataSetReferences: quicksight.DashboardSourceEntitySourceTemplateDataSetReferenceArray{
    42  //							&quicksight.DashboardSourceEntitySourceTemplateDataSetReferenceArgs{
    43  //								DataSetArn:         pulumi.Any(dataset.Arn),
    44  //								DataSetPlaceholder: pulumi.String("1"),
    45  //							},
    46  //						},
    47  //					},
    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 a QuickSight Dashboard using the AWS account ID and dashboard ID separated by a comma (`,`). For example:
    63  //
    64  // ```sh
    65  // $ pulumi import aws:quicksight/dashboard:Dashboard example 123456789012,example-id
    66  // ```
    67  type Dashboard struct {
    68  	pulumi.CustomResourceState
    69  
    70  	// The Amazon Resource Name (ARN) of the resource.
    71  	Arn pulumi.StringOutput `pulumi:"arn"`
    72  	// AWS account ID.
    73  	AwsAccountId pulumi.StringOutput `pulumi:"awsAccountId"`
    74  	// The time that the dashboard was created.
    75  	CreatedTime pulumi.StringOutput `pulumi:"createdTime"`
    76  	// Identifier for the dashboard.
    77  	DashboardId pulumi.StringOutput `pulumi:"dashboardId"`
    78  	// Options for publishing the dashboard. See dashboard_publish_options.
    79  	DashboardPublishOptions DashboardDashboardPublishOptionsOutput `pulumi:"dashboardPublishOptions"`
    80  	LastPublishedTime       pulumi.StringOutput                    `pulumi:"lastPublishedTime"`
    81  	// The time that the dashboard was last updated.
    82  	LastUpdatedTime pulumi.StringOutput `pulumi:"lastUpdatedTime"`
    83  	// Display name for the dashboard.
    84  	Name pulumi.StringOutput `pulumi:"name"`
    85  	// The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
    86  	Parameters DashboardParametersOutput `pulumi:"parameters"`
    87  	// A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
    88  	Permissions DashboardPermissionArrayOutput `pulumi:"permissions"`
    89  	// The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
    90  	SourceEntity DashboardSourceEntityPtrOutput `pulumi:"sourceEntity"`
    91  	// Amazon Resource Name (ARN) of a template that was used to create this dashboard.
    92  	SourceEntityArn pulumi.StringOutput `pulumi:"sourceEntityArn"`
    93  	// The dashboard creation status.
    94  	Status pulumi.StringOutput `pulumi:"status"`
    95  	// 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.
    96  	Tags pulumi.StringMapOutput `pulumi:"tags"`
    97  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
    98  	//
    99  	// Deprecated: Please use `tags` instead.
   100  	TagsAll pulumi.StringMapOutput `pulumi:"tagsAll"`
   101  	// The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
   102  	ThemeArn pulumi.StringPtrOutput `pulumi:"themeArn"`
   103  	// A description of the current dashboard version being created/updated.
   104  	//
   105  	// The following arguments are optional:
   106  	VersionDescription pulumi.StringOutput `pulumi:"versionDescription"`
   107  	// The version number of the dashboard version.
   108  	VersionNumber pulumi.IntOutput `pulumi:"versionNumber"`
   109  }
   110  
   111  // NewDashboard registers a new resource with the given unique name, arguments, and options.
   112  func NewDashboard(ctx *pulumi.Context,
   113  	name string, args *DashboardArgs, opts ...pulumi.ResourceOption) (*Dashboard, error) {
   114  	if args == nil {
   115  		return nil, errors.New("missing one or more required arguments")
   116  	}
   117  
   118  	if args.DashboardId == nil {
   119  		return nil, errors.New("invalid value for required argument 'DashboardId'")
   120  	}
   121  	if args.VersionDescription == nil {
   122  		return nil, errors.New("invalid value for required argument 'VersionDescription'")
   123  	}
   124  	opts = internal.PkgResourceDefaultOpts(opts)
   125  	var resource Dashboard
   126  	err := ctx.RegisterResource("aws:quicksight/dashboard:Dashboard", name, args, &resource, opts...)
   127  	if err != nil {
   128  		return nil, err
   129  	}
   130  	return &resource, nil
   131  }
   132  
   133  // GetDashboard gets an existing Dashboard 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 GetDashboard(ctx *pulumi.Context,
   136  	name string, id pulumi.IDInput, state *DashboardState, opts ...pulumi.ResourceOption) (*Dashboard, error) {
   137  	var resource Dashboard
   138  	err := ctx.ReadResource("aws:quicksight/dashboard:Dashboard", 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 Dashboard resources.
   146  type dashboardState struct {
   147  	// The Amazon Resource Name (ARN) of the resource.
   148  	Arn *string `pulumi:"arn"`
   149  	// AWS account ID.
   150  	AwsAccountId *string `pulumi:"awsAccountId"`
   151  	// The time that the dashboard was created.
   152  	CreatedTime *string `pulumi:"createdTime"`
   153  	// Identifier for the dashboard.
   154  	DashboardId *string `pulumi:"dashboardId"`
   155  	// Options for publishing the dashboard. See dashboard_publish_options.
   156  	DashboardPublishOptions *DashboardDashboardPublishOptions `pulumi:"dashboardPublishOptions"`
   157  	LastPublishedTime       *string                           `pulumi:"lastPublishedTime"`
   158  	// The time that the dashboard was last updated.
   159  	LastUpdatedTime *string `pulumi:"lastUpdatedTime"`
   160  	// Display name for the dashboard.
   161  	Name *string `pulumi:"name"`
   162  	// The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
   163  	Parameters *DashboardParameters `pulumi:"parameters"`
   164  	// A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
   165  	Permissions []DashboardPermission `pulumi:"permissions"`
   166  	// The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   167  	SourceEntity *DashboardSourceEntity `pulumi:"sourceEntity"`
   168  	// Amazon Resource Name (ARN) of a template that was used to create this dashboard.
   169  	SourceEntityArn *string `pulumi:"sourceEntityArn"`
   170  	// The dashboard creation status.
   171  	Status *string `pulumi:"status"`
   172  	// 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.
   173  	Tags map[string]string `pulumi:"tags"`
   174  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   175  	//
   176  	// Deprecated: Please use `tags` instead.
   177  	TagsAll map[string]string `pulumi:"tagsAll"`
   178  	// The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
   179  	ThemeArn *string `pulumi:"themeArn"`
   180  	// A description of the current dashboard version being created/updated.
   181  	//
   182  	// The following arguments are optional:
   183  	VersionDescription *string `pulumi:"versionDescription"`
   184  	// The version number of the dashboard version.
   185  	VersionNumber *int `pulumi:"versionNumber"`
   186  }
   187  
   188  type DashboardState struct {
   189  	// The Amazon Resource Name (ARN) of the resource.
   190  	Arn pulumi.StringPtrInput
   191  	// AWS account ID.
   192  	AwsAccountId pulumi.StringPtrInput
   193  	// The time that the dashboard was created.
   194  	CreatedTime pulumi.StringPtrInput
   195  	// Identifier for the dashboard.
   196  	DashboardId pulumi.StringPtrInput
   197  	// Options for publishing the dashboard. See dashboard_publish_options.
   198  	DashboardPublishOptions DashboardDashboardPublishOptionsPtrInput
   199  	LastPublishedTime       pulumi.StringPtrInput
   200  	// The time that the dashboard was last updated.
   201  	LastUpdatedTime pulumi.StringPtrInput
   202  	// Display name for the dashboard.
   203  	Name pulumi.StringPtrInput
   204  	// The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
   205  	Parameters DashboardParametersPtrInput
   206  	// A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
   207  	Permissions DashboardPermissionArrayInput
   208  	// The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   209  	SourceEntity DashboardSourceEntityPtrInput
   210  	// Amazon Resource Name (ARN) of a template that was used to create this dashboard.
   211  	SourceEntityArn pulumi.StringPtrInput
   212  	// The dashboard creation status.
   213  	Status pulumi.StringPtrInput
   214  	// 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.
   215  	Tags pulumi.StringMapInput
   216  	// A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   217  	//
   218  	// Deprecated: Please use `tags` instead.
   219  	TagsAll pulumi.StringMapInput
   220  	// The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
   221  	ThemeArn pulumi.StringPtrInput
   222  	// A description of the current dashboard version being created/updated.
   223  	//
   224  	// The following arguments are optional:
   225  	VersionDescription pulumi.StringPtrInput
   226  	// The version number of the dashboard version.
   227  	VersionNumber pulumi.IntPtrInput
   228  }
   229  
   230  func (DashboardState) ElementType() reflect.Type {
   231  	return reflect.TypeOf((*dashboardState)(nil)).Elem()
   232  }
   233  
   234  type dashboardArgs struct {
   235  	// AWS account ID.
   236  	AwsAccountId *string `pulumi:"awsAccountId"`
   237  	// Identifier for the dashboard.
   238  	DashboardId string `pulumi:"dashboardId"`
   239  	// Options for publishing the dashboard. See dashboard_publish_options.
   240  	DashboardPublishOptions *DashboardDashboardPublishOptions `pulumi:"dashboardPublishOptions"`
   241  	// Display name for the dashboard.
   242  	Name *string `pulumi:"name"`
   243  	// The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
   244  	Parameters *DashboardParameters `pulumi:"parameters"`
   245  	// A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
   246  	Permissions []DashboardPermission `pulumi:"permissions"`
   247  	// The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   248  	SourceEntity *DashboardSourceEntity `pulumi:"sourceEntity"`
   249  	// 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.
   250  	Tags map[string]string `pulumi:"tags"`
   251  	// The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
   252  	ThemeArn *string `pulumi:"themeArn"`
   253  	// A description of the current dashboard version being created/updated.
   254  	//
   255  	// The following arguments are optional:
   256  	VersionDescription string `pulumi:"versionDescription"`
   257  }
   258  
   259  // The set of arguments for constructing a Dashboard resource.
   260  type DashboardArgs struct {
   261  	// AWS account ID.
   262  	AwsAccountId pulumi.StringPtrInput
   263  	// Identifier for the dashboard.
   264  	DashboardId pulumi.StringInput
   265  	// Options for publishing the dashboard. See dashboard_publish_options.
   266  	DashboardPublishOptions DashboardDashboardPublishOptionsPtrInput
   267  	// Display name for the dashboard.
   268  	Name pulumi.StringPtrInput
   269  	// The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
   270  	Parameters DashboardParametersPtrInput
   271  	// A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
   272  	Permissions DashboardPermissionArrayInput
   273  	// The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   274  	SourceEntity DashboardSourceEntityPtrInput
   275  	// 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.
   276  	Tags pulumi.StringMapInput
   277  	// The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
   278  	ThemeArn pulumi.StringPtrInput
   279  	// A description of the current dashboard version being created/updated.
   280  	//
   281  	// The following arguments are optional:
   282  	VersionDescription pulumi.StringInput
   283  }
   284  
   285  func (DashboardArgs) ElementType() reflect.Type {
   286  	return reflect.TypeOf((*dashboardArgs)(nil)).Elem()
   287  }
   288  
   289  type DashboardInput interface {
   290  	pulumi.Input
   291  
   292  	ToDashboardOutput() DashboardOutput
   293  	ToDashboardOutputWithContext(ctx context.Context) DashboardOutput
   294  }
   295  
   296  func (*Dashboard) ElementType() reflect.Type {
   297  	return reflect.TypeOf((**Dashboard)(nil)).Elem()
   298  }
   299  
   300  func (i *Dashboard) ToDashboardOutput() DashboardOutput {
   301  	return i.ToDashboardOutputWithContext(context.Background())
   302  }
   303  
   304  func (i *Dashboard) ToDashboardOutputWithContext(ctx context.Context) DashboardOutput {
   305  	return pulumi.ToOutputWithContext(ctx, i).(DashboardOutput)
   306  }
   307  
   308  // DashboardArrayInput is an input type that accepts DashboardArray and DashboardArrayOutput values.
   309  // You can construct a concrete instance of `DashboardArrayInput` via:
   310  //
   311  //	DashboardArray{ DashboardArgs{...} }
   312  type DashboardArrayInput interface {
   313  	pulumi.Input
   314  
   315  	ToDashboardArrayOutput() DashboardArrayOutput
   316  	ToDashboardArrayOutputWithContext(context.Context) DashboardArrayOutput
   317  }
   318  
   319  type DashboardArray []DashboardInput
   320  
   321  func (DashboardArray) ElementType() reflect.Type {
   322  	return reflect.TypeOf((*[]*Dashboard)(nil)).Elem()
   323  }
   324  
   325  func (i DashboardArray) ToDashboardArrayOutput() DashboardArrayOutput {
   326  	return i.ToDashboardArrayOutputWithContext(context.Background())
   327  }
   328  
   329  func (i DashboardArray) ToDashboardArrayOutputWithContext(ctx context.Context) DashboardArrayOutput {
   330  	return pulumi.ToOutputWithContext(ctx, i).(DashboardArrayOutput)
   331  }
   332  
   333  // DashboardMapInput is an input type that accepts DashboardMap and DashboardMapOutput values.
   334  // You can construct a concrete instance of `DashboardMapInput` via:
   335  //
   336  //	DashboardMap{ "key": DashboardArgs{...} }
   337  type DashboardMapInput interface {
   338  	pulumi.Input
   339  
   340  	ToDashboardMapOutput() DashboardMapOutput
   341  	ToDashboardMapOutputWithContext(context.Context) DashboardMapOutput
   342  }
   343  
   344  type DashboardMap map[string]DashboardInput
   345  
   346  func (DashboardMap) ElementType() reflect.Type {
   347  	return reflect.TypeOf((*map[string]*Dashboard)(nil)).Elem()
   348  }
   349  
   350  func (i DashboardMap) ToDashboardMapOutput() DashboardMapOutput {
   351  	return i.ToDashboardMapOutputWithContext(context.Background())
   352  }
   353  
   354  func (i DashboardMap) ToDashboardMapOutputWithContext(ctx context.Context) DashboardMapOutput {
   355  	return pulumi.ToOutputWithContext(ctx, i).(DashboardMapOutput)
   356  }
   357  
   358  type DashboardOutput struct{ *pulumi.OutputState }
   359  
   360  func (DashboardOutput) ElementType() reflect.Type {
   361  	return reflect.TypeOf((**Dashboard)(nil)).Elem()
   362  }
   363  
   364  func (o DashboardOutput) ToDashboardOutput() DashboardOutput {
   365  	return o
   366  }
   367  
   368  func (o DashboardOutput) ToDashboardOutputWithContext(ctx context.Context) DashboardOutput {
   369  	return o
   370  }
   371  
   372  // The Amazon Resource Name (ARN) of the resource.
   373  func (o DashboardOutput) Arn() pulumi.StringOutput {
   374  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.Arn }).(pulumi.StringOutput)
   375  }
   376  
   377  // AWS account ID.
   378  func (o DashboardOutput) AwsAccountId() pulumi.StringOutput {
   379  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.AwsAccountId }).(pulumi.StringOutput)
   380  }
   381  
   382  // The time that the dashboard was created.
   383  func (o DashboardOutput) CreatedTime() pulumi.StringOutput {
   384  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.CreatedTime }).(pulumi.StringOutput)
   385  }
   386  
   387  // Identifier for the dashboard.
   388  func (o DashboardOutput) DashboardId() pulumi.StringOutput {
   389  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.DashboardId }).(pulumi.StringOutput)
   390  }
   391  
   392  // Options for publishing the dashboard. See dashboard_publish_options.
   393  func (o DashboardOutput) DashboardPublishOptions() DashboardDashboardPublishOptionsOutput {
   394  	return o.ApplyT(func(v *Dashboard) DashboardDashboardPublishOptionsOutput { return v.DashboardPublishOptions }).(DashboardDashboardPublishOptionsOutput)
   395  }
   396  
   397  func (o DashboardOutput) LastPublishedTime() pulumi.StringOutput {
   398  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.LastPublishedTime }).(pulumi.StringOutput)
   399  }
   400  
   401  // The time that the dashboard was last updated.
   402  func (o DashboardOutput) LastUpdatedTime() pulumi.StringOutput {
   403  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.LastUpdatedTime }).(pulumi.StringOutput)
   404  }
   405  
   406  // Display name for the dashboard.
   407  func (o DashboardOutput) Name() pulumi.StringOutput {
   408  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.Name }).(pulumi.StringOutput)
   409  }
   410  
   411  // The parameters for the creation of the dashboard, which you want to use to override the default settings. A dashboard can have any type of parameters, and some parameters might accept multiple values. See parameters.
   412  func (o DashboardOutput) Parameters() DashboardParametersOutput {
   413  	return o.ApplyT(func(v *Dashboard) DashboardParametersOutput { return v.Parameters }).(DashboardParametersOutput)
   414  }
   415  
   416  // A set of resource permissions on the dashboard. Maximum of 64 items. See permissions.
   417  func (o DashboardOutput) Permissions() DashboardPermissionArrayOutput {
   418  	return o.ApplyT(func(v *Dashboard) DashboardPermissionArrayOutput { return v.Permissions }).(DashboardPermissionArrayOutput)
   419  }
   420  
   421  // The entity that you are using as a source when you create the dashboard (template). Only one of `definition` or `sourceEntity` should be configured. See source_entity.
   422  func (o DashboardOutput) SourceEntity() DashboardSourceEntityPtrOutput {
   423  	return o.ApplyT(func(v *Dashboard) DashboardSourceEntityPtrOutput { return v.SourceEntity }).(DashboardSourceEntityPtrOutput)
   424  }
   425  
   426  // Amazon Resource Name (ARN) of a template that was used to create this dashboard.
   427  func (o DashboardOutput) SourceEntityArn() pulumi.StringOutput {
   428  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.SourceEntityArn }).(pulumi.StringOutput)
   429  }
   430  
   431  // The dashboard creation status.
   432  func (o DashboardOutput) Status() pulumi.StringOutput {
   433  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.Status }).(pulumi.StringOutput)
   434  }
   435  
   436  // 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.
   437  func (o DashboardOutput) Tags() pulumi.StringMapOutput {
   438  	return o.ApplyT(func(v *Dashboard) pulumi.StringMapOutput { return v.Tags }).(pulumi.StringMapOutput)
   439  }
   440  
   441  // A map of tags assigned to the resource, including those inherited from the provider `defaultTags` configuration block.
   442  //
   443  // Deprecated: Please use `tags` instead.
   444  func (o DashboardOutput) TagsAll() pulumi.StringMapOutput {
   445  	return o.ApplyT(func(v *Dashboard) pulumi.StringMapOutput { return v.TagsAll }).(pulumi.StringMapOutput)
   446  }
   447  
   448  // The Amazon Resource Name (ARN) of the theme that is being used for this dashboard. The theme ARN must exist in the same AWS account where you create the dashboard.
   449  func (o DashboardOutput) ThemeArn() pulumi.StringPtrOutput {
   450  	return o.ApplyT(func(v *Dashboard) pulumi.StringPtrOutput { return v.ThemeArn }).(pulumi.StringPtrOutput)
   451  }
   452  
   453  // A description of the current dashboard version being created/updated.
   454  //
   455  // The following arguments are optional:
   456  func (o DashboardOutput) VersionDescription() pulumi.StringOutput {
   457  	return o.ApplyT(func(v *Dashboard) pulumi.StringOutput { return v.VersionDescription }).(pulumi.StringOutput)
   458  }
   459  
   460  // The version number of the dashboard version.
   461  func (o DashboardOutput) VersionNumber() pulumi.IntOutput {
   462  	return o.ApplyT(func(v *Dashboard) pulumi.IntOutput { return v.VersionNumber }).(pulumi.IntOutput)
   463  }
   464  
   465  type DashboardArrayOutput struct{ *pulumi.OutputState }
   466  
   467  func (DashboardArrayOutput) ElementType() reflect.Type {
   468  	return reflect.TypeOf((*[]*Dashboard)(nil)).Elem()
   469  }
   470  
   471  func (o DashboardArrayOutput) ToDashboardArrayOutput() DashboardArrayOutput {
   472  	return o
   473  }
   474  
   475  func (o DashboardArrayOutput) ToDashboardArrayOutputWithContext(ctx context.Context) DashboardArrayOutput {
   476  	return o
   477  }
   478  
   479  func (o DashboardArrayOutput) Index(i pulumi.IntInput) DashboardOutput {
   480  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *Dashboard {
   481  		return vs[0].([]*Dashboard)[vs[1].(int)]
   482  	}).(DashboardOutput)
   483  }
   484  
   485  type DashboardMapOutput struct{ *pulumi.OutputState }
   486  
   487  func (DashboardMapOutput) ElementType() reflect.Type {
   488  	return reflect.TypeOf((*map[string]*Dashboard)(nil)).Elem()
   489  }
   490  
   491  func (o DashboardMapOutput) ToDashboardMapOutput() DashboardMapOutput {
   492  	return o
   493  }
   494  
   495  func (o DashboardMapOutput) ToDashboardMapOutputWithContext(ctx context.Context) DashboardMapOutput {
   496  	return o
   497  }
   498  
   499  func (o DashboardMapOutput) MapIndex(k pulumi.StringInput) DashboardOutput {
   500  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *Dashboard {
   501  		return vs[0].(map[string]*Dashboard)[vs[1].(string)]
   502  	}).(DashboardOutput)
   503  }
   504  
   505  func init() {
   506  	pulumi.RegisterInputType(reflect.TypeOf((*DashboardInput)(nil)).Elem(), &Dashboard{})
   507  	pulumi.RegisterInputType(reflect.TypeOf((*DashboardArrayInput)(nil)).Elem(), DashboardArray{})
   508  	pulumi.RegisterInputType(reflect.TypeOf((*DashboardMapInput)(nil)).Elem(), DashboardMap{})
   509  	pulumi.RegisterOutputType(DashboardOutput{})
   510  	pulumi.RegisterOutputType(DashboardArrayOutput{})
   511  	pulumi.RegisterOutputType(DashboardMapOutput{})
   512  }