github.com/pulumi/pulumi-aws/sdk/v6@v6.32.0/go/aws/quicksight/accountSubscription.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 an AWS QuickSight Account Subscription.
    16  //
    17  // ## Example Usage
    18  //
    19  // <!--Start PulumiCodeChooser -->
    20  // ```go
    21  // package main
    22  //
    23  // import (
    24  //
    25  //	"github.com/pulumi/pulumi-aws/sdk/v6/go/aws/quicksight"
    26  //	"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
    27  //
    28  // )
    29  //
    30  //	func main() {
    31  //		pulumi.Run(func(ctx *pulumi.Context) error {
    32  //			_, err := quicksight.NewAccountSubscription(ctx, "subscription", &quicksight.AccountSubscriptionArgs{
    33  //				AccountName:          pulumi.String("quicksight-pulumi"),
    34  //				AuthenticationMethod: pulumi.String("IAM_AND_QUICKSIGHT"),
    35  //				Edition:              pulumi.String("ENTERPRISE"),
    36  //				NotificationEmail:    pulumi.String("notification@email.com"),
    37  //			})
    38  //			if err != nil {
    39  //				return err
    40  //			}
    41  //			return nil
    42  //		})
    43  //	}
    44  //
    45  // ```
    46  // <!--End PulumiCodeChooser -->
    47  //
    48  // ## Import
    49  //
    50  // You cannot import this resource.
    51  type AccountSubscription struct {
    52  	pulumi.CustomResourceState
    53  
    54  	// Name of your Amazon QuickSight account. This name is unique over all of AWS, and it appears only when users sign in.
    55  	AccountName pulumi.StringOutput `pulumi:"accountName"`
    56  	// Status of the Amazon QuickSight account's subscription.
    57  	AccountSubscriptionStatus pulumi.StringOutput `pulumi:"accountSubscriptionStatus"`
    58  	// Name of your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
    59  	ActiveDirectoryName pulumi.StringPtrOutput `pulumi:"activeDirectoryName"`
    60  	// Admin group associated with your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
    61  	AdminGroups pulumi.StringArrayOutput `pulumi:"adminGroups"`
    62  	// Method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are `IAM_AND_QUICKSIGHT`, `IAM_ONLY`, `IAM_IDENTITY_CENTER`, and `ACTIVE_DIRECTORY`.
    63  	AuthenticationMethod pulumi.StringOutput `pulumi:"authenticationMethod"`
    64  	// Author group associated with your Active Directory.
    65  	AuthorGroups pulumi.StringArrayOutput `pulumi:"authorGroups"`
    66  	// AWS account ID hosting the QuickSight account. Default to provider account.
    67  	AwsAccountId pulumi.StringOutput `pulumi:"awsAccountId"`
    68  	// A 10-digit phone number for the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
    69  	ContactNumber pulumi.StringPtrOutput `pulumi:"contactNumber"`
    70  	// Active Directory ID that is associated with your Amazon QuickSight account.
    71  	DirectoryId pulumi.StringPtrOutput `pulumi:"directoryId"`
    72  	// Edition of Amazon QuickSight that you want your account to have. Currently, you can choose from `STANDARD`, `ENTERPRISE` or `ENTERPRISE_AND_Q`.
    73  	Edition pulumi.StringOutput `pulumi:"edition"`
    74  	// Email address of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
    75  	EmailAddress pulumi.StringPtrOutput `pulumi:"emailAddress"`
    76  	// First name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
    77  	FirstName pulumi.StringPtrOutput `pulumi:"firstName"`
    78  	// Last name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
    79  	LastName pulumi.StringPtrOutput `pulumi:"lastName"`
    80  	// Email address that you want Amazon QuickSight to send notifications to regarding your Amazon QuickSight account or Amazon QuickSight subscription.
    81  	//
    82  	// The following arguments are optional:
    83  	NotificationEmail pulumi.StringOutput `pulumi:"notificationEmail"`
    84  	// Reader group associated with your Active Direcrtory.
    85  	ReaderGroups pulumi.StringArrayOutput `pulumi:"readerGroups"`
    86  	// Realm of the Active Directory that is associated with your Amazon QuickSight account.
    87  	Realm pulumi.StringPtrOutput `pulumi:"realm"`
    88  }
    89  
    90  // NewAccountSubscription registers a new resource with the given unique name, arguments, and options.
    91  func NewAccountSubscription(ctx *pulumi.Context,
    92  	name string, args *AccountSubscriptionArgs, opts ...pulumi.ResourceOption) (*AccountSubscription, error) {
    93  	if args == nil {
    94  		return nil, errors.New("missing one or more required arguments")
    95  	}
    96  
    97  	if args.AccountName == nil {
    98  		return nil, errors.New("invalid value for required argument 'AccountName'")
    99  	}
   100  	if args.AuthenticationMethod == nil {
   101  		return nil, errors.New("invalid value for required argument 'AuthenticationMethod'")
   102  	}
   103  	if args.Edition == nil {
   104  		return nil, errors.New("invalid value for required argument 'Edition'")
   105  	}
   106  	if args.NotificationEmail == nil {
   107  		return nil, errors.New("invalid value for required argument 'NotificationEmail'")
   108  	}
   109  	opts = internal.PkgResourceDefaultOpts(opts)
   110  	var resource AccountSubscription
   111  	err := ctx.RegisterResource("aws:quicksight/accountSubscription:AccountSubscription", name, args, &resource, opts...)
   112  	if err != nil {
   113  		return nil, err
   114  	}
   115  	return &resource, nil
   116  }
   117  
   118  // GetAccountSubscription gets an existing AccountSubscription resource's state with the given name, ID, and optional
   119  // state properties that are used to uniquely qualify the lookup (nil if not required).
   120  func GetAccountSubscription(ctx *pulumi.Context,
   121  	name string, id pulumi.IDInput, state *AccountSubscriptionState, opts ...pulumi.ResourceOption) (*AccountSubscription, error) {
   122  	var resource AccountSubscription
   123  	err := ctx.ReadResource("aws:quicksight/accountSubscription:AccountSubscription", name, id, state, &resource, opts...)
   124  	if err != nil {
   125  		return nil, err
   126  	}
   127  	return &resource, nil
   128  }
   129  
   130  // Input properties used for looking up and filtering AccountSubscription resources.
   131  type accountSubscriptionState struct {
   132  	// Name of your Amazon QuickSight account. This name is unique over all of AWS, and it appears only when users sign in.
   133  	AccountName *string `pulumi:"accountName"`
   134  	// Status of the Amazon QuickSight account's subscription.
   135  	AccountSubscriptionStatus *string `pulumi:"accountSubscriptionStatus"`
   136  	// Name of your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   137  	ActiveDirectoryName *string `pulumi:"activeDirectoryName"`
   138  	// Admin group associated with your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   139  	AdminGroups []string `pulumi:"adminGroups"`
   140  	// Method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are `IAM_AND_QUICKSIGHT`, `IAM_ONLY`, `IAM_IDENTITY_CENTER`, and `ACTIVE_DIRECTORY`.
   141  	AuthenticationMethod *string `pulumi:"authenticationMethod"`
   142  	// Author group associated with your Active Directory.
   143  	AuthorGroups []string `pulumi:"authorGroups"`
   144  	// AWS account ID hosting the QuickSight account. Default to provider account.
   145  	AwsAccountId *string `pulumi:"awsAccountId"`
   146  	// A 10-digit phone number for the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   147  	ContactNumber *string `pulumi:"contactNumber"`
   148  	// Active Directory ID that is associated with your Amazon QuickSight account.
   149  	DirectoryId *string `pulumi:"directoryId"`
   150  	// Edition of Amazon QuickSight that you want your account to have. Currently, you can choose from `STANDARD`, `ENTERPRISE` or `ENTERPRISE_AND_Q`.
   151  	Edition *string `pulumi:"edition"`
   152  	// Email address of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   153  	EmailAddress *string `pulumi:"emailAddress"`
   154  	// First name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   155  	FirstName *string `pulumi:"firstName"`
   156  	// Last name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   157  	LastName *string `pulumi:"lastName"`
   158  	// Email address that you want Amazon QuickSight to send notifications to regarding your Amazon QuickSight account or Amazon QuickSight subscription.
   159  	//
   160  	// The following arguments are optional:
   161  	NotificationEmail *string `pulumi:"notificationEmail"`
   162  	// Reader group associated with your Active Direcrtory.
   163  	ReaderGroups []string `pulumi:"readerGroups"`
   164  	// Realm of the Active Directory that is associated with your Amazon QuickSight account.
   165  	Realm *string `pulumi:"realm"`
   166  }
   167  
   168  type AccountSubscriptionState struct {
   169  	// Name of your Amazon QuickSight account. This name is unique over all of AWS, and it appears only when users sign in.
   170  	AccountName pulumi.StringPtrInput
   171  	// Status of the Amazon QuickSight account's subscription.
   172  	AccountSubscriptionStatus pulumi.StringPtrInput
   173  	// Name of your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   174  	ActiveDirectoryName pulumi.StringPtrInput
   175  	// Admin group associated with your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   176  	AdminGroups pulumi.StringArrayInput
   177  	// Method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are `IAM_AND_QUICKSIGHT`, `IAM_ONLY`, `IAM_IDENTITY_CENTER`, and `ACTIVE_DIRECTORY`.
   178  	AuthenticationMethod pulumi.StringPtrInput
   179  	// Author group associated with your Active Directory.
   180  	AuthorGroups pulumi.StringArrayInput
   181  	// AWS account ID hosting the QuickSight account. Default to provider account.
   182  	AwsAccountId pulumi.StringPtrInput
   183  	// A 10-digit phone number for the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   184  	ContactNumber pulumi.StringPtrInput
   185  	// Active Directory ID that is associated with your Amazon QuickSight account.
   186  	DirectoryId pulumi.StringPtrInput
   187  	// Edition of Amazon QuickSight that you want your account to have. Currently, you can choose from `STANDARD`, `ENTERPRISE` or `ENTERPRISE_AND_Q`.
   188  	Edition pulumi.StringPtrInput
   189  	// Email address of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   190  	EmailAddress pulumi.StringPtrInput
   191  	// First name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   192  	FirstName pulumi.StringPtrInput
   193  	// Last name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   194  	LastName pulumi.StringPtrInput
   195  	// Email address that you want Amazon QuickSight to send notifications to regarding your Amazon QuickSight account or Amazon QuickSight subscription.
   196  	//
   197  	// The following arguments are optional:
   198  	NotificationEmail pulumi.StringPtrInput
   199  	// Reader group associated with your Active Direcrtory.
   200  	ReaderGroups pulumi.StringArrayInput
   201  	// Realm of the Active Directory that is associated with your Amazon QuickSight account.
   202  	Realm pulumi.StringPtrInput
   203  }
   204  
   205  func (AccountSubscriptionState) ElementType() reflect.Type {
   206  	return reflect.TypeOf((*accountSubscriptionState)(nil)).Elem()
   207  }
   208  
   209  type accountSubscriptionArgs struct {
   210  	// Name of your Amazon QuickSight account. This name is unique over all of AWS, and it appears only when users sign in.
   211  	AccountName string `pulumi:"accountName"`
   212  	// Name of your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   213  	ActiveDirectoryName *string `pulumi:"activeDirectoryName"`
   214  	// Admin group associated with your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   215  	AdminGroups []string `pulumi:"adminGroups"`
   216  	// Method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are `IAM_AND_QUICKSIGHT`, `IAM_ONLY`, `IAM_IDENTITY_CENTER`, and `ACTIVE_DIRECTORY`.
   217  	AuthenticationMethod string `pulumi:"authenticationMethod"`
   218  	// Author group associated with your Active Directory.
   219  	AuthorGroups []string `pulumi:"authorGroups"`
   220  	// AWS account ID hosting the QuickSight account. Default to provider account.
   221  	AwsAccountId *string `pulumi:"awsAccountId"`
   222  	// A 10-digit phone number for the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   223  	ContactNumber *string `pulumi:"contactNumber"`
   224  	// Active Directory ID that is associated with your Amazon QuickSight account.
   225  	DirectoryId *string `pulumi:"directoryId"`
   226  	// Edition of Amazon QuickSight that you want your account to have. Currently, you can choose from `STANDARD`, `ENTERPRISE` or `ENTERPRISE_AND_Q`.
   227  	Edition string `pulumi:"edition"`
   228  	// Email address of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   229  	EmailAddress *string `pulumi:"emailAddress"`
   230  	// First name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   231  	FirstName *string `pulumi:"firstName"`
   232  	// Last name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   233  	LastName *string `pulumi:"lastName"`
   234  	// Email address that you want Amazon QuickSight to send notifications to regarding your Amazon QuickSight account or Amazon QuickSight subscription.
   235  	//
   236  	// The following arguments are optional:
   237  	NotificationEmail string `pulumi:"notificationEmail"`
   238  	// Reader group associated with your Active Direcrtory.
   239  	ReaderGroups []string `pulumi:"readerGroups"`
   240  	// Realm of the Active Directory that is associated with your Amazon QuickSight account.
   241  	Realm *string `pulumi:"realm"`
   242  }
   243  
   244  // The set of arguments for constructing a AccountSubscription resource.
   245  type AccountSubscriptionArgs struct {
   246  	// Name of your Amazon QuickSight account. This name is unique over all of AWS, and it appears only when users sign in.
   247  	AccountName pulumi.StringInput
   248  	// Name of your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   249  	ActiveDirectoryName pulumi.StringPtrInput
   250  	// Admin group associated with your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   251  	AdminGroups pulumi.StringArrayInput
   252  	// Method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are `IAM_AND_QUICKSIGHT`, `IAM_ONLY`, `IAM_IDENTITY_CENTER`, and `ACTIVE_DIRECTORY`.
   253  	AuthenticationMethod pulumi.StringInput
   254  	// Author group associated with your Active Directory.
   255  	AuthorGroups pulumi.StringArrayInput
   256  	// AWS account ID hosting the QuickSight account. Default to provider account.
   257  	AwsAccountId pulumi.StringPtrInput
   258  	// A 10-digit phone number for the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   259  	ContactNumber pulumi.StringPtrInput
   260  	// Active Directory ID that is associated with your Amazon QuickSight account.
   261  	DirectoryId pulumi.StringPtrInput
   262  	// Edition of Amazon QuickSight that you want your account to have. Currently, you can choose from `STANDARD`, `ENTERPRISE` or `ENTERPRISE_AND_Q`.
   263  	Edition pulumi.StringInput
   264  	// Email address of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   265  	EmailAddress pulumi.StringPtrInput
   266  	// First name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   267  	FirstName pulumi.StringPtrInput
   268  	// Last name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   269  	LastName pulumi.StringPtrInput
   270  	// Email address that you want Amazon QuickSight to send notifications to regarding your Amazon QuickSight account or Amazon QuickSight subscription.
   271  	//
   272  	// The following arguments are optional:
   273  	NotificationEmail pulumi.StringInput
   274  	// Reader group associated with your Active Direcrtory.
   275  	ReaderGroups pulumi.StringArrayInput
   276  	// Realm of the Active Directory that is associated with your Amazon QuickSight account.
   277  	Realm pulumi.StringPtrInput
   278  }
   279  
   280  func (AccountSubscriptionArgs) ElementType() reflect.Type {
   281  	return reflect.TypeOf((*accountSubscriptionArgs)(nil)).Elem()
   282  }
   283  
   284  type AccountSubscriptionInput interface {
   285  	pulumi.Input
   286  
   287  	ToAccountSubscriptionOutput() AccountSubscriptionOutput
   288  	ToAccountSubscriptionOutputWithContext(ctx context.Context) AccountSubscriptionOutput
   289  }
   290  
   291  func (*AccountSubscription) ElementType() reflect.Type {
   292  	return reflect.TypeOf((**AccountSubscription)(nil)).Elem()
   293  }
   294  
   295  func (i *AccountSubscription) ToAccountSubscriptionOutput() AccountSubscriptionOutput {
   296  	return i.ToAccountSubscriptionOutputWithContext(context.Background())
   297  }
   298  
   299  func (i *AccountSubscription) ToAccountSubscriptionOutputWithContext(ctx context.Context) AccountSubscriptionOutput {
   300  	return pulumi.ToOutputWithContext(ctx, i).(AccountSubscriptionOutput)
   301  }
   302  
   303  // AccountSubscriptionArrayInput is an input type that accepts AccountSubscriptionArray and AccountSubscriptionArrayOutput values.
   304  // You can construct a concrete instance of `AccountSubscriptionArrayInput` via:
   305  //
   306  //	AccountSubscriptionArray{ AccountSubscriptionArgs{...} }
   307  type AccountSubscriptionArrayInput interface {
   308  	pulumi.Input
   309  
   310  	ToAccountSubscriptionArrayOutput() AccountSubscriptionArrayOutput
   311  	ToAccountSubscriptionArrayOutputWithContext(context.Context) AccountSubscriptionArrayOutput
   312  }
   313  
   314  type AccountSubscriptionArray []AccountSubscriptionInput
   315  
   316  func (AccountSubscriptionArray) ElementType() reflect.Type {
   317  	return reflect.TypeOf((*[]*AccountSubscription)(nil)).Elem()
   318  }
   319  
   320  func (i AccountSubscriptionArray) ToAccountSubscriptionArrayOutput() AccountSubscriptionArrayOutput {
   321  	return i.ToAccountSubscriptionArrayOutputWithContext(context.Background())
   322  }
   323  
   324  func (i AccountSubscriptionArray) ToAccountSubscriptionArrayOutputWithContext(ctx context.Context) AccountSubscriptionArrayOutput {
   325  	return pulumi.ToOutputWithContext(ctx, i).(AccountSubscriptionArrayOutput)
   326  }
   327  
   328  // AccountSubscriptionMapInput is an input type that accepts AccountSubscriptionMap and AccountSubscriptionMapOutput values.
   329  // You can construct a concrete instance of `AccountSubscriptionMapInput` via:
   330  //
   331  //	AccountSubscriptionMap{ "key": AccountSubscriptionArgs{...} }
   332  type AccountSubscriptionMapInput interface {
   333  	pulumi.Input
   334  
   335  	ToAccountSubscriptionMapOutput() AccountSubscriptionMapOutput
   336  	ToAccountSubscriptionMapOutputWithContext(context.Context) AccountSubscriptionMapOutput
   337  }
   338  
   339  type AccountSubscriptionMap map[string]AccountSubscriptionInput
   340  
   341  func (AccountSubscriptionMap) ElementType() reflect.Type {
   342  	return reflect.TypeOf((*map[string]*AccountSubscription)(nil)).Elem()
   343  }
   344  
   345  func (i AccountSubscriptionMap) ToAccountSubscriptionMapOutput() AccountSubscriptionMapOutput {
   346  	return i.ToAccountSubscriptionMapOutputWithContext(context.Background())
   347  }
   348  
   349  func (i AccountSubscriptionMap) ToAccountSubscriptionMapOutputWithContext(ctx context.Context) AccountSubscriptionMapOutput {
   350  	return pulumi.ToOutputWithContext(ctx, i).(AccountSubscriptionMapOutput)
   351  }
   352  
   353  type AccountSubscriptionOutput struct{ *pulumi.OutputState }
   354  
   355  func (AccountSubscriptionOutput) ElementType() reflect.Type {
   356  	return reflect.TypeOf((**AccountSubscription)(nil)).Elem()
   357  }
   358  
   359  func (o AccountSubscriptionOutput) ToAccountSubscriptionOutput() AccountSubscriptionOutput {
   360  	return o
   361  }
   362  
   363  func (o AccountSubscriptionOutput) ToAccountSubscriptionOutputWithContext(ctx context.Context) AccountSubscriptionOutput {
   364  	return o
   365  }
   366  
   367  // Name of your Amazon QuickSight account. This name is unique over all of AWS, and it appears only when users sign in.
   368  func (o AccountSubscriptionOutput) AccountName() pulumi.StringOutput {
   369  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringOutput { return v.AccountName }).(pulumi.StringOutput)
   370  }
   371  
   372  // Status of the Amazon QuickSight account's subscription.
   373  func (o AccountSubscriptionOutput) AccountSubscriptionStatus() pulumi.StringOutput {
   374  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringOutput { return v.AccountSubscriptionStatus }).(pulumi.StringOutput)
   375  }
   376  
   377  // Name of your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   378  func (o AccountSubscriptionOutput) ActiveDirectoryName() pulumi.StringPtrOutput {
   379  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.ActiveDirectoryName }).(pulumi.StringPtrOutput)
   380  }
   381  
   382  // Admin group associated with your Active Directory. This field is required if `ACTIVE_DIRECTORY` is the selected authentication method of the new Amazon QuickSight account.
   383  func (o AccountSubscriptionOutput) AdminGroups() pulumi.StringArrayOutput {
   384  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringArrayOutput { return v.AdminGroups }).(pulumi.StringArrayOutput)
   385  }
   386  
   387  // Method that you want to use to authenticate your Amazon QuickSight account. Currently, the valid values for this parameter are `IAM_AND_QUICKSIGHT`, `IAM_ONLY`, `IAM_IDENTITY_CENTER`, and `ACTIVE_DIRECTORY`.
   388  func (o AccountSubscriptionOutput) AuthenticationMethod() pulumi.StringOutput {
   389  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringOutput { return v.AuthenticationMethod }).(pulumi.StringOutput)
   390  }
   391  
   392  // Author group associated with your Active Directory.
   393  func (o AccountSubscriptionOutput) AuthorGroups() pulumi.StringArrayOutput {
   394  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringArrayOutput { return v.AuthorGroups }).(pulumi.StringArrayOutput)
   395  }
   396  
   397  // AWS account ID hosting the QuickSight account. Default to provider account.
   398  func (o AccountSubscriptionOutput) AwsAccountId() pulumi.StringOutput {
   399  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringOutput { return v.AwsAccountId }).(pulumi.StringOutput)
   400  }
   401  
   402  // A 10-digit phone number for the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   403  func (o AccountSubscriptionOutput) ContactNumber() pulumi.StringPtrOutput {
   404  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.ContactNumber }).(pulumi.StringPtrOutput)
   405  }
   406  
   407  // Active Directory ID that is associated with your Amazon QuickSight account.
   408  func (o AccountSubscriptionOutput) DirectoryId() pulumi.StringPtrOutput {
   409  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.DirectoryId }).(pulumi.StringPtrOutput)
   410  }
   411  
   412  // Edition of Amazon QuickSight that you want your account to have. Currently, you can choose from `STANDARD`, `ENTERPRISE` or `ENTERPRISE_AND_Q`.
   413  func (o AccountSubscriptionOutput) Edition() pulumi.StringOutput {
   414  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringOutput { return v.Edition }).(pulumi.StringOutput)
   415  }
   416  
   417  // Email address of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   418  func (o AccountSubscriptionOutput) EmailAddress() pulumi.StringPtrOutput {
   419  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.EmailAddress }).(pulumi.StringPtrOutput)
   420  }
   421  
   422  // First name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   423  func (o AccountSubscriptionOutput) FirstName() pulumi.StringPtrOutput {
   424  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.FirstName }).(pulumi.StringPtrOutput)
   425  }
   426  
   427  // Last name of the author of the Amazon QuickSight account to use for future communications. This field is required if `ENTERPPRISE_AND_Q` is the selected edition of the new Amazon QuickSight account.
   428  func (o AccountSubscriptionOutput) LastName() pulumi.StringPtrOutput {
   429  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.LastName }).(pulumi.StringPtrOutput)
   430  }
   431  
   432  // Email address that you want Amazon QuickSight to send notifications to regarding your Amazon QuickSight account or Amazon QuickSight subscription.
   433  //
   434  // The following arguments are optional:
   435  func (o AccountSubscriptionOutput) NotificationEmail() pulumi.StringOutput {
   436  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringOutput { return v.NotificationEmail }).(pulumi.StringOutput)
   437  }
   438  
   439  // Reader group associated with your Active Direcrtory.
   440  func (o AccountSubscriptionOutput) ReaderGroups() pulumi.StringArrayOutput {
   441  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringArrayOutput { return v.ReaderGroups }).(pulumi.StringArrayOutput)
   442  }
   443  
   444  // Realm of the Active Directory that is associated with your Amazon QuickSight account.
   445  func (o AccountSubscriptionOutput) Realm() pulumi.StringPtrOutput {
   446  	return o.ApplyT(func(v *AccountSubscription) pulumi.StringPtrOutput { return v.Realm }).(pulumi.StringPtrOutput)
   447  }
   448  
   449  type AccountSubscriptionArrayOutput struct{ *pulumi.OutputState }
   450  
   451  func (AccountSubscriptionArrayOutput) ElementType() reflect.Type {
   452  	return reflect.TypeOf((*[]*AccountSubscription)(nil)).Elem()
   453  }
   454  
   455  func (o AccountSubscriptionArrayOutput) ToAccountSubscriptionArrayOutput() AccountSubscriptionArrayOutput {
   456  	return o
   457  }
   458  
   459  func (o AccountSubscriptionArrayOutput) ToAccountSubscriptionArrayOutputWithContext(ctx context.Context) AccountSubscriptionArrayOutput {
   460  	return o
   461  }
   462  
   463  func (o AccountSubscriptionArrayOutput) Index(i pulumi.IntInput) AccountSubscriptionOutput {
   464  	return pulumi.All(o, i).ApplyT(func(vs []interface{}) *AccountSubscription {
   465  		return vs[0].([]*AccountSubscription)[vs[1].(int)]
   466  	}).(AccountSubscriptionOutput)
   467  }
   468  
   469  type AccountSubscriptionMapOutput struct{ *pulumi.OutputState }
   470  
   471  func (AccountSubscriptionMapOutput) ElementType() reflect.Type {
   472  	return reflect.TypeOf((*map[string]*AccountSubscription)(nil)).Elem()
   473  }
   474  
   475  func (o AccountSubscriptionMapOutput) ToAccountSubscriptionMapOutput() AccountSubscriptionMapOutput {
   476  	return o
   477  }
   478  
   479  func (o AccountSubscriptionMapOutput) ToAccountSubscriptionMapOutputWithContext(ctx context.Context) AccountSubscriptionMapOutput {
   480  	return o
   481  }
   482  
   483  func (o AccountSubscriptionMapOutput) MapIndex(k pulumi.StringInput) AccountSubscriptionOutput {
   484  	return pulumi.All(o, k).ApplyT(func(vs []interface{}) *AccountSubscription {
   485  		return vs[0].(map[string]*AccountSubscription)[vs[1].(string)]
   486  	}).(AccountSubscriptionOutput)
   487  }
   488  
   489  func init() {
   490  	pulumi.RegisterInputType(reflect.TypeOf((*AccountSubscriptionInput)(nil)).Elem(), &AccountSubscription{})
   491  	pulumi.RegisterInputType(reflect.TypeOf((*AccountSubscriptionArrayInput)(nil)).Elem(), AccountSubscriptionArray{})
   492  	pulumi.RegisterInputType(reflect.TypeOf((*AccountSubscriptionMapInput)(nil)).Elem(), AccountSubscriptionMap{})
   493  	pulumi.RegisterOutputType(AccountSubscriptionOutput{})
   494  	pulumi.RegisterOutputType(AccountSubscriptionArrayOutput{})
   495  	pulumi.RegisterOutputType(AccountSubscriptionMapOutput{})
   496  }