import * as cdk from "../../core/lib"; import * as constructs from "constructs"; import * as cfn_parse from "../../core/lib/helpers-internal"; import { ConnectionAliasReference, DirectoryReference, IConnectionAliasRef, IDirectoryRef, IWorkspaceIpGroupRef, IWorkspaceRef, IWorkspacesPoolRef, WorkspaceIpGroupReference, WorkspaceReference, WorkspacesPoolReference } from "../../interfaces/generated/aws-workspaces-interfaces.generated"; /** * The `AWS::WorkSpaces::ConnectionAlias` resource specifies a connection alias. * * Connection aliases are used for cross-Region redirection. For more information, see [Cross-Region Redirection for Amazon WorkSpaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html) . * * @cloudformationResource AWS::WorkSpaces::ConnectionAlias * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html */ export declare class CfnConnectionAlias extends cdk.CfnResource implements cdk.IInspectable, IConnectionAliasRef, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnConnectionAlias from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnConnectionAlias; /** * Checks whether the given object is a CfnConnectionAlias */ static isCfnConnectionAlias(x: any): x is CfnConnectionAlias; /** * The connection string specified for the connection alias. */ private _connectionString; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * The tags to associate with the connection alias. */ private _tagsRaw?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::WorkSpaces::ConnectionAlias`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnConnectionAliasProps); get connectionAliasRef(): ConnectionAliasReference; /** * The connection string specified for the connection alias. */ get connectionString(): string; /** * The connection string specified for the connection alias. */ set connectionString(value: string); /** * The tags to associate with the connection alias. */ get tagsRaw(): Array | undefined; /** * The tags to associate with the connection alias. */ set tagsRaw(value: Array | undefined); /** * The identifier of the connection alias, returned as a string. * * @cloudformationAttribute AliasId */ get attrAliasId(): string; /** * The association status of the connection alias. * * @cloudformationAttribute Associations */ get attrAssociations(): cdk.IResolvable; /** * The current state of the connection alias, returned as a string. * * @cloudformationAttribute ConnectionAliasState */ get attrConnectionAliasState(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnConnectionAlias { /** * Describes a connection alias association that is used for cross-Region redirection. * * For more information, see [Cross-Region Redirection for Amazon WorkSpaces](https://docs.aws.amazon.com/workspaces/latest/adminguide/cross-region-redirection.html) . * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html */ interface ConnectionAliasAssociationProperty { /** * The identifier of the AWS account that associated the connection alias with a directory. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-associatedaccountid */ readonly associatedAccountId?: string; /** * The association status of the connection alias. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-associationstatus */ readonly associationStatus?: string; /** * The identifier of the connection alias association. * * You use the connection identifier in the DNS TXT record when you're configuring your DNS routing policies. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-connectionidentifier */ readonly connectionIdentifier?: string; /** * The identifier of the directory associated with a connection alias. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-connectionalias-connectionaliasassociation.html#cfn-workspaces-connectionalias-connectionaliasassociation-resourceid */ readonly resourceId?: string; } } /** * Properties for defining a `CfnConnectionAlias` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html */ export interface CfnConnectionAliasProps { /** * The connection string specified for the connection alias. * * The connection string must be in the form of a fully qualified domain name (FQDN), such as `www.example.com` . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html#cfn-workspaces-connectionalias-connectionstring */ readonly connectionString: string; /** * The tags to associate with the connection alias. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-connectionalias.html#cfn-workspaces-connectionalias-tags */ readonly tags?: Array; } /** * The `AWS::WorkSpaces::Workspace` resource specifies a WorkSpace. * * Updates are not supported for the `BundleId` , `RootVolumeEncryptionEnabled` , `UserVolumeEncryptionEnabled` , or `VolumeEncryptionKey` properties. To update these properties, you must also update a property that triggers a replacement, such as the `UserName` property. * * @cloudformationResource AWS::WorkSpaces::Workspace * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html */ export declare class CfnWorkspace extends cdk.CfnResource implements cdk.IInspectable, IWorkspaceRef, cdk.ITaggable { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnWorkspace from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnWorkspace; /** * Checks whether the given object is a CfnWorkspace */ static isCfnWorkspace(x: any): x is CfnWorkspace; /** * Creates a new IWorkspaceRef from a workspaceId */ static fromWorkspaceId(scope: constructs.Construct, id: string, workspaceId: string): IWorkspaceRef; static arnForWorkspace(resource: IWorkspaceRef): string; /** * The identifier of the bundle for the WorkSpace. */ private _bundleId; /** * The identifier of the Directory Service directory for the WorkSpace. */ private _directoryId; /** * Indicates whether the data stored on the root volume is encrypted. */ private _rootVolumeEncryptionEnabled?; /** * Tag Manager which manages the tags for this resource */ readonly tags: cdk.TagManager; /** * The tags for the WorkSpace. */ private _tagsRaw?; /** * The user name of the user for the WorkSpace. */ private _userName; /** * Indicates whether the data stored on the user volume is encrypted. */ private _userVolumeEncryptionEnabled?; /** * The symmetric AWS KMS key used to encrypt data stored on your WorkSpace. */ private _volumeEncryptionKey?; /** * The WorkSpace properties. */ private _workspaceProperties?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::WorkSpaces::Workspace`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnWorkspaceProps); get workspaceRef(): WorkspaceReference; /** * The identifier of the bundle for the WorkSpace. */ get bundleId(): string; /** * The identifier of the bundle for the WorkSpace. */ set bundleId(value: string); /** * The identifier of the Directory Service directory for the WorkSpace. */ get directoryId(): string; /** * The identifier of the Directory Service directory for the WorkSpace. */ set directoryId(value: string); /** * Indicates whether the data stored on the root volume is encrypted. */ get rootVolumeEncryptionEnabled(): boolean | cdk.IResolvable | undefined; /** * Indicates whether the data stored on the root volume is encrypted. */ set rootVolumeEncryptionEnabled(value: boolean | cdk.IResolvable | undefined); /** * The tags for the WorkSpace. */ get tagsRaw(): Array | undefined; /** * The tags for the WorkSpace. */ set tagsRaw(value: Array | undefined); /** * The user name of the user for the WorkSpace. */ get userName(): string; /** * The user name of the user for the WorkSpace. */ set userName(value: string); /** * Indicates whether the data stored on the user volume is encrypted. */ get userVolumeEncryptionEnabled(): boolean | cdk.IResolvable | undefined; /** * Indicates whether the data stored on the user volume is encrypted. */ set userVolumeEncryptionEnabled(value: boolean | cdk.IResolvable | undefined); /** * The symmetric AWS KMS key used to encrypt data stored on your WorkSpace. */ get volumeEncryptionKey(): string | undefined; /** * The symmetric AWS KMS key used to encrypt data stored on your WorkSpace. */ set volumeEncryptionKey(value: string | undefined); /** * The WorkSpace properties. */ get workspaceProperties(): cdk.IResolvable | CfnWorkspace.WorkspacePropertiesProperty | undefined; /** * The WorkSpace properties. */ set workspaceProperties(value: cdk.IResolvable | CfnWorkspace.WorkspacePropertiesProperty | undefined); /** * The identifier of the WorkSpace, returned as a string. * * @cloudformationAttribute Id */ get attrId(): string; /** * @cloudformationAttribute WorkspaceId */ get attrWorkspaceId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnWorkspace { /** * Information about a WorkSpace. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html */ interface WorkspacePropertiesProperty { /** * The compute type. * * For more information, see [Amazon WorkSpaces Bundles](https://docs.aws.amazon.com/workspaces/details/#Amazon_WorkSpaces_Bundles) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-computetypename */ readonly computeTypeName?: string; /** * The size of the root volume. * * For important information about how to modify the size of the root and user volumes, see [Modify a WorkSpace](https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-rootvolumesizegib */ readonly rootVolumeSizeGib?: number; /** * The running mode. * * For more information, see [Manage the WorkSpace Running Mode](https://docs.aws.amazon.com/workspaces/latest/adminguide/running-mode.html) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-runningmode */ readonly runningMode?: string; /** * The time after a user logs off when WorkSpaces are automatically stopped. * * Configured in 60-minute intervals. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-runningmodeautostoptimeoutinminutes */ readonly runningModeAutoStopTimeoutInMinutes?: number; /** * The size of the user storage. * * For important information about how to modify the size of the root and user volumes, see [Modify a WorkSpace](https://docs.aws.amazon.com/workspaces/latest/adminguide/modify-workspaces.html) . * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspace-workspaceproperties.html#cfn-workspaces-workspace-workspaceproperties-uservolumesizegib */ readonly userVolumeSizeGib?: number; } } /** * Properties for defining a `CfnWorkspace` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html */ export interface CfnWorkspaceProps { /** * The identifier of the bundle for the WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-bundleid */ readonly bundleId: string; /** * The identifier of the Directory Service directory for the WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-directoryid */ readonly directoryId: string; /** * Indicates whether the data stored on the root volume is encrypted. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-rootvolumeencryptionenabled */ readonly rootVolumeEncryptionEnabled?: boolean | cdk.IResolvable; /** * The tags for the WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-tags */ readonly tags?: Array; /** * The user name of the user for the WorkSpace. * * This user name must exist in the Directory Service directory for the WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-username */ readonly userName: string; /** * Indicates whether the data stored on the user volume is encrypted. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-uservolumeencryptionenabled */ readonly userVolumeEncryptionEnabled?: boolean | cdk.IResolvable; /** * The symmetric AWS KMS key used to encrypt data stored on your WorkSpace. * * Amazon WorkSpaces does not support asymmetric KMS keys. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-volumeencryptionkey */ readonly volumeEncryptionKey?: string; /** * The WorkSpace properties. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspace.html#cfn-workspaces-workspace-workspaceproperties */ readonly workspaceProperties?: cdk.IResolvable | CfnWorkspace.WorkspacePropertiesProperty; } /** * Resource Type definition for AWS::WorkSpaces::Directory. * * @cloudformationResource AWS::WorkSpaces::Directory * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html */ export declare class CfnDirectory extends cdk.CfnResource implements cdk.IInspectable, IDirectoryRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnDirectory from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnDirectory; /** * Checks whether the given object is a CfnDirectory */ static isCfnDirectory(x: any): x is CfnDirectory; static arnForDirectory(resource: IDirectoryRef): string; /** * Information about the Active Directory config. */ private _activeDirectoryConfig?; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * Describes the properties of the certificate-based authentication you want to use with your WorkSpaces. */ private _certificateBasedAuthProperties?; /** * Indicates whether self-service capabilities are enabled or disabled. */ private _enableSelfService?; /** * Endpoint encryption mode that allows you to configure the specified directory between Standard TLS and FIPS 140-2 validated mode. */ private _endpointEncryptionMode?; /** * The Amazon Resource Name (ARN) of the identity center instance. */ private _idcInstanceArn?; /** * The identifiers of the IP access control groups associated with the directory. */ private _ipGroupIds?; /** * Specifies the configurations of the Microsoft Entra. */ private _microsoftEntraConfig?; /** * Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider. */ private _samlProperties?; /** * Describes the self-service permissions for a directory. */ private _selfservicePermissions?; /** * Describes the streaming properties. */ private _streamingProperties?; /** * The identifiers of the subnets for your virtual private cloud (VPC). */ private _subnetIds?; /** * The tags associated with the directory. */ private _tags?; /** * Indicates whether your WorkSpace directory is dedicated or shared. */ private _tenancy?; /** * The type of identity management the user is using. */ private _userIdentityType?; /** * The device types and operating systems that can be used to access a WorkSpace. */ private _workspaceAccessProperties?; /** * The default values that are used to create WorkSpaces. */ private _workspaceCreationProperties?; /** * Description of the directory to register. */ private _workspaceDirectoryDescription?; /** * The name of the directory to register. */ private _workspaceDirectoryName?; /** * Indicates whether the directory's WorkSpace type is personal or pools. */ private _workspaceType?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::WorkSpaces::Directory`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props?: CfnDirectoryProps); get directoryRef(): DirectoryReference; /** * Information about the Active Directory config. */ get activeDirectoryConfig(): CfnDirectory.ActiveDirectoryConfigProperty | cdk.IResolvable | undefined; /** * Information about the Active Directory config. */ set activeDirectoryConfig(value: CfnDirectory.ActiveDirectoryConfigProperty | cdk.IResolvable | undefined); /** * Describes the properties of the certificate-based authentication you want to use with your WorkSpaces. */ get certificateBasedAuthProperties(): CfnDirectory.CertificateBasedAuthPropertiesProperty | cdk.IResolvable | undefined; /** * Describes the properties of the certificate-based authentication you want to use with your WorkSpaces. */ set certificateBasedAuthProperties(value: CfnDirectory.CertificateBasedAuthPropertiesProperty | cdk.IResolvable | undefined); /** * Indicates whether self-service capabilities are enabled or disabled. */ get enableSelfService(): boolean | cdk.IResolvable | undefined; /** * Indicates whether self-service capabilities are enabled or disabled. */ set enableSelfService(value: boolean | cdk.IResolvable | undefined); /** * Endpoint encryption mode that allows you to configure the specified directory between Standard TLS and FIPS 140-2 validated mode. */ get endpointEncryptionMode(): string | undefined; /** * Endpoint encryption mode that allows you to configure the specified directory between Standard TLS and FIPS 140-2 validated mode. */ set endpointEncryptionMode(value: string | undefined); /** * The Amazon Resource Name (ARN) of the identity center instance. */ get idcInstanceArn(): string | undefined; /** * The Amazon Resource Name (ARN) of the identity center instance. */ set idcInstanceArn(value: string | undefined); /** * The identifiers of the IP access control groups associated with the directory. */ get ipGroupIds(): Array | undefined; /** * The identifiers of the IP access control groups associated with the directory. */ set ipGroupIds(value: Array | undefined); /** * Specifies the configurations of the Microsoft Entra. */ get microsoftEntraConfig(): cdk.IResolvable | CfnDirectory.MicrosoftEntraConfigProperty | undefined; /** * Specifies the configurations of the Microsoft Entra. */ set microsoftEntraConfig(value: cdk.IResolvable | CfnDirectory.MicrosoftEntraConfigProperty | undefined); /** * Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider. */ get samlProperties(): cdk.IResolvable | CfnDirectory.SamlPropertiesProperty | undefined; /** * Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider. */ set samlProperties(value: cdk.IResolvable | CfnDirectory.SamlPropertiesProperty | undefined); /** * Describes the self-service permissions for a directory. */ get selfservicePermissions(): cdk.IResolvable | CfnDirectory.SelfservicePermissionsProperty | undefined; /** * Describes the self-service permissions for a directory. */ set selfservicePermissions(value: cdk.IResolvable | CfnDirectory.SelfservicePermissionsProperty | undefined); /** * Describes the streaming properties. */ get streamingProperties(): cdk.IResolvable | CfnDirectory.StreamingPropertiesProperty | undefined; /** * Describes the streaming properties. */ set streamingProperties(value: cdk.IResolvable | CfnDirectory.StreamingPropertiesProperty | undefined); /** * The identifiers of the subnets for your virtual private cloud (VPC). */ get subnetIds(): Array | undefined; /** * The identifiers of the subnets for your virtual private cloud (VPC). */ set subnetIds(value: Array | undefined); /** * The tags associated with the directory. */ get tags(): Array | undefined; /** * The tags associated with the directory. */ set tags(value: Array | undefined); /** * Indicates whether your WorkSpace directory is dedicated or shared. */ get tenancy(): string | undefined; /** * Indicates whether your WorkSpace directory is dedicated or shared. */ set tenancy(value: string | undefined); /** * The type of identity management the user is using. */ get userIdentityType(): string | undefined; /** * The type of identity management the user is using. */ set userIdentityType(value: string | undefined); /** * The device types and operating systems that can be used to access a WorkSpace. */ get workspaceAccessProperties(): cdk.IResolvable | CfnDirectory.WorkspaceAccessPropertiesProperty | undefined; /** * The device types and operating systems that can be used to access a WorkSpace. */ set workspaceAccessProperties(value: cdk.IResolvable | CfnDirectory.WorkspaceAccessPropertiesProperty | undefined); /** * The default values that are used to create WorkSpaces. */ get workspaceCreationProperties(): CfnDirectory.DefaultWorkspaceCreationPropertiesProperty | cdk.IResolvable | undefined; /** * The default values that are used to create WorkSpaces. */ set workspaceCreationProperties(value: CfnDirectory.DefaultWorkspaceCreationPropertiesProperty | cdk.IResolvable | undefined); /** * Description of the directory to register. */ get workspaceDirectoryDescription(): string | undefined; /** * Description of the directory to register. */ set workspaceDirectoryDescription(value: string | undefined); /** * The name of the directory to register. */ get workspaceDirectoryName(): string | undefined; /** * The name of the directory to register. */ set workspaceDirectoryName(value: string | undefined); /** * Indicates whether the directory's WorkSpace type is personal or pools. */ get workspaceType(): string | undefined; /** * Indicates whether the directory's WorkSpace type is personal or pools. */ set workspaceType(value: string | undefined); /** * The directory alias. * * @cloudformationAttribute Alias */ get attrAlias(): string; /** * The Amazon Resource Name (ARN) of the WorkSpace directory. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The user name for the service account. * * @cloudformationAttribute CustomerUserName */ get attrCustomerUserName(): string; /** * The directory identifier. * * @cloudformationAttribute DirectoryId */ get attrDirectoryId(): string; /** * The name of the directory. * * @cloudformationAttribute DirectoryName */ get attrDirectoryName(): string; /** * The directory type. * * @cloudformationAttribute DirectoryType */ get attrDirectoryType(): string; /** * The IP addresses of the DNS servers for the directory. * * @cloudformationAttribute DnsIpAddresses */ get attrDnsIpAddresses(): Array; /** * The IPv6 addresses of the DNS servers for the directory. * * @cloudformationAttribute DnsIpv6Addresses */ get attrDnsIpv6Addresses(): Array; /** * The identifier of the IAM role. * * @cloudformationAttribute IamRoleId */ get attrIamRoleId(): string; /** * Specifies the configurations of the identity center. * * @cloudformationAttribute IDCConfig */ get attrIdcConfig(): cdk.IResolvable; /** * The registration code for the directory. * * @cloudformationAttribute RegistrationCode */ get attrRegistrationCode(): string; /** * The state of the directory's registration with Amazon WorkSpaces. * * @cloudformationAttribute State */ get attrState(): string; /** * The identifier of the security group that is assigned to new WorkSpaces. * * @cloudformationAttribute WorkspaceSecurityGroupId */ get attrWorkspaceSecurityGroupId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnDirectory { /** * Specifies the configurations of the Microsoft Entra. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-microsoftentraconfig.html */ interface MicrosoftEntraConfigProperty { /** * The Amazon Resource Name (ARN) of the application config. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-microsoftentraconfig.html#cfn-workspaces-directory-microsoftentraconfig-applicationconfigsecretarn */ readonly applicationConfigSecretArn?: string; /** * The identifier of the tenant. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-microsoftentraconfig.html#cfn-workspaces-directory-microsoftentraconfig-tenantid */ readonly tenantId?: string; } /** * Information about the Active Directory config. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-activedirectoryconfig.html */ interface ActiveDirectoryConfigProperty { /** * The name of the domain. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-activedirectoryconfig.html#cfn-workspaces-directory-activedirectoryconfig-domainname */ readonly domainName: string; /** * Indicates the secret ARN on the service account. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-activedirectoryconfig.html#cfn-workspaces-directory-activedirectoryconfig-serviceaccountsecretarn */ readonly serviceAccountSecretArn: string; } /** * The default values that are used to create WorkSpaces. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html */ interface DefaultWorkspaceCreationPropertiesProperty { /** * The identifier of the default security group to apply to WorkSpaces when they are created. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html#cfn-workspaces-directory-defaultworkspacecreationproperties-customsecuritygroupid */ readonly customSecurityGroupId?: string; /** * The organizational unit (OU) in the directory for the WorkSpace machine accounts. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html#cfn-workspaces-directory-defaultworkspacecreationproperties-defaultou */ readonly defaultOu?: string; /** * Specifies whether to automatically assign an Elastic public IP address to WorkSpaces in this directory by default. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html#cfn-workspaces-directory-defaultworkspacecreationproperties-enableinternetaccess */ readonly enableInternetAccess?: boolean | cdk.IResolvable; /** * Specifies whether maintenance mode is enabled for WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html#cfn-workspaces-directory-defaultworkspacecreationproperties-enablemaintenancemode */ readonly enableMaintenanceMode?: boolean | cdk.IResolvable; /** * Indicates the IAM role ARN of the instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html#cfn-workspaces-directory-defaultworkspacecreationproperties-instanceiamrolearn */ readonly instanceIamRoleArn?: string; /** * Specifies whether WorkSpace users are local administrators on their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-defaultworkspacecreationproperties.html#cfn-workspaces-directory-defaultworkspacecreationproperties-userenabledaslocaladministrator */ readonly userEnabledAsLocalAdministrator?: boolean | cdk.IResolvable; } /** * The device types and operating systems that can be used to access a WorkSpace. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html */ interface WorkspaceAccessPropertiesProperty { /** * Describes the access endpoint configuration for a WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-accessendpointconfig */ readonly accessEndpointConfig?: CfnDirectory.AccessEndpointConfigProperty | cdk.IResolvable; /** * Indicates whether users can use Android and Android-compatible Chrome OS devices to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypeandroid */ readonly deviceTypeAndroid?: string; /** * Indicates whether users can use Chromebooks to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypechromeos */ readonly deviceTypeChromeOs?: string; /** * Indicates whether users can use iOS devices to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypeios */ readonly deviceTypeIos?: string; /** * Indicates whether users can use Linux clients to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypelinux */ readonly deviceTypeLinux?: string; /** * Indicates whether users can use macOS clients to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypeosx */ readonly deviceTypeOsx?: string; /** * Indicates whether users can access their WorkSpaces through a web browser. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypeweb */ readonly deviceTypeWeb?: string; /** * Indicates whether users can use Windows clients to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypewindows */ readonly deviceTypeWindows?: string; /** * Indicates whether users can access their WorkSpaces through a WorkSpaces Thin Client. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypeworkspacesthinclient */ readonly deviceTypeWorkSpacesThinClient?: string; /** * Indicates whether users can use zero client devices to access their WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-workspaceaccessproperties.html#cfn-workspaces-directory-workspaceaccessproperties-devicetypezeroclient */ readonly deviceTypeZeroClient?: string; } /** * Describes the access endpoint configuration for a WorkSpace. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-accessendpointconfig.html */ interface AccessEndpointConfigProperty { /** * Indicates a list of access endpoints associated with this directory. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-accessendpointconfig.html#cfn-workspaces-directory-accessendpointconfig-accessendpoints */ readonly accessEndpoints: Array | cdk.IResolvable; /** * Indicates a list of protocols that fallback to using the public Internet when streaming over a VPC endpoint is not available. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-accessendpointconfig.html#cfn-workspaces-directory-accessendpointconfig-internetfallbackprotocols */ readonly internetFallbackProtocols?: Array; } /** * Describes the access type and endpoint for a WorkSpace. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-accessendpoint.html */ interface AccessEndpointProperty { /** * Indicates the type of access endpoint. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-accessendpoint.html#cfn-workspaces-directory-accessendpoint-accessendpointtype */ readonly accessEndpointType?: string; /** * Indicates the VPC endpoint to use for access. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-accessendpoint.html#cfn-workspaces-directory-accessendpoint-vpcendpointid */ readonly vpcEndpointId?: string; } /** * Describes the self-service permissions for a directory. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-selfservicepermissions.html */ interface SelfservicePermissionsProperty { /** * Specifies whether users can change the compute type (bundle) for their WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-selfservicepermissions.html#cfn-workspaces-directory-selfservicepermissions-changecomputetype */ readonly changeComputeType?: string; /** * Specifies whether users can increase the volume size of the drives on their WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-selfservicepermissions.html#cfn-workspaces-directory-selfservicepermissions-increasevolumesize */ readonly increaseVolumeSize?: string; /** * Specifies whether users can rebuild the operating system of a WorkSpace to its original state. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-selfservicepermissions.html#cfn-workspaces-directory-selfservicepermissions-rebuildworkspace */ readonly rebuildWorkspace?: string; /** * Specifies whether users can restart their WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-selfservicepermissions.html#cfn-workspaces-directory-selfservicepermissions-restartworkspace */ readonly restartWorkspace?: string; /** * Specifies whether users can switch the running mode of their WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-selfservicepermissions.html#cfn-workspaces-directory-selfservicepermissions-switchrunningmode */ readonly switchRunningMode?: string; } /** * Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-samlproperties.html */ interface SamlPropertiesProperty { /** * The relay state parameter name supported by the SAML 2.0 identity provider (IdP). * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-samlproperties.html#cfn-workspaces-directory-samlproperties-relaystateparametername */ readonly relayStateParameterName?: string; /** * Indicates the status of SAML 2.0 authentication. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-samlproperties.html#cfn-workspaces-directory-samlproperties-status */ readonly status?: string; /** * The SAML 2.0 identity provider (IdP) user access URL. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-samlproperties.html#cfn-workspaces-directory-samlproperties-useraccessurl */ readonly userAccessUrl?: string; } /** * Describes the properties of the certificate-based authentication you want to use with your WorkSpaces. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-certificatebasedauthproperties.html */ interface CertificateBasedAuthPropertiesProperty { /** * The Amazon Resource Name (ARN) of the Amazon Web Services Certificate Manager Private CA resource. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-certificatebasedauthproperties.html#cfn-workspaces-directory-certificatebasedauthproperties-certificateauthorityarn */ readonly certificateAuthorityArn?: string; /** * The status of the certificate-based authentication properties. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-certificatebasedauthproperties.html#cfn-workspaces-directory-certificatebasedauthproperties-status */ readonly status?: string; } /** * Describes the streaming properties. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-streamingproperties.html */ interface StreamingPropertiesProperty { /** * Describes the Global Accelerator for directory. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-streamingproperties.html#cfn-workspaces-directory-streamingproperties-globalaccelerator */ readonly globalAccelerator?: CfnDirectory.GlobalAcceleratorForDirectoryProperty | cdk.IResolvable; /** * Indicates the storage connector used. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-streamingproperties.html#cfn-workspaces-directory-streamingproperties-storageconnectors */ readonly storageConnectors?: Array | cdk.IResolvable; /** * Indicates the type of preferred protocol for the streaming experience. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-streamingproperties.html#cfn-workspaces-directory-streamingproperties-streamingexperiencepreferredprotocol */ readonly streamingExperiencePreferredProtocol?: string; /** * Indicates the permission settings associated with the user. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-streamingproperties.html#cfn-workspaces-directory-streamingproperties-usersettings */ readonly userSettings?: Array | cdk.IResolvable; } /** * Information about the user's permission settings. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-usersetting.html */ interface UserSettingProperty { /** * Indicates the type of action. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-usersetting.html#cfn-workspaces-directory-usersetting-action */ readonly action: string; /** * Indicates the maximum character length for the specified user setting. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-usersetting.html#cfn-workspaces-directory-usersetting-maximumlength */ readonly maximumLength?: number; /** * Indicates if the setting is enabled or disabled. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-usersetting.html#cfn-workspaces-directory-usersetting-permission */ readonly permission: string; } /** * Describes the storage connector. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-storageconnector.html */ interface StorageConnectorProperty { /** * The type of connector used to save user files. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-storageconnector.html#cfn-workspaces-directory-storageconnector-connectortype */ readonly connectorType: string; /** * Indicates if the storage connector is enabled or disabled. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-storageconnector.html#cfn-workspaces-directory-storageconnector-status */ readonly status: string; } /** * Describes the Global Accelerator for directory. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-globalacceleratorfordirectory.html */ interface GlobalAcceleratorForDirectoryProperty { /** * Indicates if Global Accelerator for directory is enabled or disabled. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-globalacceleratorfordirectory.html#cfn-workspaces-directory-globalacceleratorfordirectory-mode */ readonly mode: string; /** * Indicates the preferred protocol for Global Accelerator. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-globalacceleratorfordirectory.html#cfn-workspaces-directory-globalacceleratorfordirectory-preferredprotocol */ readonly preferredProtocol?: string; } /** * Specifies the configurations of the identity center. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-idcconfig.html */ interface IDCConfigProperty { /** * The Amazon Resource Name (ARN) of the application. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-idcconfig.html#cfn-workspaces-directory-idcconfig-applicationarn */ readonly applicationArn?: string; /** * The Amazon Resource Name (ARN) of the identity center instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-directory-idcconfig.html#cfn-workspaces-directory-idcconfig-instancearn */ readonly instanceArn?: string; } } /** * Properties for defining a `CfnDirectory` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html */ export interface CfnDirectoryProps { /** * Information about the Active Directory config. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-activedirectoryconfig */ readonly activeDirectoryConfig?: CfnDirectory.ActiveDirectoryConfigProperty | cdk.IResolvable; /** * Describes the properties of the certificate-based authentication you want to use with your WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-certificatebasedauthproperties */ readonly certificateBasedAuthProperties?: CfnDirectory.CertificateBasedAuthPropertiesProperty | cdk.IResolvable; /** * Indicates whether self-service capabilities are enabled or disabled. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-enableselfservice */ readonly enableSelfService?: boolean | cdk.IResolvable; /** * Endpoint encryption mode that allows you to configure the specified directory between Standard TLS and FIPS 140-2 validated mode. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-endpointencryptionmode */ readonly endpointEncryptionMode?: string; /** * The Amazon Resource Name (ARN) of the identity center instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-idcinstancearn */ readonly idcInstanceArn?: string; /** * The identifiers of the IP access control groups associated with the directory. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-ipgroupids */ readonly ipGroupIds?: Array; /** * Specifies the configurations of the Microsoft Entra. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-microsoftentraconfig */ readonly microsoftEntraConfig?: cdk.IResolvable | CfnDirectory.MicrosoftEntraConfigProperty; /** * Describes the enablement status, user access URL, and relay state parameter name that are used for configuring federation with an SAML 2.0 identity provider. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-samlproperties */ readonly samlProperties?: cdk.IResolvable | CfnDirectory.SamlPropertiesProperty; /** * Describes the self-service permissions for a directory. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-selfservicepermissions */ readonly selfservicePermissions?: cdk.IResolvable | CfnDirectory.SelfservicePermissionsProperty; /** * Describes the streaming properties. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-streamingproperties */ readonly streamingProperties?: cdk.IResolvable | CfnDirectory.StreamingPropertiesProperty; /** * The identifiers of the subnets for your virtual private cloud (VPC). * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-subnetids */ readonly subnetIds?: Array; /** * The tags associated with the directory. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-tags */ readonly tags?: Array; /** * Indicates whether your WorkSpace directory is dedicated or shared. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-tenancy */ readonly tenancy?: string; /** * The type of identity management the user is using. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-useridentitytype */ readonly userIdentityType?: string; /** * The device types and operating systems that can be used to access a WorkSpace. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-workspaceaccessproperties */ readonly workspaceAccessProperties?: cdk.IResolvable | CfnDirectory.WorkspaceAccessPropertiesProperty; /** * The default values that are used to create WorkSpaces. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-workspacecreationproperties */ readonly workspaceCreationProperties?: CfnDirectory.DefaultWorkspaceCreationPropertiesProperty | cdk.IResolvable; /** * Description of the directory to register. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-workspacedirectorydescription */ readonly workspaceDirectoryDescription?: string; /** * The name of the directory to register. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-workspacedirectoryname */ readonly workspaceDirectoryName?: string; /** * Indicates whether the directory's WorkSpace type is personal or pools. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-directory.html#cfn-workspaces-directory-workspacetype */ readonly workspaceType?: string; } /** * Resource Type definition for an IP access control group for Amazon WorkSpaces. * * @cloudformationResource AWS::WorkSpaces::WorkspaceIpGroup * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspaceipgroup.html */ export declare class CfnWorkspaceIpGroup extends cdk.CfnResource implements cdk.IInspectable, IWorkspaceIpGroupRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnWorkspaceIpGroup from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnWorkspaceIpGroup; /** * Checks whether the given object is a CfnWorkspaceIpGroup */ static isCfnWorkspaceIpGroup(x: any): x is CfnWorkspaceIpGroup; static arnForWorkspaceIpGroup(resource: IWorkspaceIpGroupRef): string; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The description of the group. */ private _groupDesc?; /** * The name of the group. */ private _groupName; /** * The tags for the IP access control group. */ private _tags?; /** * The rules for the IP access control group. */ private _userRules?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::WorkSpaces::WorkspaceIpGroup`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnWorkspaceIpGroupProps); get workspaceIpGroupRef(): WorkspaceIpGroupReference; /** * The description of the group. */ get groupDesc(): string | undefined; /** * The description of the group. */ set groupDesc(value: string | undefined); /** * The name of the group. */ get groupName(): string; /** * The name of the group. */ set groupName(value: string); /** * The tags for the IP access control group. */ get tags(): Array | undefined; /** * The tags for the IP access control group. */ set tags(value: Array | undefined); /** * The rules for the IP access control group. */ get userRules(): Array | cdk.IResolvable | undefined; /** * The rules for the IP access control group. */ set userRules(value: Array | cdk.IResolvable | undefined); /** * The Amazon Resource Name (ARN) of the IP access control group. * * @cloudformationAttribute Arn */ get attrArn(): string; /** * The identifier of the IP access control group. * * @cloudformationAttribute GroupId */ get attrGroupId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnWorkspaceIpGroup { /** * Describes a rule for an IP access control group. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspaceipgroup-ipruleitem.html */ interface IpRuleItemProperty { /** * The IP address range, in CIDR notation. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspaceipgroup-ipruleitem.html#cfn-workspaces-workspaceipgroup-ipruleitem-iprule */ readonly ipRule: string; /** * The description of the rule. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspaceipgroup-ipruleitem.html#cfn-workspaces-workspaceipgroup-ipruleitem-ruledesc */ readonly ruleDesc?: string; } } /** * Properties for defining a `CfnWorkspaceIpGroup` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspaceipgroup.html */ export interface CfnWorkspaceIpGroupProps { /** * The description of the group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspaceipgroup.html#cfn-workspaces-workspaceipgroup-groupdesc */ readonly groupDesc?: string; /** * The name of the group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspaceipgroup.html#cfn-workspaces-workspaceipgroup-groupname */ readonly groupName: string; /** * The tags for the IP access control group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspaceipgroup.html#cfn-workspaces-workspaceipgroup-tags */ readonly tags?: Array; /** * The rules for the IP access control group. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspaceipgroup.html#cfn-workspaces-workspaceipgroup-userrules */ readonly userRules?: Array | cdk.IResolvable; } /** * Describes a pool of WorkSpaces. * * @cloudformationResource AWS::WorkSpaces::WorkspacesPool * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html */ export declare class CfnWorkspacesPool extends cdk.CfnResource implements cdk.IInspectable, IWorkspacesPoolRef, cdk.ITaggableV2 { /** * The CloudFormation resource type name for this resource class. */ static readonly CFN_RESOURCE_TYPE_NAME: string; /** * Build a CfnWorkspacesPool from CloudFormation properties * * A factory method that creates a new instance of this class from an object * containing the CloudFormation properties of this resource. * Used in the @aws-cdk/cloudformation-include module. * * @internal */ static _fromCloudFormation(scope: constructs.Construct, id: string, resourceAttributes: any, options: cfn_parse.FromCloudFormationOptions): CfnWorkspacesPool; /** * Checks whether the given object is a CfnWorkspacesPool */ static isCfnWorkspacesPool(x: any): x is CfnWorkspacesPool; /** * Creates a new IWorkspacesPoolRef from an ARN */ static fromWorkspacesPoolArn(scope: constructs.Construct, id: string, arn: string): IWorkspacesPoolRef; /** * Creates a new IWorkspacesPoolRef from a poolId */ static fromPoolId(scope: constructs.Construct, id: string, poolId: string): IWorkspacesPoolRef; static arnForWorkspacesPool(resource: IWorkspacesPoolRef): string; /** * The persistent application settings for users of the pool. */ private _applicationSettings?; /** * The identifier of the bundle used by the pool. */ private _bundleId; /** * Describes the user capacity for the pool. */ private _capacity; /** * Tag Manager which manages the tags for this resource */ readonly cdkTagManager: cdk.TagManager; /** * The description of the pool. */ private _description?; /** * The identifier of the directory used by the pool. */ private _directoryId; /** * The name of the pool. */ private _poolName; /** * The running mode of the pool. */ private _runningMode?; /** * @deprecated this property has been deprecated */ private _tags?; /** * The amount of time that a pool session remains active after users disconnect. */ private _timeoutSettings?; protected readonly cfnPropertyNames: Record; /** * Create a new `AWS::WorkSpaces::WorkspacesPool`. * * @param scope Scope in which this resource is defined * @param id Construct identifier for this resource (unique in its scope) * @param props Resource properties */ constructor(scope: constructs.Construct, id: string, props: CfnWorkspacesPoolProps); get workspacesPoolRef(): WorkspacesPoolReference; /** * The persistent application settings for users of the pool. */ get applicationSettings(): CfnWorkspacesPool.ApplicationSettingsProperty | cdk.IResolvable | undefined; /** * The persistent application settings for users of the pool. */ set applicationSettings(value: CfnWorkspacesPool.ApplicationSettingsProperty | cdk.IResolvable | undefined); /** * The identifier of the bundle used by the pool. */ get bundleId(): string; /** * The identifier of the bundle used by the pool. */ set bundleId(value: string); /** * Describes the user capacity for the pool. */ get capacity(): CfnWorkspacesPool.CapacityProperty | cdk.IResolvable; /** * Describes the user capacity for the pool. */ set capacity(value: CfnWorkspacesPool.CapacityProperty | cdk.IResolvable); /** * The description of the pool. */ get description(): string | undefined; /** * The description of the pool. */ set description(value: string | undefined); /** * The identifier of the directory used by the pool. */ get directoryId(): string; /** * The identifier of the directory used by the pool. */ set directoryId(value: string); /** * The name of the pool. */ get poolName(): string; /** * The name of the pool. */ set poolName(value: string); /** * The running mode of the pool. */ get runningMode(): string | undefined; /** * The running mode of the pool. */ set runningMode(value: string | undefined); /** * @deprecated this property has been deprecated */ get tags(): Array | undefined; /** * @deprecated this property has been deprecated */ set tags(value: Array | undefined); /** * The amount of time that a pool session remains active after users disconnect. */ get timeoutSettings(): cdk.IResolvable | CfnWorkspacesPool.TimeoutSettingsProperty | undefined; /** * The amount of time that a pool session remains active after users disconnect. */ set timeoutSettings(value: cdk.IResolvable | CfnWorkspacesPool.TimeoutSettingsProperty | undefined); /** * The time the pool was created. * * @cloudformationAttribute CreatedAt */ get attrCreatedAt(): string; /** * The Amazon Resource Name (ARN) for the pool. * * @cloudformationAttribute PoolArn */ get attrPoolArn(): string; /** * The identifier of the pool. * * @cloudformationAttribute PoolId */ get attrPoolId(): string; protected get cfnProperties(): Record; /** * Examines the CloudFormation resource and discloses attributes * * @param inspector tree inspector to collect and process attributes */ inspect(inspector: cdk.TreeInspector): void; protected renderProperties(props: Record): Record; } export declare namespace CfnWorkspacesPool { /** * Describes the user capacity for the pool. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-capacity.html */ interface CapacityProperty { /** * The desired number of user sessions for the WorkSpaces in the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-capacity.html#cfn-workspaces-workspacespool-capacity-desiredusersessions */ readonly desiredUserSessions: number; } /** * The persistent application settings for users in the pool. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-applicationsettings.html */ interface ApplicationSettingsProperty { /** * The path prefix for the S3 bucket where users’ persistent application settings are stored. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-applicationsettings.html#cfn-workspaces-workspacespool-applicationsettings-settingsgroup */ readonly settingsGroup?: string; /** * Enables or disables persistent application settings for users during their pool sessions. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-applicationsettings.html#cfn-workspaces-workspacespool-applicationsettings-status */ readonly status: string; } /** * Describes the timeout settings for the pool. * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-timeoutsettings.html */ interface TimeoutSettingsProperty { /** * Specifies the amount of time, in seconds, that a streaming session remains active after users disconnect. * * If users try to reconnect to the streaming session after a disconnection or network interruption within the time set, they are connected to their previous session. Otherwise, they are connected to a new session with a new streaming instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-timeoutsettings.html#cfn-workspaces-workspacespool-timeoutsettings-disconnecttimeoutinseconds */ readonly disconnectTimeoutInSeconds?: number; /** * The amount of time in seconds a connection will stay active while idle. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-timeoutsettings.html#cfn-workspaces-workspacespool-timeoutsettings-idledisconnecttimeoutinseconds */ readonly idleDisconnectTimeoutInSeconds?: number; /** * Specifies the maximum amount of time, in seconds, that a streaming session can remain active. * * If users are still connected to a streaming instance five minutes before this limit is reached, they are prompted to save any open documents before being disconnected. After this time elapses, the instance is terminated and replaced by a new instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-workspaces-workspacespool-timeoutsettings.html#cfn-workspaces-workspacespool-timeoutsettings-maxuserdurationinseconds */ readonly maxUserDurationInSeconds?: number; } } /** * Properties for defining a `CfnWorkspacesPool` * * @struct * @stability external * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html */ export interface CfnWorkspacesPoolProps { /** * The persistent application settings for users of the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-applicationsettings */ readonly applicationSettings?: CfnWorkspacesPool.ApplicationSettingsProperty | cdk.IResolvable; /** * The identifier of the bundle used by the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-bundleid */ readonly bundleId: string; /** * Describes the user capacity for the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-capacity */ readonly capacity: CfnWorkspacesPool.CapacityProperty | cdk.IResolvable; /** * The description of the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-description */ readonly description?: string; /** * The identifier of the directory used by the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-directoryid */ readonly directoryId: string; /** * The name of the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-poolname */ readonly poolName: string; /** * The running mode of the pool. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-runningmode */ readonly runningMode?: string; /** * @deprecated this property has been deprecated * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-tags */ readonly tags?: Array; /** * The amount of time that a pool session remains active after users disconnect. * * If they try to reconnect to the pool session after a disconnection or network interruption within this time interval, they are connected to their previous session. Otherwise, they are connected to a new session with a new pool instance. * * @see http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-workspaces-workspacespool.html#cfn-workspaces-workspacespool-timeoutsettings */ readonly timeoutSettings?: cdk.IResolvable | CfnWorkspacesPool.TimeoutSettingsProperty; } export type { IConnectionAliasRef, ConnectionAliasReference }; export type { IWorkspaceRef, WorkspaceReference }; export type { IDirectoryRef, DirectoryReference }; export type { IWorkspaceIpGroupRef, WorkspaceIpGroupReference }; export type { IWorkspacesPoolRef, WorkspacesPoolReference };