1// Code generated by smithy-go-codegen DO NOT EDIT.
2
3package types
4
5import (
6	"time"
7)
8
9// Describes an interface VPC endpoint (interface endpoint) that lets you create a
10// private connection between the virtual private cloud (VPC) that you specify and
11// AppStream 2.0. When you specify an interface endpoint for a stack, users of the
12// stack can connect to AppStream 2.0 only through that endpoint. When you specify
13// an interface endpoint for an image builder, administrators can connect to the
14// image builder only through that endpoint.
15type AccessEndpoint struct {
16
17	// The type of interface endpoint.
18	//
19	// This member is required.
20	EndpointType AccessEndpointType
21
22	// The identifier (ID) of the VPC in which the interface endpoint is used.
23	VpceId *string
24}
25
26// Describes an application in the application catalog.
27type Application struct {
28
29	// The application name to display.
30	DisplayName *string
31
32	// If there is a problem, the application can be disabled after image creation.
33	Enabled bool
34
35	// The URL for the application icon. This URL might be time-limited.
36	IconURL *string
37
38	// The arguments that are passed to the application at launch.
39	LaunchParameters *string
40
41	// The path to the application executable in the instance.
42	LaunchPath *string
43
44	// Additional attributes that describe the application.
45	Metadata map[string]string
46
47	// The name of the application.
48	Name *string
49}
50
51// The persistent application settings for users of a stack.
52type ApplicationSettings struct {
53
54	// Enables or disables persistent application settings for users during their
55	// streaming sessions.
56	//
57	// This member is required.
58	Enabled bool
59
60	// The path prefix for the S3 bucket where users’ persistent application settings
61	// are stored. You can allow the same persistent application settings to be used
62	// across multiple stacks by specifying the same settings group for each stack.
63	SettingsGroup *string
64}
65
66// Describes the persistent application settings for users of a stack.
67type ApplicationSettingsResponse struct {
68
69	// Specifies whether persistent application settings are enabled for users during
70	// their streaming sessions.
71	Enabled bool
72
73	// The S3 bucket where users’ persistent application settings are stored. When
74	// persistent application settings are enabled for the first time for an account in
75	// an AWS Region, an S3 bucket is created. The bucket is unique to the AWS account
76	// and the Region.
77	S3BucketName *string
78
79	// The path prefix for the S3 bucket where users’ persistent application settings
80	// are stored.
81	SettingsGroup *string
82}
83
84// Describes the capacity for a fleet.
85type ComputeCapacity struct {
86
87	// The desired number of streaming instances.
88	//
89	// This member is required.
90	DesiredInstances *int32
91}
92
93// Describes the capacity status for a fleet.
94type ComputeCapacityStatus struct {
95
96	// The desired number of streaming instances.
97	//
98	// This member is required.
99	Desired *int32
100
101	// The number of currently available instances that can be used to stream sessions.
102	Available *int32
103
104	// The number of instances in use for streaming.
105	InUse *int32
106
107	// The total number of simultaneous streaming instances that are running.
108	Running *int32
109}
110
111// Describes the configuration information required to join fleets and image
112// builders to Microsoft Active Directory domains.
113type DirectoryConfig struct {
114
115	// The fully qualified name of the directory (for example, corp.example.com).
116	//
117	// This member is required.
118	DirectoryName *string
119
120	// The time the directory configuration was created.
121	CreatedTime *time.Time
122
123	// The distinguished names of the organizational units for computer accounts.
124	OrganizationalUnitDistinguishedNames []string
125
126	// The credentials for the service account used by the fleet or image builder to
127	// connect to the directory.
128	ServiceAccountCredentials *ServiceAccountCredentials
129}
130
131// Describes the configuration information required to join fleets and image
132// builders to Microsoft Active Directory domains.
133type DomainJoinInfo struct {
134
135	// The fully qualified name of the directory (for example, corp.example.com).
136	DirectoryName *string
137
138	// The distinguished name of the organizational unit for computer accounts.
139	OrganizationalUnitDistinguishedName *string
140}
141
142// Describes a fleet.
143type Fleet struct {
144
145	// The Amazon Resource Name (ARN) for the fleet.
146	//
147	// This member is required.
148	Arn *string
149
150	// The capacity status for the fleet.
151	//
152	// This member is required.
153	ComputeCapacityStatus *ComputeCapacityStatus
154
155	// The instance type to use when launching fleet instances. The following instance
156	// types are available:
157	//
158	// * stream.standard.small
159	//
160	// * stream.standard.medium
161	//
162	// *
163	// stream.standard.large
164	//
165	// * stream.compute.large
166	//
167	// * stream.compute.xlarge
168	//
169	// *
170	// stream.compute.2xlarge
171	//
172	// * stream.compute.4xlarge
173	//
174	// * stream.compute.8xlarge
175	//
176	// *
177	// stream.memory.large
178	//
179	// * stream.memory.xlarge
180	//
181	// * stream.memory.2xlarge
182	//
183	// *
184	// stream.memory.4xlarge
185	//
186	// * stream.memory.8xlarge
187	//
188	// * stream.memory.z1d.large
189	//
190	// *
191	// stream.memory.z1d.xlarge
192	//
193	// * stream.memory.z1d.2xlarge
194	//
195	// *
196	// stream.memory.z1d.3xlarge
197	//
198	// * stream.memory.z1d.6xlarge
199	//
200	// *
201	// stream.memory.z1d.12xlarge
202	//
203	// * stream.graphics-design.large
204	//
205	// *
206	// stream.graphics-design.xlarge
207	//
208	// * stream.graphics-design.2xlarge
209	//
210	// *
211	// stream.graphics-design.4xlarge
212	//
213	// * stream.graphics-desktop.2xlarge
214	//
215	// *
216	// stream.graphics.g4dn.xlarge
217	//
218	// * stream.graphics.g4dn.2xlarge
219	//
220	// *
221	// stream.graphics.g4dn.4xlarge
222	//
223	// * stream.graphics.g4dn.8xlarge
224	//
225	// *
226	// stream.graphics.g4dn.12xlarge
227	//
228	// * stream.graphics.g4dn.16xlarge
229	//
230	// *
231	// stream.graphics-pro.4xlarge
232	//
233	// * stream.graphics-pro.8xlarge
234	//
235	// *
236	// stream.graphics-pro.16xlarge
237	//
238	// This member is required.
239	InstanceType *string
240
241	// The name of the fleet.
242	//
243	// This member is required.
244	Name *string
245
246	// The current state for the fleet.
247	//
248	// This member is required.
249	State FleetState
250
251	// The time the fleet was created.
252	CreatedTime *time.Time
253
254	// The description to display.
255	Description *string
256
257	// The amount of time that a streaming session remains active after users
258	// disconnect. If they try to reconnect to the streaming session after a
259	// disconnection or network interruption within this time interval, they are
260	// connected to their previous session. Otherwise, they are connected to a new
261	// session with a new streaming instance. Specify a value between 60 and 360000.
262	DisconnectTimeoutInSeconds *int32
263
264	// The fleet name to display.
265	DisplayName *string
266
267	// The name of the directory and organizational unit (OU) to use to join the fleet
268	// to a Microsoft Active Directory domain.
269	DomainJoinInfo *DomainJoinInfo
270
271	// Indicates whether default internet access is enabled for the fleet.
272	EnableDefaultInternetAccess *bool
273
274	// The fleet errors.
275	FleetErrors []FleetError
276
277	// The fleet type. ALWAYS_ON Provides users with instant-on access to their apps.
278	// You are charged for all running instances in your fleet, even if no users are
279	// streaming apps. ON_DEMAND Provide users with access to applications after they
280	// connect, which takes one to two minutes. You are charged for instance streaming
281	// when users are connected and a small hourly fee for instances that are not
282	// streaming apps.
283	FleetType FleetType
284
285	// The ARN of the IAM role that is applied to the fleet. To assume a role, the
286	// fleet instance calls the AWS Security Token Service (STS) AssumeRole API
287	// operation and passes the ARN of the role to use. The operation creates a new
288	// session with temporary credentials. AppStream 2.0 retrieves the temporary
289	// credentials and creates the appstream_machine_role credential profile on the
290	// instance. For more information, see Using an IAM Role to Grant Permissions to
291	// Applications and Scripts Running on AppStream 2.0 Streaming Instances
292	// (https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html)
293	// in the Amazon AppStream 2.0 Administration Guide.
294	IamRoleArn *string
295
296	// The amount of time that users can be idle (inactive) before they are
297	// disconnected from their streaming session and the DisconnectTimeoutInSeconds
298	// time interval begins. Users are notified before they are disconnected due to
299	// inactivity. If users try to reconnect to the streaming session before the time
300	// interval specified in DisconnectTimeoutInSeconds elapses, they are connected to
301	// their previous session. Users are considered idle when they stop providing
302	// keyboard or mouse input during their streaming session. File uploads and
303	// downloads, audio in, audio out, and pixels changing do not qualify as user
304	// activity. If users continue to be idle after the time interval in
305	// IdleDisconnectTimeoutInSeconds elapses, they are disconnected. To prevent users
306	// from being disconnected due to inactivity, specify a value of 0. Otherwise,
307	// specify a value between 60 and 3600. The default value is 0. If you enable this
308	// feature, we recommend that you specify a value that corresponds exactly to a
309	// whole number of minutes (for example, 60, 120, and 180). If you don't do this,
310	// the value is rounded to the nearest minute. For example, if you specify a value
311	// of 70, users are disconnected after 1 minute of inactivity. If you specify a
312	// value that is at the midpoint between two different minutes, the value is
313	// rounded up. For example, if you specify a value of 90, users are disconnected
314	// after 2 minutes of inactivity.
315	IdleDisconnectTimeoutInSeconds *int32
316
317	// The ARN for the public, private, or shared image.
318	ImageArn *string
319
320	// The name of the image used to create the fleet.
321	ImageName *string
322
323	// The maximum amount of time that a streaming session can remain active, in
324	// seconds. If users are still connected to a streaming instance five minutes
325	// before this limit is reached, they are prompted to save any open documents
326	// before being disconnected. After this time elapses, the instance is terminated
327	// and replaced by a new instance. Specify a value between 600 and 360000.
328	MaxUserDurationInSeconds *int32
329
330	// The AppStream 2.0 view that is displayed to your users when they stream from the
331	// fleet. When APP is specified, only the windows of applications opened by users
332	// display. When DESKTOP is specified, the standard desktop that is provided by the
333	// operating system displays. The default value is APP.
334	StreamView StreamView
335
336	// The VPC configuration for the fleet.
337	VpcConfig *VpcConfig
338}
339
340// Describes a fleet error.
341type FleetError struct {
342
343	// The error code.
344	ErrorCode FleetErrorCode
345
346	// The error message.
347	ErrorMessage *string
348}
349
350// Describes an image.
351type Image struct {
352
353	// The name of the image.
354	//
355	// This member is required.
356	Name *string
357
358	// The applications associated with the image.
359	Applications []Application
360
361	// The version of the AppStream 2.0 agent to use for instances that are launched
362	// from this image.
363	AppstreamAgentVersion *string
364
365	// The ARN of the image.
366	Arn *string
367
368	// The ARN of the image from which this image was created.
369	BaseImageArn *string
370
371	// The time the image was created.
372	CreatedTime *time.Time
373
374	// The description to display.
375	Description *string
376
377	// The image name to display.
378	DisplayName *string
379
380	// The name of the image builder that was used to create the private image. If the
381	// image is shared, this value is null.
382	ImageBuilderName *string
383
384	// Indicates whether an image builder can be launched from this image.
385	ImageBuilderSupported bool
386
387	// Describes the errors that are returned when a new image can't be created.
388	ImageErrors []ResourceError
389
390	// The permissions to provide to the destination AWS account for the specified
391	// image.
392	ImagePermissions *ImagePermissions
393
394	// The operating system platform of the image.
395	Platform PlatformType
396
397	// The release date of the public base image. For private images, this date is the
398	// release date of the base image from which the image was created.
399	PublicBaseImageReleasedDate *time.Time
400
401	// The image starts in the PENDING state. If image creation succeeds, the state is
402	// AVAILABLE. If image creation fails, the state is FAILED.
403	State ImageState
404
405	// The reason why the last state change occurred.
406	StateChangeReason *ImageStateChangeReason
407
408	// Indicates whether the image is public or private.
409	Visibility VisibilityType
410}
411
412// Describes a virtual machine that is used to create an image.
413type ImageBuilder struct {
414
415	// The name of the image builder.
416	//
417	// This member is required.
418	Name *string
419
420	// The list of virtual private cloud (VPC) interface endpoint objects.
421	// Administrators can connect to the image builder only through the specified
422	// endpoints.
423	AccessEndpoints []AccessEndpoint
424
425	// The version of the AppStream 2.0 agent that is currently being used by the image
426	// builder.
427	AppstreamAgentVersion *string
428
429	// The ARN for the image builder.
430	Arn *string
431
432	// The time stamp when the image builder was created.
433	CreatedTime *time.Time
434
435	// The description to display.
436	Description *string
437
438	// The image builder name to display.
439	DisplayName *string
440
441	// The name of the directory and organizational unit (OU) to use to join the image
442	// builder to a Microsoft Active Directory domain.
443	DomainJoinInfo *DomainJoinInfo
444
445	// Enables or disables default internet access for the image builder.
446	EnableDefaultInternetAccess *bool
447
448	// The ARN of the IAM role that is applied to the image builder. To assume a role,
449	// the image builder calls the AWS Security Token Service (STS) AssumeRole API
450	// operation and passes the ARN of the role to use. The operation creates a new
451	// session with temporary credentials. AppStream 2.0 retrieves the temporary
452	// credentials and creates the appstream_machine_role credential profile on the
453	// instance. For more information, see Using an IAM Role to Grant Permissions to
454	// Applications and Scripts Running on AppStream 2.0 Streaming Instances
455	// (https://docs.aws.amazon.com/appstream2/latest/developerguide/using-iam-roles-to-grant-permissions-to-applications-scripts-streaming-instances.html)
456	// in the Amazon AppStream 2.0 Administration Guide.
457	IamRoleArn *string
458
459	// The ARN of the image from which this builder was created.
460	ImageArn *string
461
462	// The image builder errors.
463	ImageBuilderErrors []ResourceError
464
465	// The instance type for the image builder. The following instance types are
466	// available:
467	//
468	// * stream.standard.small
469	//
470	// * stream.standard.medium
471	//
472	// *
473	// stream.standard.large
474	//
475	// * stream.compute.large
476	//
477	// * stream.compute.xlarge
478	//
479	// *
480	// stream.compute.2xlarge
481	//
482	// * stream.compute.4xlarge
483	//
484	// * stream.compute.8xlarge
485	//
486	// *
487	// stream.memory.large
488	//
489	// * stream.memory.xlarge
490	//
491	// * stream.memory.2xlarge
492	//
493	// *
494	// stream.memory.4xlarge
495	//
496	// * stream.memory.8xlarge
497	//
498	// * stream.memory.z1d.large
499	//
500	// *
501	// stream.memory.z1d.xlarge
502	//
503	// * stream.memory.z1d.2xlarge
504	//
505	// *
506	// stream.memory.z1d.3xlarge
507	//
508	// * stream.memory.z1d.6xlarge
509	//
510	// *
511	// stream.memory.z1d.12xlarge
512	//
513	// * stream.graphics-design.large
514	//
515	// *
516	// stream.graphics-design.xlarge
517	//
518	// * stream.graphics-design.2xlarge
519	//
520	// *
521	// stream.graphics-design.4xlarge
522	//
523	// * stream.graphics-desktop.2xlarge
524	//
525	// *
526	// stream.graphics.g4dn.xlarge
527	//
528	// * stream.graphics.g4dn.2xlarge
529	//
530	// *
531	// stream.graphics.g4dn.4xlarge
532	//
533	// * stream.graphics.g4dn.8xlarge
534	//
535	// *
536	// stream.graphics.g4dn.12xlarge
537	//
538	// * stream.graphics.g4dn.16xlarge
539	//
540	// *
541	// stream.graphics-pro.4xlarge
542	//
543	// * stream.graphics-pro.8xlarge
544	//
545	// *
546	// stream.graphics-pro.16xlarge
547	InstanceType *string
548
549	// Describes the network details of the fleet or image builder instance.
550	NetworkAccessConfiguration *NetworkAccessConfiguration
551
552	// The operating system platform of the image builder.
553	Platform PlatformType
554
555	// The state of the image builder.
556	State ImageBuilderState
557
558	// The reason why the last state change occurred.
559	StateChangeReason *ImageBuilderStateChangeReason
560
561	// The VPC configuration of the image builder.
562	VpcConfig *VpcConfig
563}
564
565// Describes the reason why the last image builder state change occurred.
566type ImageBuilderStateChangeReason struct {
567
568	// The state change reason code.
569	Code ImageBuilderStateChangeReasonCode
570
571	// The state change reason message.
572	Message *string
573}
574
575// Describes the permissions for an image.
576type ImagePermissions struct {
577
578	// Indicates whether the image can be used for a fleet.
579	AllowFleet *bool
580
581	// Indicates whether the image can be used for an image builder.
582	AllowImageBuilder *bool
583}
584
585// Describes the reason why the last image state change occurred.
586type ImageStateChangeReason struct {
587
588	// The state change reason code.
589	Code ImageStateChangeReasonCode
590
591	// The state change reason message.
592	Message *string
593}
594
595// Describes the error that is returned when a usage report can't be generated.
596type LastReportGenerationExecutionError struct {
597
598	// The error code for the error that is returned when a usage report can't be
599	// generated.
600	ErrorCode UsageReportExecutionErrorCode
601
602	// The error message for the error that is returned when a usage report can't be
603	// generated.
604	ErrorMessage *string
605}
606
607// Describes the network details of the fleet or image builder instance.
608type NetworkAccessConfiguration struct {
609
610	// The resource identifier of the elastic network interface that is attached to
611	// instances in your VPC. All network interfaces have the eni-xxxxxxxx resource
612	// identifier.
613	EniId *string
614
615	// The private IP address of the elastic network interface that is attached to
616	// instances in your VPC.
617	EniPrivateIpAddress *string
618}
619
620// Describes a resource error.
621type ResourceError struct {
622
623	// The error code.
624	ErrorCode FleetErrorCode
625
626	// The error message.
627	ErrorMessage *string
628
629	// The time the error occurred.
630	ErrorTimestamp *time.Time
631}
632
633// Describes the credentials for the service account used by the fleet or image
634// builder to connect to the directory.
635type ServiceAccountCredentials struct {
636
637	// The user name of the account. This account must have the following privileges:
638	// create computer objects, join computers to the domain, and change/reset the
639	// password on descendant computer objects for the organizational units specified.
640	//
641	// This member is required.
642	AccountName *string
643
644	// The password for the account.
645	//
646	// This member is required.
647	AccountPassword *string
648}
649
650// Describes a streaming session.
651type Session struct {
652
653	// The name of the fleet for the streaming session.
654	//
655	// This member is required.
656	FleetName *string
657
658	// The identifier of the streaming session.
659	//
660	// This member is required.
661	Id *string
662
663	// The name of the stack for the streaming session.
664	//
665	// This member is required.
666	StackName *string
667
668	// The current state of the streaming session.
669	//
670	// This member is required.
671	State SessionState
672
673	// The identifier of the user for whom the session was created.
674	//
675	// This member is required.
676	UserId *string
677
678	// The authentication method. The user is authenticated using a streaming URL (API)
679	// or SAML 2.0 federation (SAML).
680	AuthenticationType AuthenticationType
681
682	// Specifies whether a user is connected to the streaming session.
683	ConnectionState SessionConnectionState
684
685	// The time when the streaming session is set to expire. This time is based on the
686	// MaxUserDurationinSeconds value, which determines the maximum length of time that
687	// a streaming session can run. A streaming session might end earlier than the time
688	// specified in SessionMaxExpirationTime, when the DisconnectTimeOutInSeconds
689	// elapses or the user chooses to end his or her session. If the
690	// DisconnectTimeOutInSeconds elapses, or the user chooses to end his or her
691	// session, the streaming instance is terminated and the streaming session ends.
692	MaxExpirationTime *time.Time
693
694	// The network details for the streaming session.
695	NetworkAccessConfiguration *NetworkAccessConfiguration
696
697	// The time when a streaming instance is dedicated for the user.
698	StartTime *time.Time
699}
700
701// Describes the permissions that are available to the specified AWS account for a
702// shared image.
703type SharedImagePermissions struct {
704
705	// Describes the permissions for a shared image.
706	//
707	// This member is required.
708	ImagePermissions *ImagePermissions
709
710	// The 12-digit identifier of the AWS account with which the image is shared.
711	//
712	// This member is required.
713	SharedAccountId *string
714}
715
716// Describes a stack.
717type Stack struct {
718
719	// The name of the stack.
720	//
721	// This member is required.
722	Name *string
723
724	// The list of virtual private cloud (VPC) interface endpoint objects. Users of the
725	// stack can connect to AppStream 2.0 only through the specified endpoints.
726	AccessEndpoints []AccessEndpoint
727
728	// The persistent application settings for users of the stack.
729	ApplicationSettings *ApplicationSettingsResponse
730
731	// The ARN of the stack.
732	Arn *string
733
734	// The time the stack was created.
735	CreatedTime *time.Time
736
737	// The description to display.
738	Description *string
739
740	// The stack name to display.
741	DisplayName *string
742
743	// The domains where AppStream 2.0 streaming sessions can be embedded in an iframe.
744	// You must approve the domains that you want to host embedded AppStream 2.0
745	// streaming sessions.
746	EmbedHostDomains []string
747
748	// The URL that users are redirected to after they click the Send Feedback link. If
749	// no URL is specified, no Send Feedback link is displayed.
750	FeedbackURL *string
751
752	// The URL that users are redirected to after their streaming session ends.
753	RedirectURL *string
754
755	// The errors for the stack.
756	StackErrors []StackError
757
758	// The storage connectors to enable.
759	StorageConnectors []StorageConnector
760
761	// The actions that are enabled or disabled for users during their streaming
762	// sessions. By default these actions are enabled.
763	UserSettings []UserSetting
764}
765
766// Describes a stack error.
767type StackError struct {
768
769	// The error code.
770	ErrorCode StackErrorCode
771
772	// The error message.
773	ErrorMessage *string
774}
775
776// Describes a connector that enables persistent storage for users.
777type StorageConnector struct {
778
779	// The type of storage connector.
780	//
781	// This member is required.
782	ConnectorType StorageConnectorType
783
784	// The names of the domains for the account.
785	Domains []string
786
787	// The ARN of the storage connector.
788	ResourceIdentifier *string
789}
790
791// Describes information about the usage report subscription.
792type UsageReportSubscription struct {
793
794	// The time when the last usage report was generated.
795	LastGeneratedReportDate *time.Time
796
797	// The Amazon S3 bucket where generated reports are stored. If you enabled
798	// on-instance session scripts and Amazon S3 logging for your session script
799	// configuration, AppStream 2.0 created an S3 bucket to store the script output.
800	// The bucket is unique to your account and Region. When you enable usage reporting
801	// in this case, AppStream 2.0 uses the same bucket to store your usage reports. If
802	// you haven't already enabled on-instance session scripts, when you enable usage
803	// reports, AppStream 2.0 creates a new S3 bucket.
804	S3BucketName *string
805
806	// The schedule for generating usage reports.
807	Schedule UsageReportSchedule
808
809	// The errors that were returned if usage reports couldn't be generated.
810	SubscriptionErrors []LastReportGenerationExecutionError
811}
812
813// Describes a user in the user pool.
814type User struct {
815
816	// The authentication type for the user.
817	//
818	// This member is required.
819	AuthenticationType AuthenticationType
820
821	// The ARN of the user.
822	Arn *string
823
824	// The date and time the user was created in the user pool.
825	CreatedTime *time.Time
826
827	// Specifies whether the user in the user pool is enabled.
828	Enabled bool
829
830	// The first name, or given name, of the user.
831	FirstName *string
832
833	// The last name, or surname, of the user.
834	LastName *string
835
836	// The status of the user in the user pool. The status can be one of the
837	// following:
838	//
839	// * UNCONFIRMED – The user is created but not confirmed.
840	//
841	// * CONFIRMED
842	// – The user is confirmed.
843	//
844	// * ARCHIVED – The user is no longer active.
845	//
846	// *
847	// COMPROMISED – The user is disabled because of a potential security threat.
848	//
849	// *
850	// UNKNOWN – The user status is not known.
851	Status *string
852
853	// The email address of the user. Users' email addresses are case-sensitive.
854	UserName *string
855}
856
857// Describes an action and whether the action is enabled or disabled for users
858// during their streaming sessions.
859type UserSetting struct {
860
861	// The action that is enabled or disabled.
862	//
863	// This member is required.
864	Action Action
865
866	// Indicates whether the action is enabled or disabled.
867	//
868	// This member is required.
869	Permission Permission
870}
871
872// Describes a user in the user pool and the associated stack.
873type UserStackAssociation struct {
874
875	// The authentication type for the user.
876	//
877	// This member is required.
878	AuthenticationType AuthenticationType
879
880	// The name of the stack that is associated with the user.
881	//
882	// This member is required.
883	StackName *string
884
885	// The email address of the user who is associated with the stack. Users' email
886	// addresses are case-sensitive.
887	//
888	// This member is required.
889	UserName *string
890
891	// Specifies whether a welcome email is sent to a user after the user is created in
892	// the user pool.
893	SendEmailNotification bool
894}
895
896// Describes the error that is returned when a user can’t be associated with or
897// disassociated from a stack.
898type UserStackAssociationError struct {
899
900	// The error code for the error that is returned when a user can’t be associated
901	// with or disassociated from a stack.
902	ErrorCode UserStackAssociationErrorCode
903
904	// The error message for the error that is returned when a user can’t be associated
905	// with or disassociated from a stack.
906	ErrorMessage *string
907
908	// Information about the user and associated stack.
909	UserStackAssociation *UserStackAssociation
910}
911
912// Describes VPC configuration information for fleets and image builders.
913type VpcConfig struct {
914
915	// The identifiers of the security groups for the fleet or image builder.
916	SecurityGroupIds []string
917
918	// The identifiers of the subnets to which a network interface is attached from the
919	// fleet instance or image builder instance. Fleet instances use one or more
920	// subnets. Image builder instances use one subnet.
921	SubnetIds []string
922}
923