aws-cdk-lib 2.209.1__py3-none-any.whl → 2.211.0__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of aws-cdk-lib might be problematic. Click here for more details.

Files changed (58) hide show
  1. aws_cdk/__init__.py +6 -11
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.209.1.jsii.tgz → aws-cdk-lib@2.211.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +2 -1
  5. aws_cdk/aws_appconfig/__init__.py +9 -0
  6. aws_cdk/aws_arcregionswitch/__init__.py +4962 -0
  7. aws_cdk/aws_athena/__init__.py +23 -19
  8. aws_cdk/aws_autoscaling/__init__.py +6 -6
  9. aws_cdk/aws_batch/__init__.py +721 -51
  10. aws_cdk/aws_cassandra/__init__.py +28 -1
  11. aws_cdk/aws_cloudfront/__init__.py +20 -8
  12. aws_cdk/aws_cognito/__init__.py +9 -2
  13. aws_cdk/aws_datazone/__init__.py +118 -77
  14. aws_cdk/aws_dax/__init__.py +39 -0
  15. aws_cdk/aws_deadline/__init__.py +155 -7
  16. aws_cdk/aws_docdb/__init__.py +20 -11
  17. aws_cdk/aws_dynamodb/__init__.py +160 -20
  18. aws_cdk/aws_ec2/__init__.py +978 -256
  19. aws_cdk/aws_ecr/__init__.py +274 -0
  20. aws_cdk/aws_ecs/__init__.py +335 -220
  21. aws_cdk/aws_eks/__init__.py +51 -3
  22. aws_cdk/aws_elasticloadbalancingv2/__init__.py +9 -7
  23. aws_cdk/aws_entityresolution/__init__.py +240 -45
  24. aws_cdk/aws_evs/__init__.py +20 -45
  25. aws_cdk/aws_iot/__init__.py +387 -0
  26. aws_cdk/aws_iotsitewise/__init__.py +1247 -139
  27. aws_cdk/aws_ivs/__init__.py +443 -33
  28. aws_cdk/aws_kinesisfirehose/__init__.py +2 -0
  29. aws_cdk/aws_kms/__init__.py +15 -0
  30. aws_cdk/aws_lambda/__init__.py +3 -3
  31. aws_cdk/aws_lightsail/__init__.py +590 -0
  32. aws_cdk/aws_logs/__init__.py +97 -3
  33. aws_cdk/aws_medialive/__init__.py +270 -7
  34. aws_cdk/aws_mediapackagev2/__init__.py +204 -6
  35. aws_cdk/aws_neptune/__init__.py +41 -2
  36. aws_cdk/aws_networkfirewall/__init__.py +490 -134
  37. aws_cdk/aws_observabilityadmin/__init__.py +1468 -0
  38. aws_cdk/aws_opensearchserverless/__init__.py +2 -2
  39. aws_cdk/aws_opsworks/__init__.py +125 -125
  40. aws_cdk/aws_opsworkscm/__init__.py +1 -53
  41. aws_cdk/aws_pcs/__init__.py +36 -0
  42. aws_cdk/aws_qbusiness/__init__.py +3 -3
  43. aws_cdk/aws_quicksight/__init__.py +107 -0
  44. aws_cdk/aws_rds/__init__.py +274 -0
  45. aws_cdk/aws_s3/__init__.py +56 -1
  46. aws_cdk/aws_s3express/__init__.py +52 -1
  47. aws_cdk/aws_sagemaker/__init__.py +4033 -218
  48. aws_cdk/aws_ses/__init__.py +172 -9
  49. aws_cdk/aws_ssm/__init__.py +8 -4
  50. aws_cdk/aws_verifiedpermissions/__init__.py +23 -2
  51. aws_cdk/aws_wisdom/__init__.py +2 -2
  52. aws_cdk/aws_workspacesweb/__init__.py +949 -157
  53. {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/METADATA +8 -8
  54. {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/RECORD +58 -56
  55. {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/LICENSE +0 -0
  56. {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/NOTICE +0 -0
  57. {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/WHEEL +0 -0
  58. {aws_cdk_lib-2.209.1.dist-info → aws_cdk_lib-2.211.0.dist-info}/top_level.txt +0 -0
@@ -5775,6 +5775,525 @@ class CfnDistributionProps:
5775
5775
  )
5776
5776
 
5777
5777
 
5778
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
5779
+ class CfnDomain(
5780
+ _CfnResource_9df397a6,
5781
+ metaclass=jsii.JSIIMeta,
5782
+ jsii_type="aws-cdk-lib.aws_lightsail.CfnDomain",
5783
+ ):
5784
+ '''Describes a domain where you are storing recordsets.
5785
+
5786
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html
5787
+ :cloudformationResource: AWS::Lightsail::Domain
5788
+ :exampleMetadata: fixture=_generated
5789
+
5790
+ Example::
5791
+
5792
+ # The code below shows an example of how to instantiate this type.
5793
+ # The values are placeholders you should change.
5794
+ from aws_cdk import aws_lightsail as lightsail
5795
+
5796
+ cfn_domain = lightsail.CfnDomain(self, "MyCfnDomain",
5797
+ domain_name="domainName",
5798
+
5799
+ # the properties below are optional
5800
+ domain_entries=[lightsail.CfnDomain.DomainEntryProperty(
5801
+ name="name",
5802
+ target="target",
5803
+ type="type",
5804
+
5805
+ # the properties below are optional
5806
+ id="id",
5807
+ is_alias=False
5808
+ )],
5809
+ tags=[CfnTag(
5810
+ key="key",
5811
+ value="value"
5812
+ )]
5813
+ )
5814
+ '''
5815
+
5816
+ def __init__(
5817
+ self,
5818
+ scope: _constructs_77d1e7e8.Construct,
5819
+ id: builtins.str,
5820
+ *,
5821
+ domain_name: builtins.str,
5822
+ domain_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDomain.DomainEntryProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
5823
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
5824
+ ) -> None:
5825
+ '''
5826
+ :param scope: Scope in which this resource is defined.
5827
+ :param id: Construct identifier for this resource (unique in its scope).
5828
+ :param domain_name: The fully qualified domain name in the certificate request.
5829
+ :param domain_entries: An array of key-value pairs containing information about the domain entries.
5830
+ :param tags: The tag keys and optional values for the resource. For more information about tags in Lightsail, see the `Amazon Lightsail Developer Guide <https://docs.aws.amazon.com/lightsail/latest/userguide/amazon-lightsail-tags>`_ .
5831
+ '''
5832
+ if __debug__:
5833
+ type_hints = typing.get_type_hints(_typecheckingstub__fe82b246fe7ed5830d2f0fc5524cb4172fd4d2438795a1aba9ad5e6fda309803)
5834
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
5835
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
5836
+ props = CfnDomainProps(
5837
+ domain_name=domain_name, domain_entries=domain_entries, tags=tags
5838
+ )
5839
+
5840
+ jsii.create(self.__class__, self, [scope, id, props])
5841
+
5842
+ @jsii.member(jsii_name="inspect")
5843
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
5844
+ '''Examines the CloudFormation resource and discloses attributes.
5845
+
5846
+ :param inspector: tree inspector to collect and process attributes.
5847
+ '''
5848
+ if __debug__:
5849
+ type_hints = typing.get_type_hints(_typecheckingstub__c5869283d5873a582cc7febd55d88bc8f89d5e0d976b0c63a738d68a672de289)
5850
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
5851
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
5852
+
5853
+ @jsii.member(jsii_name="renderProperties")
5854
+ def _render_properties(
5855
+ self,
5856
+ props: typing.Mapping[builtins.str, typing.Any],
5857
+ ) -> typing.Mapping[builtins.str, typing.Any]:
5858
+ '''
5859
+ :param props: -
5860
+ '''
5861
+ if __debug__:
5862
+ type_hints = typing.get_type_hints(_typecheckingstub__a03ca7db8e2eb25b17b104e3e9ff0b0b0fbf08555e1dbe68b5b5b3af1073c501)
5863
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
5864
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
5865
+
5866
+ @jsii.python.classproperty
5867
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
5868
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
5869
+ '''The CloudFormation resource type name for this resource class.'''
5870
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
5871
+
5872
+ @builtins.property
5873
+ @jsii.member(jsii_name="attrArn")
5874
+ def attr_arn(self) -> builtins.str:
5875
+ '''The Amazon Resource Name (ARN) of the domain recordset ( ``arn:aws:lightsail:global:123456789101:Domain/824cede0-abc7-4f84-8dbc-12345EXAMPLE`` ).
5876
+
5877
+ :cloudformationAttribute: Arn
5878
+ '''
5879
+ return typing.cast(builtins.str, jsii.get(self, "attrArn"))
5880
+
5881
+ @builtins.property
5882
+ @jsii.member(jsii_name="attrCreatedAt")
5883
+ def attr_created_at(self) -> builtins.str:
5884
+ '''The date when the domain recordset was created.
5885
+
5886
+ :cloudformationAttribute: CreatedAt
5887
+ '''
5888
+ return typing.cast(builtins.str, jsii.get(self, "attrCreatedAt"))
5889
+
5890
+ @builtins.property
5891
+ @jsii.member(jsii_name="attrLocation")
5892
+ def attr_location(self) -> _IResolvable_da3f097b:
5893
+ '''The AWS Region and Availability Zone where the domain was created (read-only).
5894
+
5895
+ :cloudformationAttribute: Location
5896
+ '''
5897
+ return typing.cast(_IResolvable_da3f097b, jsii.get(self, "attrLocation"))
5898
+
5899
+ @builtins.property
5900
+ @jsii.member(jsii_name="attrResourceType")
5901
+ def attr_resource_type(self) -> builtins.str:
5902
+ '''The resource type.
5903
+
5904
+ :cloudformationAttribute: ResourceType
5905
+ '''
5906
+ return typing.cast(builtins.str, jsii.get(self, "attrResourceType"))
5907
+
5908
+ @builtins.property
5909
+ @jsii.member(jsii_name="attrSupportCode")
5910
+ def attr_support_code(self) -> builtins.str:
5911
+ '''The support code.
5912
+
5913
+ Include this code in your email to support when you have questions about an instance or another resource in Lightsail. This code enables our support team to look up your Lightsail information more easily.
5914
+
5915
+ :cloudformationAttribute: SupportCode
5916
+ '''
5917
+ return typing.cast(builtins.str, jsii.get(self, "attrSupportCode"))
5918
+
5919
+ @builtins.property
5920
+ @jsii.member(jsii_name="cdkTagManager")
5921
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
5922
+ '''Tag Manager which manages the tags for this resource.'''
5923
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
5924
+
5925
+ @builtins.property
5926
+ @jsii.member(jsii_name="cfnProperties")
5927
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
5928
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
5929
+
5930
+ @builtins.property
5931
+ @jsii.member(jsii_name="domainName")
5932
+ def domain_name(self) -> builtins.str:
5933
+ '''The fully qualified domain name in the certificate request.'''
5934
+ return typing.cast(builtins.str, jsii.get(self, "domainName"))
5935
+
5936
+ @domain_name.setter
5937
+ def domain_name(self, value: builtins.str) -> None:
5938
+ if __debug__:
5939
+ type_hints = typing.get_type_hints(_typecheckingstub__18c312b38452b100f6b9507db7e6e5dabba6daa6c2a21e716e3069f4029b91ff)
5940
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5941
+ jsii.set(self, "domainName", value) # pyright: ignore[reportArgumentType]
5942
+
5943
+ @builtins.property
5944
+ @jsii.member(jsii_name="domainEntries")
5945
+ def domain_entries(
5946
+ self,
5947
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDomain.DomainEntryProperty"]]]]:
5948
+ '''An array of key-value pairs containing information about the domain entries.'''
5949
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDomain.DomainEntryProperty"]]]], jsii.get(self, "domainEntries"))
5950
+
5951
+ @domain_entries.setter
5952
+ def domain_entries(
5953
+ self,
5954
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnDomain.DomainEntryProperty"]]]],
5955
+ ) -> None:
5956
+ if __debug__:
5957
+ type_hints = typing.get_type_hints(_typecheckingstub__751d0aaf99cc70b85edb0ece306cc421fe3ebfd62efaace5ee34838f421756e1)
5958
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5959
+ jsii.set(self, "domainEntries", value) # pyright: ignore[reportArgumentType]
5960
+
5961
+ @builtins.property
5962
+ @jsii.member(jsii_name="tags")
5963
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
5964
+ '''The tag keys and optional values for the resource.'''
5965
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
5966
+
5967
+ @tags.setter
5968
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
5969
+ if __debug__:
5970
+ type_hints = typing.get_type_hints(_typecheckingstub__0d269539a28b4197d92a71ab41d2713cc83b7c390022d51ef6b28f0b7f9757b8)
5971
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5972
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
5973
+
5974
+ @jsii.data_type(
5975
+ jsii_type="aws-cdk-lib.aws_lightsail.CfnDomain.DomainEntryProperty",
5976
+ jsii_struct_bases=[],
5977
+ name_mapping={
5978
+ "name": "name",
5979
+ "target": "target",
5980
+ "type": "type",
5981
+ "id": "id",
5982
+ "is_alias": "isAlias",
5983
+ },
5984
+ )
5985
+ class DomainEntryProperty:
5986
+ def __init__(
5987
+ self,
5988
+ *,
5989
+ name: builtins.str,
5990
+ target: builtins.str,
5991
+ type: builtins.str,
5992
+ id: typing.Optional[builtins.str] = None,
5993
+ is_alias: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
5994
+ ) -> None:
5995
+ '''Describes a domain recordset entry.
5996
+
5997
+ :param name: The name of the domain.
5998
+ :param target: The target IP address ( ``192.0.2.0`` ), or AWS name server ( ``ns-111.awsdns-22.com.`` ). For Lightsail load balancers, the value looks like ``ab1234c56789c6b86aba6fb203d443bc-123456789.us-east-2.elb.amazonaws.com`` . For Lightsail distributions, the value looks like ``exampled1182ne.cloudfront.net`` . For Lightsail container services, the value looks like ``container-service-1.example23scljs.us-west-2.cs.amazonlightsail.com`` . Be sure to also set ``isAlias`` to ``true`` when setting up an A record for a Lightsail load balancer, distribution, or container service.
5999
+ :param type: The type of domain entry, such as address for IPv4 (A), address for IPv6 (AAAA), canonical name (CNAME), mail exchanger (MX), name server (NS), start of authority (SOA), service locator (SRV), or text (TXT). The following domain entry types can be used: - ``A`` - ``AAAA`` - ``CNAME`` - ``MX`` - ``NS`` - ``SOA`` - ``SRV`` - ``TXT``
6000
+ :param id: The ID of the domain recordset entry.
6001
+ :param is_alias: When ``true`` , specifies whether the domain entry is an alias used by the Lightsail load balancer, Lightsail container service, Lightsail content delivery network (CDN) distribution, or another AWS resource. You can include an alias (A type) record in your request, which points to the DNS name of a load balancer, container service, CDN distribution, or other AWS resource and routes traffic to that resource.
6002
+
6003
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-domainentry.html
6004
+ :exampleMetadata: fixture=_generated
6005
+
6006
+ Example::
6007
+
6008
+ # The code below shows an example of how to instantiate this type.
6009
+ # The values are placeholders you should change.
6010
+ from aws_cdk import aws_lightsail as lightsail
6011
+
6012
+ domain_entry_property = lightsail.CfnDomain.DomainEntryProperty(
6013
+ name="name",
6014
+ target="target",
6015
+ type="type",
6016
+
6017
+ # the properties below are optional
6018
+ id="id",
6019
+ is_alias=False
6020
+ )
6021
+ '''
6022
+ if __debug__:
6023
+ type_hints = typing.get_type_hints(_typecheckingstub__a2089a9f9b5a6ae2cd6b2c26e4c85e131b82f110629db2f6b789e7f8555f3c51)
6024
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
6025
+ check_type(argname="argument target", value=target, expected_type=type_hints["target"])
6026
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
6027
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
6028
+ check_type(argname="argument is_alias", value=is_alias, expected_type=type_hints["is_alias"])
6029
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6030
+ "name": name,
6031
+ "target": target,
6032
+ "type": type,
6033
+ }
6034
+ if id is not None:
6035
+ self._values["id"] = id
6036
+ if is_alias is not None:
6037
+ self._values["is_alias"] = is_alias
6038
+
6039
+ @builtins.property
6040
+ def name(self) -> builtins.str:
6041
+ '''The name of the domain.
6042
+
6043
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-domainentry.html#cfn-lightsail-domain-domainentry-name
6044
+ '''
6045
+ result = self._values.get("name")
6046
+ assert result is not None, "Required property 'name' is missing"
6047
+ return typing.cast(builtins.str, result)
6048
+
6049
+ @builtins.property
6050
+ def target(self) -> builtins.str:
6051
+ '''The target IP address ( ``192.0.2.0`` ), or AWS name server ( ``ns-111.awsdns-22.com.`` ).
6052
+
6053
+ For Lightsail load balancers, the value looks like ``ab1234c56789c6b86aba6fb203d443bc-123456789.us-east-2.elb.amazonaws.com`` . For Lightsail distributions, the value looks like ``exampled1182ne.cloudfront.net`` . For Lightsail container services, the value looks like ``container-service-1.example23scljs.us-west-2.cs.amazonlightsail.com`` . Be sure to also set ``isAlias`` to ``true`` when setting up an A record for a Lightsail load balancer, distribution, or container service.
6054
+
6055
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-domainentry.html#cfn-lightsail-domain-domainentry-target
6056
+ '''
6057
+ result = self._values.get("target")
6058
+ assert result is not None, "Required property 'target' is missing"
6059
+ return typing.cast(builtins.str, result)
6060
+
6061
+ @builtins.property
6062
+ def type(self) -> builtins.str:
6063
+ '''The type of domain entry, such as address for IPv4 (A), address for IPv6 (AAAA), canonical name (CNAME), mail exchanger (MX), name server (NS), start of authority (SOA), service locator (SRV), or text (TXT).
6064
+
6065
+ The following domain entry types can be used:
6066
+
6067
+ - ``A``
6068
+ - ``AAAA``
6069
+ - ``CNAME``
6070
+ - ``MX``
6071
+ - ``NS``
6072
+ - ``SOA``
6073
+ - ``SRV``
6074
+ - ``TXT``
6075
+
6076
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-domainentry.html#cfn-lightsail-domain-domainentry-type
6077
+ '''
6078
+ result = self._values.get("type")
6079
+ assert result is not None, "Required property 'type' is missing"
6080
+ return typing.cast(builtins.str, result)
6081
+
6082
+ @builtins.property
6083
+ def id(self) -> typing.Optional[builtins.str]:
6084
+ '''The ID of the domain recordset entry.
6085
+
6086
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-domainentry.html#cfn-lightsail-domain-domainentry-id
6087
+ '''
6088
+ result = self._values.get("id")
6089
+ return typing.cast(typing.Optional[builtins.str], result)
6090
+
6091
+ @builtins.property
6092
+ def is_alias(
6093
+ self,
6094
+ ) -> typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]]:
6095
+ '''When ``true`` , specifies whether the domain entry is an alias used by the Lightsail load balancer, Lightsail container service, Lightsail content delivery network (CDN) distribution, or another AWS resource.
6096
+
6097
+ You can include an alias (A type) record in your request, which points to the DNS name of a load balancer, container service, CDN distribution, or other AWS resource and routes traffic to that resource.
6098
+
6099
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-domainentry.html#cfn-lightsail-domain-domainentry-isalias
6100
+ '''
6101
+ result = self._values.get("is_alias")
6102
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]], result)
6103
+
6104
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6105
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6106
+
6107
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6108
+ return not (rhs == self)
6109
+
6110
+ def __repr__(self) -> str:
6111
+ return "DomainEntryProperty(%s)" % ", ".join(
6112
+ k + "=" + repr(v) for k, v in self._values.items()
6113
+ )
6114
+
6115
+ @jsii.data_type(
6116
+ jsii_type="aws-cdk-lib.aws_lightsail.CfnDomain.LocationProperty",
6117
+ jsii_struct_bases=[],
6118
+ name_mapping={
6119
+ "availability_zone": "availabilityZone",
6120
+ "region_name": "regionName",
6121
+ },
6122
+ )
6123
+ class LocationProperty:
6124
+ def __init__(
6125
+ self,
6126
+ *,
6127
+ availability_zone: typing.Optional[builtins.str] = None,
6128
+ region_name: typing.Optional[builtins.str] = None,
6129
+ ) -> None:
6130
+ '''The AWS Region and Availability Zone where the domain was created (read-only).
6131
+
6132
+ :param availability_zone: The Availability Zone.
6133
+ :param region_name: The AWS Region name.
6134
+
6135
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-location.html
6136
+ :exampleMetadata: fixture=_generated
6137
+
6138
+ Example::
6139
+
6140
+ # The code below shows an example of how to instantiate this type.
6141
+ # The values are placeholders you should change.
6142
+ from aws_cdk import aws_lightsail as lightsail
6143
+
6144
+ location_property = lightsail.CfnDomain.LocationProperty(
6145
+ availability_zone="availabilityZone",
6146
+ region_name="regionName"
6147
+ )
6148
+ '''
6149
+ if __debug__:
6150
+ type_hints = typing.get_type_hints(_typecheckingstub__90dd64f1adcbc46305e94119be963a9a0b42e98e0d597ac23263cfbc5cf2e695)
6151
+ check_type(argname="argument availability_zone", value=availability_zone, expected_type=type_hints["availability_zone"])
6152
+ check_type(argname="argument region_name", value=region_name, expected_type=type_hints["region_name"])
6153
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6154
+ if availability_zone is not None:
6155
+ self._values["availability_zone"] = availability_zone
6156
+ if region_name is not None:
6157
+ self._values["region_name"] = region_name
6158
+
6159
+ @builtins.property
6160
+ def availability_zone(self) -> typing.Optional[builtins.str]:
6161
+ '''The Availability Zone.
6162
+
6163
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-location.html#cfn-lightsail-domain-location-availabilityzone
6164
+ '''
6165
+ result = self._values.get("availability_zone")
6166
+ return typing.cast(typing.Optional[builtins.str], result)
6167
+
6168
+ @builtins.property
6169
+ def region_name(self) -> typing.Optional[builtins.str]:
6170
+ '''The AWS Region name.
6171
+
6172
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-lightsail-domain-location.html#cfn-lightsail-domain-location-regionname
6173
+ '''
6174
+ result = self._values.get("region_name")
6175
+ return typing.cast(typing.Optional[builtins.str], result)
6176
+
6177
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6178
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6179
+
6180
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6181
+ return not (rhs == self)
6182
+
6183
+ def __repr__(self) -> str:
6184
+ return "LocationProperty(%s)" % ", ".join(
6185
+ k + "=" + repr(v) for k, v in self._values.items()
6186
+ )
6187
+
6188
+
6189
+ @jsii.data_type(
6190
+ jsii_type="aws-cdk-lib.aws_lightsail.CfnDomainProps",
6191
+ jsii_struct_bases=[],
6192
+ name_mapping={
6193
+ "domain_name": "domainName",
6194
+ "domain_entries": "domainEntries",
6195
+ "tags": "tags",
6196
+ },
6197
+ )
6198
+ class CfnDomainProps:
6199
+ def __init__(
6200
+ self,
6201
+ *,
6202
+ domain_name: builtins.str,
6203
+ domain_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomain.DomainEntryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6204
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6205
+ ) -> None:
6206
+ '''Properties for defining a ``CfnDomain``.
6207
+
6208
+ :param domain_name: The fully qualified domain name in the certificate request.
6209
+ :param domain_entries: An array of key-value pairs containing information about the domain entries.
6210
+ :param tags: The tag keys and optional values for the resource. For more information about tags in Lightsail, see the `Amazon Lightsail Developer Guide <https://docs.aws.amazon.com/lightsail/latest/userguide/amazon-lightsail-tags>`_ .
6211
+
6212
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html
6213
+ :exampleMetadata: fixture=_generated
6214
+
6215
+ Example::
6216
+
6217
+ # The code below shows an example of how to instantiate this type.
6218
+ # The values are placeholders you should change.
6219
+ from aws_cdk import aws_lightsail as lightsail
6220
+
6221
+ cfn_domain_props = lightsail.CfnDomainProps(
6222
+ domain_name="domainName",
6223
+
6224
+ # the properties below are optional
6225
+ domain_entries=[lightsail.CfnDomain.DomainEntryProperty(
6226
+ name="name",
6227
+ target="target",
6228
+ type="type",
6229
+
6230
+ # the properties below are optional
6231
+ id="id",
6232
+ is_alias=False
6233
+ )],
6234
+ tags=[CfnTag(
6235
+ key="key",
6236
+ value="value"
6237
+ )]
6238
+ )
6239
+ '''
6240
+ if __debug__:
6241
+ type_hints = typing.get_type_hints(_typecheckingstub__b15d375f4723a95213ce832b405ecb413a0e590e3d391fc2396fabdd2d0f9eee)
6242
+ check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
6243
+ check_type(argname="argument domain_entries", value=domain_entries, expected_type=type_hints["domain_entries"])
6244
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
6245
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6246
+ "domain_name": domain_name,
6247
+ }
6248
+ if domain_entries is not None:
6249
+ self._values["domain_entries"] = domain_entries
6250
+ if tags is not None:
6251
+ self._values["tags"] = tags
6252
+
6253
+ @builtins.property
6254
+ def domain_name(self) -> builtins.str:
6255
+ '''The fully qualified domain name in the certificate request.
6256
+
6257
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html#cfn-lightsail-domain-domainname
6258
+ '''
6259
+ result = self._values.get("domain_name")
6260
+ assert result is not None, "Required property 'domain_name' is missing"
6261
+ return typing.cast(builtins.str, result)
6262
+
6263
+ @builtins.property
6264
+ def domain_entries(
6265
+ self,
6266
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnDomain.DomainEntryProperty]]]]:
6267
+ '''An array of key-value pairs containing information about the domain entries.
6268
+
6269
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html#cfn-lightsail-domain-domainentries
6270
+ '''
6271
+ result = self._values.get("domain_entries")
6272
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnDomain.DomainEntryProperty]]]], result)
6273
+
6274
+ @builtins.property
6275
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
6276
+ '''The tag keys and optional values for the resource.
6277
+
6278
+ For more information about tags in Lightsail, see the `Amazon Lightsail Developer Guide <https://docs.aws.amazon.com/lightsail/latest/userguide/amazon-lightsail-tags>`_ .
6279
+
6280
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-lightsail-domain.html#cfn-lightsail-domain-tags
6281
+ '''
6282
+ result = self._values.get("tags")
6283
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
6284
+
6285
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6286
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6287
+
6288
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6289
+ return not (rhs == self)
6290
+
6291
+ def __repr__(self) -> str:
6292
+ return "CfnDomainProps(%s)" % ", ".join(
6293
+ k + "=" + repr(v) for k, v in self._values.items()
6294
+ )
6295
+
6296
+
5778
6297
  @jsii.implements(_IInspectable_c2943556, _ITaggable_36806126)
5779
6298
  class CfnInstance(
5780
6299
  _CfnResource_9df397a6,
@@ -9042,6 +9561,8 @@ __all__ = [
9042
9561
  "CfnDiskProps",
9043
9562
  "CfnDistribution",
9044
9563
  "CfnDistributionProps",
9564
+ "CfnDomain",
9565
+ "CfnDomainProps",
9045
9566
  "CfnInstance",
9046
9567
  "CfnInstanceProps",
9047
9568
  "CfnInstanceSnapshot",
@@ -9913,6 +10434,75 @@ def _typecheckingstub__5746be261e67458f872b406208009ddcf740c3277f27869ccbc24697b
9913
10434
  """Type checking stubs"""
9914
10435
  pass
9915
10436
 
10437
+ def _typecheckingstub__fe82b246fe7ed5830d2f0fc5524cb4172fd4d2438795a1aba9ad5e6fda309803(
10438
+ scope: _constructs_77d1e7e8.Construct,
10439
+ id: builtins.str,
10440
+ *,
10441
+ domain_name: builtins.str,
10442
+ domain_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomain.DomainEntryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
10443
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
10444
+ ) -> None:
10445
+ """Type checking stubs"""
10446
+ pass
10447
+
10448
+ def _typecheckingstub__c5869283d5873a582cc7febd55d88bc8f89d5e0d976b0c63a738d68a672de289(
10449
+ inspector: _TreeInspector_488e0dd5,
10450
+ ) -> None:
10451
+ """Type checking stubs"""
10452
+ pass
10453
+
10454
+ def _typecheckingstub__a03ca7db8e2eb25b17b104e3e9ff0b0b0fbf08555e1dbe68b5b5b3af1073c501(
10455
+ props: typing.Mapping[builtins.str, typing.Any],
10456
+ ) -> None:
10457
+ """Type checking stubs"""
10458
+ pass
10459
+
10460
+ def _typecheckingstub__18c312b38452b100f6b9507db7e6e5dabba6daa6c2a21e716e3069f4029b91ff(
10461
+ value: builtins.str,
10462
+ ) -> None:
10463
+ """Type checking stubs"""
10464
+ pass
10465
+
10466
+ def _typecheckingstub__751d0aaf99cc70b85edb0ece306cc421fe3ebfd62efaace5ee34838f421756e1(
10467
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnDomain.DomainEntryProperty]]]],
10468
+ ) -> None:
10469
+ """Type checking stubs"""
10470
+ pass
10471
+
10472
+ def _typecheckingstub__0d269539a28b4197d92a71ab41d2713cc83b7c390022d51ef6b28f0b7f9757b8(
10473
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
10474
+ ) -> None:
10475
+ """Type checking stubs"""
10476
+ pass
10477
+
10478
+ def _typecheckingstub__a2089a9f9b5a6ae2cd6b2c26e4c85e131b82f110629db2f6b789e7f8555f3c51(
10479
+ *,
10480
+ name: builtins.str,
10481
+ target: builtins.str,
10482
+ type: builtins.str,
10483
+ id: typing.Optional[builtins.str] = None,
10484
+ is_alias: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
10485
+ ) -> None:
10486
+ """Type checking stubs"""
10487
+ pass
10488
+
10489
+ def _typecheckingstub__90dd64f1adcbc46305e94119be963a9a0b42e98e0d597ac23263cfbc5cf2e695(
10490
+ *,
10491
+ availability_zone: typing.Optional[builtins.str] = None,
10492
+ region_name: typing.Optional[builtins.str] = None,
10493
+ ) -> None:
10494
+ """Type checking stubs"""
10495
+ pass
10496
+
10497
+ def _typecheckingstub__b15d375f4723a95213ce832b405ecb413a0e590e3d391fc2396fabdd2d0f9eee(
10498
+ *,
10499
+ domain_name: builtins.str,
10500
+ domain_entries: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDomain.DomainEntryProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
10501
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
10502
+ ) -> None:
10503
+ """Type checking stubs"""
10504
+ pass
10505
+
9916
10506
  def _typecheckingstub__f56ba2d2d7e68ec61cd3684949f9d2894843d2a820ea3c2a5dce40b3698dd9fe(
9917
10507
  scope: _constructs_77d1e7e8.Construct,
9918
10508
  id: builtins.str,