aws-cdk-lib 2.173.4__py3-none-any.whl → 2.174.1__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 (91) hide show
  1. aws_cdk/__init__.py +210 -181
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.173.4.jsii.tgz → aws-cdk-lib@2.174.1.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +18 -0
  5. aws_cdk/aws_apigateway/__init__.py +127 -168
  6. aws_cdk/aws_appconfig/__init__.py +498 -1
  7. aws_cdk/aws_applicationautoscaling/__init__.py +4 -1
  8. aws_cdk/aws_appsync/__init__.py +4 -0
  9. aws_cdk/aws_autoscaling/__init__.py +96 -0
  10. aws_cdk/aws_batch/__init__.py +662 -237
  11. aws_cdk/aws_bedrock/__init__.py +2122 -181
  12. aws_cdk/aws_cassandra/__init__.py +476 -4
  13. aws_cdk/aws_cleanrooms/__init__.py +1227 -20
  14. aws_cdk/aws_cloudformation/__init__.py +172 -169
  15. aws_cdk/aws_cloudfront/__init__.py +773 -26
  16. aws_cdk/aws_cloudtrail/__init__.py +8 -2
  17. aws_cdk/aws_codebuild/__init__.py +83 -0
  18. aws_cdk/aws_codepipeline/__init__.py +2 -1
  19. aws_cdk/aws_cognito/__init__.py +232 -200
  20. aws_cdk/aws_connect/__init__.py +187 -36
  21. aws_cdk/aws_connectcampaignsv2/__init__.py +106 -12
  22. aws_cdk/aws_databrew/__init__.py +69 -1
  23. aws_cdk/aws_datasync/__init__.py +33 -28
  24. aws_cdk/aws_datazone/__init__.py +141 -41
  25. aws_cdk/aws_dlm/__init__.py +20 -10
  26. aws_cdk/aws_dms/__init__.py +736 -22
  27. aws_cdk/aws_docdb/__init__.py +134 -0
  28. aws_cdk/aws_dynamodb/__init__.py +76 -4
  29. aws_cdk/aws_ec2/__init__.py +1233 -65
  30. aws_cdk/aws_ecr/__init__.py +31 -0
  31. aws_cdk/aws_ecr_assets/__init__.py +5 -0
  32. aws_cdk/aws_ecs/__init__.py +88 -11
  33. aws_cdk/aws_efs/__init__.py +15 -8
  34. aws_cdk/aws_eks/__init__.py +114 -45
  35. aws_cdk/aws_elasticloadbalancingv2/__init__.py +2 -2
  36. aws_cdk/aws_emrserverless/__init__.py +143 -0
  37. aws_cdk/aws_events/__init__.py +50 -30
  38. aws_cdk/aws_fis/__init__.py +33 -33
  39. aws_cdk/aws_fsx/__init__.py +20 -10
  40. aws_cdk/aws_glue/__init__.py +34 -11
  41. aws_cdk/aws_greengrass/__init__.py +8 -8
  42. aws_cdk/aws_guardduty/__init__.py +1 -1
  43. aws_cdk/aws_imagebuilder/__init__.py +45 -47
  44. aws_cdk/aws_internetmonitor/__init__.py +3 -3
  45. aws_cdk/aws_invoicing/__init__.py +55 -30
  46. aws_cdk/aws_iot/__init__.py +1117 -4
  47. aws_cdk/aws_iot1click/__init__.py +17 -7
  48. aws_cdk/aws_kendra/__init__.py +4 -6
  49. aws_cdk/aws_lambda/__init__.py +15 -1
  50. aws_cdk/aws_logs/__init__.py +4011 -86
  51. aws_cdk/aws_m2/__init__.py +41 -0
  52. aws_cdk/aws_mediaconnect/__init__.py +202 -7
  53. aws_cdk/aws_mediaconvert/__init__.py +39 -0
  54. aws_cdk/aws_memorydb/__init__.py +22 -22
  55. aws_cdk/aws_networkmanager/__init__.py +758 -0
  56. aws_cdk/aws_opensearchservice/__init__.py +222 -0
  57. aws_cdk/aws_organizations/__init__.py +5 -3
  58. aws_cdk/aws_pcs/__init__.py +3038 -0
  59. aws_cdk/aws_pipes/__init__.py +10 -10
  60. aws_cdk/aws_qbusiness/__init__.py +415 -140
  61. aws_cdk/aws_quicksight/__init__.py +59795 -49748
  62. aws_cdk/aws_ram/__init__.py +5 -11
  63. aws_cdk/aws_rbin/__init__.py +28 -16
  64. aws_cdk/aws_rds/__init__.py +186 -31
  65. aws_cdk/aws_redshiftserverless/__init__.py +156 -0
  66. aws_cdk/aws_resiliencehub/__init__.py +2 -1
  67. aws_cdk/aws_route53_targets/__init__.py +5 -5
  68. aws_cdk/aws_s3/__init__.py +25 -15
  69. aws_cdk/aws_s3express/__init__.py +7 -7
  70. aws_cdk/aws_s3tables/__init__.py +683 -0
  71. aws_cdk/aws_sagemaker/__init__.py +580 -195
  72. aws_cdk/aws_secretsmanager/__init__.py +2 -0
  73. aws_cdk/aws_securityhub/__init__.py +41 -165
  74. aws_cdk/aws_servicediscovery/__init__.py +10 -3
  75. aws_cdk/aws_ses/__init__.py +190 -5
  76. aws_cdk/aws_sns/__init__.py +7 -3
  77. aws_cdk/aws_synthetics/__init__.py +29 -4
  78. aws_cdk/aws_transfer/__init__.py +8 -0
  79. aws_cdk/aws_vpclattice/__init__.py +147 -77
  80. aws_cdk/aws_wafv2/__init__.py +20 -8
  81. aws_cdk/aws_wisdom/__init__.py +162 -111
  82. aws_cdk/aws_workspaces/__init__.py +10 -4
  83. aws_cdk/cloud_assembly_schema/__init__.py +22 -0
  84. aws_cdk/custom_resources/__init__.py +31 -0
  85. aws_cdk/cx_api/__init__.py +19 -0
  86. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/LICENSE +1 -1
  87. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/METADATA +2 -2
  88. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/NOTICE +1 -1
  89. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/RECORD +91 -89
  90. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/WHEEL +0 -0
  91. {aws_cdk_lib-2.173.4.dist-info → aws_cdk_lib-2.174.1.dist-info}/top_level.txt +0 -0
@@ -775,9 +775,22 @@ class CfnCollaboration(
775
775
  member_abilities=["memberAbilities"],
776
776
 
777
777
  # the properties below are optional
778
+ ml_member_abilities=cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty(
779
+ custom_ml_member_abilities=["customMlMemberAbilities"]
780
+ ),
778
781
  payment_configuration=cleanrooms.CfnCollaboration.PaymentConfigurationProperty(
779
782
  query_compute=cleanrooms.CfnCollaboration.QueryComputePaymentConfigProperty(
780
783
  is_responsible=False
784
+ ),
785
+
786
+ # the properties below are optional
787
+ machine_learning=cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
788
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
789
+ is_responsible=False
790
+ ),
791
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
792
+ is_responsible=False
793
+ )
781
794
  )
782
795
  )
783
796
  )],
@@ -786,9 +799,22 @@ class CfnCollaboration(
786
799
 
787
800
  # the properties below are optional
788
801
  analytics_engine="analyticsEngine",
802
+ creator_ml_member_abilities=cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty(
803
+ custom_ml_member_abilities=["customMlMemberAbilities"]
804
+ ),
789
805
  creator_payment_configuration=cleanrooms.CfnCollaboration.PaymentConfigurationProperty(
790
806
  query_compute=cleanrooms.CfnCollaboration.QueryComputePaymentConfigProperty(
791
807
  is_responsible=False
808
+ ),
809
+
810
+ # the properties below are optional
811
+ machine_learning=cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
812
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
813
+ is_responsible=False
814
+ ),
815
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
816
+ is_responsible=False
817
+ )
792
818
  )
793
819
  ),
794
820
  data_encryption_metadata=cleanrooms.CfnCollaboration.DataEncryptionMetadataProperty(
@@ -816,6 +842,7 @@ class CfnCollaboration(
816
842
  name: builtins.str,
817
843
  query_log_status: builtins.str,
818
844
  analytics_engine: typing.Optional[builtins.str] = None,
845
+ creator_ml_member_abilities: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.MLMemberAbilitiesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
819
846
  creator_payment_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.PaymentConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
820
847
  data_encryption_metadata: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.DataEncryptionMetadataProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
821
848
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -830,6 +857,7 @@ class CfnCollaboration(
830
857
  :param name: A human-readable identifier provided by the collaboration owner. Display names are not unique.
831
858
  :param query_log_status: An indicator as to whether query logging has been enabled or disabled for the collaboration.
832
859
  :param analytics_engine: The analytics engine for the collaboration.
860
+ :param creator_ml_member_abilities:
833
861
  :param creator_payment_configuration: An object representing the collaboration member's payment responsibilities set by the collaboration creator.
834
862
  :param data_encryption_metadata: The settings for client-side encryption for cryptographic computing.
835
863
  :param tags: An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.
@@ -846,6 +874,7 @@ class CfnCollaboration(
846
874
  name=name,
847
875
  query_log_status=query_log_status,
848
876
  analytics_engine=analytics_engine,
877
+ creator_ml_member_abilities=creator_ml_member_abilities,
849
878
  creator_payment_configuration=creator_payment_configuration,
850
879
  data_encryption_metadata=data_encryption_metadata,
851
880
  tags=tags,
@@ -1012,6 +1041,23 @@ class CfnCollaboration(
1012
1041
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1013
1042
  jsii.set(self, "analyticsEngine", value) # pyright: ignore[reportArgumentType]
1014
1043
 
1044
+ @builtins.property
1045
+ @jsii.member(jsii_name="creatorMlMemberAbilities")
1046
+ def creator_ml_member_abilities(
1047
+ self,
1048
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLMemberAbilitiesProperty"]]:
1049
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLMemberAbilitiesProperty"]], jsii.get(self, "creatorMlMemberAbilities"))
1050
+
1051
+ @creator_ml_member_abilities.setter
1052
+ def creator_ml_member_abilities(
1053
+ self,
1054
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLMemberAbilitiesProperty"]],
1055
+ ) -> None:
1056
+ if __debug__:
1057
+ type_hints = typing.get_type_hints(_typecheckingstub__97c0d0f6cb32a0cbf54c04b4f619c67713dd848075c944908bc62665b42284a9)
1058
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1059
+ jsii.set(self, "creatorMlMemberAbilities", value) # pyright: ignore[reportArgumentType]
1060
+
1015
1061
  @builtins.property
1016
1062
  @jsii.member(jsii_name="creatorPaymentConfiguration")
1017
1063
  def creator_payment_configuration(
@@ -1171,6 +1217,138 @@ class CfnCollaboration(
1171
1217
  k + "=" + repr(v) for k, v in self._values.items()
1172
1218
  )
1173
1219
 
1220
+ @jsii.data_type(
1221
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty",
1222
+ jsii_struct_bases=[],
1223
+ name_mapping={"custom_ml_member_abilities": "customMlMemberAbilities"},
1224
+ )
1225
+ class MLMemberAbilitiesProperty:
1226
+ def __init__(
1227
+ self,
1228
+ *,
1229
+ custom_ml_member_abilities: typing.Sequence[builtins.str],
1230
+ ) -> None:
1231
+ '''
1232
+ :param custom_ml_member_abilities:
1233
+
1234
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-mlmemberabilities.html
1235
+ :exampleMetadata: fixture=_generated
1236
+
1237
+ Example::
1238
+
1239
+ # The code below shows an example of how to instantiate this type.
1240
+ # The values are placeholders you should change.
1241
+ from aws_cdk import aws_cleanrooms as cleanrooms
1242
+
1243
+ m_lMember_abilities_property = cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty(
1244
+ custom_ml_member_abilities=["customMlMemberAbilities"]
1245
+ )
1246
+ '''
1247
+ if __debug__:
1248
+ type_hints = typing.get_type_hints(_typecheckingstub__1d12c181790032dcf002dcacb31cb4e50bd00d2ab068f38065b4ad7d1319d80c)
1249
+ check_type(argname="argument custom_ml_member_abilities", value=custom_ml_member_abilities, expected_type=type_hints["custom_ml_member_abilities"])
1250
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1251
+ "custom_ml_member_abilities": custom_ml_member_abilities,
1252
+ }
1253
+
1254
+ @builtins.property
1255
+ def custom_ml_member_abilities(self) -> typing.List[builtins.str]:
1256
+ '''
1257
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-mlmemberabilities.html#cfn-cleanrooms-collaboration-mlmemberabilities-custommlmemberabilities
1258
+ '''
1259
+ result = self._values.get("custom_ml_member_abilities")
1260
+ assert result is not None, "Required property 'custom_ml_member_abilities' is missing"
1261
+ return typing.cast(typing.List[builtins.str], result)
1262
+
1263
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1264
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1265
+
1266
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1267
+ return not (rhs == self)
1268
+
1269
+ def __repr__(self) -> str:
1270
+ return "MLMemberAbilitiesProperty(%s)" % ", ".join(
1271
+ k + "=" + repr(v) for k, v in self._values.items()
1272
+ )
1273
+
1274
+ @jsii.data_type(
1275
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnCollaboration.MLPaymentConfigProperty",
1276
+ jsii_struct_bases=[],
1277
+ name_mapping={
1278
+ "model_inference": "modelInference",
1279
+ "model_training": "modelTraining",
1280
+ },
1281
+ )
1282
+ class MLPaymentConfigProperty:
1283
+ def __init__(
1284
+ self,
1285
+ *,
1286
+ model_inference: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.ModelInferencePaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1287
+ model_training: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.ModelTrainingPaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1288
+ ) -> None:
1289
+ '''
1290
+ :param model_inference:
1291
+ :param model_training:
1292
+
1293
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-mlpaymentconfig.html
1294
+ :exampleMetadata: fixture=_generated
1295
+
1296
+ Example::
1297
+
1298
+ # The code below shows an example of how to instantiate this type.
1299
+ # The values are placeholders you should change.
1300
+ from aws_cdk import aws_cleanrooms as cleanrooms
1301
+
1302
+ m_lPayment_config_property = cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
1303
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
1304
+ is_responsible=False
1305
+ ),
1306
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
1307
+ is_responsible=False
1308
+ )
1309
+ )
1310
+ '''
1311
+ if __debug__:
1312
+ type_hints = typing.get_type_hints(_typecheckingstub__271514c890ff476984844077519496f6cd7107081ee5259613350b060c9bb355)
1313
+ check_type(argname="argument model_inference", value=model_inference, expected_type=type_hints["model_inference"])
1314
+ check_type(argname="argument model_training", value=model_training, expected_type=type_hints["model_training"])
1315
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1316
+ if model_inference is not None:
1317
+ self._values["model_inference"] = model_inference
1318
+ if model_training is not None:
1319
+ self._values["model_training"] = model_training
1320
+
1321
+ @builtins.property
1322
+ def model_inference(
1323
+ self,
1324
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.ModelInferencePaymentConfigProperty"]]:
1325
+ '''
1326
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-mlpaymentconfig.html#cfn-cleanrooms-collaboration-mlpaymentconfig-modelinference
1327
+ '''
1328
+ result = self._values.get("model_inference")
1329
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.ModelInferencePaymentConfigProperty"]], result)
1330
+
1331
+ @builtins.property
1332
+ def model_training(
1333
+ self,
1334
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.ModelTrainingPaymentConfigProperty"]]:
1335
+ '''
1336
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-mlpaymentconfig.html#cfn-cleanrooms-collaboration-mlpaymentconfig-modeltraining
1337
+ '''
1338
+ result = self._values.get("model_training")
1339
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.ModelTrainingPaymentConfigProperty"]], result)
1340
+
1341
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1342
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1343
+
1344
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1345
+ return not (rhs == self)
1346
+
1347
+ def __repr__(self) -> str:
1348
+ return "MLPaymentConfigProperty(%s)" % ", ".join(
1349
+ k + "=" + repr(v) for k, v in self._values.items()
1350
+ )
1351
+
1174
1352
  @jsii.data_type(
1175
1353
  jsii_type="aws-cdk-lib.aws_cleanrooms.CfnCollaboration.MemberSpecificationProperty",
1176
1354
  jsii_struct_bases=[],
@@ -1178,6 +1356,7 @@ class CfnCollaboration(
1178
1356
  "account_id": "accountId",
1179
1357
  "display_name": "displayName",
1180
1358
  "member_abilities": "memberAbilities",
1359
+ "ml_member_abilities": "mlMemberAbilities",
1181
1360
  "payment_configuration": "paymentConfiguration",
1182
1361
  },
1183
1362
  )
@@ -1188,6 +1367,7 @@ class CfnCollaboration(
1188
1367
  account_id: builtins.str,
1189
1368
  display_name: builtins.str,
1190
1369
  member_abilities: typing.Sequence[builtins.str],
1370
+ ml_member_abilities: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.MLMemberAbilitiesProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1191
1371
  payment_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.PaymentConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1192
1372
  ) -> None:
1193
1373
  '''Basic metadata used to construct a new member.
@@ -1195,6 +1375,7 @@ class CfnCollaboration(
1195
1375
  :param account_id: The identifier used to reference members of the collaboration. Currently only supports AWS account ID.
1196
1376
  :param display_name: The member's display name.
1197
1377
  :param member_abilities: The abilities granted to the collaboration member. *Allowed Values* : ``CAN_QUERY`` | ``CAN_RECEIVE_RESULTS``
1378
+ :param ml_member_abilities:
1198
1379
  :param payment_configuration: The collaboration member's payment responsibilities set by the collaboration creator. If the collaboration creator hasn't specified anyone as the member paying for query compute costs, then the member who can query is the default payer.
1199
1380
 
1200
1381
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-memberspecification.html
@@ -1212,9 +1393,22 @@ class CfnCollaboration(
1212
1393
  member_abilities=["memberAbilities"],
1213
1394
 
1214
1395
  # the properties below are optional
1396
+ ml_member_abilities=cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty(
1397
+ custom_ml_member_abilities=["customMlMemberAbilities"]
1398
+ ),
1215
1399
  payment_configuration=cleanrooms.CfnCollaboration.PaymentConfigurationProperty(
1216
1400
  query_compute=cleanrooms.CfnCollaboration.QueryComputePaymentConfigProperty(
1217
1401
  is_responsible=False
1402
+ ),
1403
+
1404
+ # the properties below are optional
1405
+ machine_learning=cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
1406
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
1407
+ is_responsible=False
1408
+ ),
1409
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
1410
+ is_responsible=False
1411
+ )
1218
1412
  )
1219
1413
  )
1220
1414
  )
@@ -1224,12 +1418,15 @@ class CfnCollaboration(
1224
1418
  check_type(argname="argument account_id", value=account_id, expected_type=type_hints["account_id"])
1225
1419
  check_type(argname="argument display_name", value=display_name, expected_type=type_hints["display_name"])
1226
1420
  check_type(argname="argument member_abilities", value=member_abilities, expected_type=type_hints["member_abilities"])
1421
+ check_type(argname="argument ml_member_abilities", value=ml_member_abilities, expected_type=type_hints["ml_member_abilities"])
1227
1422
  check_type(argname="argument payment_configuration", value=payment_configuration, expected_type=type_hints["payment_configuration"])
1228
1423
  self._values: typing.Dict[builtins.str, typing.Any] = {
1229
1424
  "account_id": account_id,
1230
1425
  "display_name": display_name,
1231
1426
  "member_abilities": member_abilities,
1232
1427
  }
1428
+ if ml_member_abilities is not None:
1429
+ self._values["ml_member_abilities"] = ml_member_abilities
1233
1430
  if payment_configuration is not None:
1234
1431
  self._values["payment_configuration"] = payment_configuration
1235
1432
 
@@ -1267,6 +1464,16 @@ class CfnCollaboration(
1267
1464
  assert result is not None, "Required property 'member_abilities' is missing"
1268
1465
  return typing.cast(typing.List[builtins.str], result)
1269
1466
 
1467
+ @builtins.property
1468
+ def ml_member_abilities(
1469
+ self,
1470
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLMemberAbilitiesProperty"]]:
1471
+ '''
1472
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-memberspecification.html#cfn-cleanrooms-collaboration-memberspecification-mlmemberabilities
1473
+ '''
1474
+ result = self._values.get("ml_member_abilities")
1475
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLMemberAbilitiesProperty"]], result)
1476
+
1270
1477
  @builtins.property
1271
1478
  def payment_configuration(
1272
1479
  self,
@@ -1291,20 +1498,133 @@ class CfnCollaboration(
1291
1498
  k + "=" + repr(v) for k, v in self._values.items()
1292
1499
  )
1293
1500
 
1501
+ @jsii.data_type(
1502
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty",
1503
+ jsii_struct_bases=[],
1504
+ name_mapping={"is_responsible": "isResponsible"},
1505
+ )
1506
+ class ModelInferencePaymentConfigProperty:
1507
+ def __init__(
1508
+ self,
1509
+ *,
1510
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
1511
+ ) -> None:
1512
+ '''
1513
+ :param is_responsible:
1514
+
1515
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-modelinferencepaymentconfig.html
1516
+ :exampleMetadata: fixture=_generated
1517
+
1518
+ Example::
1519
+
1520
+ # The code below shows an example of how to instantiate this type.
1521
+ # The values are placeholders you should change.
1522
+ from aws_cdk import aws_cleanrooms as cleanrooms
1523
+
1524
+ model_inference_payment_config_property = cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
1525
+ is_responsible=False
1526
+ )
1527
+ '''
1528
+ if __debug__:
1529
+ type_hints = typing.get_type_hints(_typecheckingstub__91778bff8fa4786b2dc1aace0c2b468463ac1eb3971264546bddcbfe95dc8a99)
1530
+ check_type(argname="argument is_responsible", value=is_responsible, expected_type=type_hints["is_responsible"])
1531
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1532
+ "is_responsible": is_responsible,
1533
+ }
1534
+
1535
+ @builtins.property
1536
+ def is_responsible(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
1537
+ '''
1538
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-modelinferencepaymentconfig.html#cfn-cleanrooms-collaboration-modelinferencepaymentconfig-isresponsible
1539
+ '''
1540
+ result = self._values.get("is_responsible")
1541
+ assert result is not None, "Required property 'is_responsible' is missing"
1542
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
1543
+
1544
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1545
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1546
+
1547
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1548
+ return not (rhs == self)
1549
+
1550
+ def __repr__(self) -> str:
1551
+ return "ModelInferencePaymentConfigProperty(%s)" % ", ".join(
1552
+ k + "=" + repr(v) for k, v in self._values.items()
1553
+ )
1554
+
1555
+ @jsii.data_type(
1556
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty",
1557
+ jsii_struct_bases=[],
1558
+ name_mapping={"is_responsible": "isResponsible"},
1559
+ )
1560
+ class ModelTrainingPaymentConfigProperty:
1561
+ def __init__(
1562
+ self,
1563
+ *,
1564
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
1565
+ ) -> None:
1566
+ '''
1567
+ :param is_responsible:
1568
+
1569
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-modeltrainingpaymentconfig.html
1570
+ :exampleMetadata: fixture=_generated
1571
+
1572
+ Example::
1573
+
1574
+ # The code below shows an example of how to instantiate this type.
1575
+ # The values are placeholders you should change.
1576
+ from aws_cdk import aws_cleanrooms as cleanrooms
1577
+
1578
+ model_training_payment_config_property = cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
1579
+ is_responsible=False
1580
+ )
1581
+ '''
1582
+ if __debug__:
1583
+ type_hints = typing.get_type_hints(_typecheckingstub__35cebaf540e2e0f273400ebe690d288c30c23dab0b643fcadc0b6fa47a38e5c1)
1584
+ check_type(argname="argument is_responsible", value=is_responsible, expected_type=type_hints["is_responsible"])
1585
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1586
+ "is_responsible": is_responsible,
1587
+ }
1588
+
1589
+ @builtins.property
1590
+ def is_responsible(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
1591
+ '''
1592
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-modeltrainingpaymentconfig.html#cfn-cleanrooms-collaboration-modeltrainingpaymentconfig-isresponsible
1593
+ '''
1594
+ result = self._values.get("is_responsible")
1595
+ assert result is not None, "Required property 'is_responsible' is missing"
1596
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
1597
+
1598
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1599
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1600
+
1601
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1602
+ return not (rhs == self)
1603
+
1604
+ def __repr__(self) -> str:
1605
+ return "ModelTrainingPaymentConfigProperty(%s)" % ", ".join(
1606
+ k + "=" + repr(v) for k, v in self._values.items()
1607
+ )
1608
+
1294
1609
  @jsii.data_type(
1295
1610
  jsii_type="aws-cdk-lib.aws_cleanrooms.CfnCollaboration.PaymentConfigurationProperty",
1296
1611
  jsii_struct_bases=[],
1297
- name_mapping={"query_compute": "queryCompute"},
1612
+ name_mapping={
1613
+ "query_compute": "queryCompute",
1614
+ "machine_learning": "machineLearning",
1615
+ },
1298
1616
  )
1299
1617
  class PaymentConfigurationProperty:
1300
1618
  def __init__(
1301
1619
  self,
1302
1620
  *,
1303
1621
  query_compute: typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.QueryComputePaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]],
1622
+ machine_learning: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnCollaboration.MLPaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
1304
1623
  ) -> None:
1305
1624
  '''An object representing the collaboration member's payment responsibilities set by the collaboration creator.
1306
1625
 
1307
1626
  :param query_compute: The collaboration member's payment responsibilities set by the collaboration creator for query compute costs.
1627
+ :param machine_learning:
1308
1628
 
1309
1629
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-paymentconfiguration.html
1310
1630
  :exampleMetadata: fixture=_generated
@@ -1318,15 +1638,28 @@ class CfnCollaboration(
1318
1638
  payment_configuration_property = cleanrooms.CfnCollaboration.PaymentConfigurationProperty(
1319
1639
  query_compute=cleanrooms.CfnCollaboration.QueryComputePaymentConfigProperty(
1320
1640
  is_responsible=False
1641
+ ),
1642
+
1643
+ # the properties below are optional
1644
+ machine_learning=cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
1645
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
1646
+ is_responsible=False
1647
+ ),
1648
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
1649
+ is_responsible=False
1650
+ )
1321
1651
  )
1322
1652
  )
1323
1653
  '''
1324
1654
  if __debug__:
1325
1655
  type_hints = typing.get_type_hints(_typecheckingstub__4bb111eda28dfc76cbd93dac49286726320cc654bfb530550f97b9ec4cf32cbf)
1326
1656
  check_type(argname="argument query_compute", value=query_compute, expected_type=type_hints["query_compute"])
1657
+ check_type(argname="argument machine_learning", value=machine_learning, expected_type=type_hints["machine_learning"])
1327
1658
  self._values: typing.Dict[builtins.str, typing.Any] = {
1328
1659
  "query_compute": query_compute,
1329
1660
  }
1661
+ if machine_learning is not None:
1662
+ self._values["machine_learning"] = machine_learning
1330
1663
 
1331
1664
  @builtins.property
1332
1665
  def query_compute(
@@ -1340,6 +1673,16 @@ class CfnCollaboration(
1340
1673
  assert result is not None, "Required property 'query_compute' is missing"
1341
1674
  return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnCollaboration.QueryComputePaymentConfigProperty"], result)
1342
1675
 
1676
+ @builtins.property
1677
+ def machine_learning(
1678
+ self,
1679
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLPaymentConfigProperty"]]:
1680
+ '''
1681
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-collaboration-paymentconfiguration.html#cfn-cleanrooms-collaboration-paymentconfiguration-machinelearning
1682
+ '''
1683
+ result = self._values.get("machine_learning")
1684
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnCollaboration.MLPaymentConfigProperty"]], result)
1685
+
1343
1686
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
1344
1687
  return isinstance(rhs, self.__class__) and rhs._values == self._values
1345
1688
 
@@ -1423,6 +1766,7 @@ class CfnCollaboration(
1423
1766
  "name": "name",
1424
1767
  "query_log_status": "queryLogStatus",
1425
1768
  "analytics_engine": "analyticsEngine",
1769
+ "creator_ml_member_abilities": "creatorMlMemberAbilities",
1426
1770
  "creator_payment_configuration": "creatorPaymentConfiguration",
1427
1771
  "data_encryption_metadata": "dataEncryptionMetadata",
1428
1772
  "tags": "tags",
@@ -1439,6 +1783,7 @@ class CfnCollaborationProps:
1439
1783
  name: builtins.str,
1440
1784
  query_log_status: builtins.str,
1441
1785
  analytics_engine: typing.Optional[builtins.str] = None,
1786
+ creator_ml_member_abilities: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.MLMemberAbilitiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1442
1787
  creator_payment_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.PaymentConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1443
1788
  data_encryption_metadata: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.DataEncryptionMetadataProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1444
1789
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -1452,6 +1797,7 @@ class CfnCollaborationProps:
1452
1797
  :param name: A human-readable identifier provided by the collaboration owner. Display names are not unique.
1453
1798
  :param query_log_status: An indicator as to whether query logging has been enabled or disabled for the collaboration.
1454
1799
  :param analytics_engine: The analytics engine for the collaboration.
1800
+ :param creator_ml_member_abilities:
1455
1801
  :param creator_payment_configuration: An object representing the collaboration member's payment responsibilities set by the collaboration creator.
1456
1802
  :param data_encryption_metadata: The settings for client-side encryption for cryptographic computing.
1457
1803
  :param tags: An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.
@@ -1475,9 +1821,22 @@ class CfnCollaborationProps:
1475
1821
  member_abilities=["memberAbilities"],
1476
1822
 
1477
1823
  # the properties below are optional
1824
+ ml_member_abilities=cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty(
1825
+ custom_ml_member_abilities=["customMlMemberAbilities"]
1826
+ ),
1478
1827
  payment_configuration=cleanrooms.CfnCollaboration.PaymentConfigurationProperty(
1479
1828
  query_compute=cleanrooms.CfnCollaboration.QueryComputePaymentConfigProperty(
1480
1829
  is_responsible=False
1830
+ ),
1831
+
1832
+ # the properties below are optional
1833
+ machine_learning=cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
1834
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
1835
+ is_responsible=False
1836
+ ),
1837
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
1838
+ is_responsible=False
1839
+ )
1481
1840
  )
1482
1841
  )
1483
1842
  )],
@@ -1486,9 +1845,22 @@ class CfnCollaborationProps:
1486
1845
 
1487
1846
  # the properties below are optional
1488
1847
  analytics_engine="analyticsEngine",
1848
+ creator_ml_member_abilities=cleanrooms.CfnCollaboration.MLMemberAbilitiesProperty(
1849
+ custom_ml_member_abilities=["customMlMemberAbilities"]
1850
+ ),
1489
1851
  creator_payment_configuration=cleanrooms.CfnCollaboration.PaymentConfigurationProperty(
1490
1852
  query_compute=cleanrooms.CfnCollaboration.QueryComputePaymentConfigProperty(
1491
1853
  is_responsible=False
1854
+ ),
1855
+
1856
+ # the properties below are optional
1857
+ machine_learning=cleanrooms.CfnCollaboration.MLPaymentConfigProperty(
1858
+ model_inference=cleanrooms.CfnCollaboration.ModelInferencePaymentConfigProperty(
1859
+ is_responsible=False
1860
+ ),
1861
+ model_training=cleanrooms.CfnCollaboration.ModelTrainingPaymentConfigProperty(
1862
+ is_responsible=False
1863
+ )
1492
1864
  )
1493
1865
  ),
1494
1866
  data_encryption_metadata=cleanrooms.CfnCollaboration.DataEncryptionMetadataProperty(
@@ -1512,6 +1884,7 @@ class CfnCollaborationProps:
1512
1884
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
1513
1885
  check_type(argname="argument query_log_status", value=query_log_status, expected_type=type_hints["query_log_status"])
1514
1886
  check_type(argname="argument analytics_engine", value=analytics_engine, expected_type=type_hints["analytics_engine"])
1887
+ check_type(argname="argument creator_ml_member_abilities", value=creator_ml_member_abilities, expected_type=type_hints["creator_ml_member_abilities"])
1515
1888
  check_type(argname="argument creator_payment_configuration", value=creator_payment_configuration, expected_type=type_hints["creator_payment_configuration"])
1516
1889
  check_type(argname="argument data_encryption_metadata", value=data_encryption_metadata, expected_type=type_hints["data_encryption_metadata"])
1517
1890
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
@@ -1525,6 +1898,8 @@ class CfnCollaborationProps:
1525
1898
  }
1526
1899
  if analytics_engine is not None:
1527
1900
  self._values["analytics_engine"] = analytics_engine
1901
+ if creator_ml_member_abilities is not None:
1902
+ self._values["creator_ml_member_abilities"] = creator_ml_member_abilities
1528
1903
  if creator_payment_configuration is not None:
1529
1904
  self._values["creator_payment_configuration"] = creator_payment_configuration
1530
1905
  if data_encryption_metadata is not None:
@@ -1609,6 +1984,16 @@ class CfnCollaborationProps:
1609
1984
  result = self._values.get("analytics_engine")
1610
1985
  return typing.cast(typing.Optional[builtins.str], result)
1611
1986
 
1987
+ @builtins.property
1988
+ def creator_ml_member_abilities(
1989
+ self,
1990
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCollaboration.MLMemberAbilitiesProperty]]:
1991
+ '''
1992
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-collaboration.html#cfn-cleanrooms-collaboration-creatormlmemberabilities
1993
+ '''
1994
+ result = self._values.get("creator_ml_member_abilities")
1995
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCollaboration.MLMemberAbilitiesProperty]], result)
1996
+
1612
1997
  @builtins.property
1613
1998
  def creator_payment_configuration(
1614
1999
  self,
@@ -1677,9 +2062,30 @@ class CfnConfiguredTable(
1677
2062
  analysis_method="analysisMethod",
1678
2063
  name="name",
1679
2064
  table_reference=cleanrooms.CfnConfiguredTable.TableReferenceProperty(
2065
+ athena=cleanrooms.CfnConfiguredTable.AthenaTableReferenceProperty(
2066
+ database_name="databaseName",
2067
+ table_name="tableName",
2068
+ work_group="workGroup",
2069
+
2070
+ # the properties below are optional
2071
+ output_location="outputLocation"
2072
+ ),
1680
2073
  glue=cleanrooms.CfnConfiguredTable.GlueTableReferenceProperty(
1681
2074
  database_name="databaseName",
1682
2075
  table_name="tableName"
2076
+ ),
2077
+ snowflake=cleanrooms.CfnConfiguredTable.SnowflakeTableReferenceProperty(
2078
+ account_identifier="accountIdentifier",
2079
+ database_name="databaseName",
2080
+ schema_name="schemaName",
2081
+ secret_arn="secretArn",
2082
+ table_name="tableName",
2083
+ table_schema=cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaProperty(
2084
+ v1=[cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property(
2085
+ column_name="columnName",
2086
+ column_type="columnType"
2087
+ )]
2088
+ )
1683
2089
  )
1684
2090
  ),
1685
2091
 
@@ -2662,7 +3068,115 @@ class CfnConfiguredTable(
2662
3068
  )
2663
3069
 
2664
3070
  @jsii.data_type(
2665
- jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.ConfiguredTableAnalysisRulePolicyProperty",
3071
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.AthenaTableReferenceProperty",
3072
+ jsii_struct_bases=[],
3073
+ name_mapping={
3074
+ "database_name": "databaseName",
3075
+ "table_name": "tableName",
3076
+ "work_group": "workGroup",
3077
+ "output_location": "outputLocation",
3078
+ },
3079
+ )
3080
+ class AthenaTableReferenceProperty:
3081
+ def __init__(
3082
+ self,
3083
+ *,
3084
+ database_name: builtins.str,
3085
+ table_name: builtins.str,
3086
+ work_group: builtins.str,
3087
+ output_location: typing.Optional[builtins.str] = None,
3088
+ ) -> None:
3089
+ '''A reference to a table within Athena.
3090
+
3091
+ :param database_name: The database name.
3092
+ :param table_name: The table reference.
3093
+ :param work_group: The workgroup of the Athena table reference.
3094
+ :param output_location: The output location for the Athena table.
3095
+
3096
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-athenatablereference.html
3097
+ :exampleMetadata: fixture=_generated
3098
+
3099
+ Example::
3100
+
3101
+ # The code below shows an example of how to instantiate this type.
3102
+ # The values are placeholders you should change.
3103
+ from aws_cdk import aws_cleanrooms as cleanrooms
3104
+
3105
+ athena_table_reference_property = cleanrooms.CfnConfiguredTable.AthenaTableReferenceProperty(
3106
+ database_name="databaseName",
3107
+ table_name="tableName",
3108
+ work_group="workGroup",
3109
+
3110
+ # the properties below are optional
3111
+ output_location="outputLocation"
3112
+ )
3113
+ '''
3114
+ if __debug__:
3115
+ type_hints = typing.get_type_hints(_typecheckingstub__58a53beb1a0a90ec538b0213243c8721465a73c73f8bf745778a09f20fde15e2)
3116
+ check_type(argname="argument database_name", value=database_name, expected_type=type_hints["database_name"])
3117
+ check_type(argname="argument table_name", value=table_name, expected_type=type_hints["table_name"])
3118
+ check_type(argname="argument work_group", value=work_group, expected_type=type_hints["work_group"])
3119
+ check_type(argname="argument output_location", value=output_location, expected_type=type_hints["output_location"])
3120
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3121
+ "database_name": database_name,
3122
+ "table_name": table_name,
3123
+ "work_group": work_group,
3124
+ }
3125
+ if output_location is not None:
3126
+ self._values["output_location"] = output_location
3127
+
3128
+ @builtins.property
3129
+ def database_name(self) -> builtins.str:
3130
+ '''The database name.
3131
+
3132
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-athenatablereference.html#cfn-cleanrooms-configuredtable-athenatablereference-databasename
3133
+ '''
3134
+ result = self._values.get("database_name")
3135
+ assert result is not None, "Required property 'database_name' is missing"
3136
+ return typing.cast(builtins.str, result)
3137
+
3138
+ @builtins.property
3139
+ def table_name(self) -> builtins.str:
3140
+ '''The table reference.
3141
+
3142
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-athenatablereference.html#cfn-cleanrooms-configuredtable-athenatablereference-tablename
3143
+ '''
3144
+ result = self._values.get("table_name")
3145
+ assert result is not None, "Required property 'table_name' is missing"
3146
+ return typing.cast(builtins.str, result)
3147
+
3148
+ @builtins.property
3149
+ def work_group(self) -> builtins.str:
3150
+ '''The workgroup of the Athena table reference.
3151
+
3152
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-athenatablereference.html#cfn-cleanrooms-configuredtable-athenatablereference-workgroup
3153
+ '''
3154
+ result = self._values.get("work_group")
3155
+ assert result is not None, "Required property 'work_group' is missing"
3156
+ return typing.cast(builtins.str, result)
3157
+
3158
+ @builtins.property
3159
+ def output_location(self) -> typing.Optional[builtins.str]:
3160
+ '''The output location for the Athena table.
3161
+
3162
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-athenatablereference.html#cfn-cleanrooms-configuredtable-athenatablereference-outputlocation
3163
+ '''
3164
+ result = self._values.get("output_location")
3165
+ return typing.cast(typing.Optional[builtins.str], result)
3166
+
3167
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3168
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3169
+
3170
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3171
+ return not (rhs == self)
3172
+
3173
+ def __repr__(self) -> str:
3174
+ return "AthenaTableReferenceProperty(%s)" % ", ".join(
3175
+ k + "=" + repr(v) for k, v in self._values.items()
3176
+ )
3177
+
3178
+ @jsii.data_type(
3179
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.ConfiguredTableAnalysisRulePolicyProperty",
2666
3180
  jsii_struct_bases=[],
2667
3181
  name_mapping={"v1": "v1"},
2668
3182
  )
@@ -3081,20 +3595,303 @@ class CfnConfiguredTable(
3081
3595
  k + "=" + repr(v) for k, v in self._values.items()
3082
3596
  )
3083
3597
 
3598
+ @jsii.data_type(
3599
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.SnowflakeTableReferenceProperty",
3600
+ jsii_struct_bases=[],
3601
+ name_mapping={
3602
+ "account_identifier": "accountIdentifier",
3603
+ "database_name": "databaseName",
3604
+ "schema_name": "schemaName",
3605
+ "secret_arn": "secretArn",
3606
+ "table_name": "tableName",
3607
+ "table_schema": "tableSchema",
3608
+ },
3609
+ )
3610
+ class SnowflakeTableReferenceProperty:
3611
+ def __init__(
3612
+ self,
3613
+ *,
3614
+ account_identifier: builtins.str,
3615
+ database_name: builtins.str,
3616
+ schema_name: builtins.str,
3617
+ secret_arn: builtins.str,
3618
+ table_name: builtins.str,
3619
+ table_schema: typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfiguredTable.SnowflakeTableSchemaProperty", typing.Dict[builtins.str, typing.Any]]],
3620
+ ) -> None:
3621
+ '''A reference to a table within Snowflake.
3622
+
3623
+ :param account_identifier: The account identifier for the Snowflake table reference.
3624
+ :param database_name: The name of the database the Snowflake table belongs to.
3625
+ :param schema_name: The schema name of the Snowflake table reference.
3626
+ :param secret_arn: The secret ARN of the Snowflake table reference.
3627
+ :param table_name: The name of the Snowflake table.
3628
+ :param table_schema: The schema of the Snowflake table.
3629
+
3630
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html
3631
+ :exampleMetadata: fixture=_generated
3632
+
3633
+ Example::
3634
+
3635
+ # The code below shows an example of how to instantiate this type.
3636
+ # The values are placeholders you should change.
3637
+ from aws_cdk import aws_cleanrooms as cleanrooms
3638
+
3639
+ snowflake_table_reference_property = cleanrooms.CfnConfiguredTable.SnowflakeTableReferenceProperty(
3640
+ account_identifier="accountIdentifier",
3641
+ database_name="databaseName",
3642
+ schema_name="schemaName",
3643
+ secret_arn="secretArn",
3644
+ table_name="tableName",
3645
+ table_schema=cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaProperty(
3646
+ v1=[cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property(
3647
+ column_name="columnName",
3648
+ column_type="columnType"
3649
+ )]
3650
+ )
3651
+ )
3652
+ '''
3653
+ if __debug__:
3654
+ type_hints = typing.get_type_hints(_typecheckingstub__f0bac88ed34f9327592c380e538ab50720af8f52dd5162e61df0aec6adf2833a)
3655
+ check_type(argname="argument account_identifier", value=account_identifier, expected_type=type_hints["account_identifier"])
3656
+ check_type(argname="argument database_name", value=database_name, expected_type=type_hints["database_name"])
3657
+ check_type(argname="argument schema_name", value=schema_name, expected_type=type_hints["schema_name"])
3658
+ check_type(argname="argument secret_arn", value=secret_arn, expected_type=type_hints["secret_arn"])
3659
+ check_type(argname="argument table_name", value=table_name, expected_type=type_hints["table_name"])
3660
+ check_type(argname="argument table_schema", value=table_schema, expected_type=type_hints["table_schema"])
3661
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3662
+ "account_identifier": account_identifier,
3663
+ "database_name": database_name,
3664
+ "schema_name": schema_name,
3665
+ "secret_arn": secret_arn,
3666
+ "table_name": table_name,
3667
+ "table_schema": table_schema,
3668
+ }
3669
+
3670
+ @builtins.property
3671
+ def account_identifier(self) -> builtins.str:
3672
+ '''The account identifier for the Snowflake table reference.
3673
+
3674
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html#cfn-cleanrooms-configuredtable-snowflaketablereference-accountidentifier
3675
+ '''
3676
+ result = self._values.get("account_identifier")
3677
+ assert result is not None, "Required property 'account_identifier' is missing"
3678
+ return typing.cast(builtins.str, result)
3679
+
3680
+ @builtins.property
3681
+ def database_name(self) -> builtins.str:
3682
+ '''The name of the database the Snowflake table belongs to.
3683
+
3684
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html#cfn-cleanrooms-configuredtable-snowflaketablereference-databasename
3685
+ '''
3686
+ result = self._values.get("database_name")
3687
+ assert result is not None, "Required property 'database_name' is missing"
3688
+ return typing.cast(builtins.str, result)
3689
+
3690
+ @builtins.property
3691
+ def schema_name(self) -> builtins.str:
3692
+ '''The schema name of the Snowflake table reference.
3693
+
3694
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html#cfn-cleanrooms-configuredtable-snowflaketablereference-schemaname
3695
+ '''
3696
+ result = self._values.get("schema_name")
3697
+ assert result is not None, "Required property 'schema_name' is missing"
3698
+ return typing.cast(builtins.str, result)
3699
+
3700
+ @builtins.property
3701
+ def secret_arn(self) -> builtins.str:
3702
+ '''The secret ARN of the Snowflake table reference.
3703
+
3704
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html#cfn-cleanrooms-configuredtable-snowflaketablereference-secretarn
3705
+ '''
3706
+ result = self._values.get("secret_arn")
3707
+ assert result is not None, "Required property 'secret_arn' is missing"
3708
+ return typing.cast(builtins.str, result)
3709
+
3710
+ @builtins.property
3711
+ def table_name(self) -> builtins.str:
3712
+ '''The name of the Snowflake table.
3713
+
3714
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html#cfn-cleanrooms-configuredtable-snowflaketablereference-tablename
3715
+ '''
3716
+ result = self._values.get("table_name")
3717
+ assert result is not None, "Required property 'table_name' is missing"
3718
+ return typing.cast(builtins.str, result)
3719
+
3720
+ @builtins.property
3721
+ def table_schema(
3722
+ self,
3723
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.SnowflakeTableSchemaProperty"]:
3724
+ '''The schema of the Snowflake table.
3725
+
3726
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketablereference.html#cfn-cleanrooms-configuredtable-snowflaketablereference-tableschema
3727
+ '''
3728
+ result = self._values.get("table_schema")
3729
+ assert result is not None, "Required property 'table_schema' is missing"
3730
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.SnowflakeTableSchemaProperty"], result)
3731
+
3732
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3733
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3734
+
3735
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3736
+ return not (rhs == self)
3737
+
3738
+ def __repr__(self) -> str:
3739
+ return "SnowflakeTableReferenceProperty(%s)" % ", ".join(
3740
+ k + "=" + repr(v) for k, v in self._values.items()
3741
+ )
3742
+
3743
+ @jsii.data_type(
3744
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaProperty",
3745
+ jsii_struct_bases=[],
3746
+ name_mapping={"v1": "v1"},
3747
+ )
3748
+ class SnowflakeTableSchemaProperty:
3749
+ def __init__(
3750
+ self,
3751
+ *,
3752
+ v1: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfiguredTable.SnowflakeTableSchemaV1Property", typing.Dict[builtins.str, typing.Any]]]]],
3753
+ ) -> None:
3754
+ '''The schema of a Snowflake table.
3755
+
3756
+ :param v1: The schema of a Snowflake table.
3757
+
3758
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketableschema.html
3759
+ :exampleMetadata: fixture=_generated
3760
+
3761
+ Example::
3762
+
3763
+ # The code below shows an example of how to instantiate this type.
3764
+ # The values are placeholders you should change.
3765
+ from aws_cdk import aws_cleanrooms as cleanrooms
3766
+
3767
+ snowflake_table_schema_property = cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaProperty(
3768
+ v1=[cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property(
3769
+ column_name="columnName",
3770
+ column_type="columnType"
3771
+ )]
3772
+ )
3773
+ '''
3774
+ if __debug__:
3775
+ type_hints = typing.get_type_hints(_typecheckingstub__239c59d3fbfbc31d3d63df05389a6d08ab60a5a59b54a1d142b38a1317d9924a)
3776
+ check_type(argname="argument v1", value=v1, expected_type=type_hints["v1"])
3777
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3778
+ "v1": v1,
3779
+ }
3780
+
3781
+ @builtins.property
3782
+ def v1(
3783
+ self,
3784
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.SnowflakeTableSchemaV1Property"]]]:
3785
+ '''The schema of a Snowflake table.
3786
+
3787
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketableschema.html#cfn-cleanrooms-configuredtable-snowflaketableschema-v1
3788
+ '''
3789
+ result = self._values.get("v1")
3790
+ assert result is not None, "Required property 'v1' is missing"
3791
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.SnowflakeTableSchemaV1Property"]]], result)
3792
+
3793
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3794
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3795
+
3796
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3797
+ return not (rhs == self)
3798
+
3799
+ def __repr__(self) -> str:
3800
+ return "SnowflakeTableSchemaProperty(%s)" % ", ".join(
3801
+ k + "=" + repr(v) for k, v in self._values.items()
3802
+ )
3803
+
3804
+ @jsii.data_type(
3805
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property",
3806
+ jsii_struct_bases=[],
3807
+ name_mapping={"column_name": "columnName", "column_type": "columnType"},
3808
+ )
3809
+ class SnowflakeTableSchemaV1Property:
3810
+ def __init__(
3811
+ self,
3812
+ *,
3813
+ column_name: builtins.str,
3814
+ column_type: builtins.str,
3815
+ ) -> None:
3816
+ '''The Snowflake table schema.
3817
+
3818
+ :param column_name: The column name.
3819
+ :param column_type: The column's data type. Supported data types: ``ARRAY`` , ``BIGINT`` , ``BOOLEAN`` , ``CHAR`` , ``DATE`` , ``DECIMAL`` , ``DOUBLE`` , ``DOUBLE PRECISION`` , ``FLOAT`` , ``FLOAT4`` , ``INT`` , ``INTEGER`` , ``MAP`` , ``NUMERIC`` , ``NUMBER`` , ``REAL`` , ``SMALLINT`` , ``STRING`` , ``TIMESTAMP`` , ``TIMESTAMP_LTZ`` , ``TIMESTAMP_NTZ`` , ``DATETIME`` , ``TINYINT`` , ``VARCHAR`` , ``TEXT`` , ``CHARACTER`` .
3820
+
3821
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketableschemav1.html
3822
+ :exampleMetadata: fixture=_generated
3823
+
3824
+ Example::
3825
+
3826
+ # The code below shows an example of how to instantiate this type.
3827
+ # The values are placeholders you should change.
3828
+ from aws_cdk import aws_cleanrooms as cleanrooms
3829
+
3830
+ snowflake_table_schema_v1_property = cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property(
3831
+ column_name="columnName",
3832
+ column_type="columnType"
3833
+ )
3834
+ '''
3835
+ if __debug__:
3836
+ type_hints = typing.get_type_hints(_typecheckingstub__83fba8d181362fec1a7a64673d96ded09367f372899b9e1e5eb170f94c17c13f)
3837
+ check_type(argname="argument column_name", value=column_name, expected_type=type_hints["column_name"])
3838
+ check_type(argname="argument column_type", value=column_type, expected_type=type_hints["column_type"])
3839
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3840
+ "column_name": column_name,
3841
+ "column_type": column_type,
3842
+ }
3843
+
3844
+ @builtins.property
3845
+ def column_name(self) -> builtins.str:
3846
+ '''The column name.
3847
+
3848
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketableschemav1.html#cfn-cleanrooms-configuredtable-snowflaketableschemav1-columnname
3849
+ '''
3850
+ result = self._values.get("column_name")
3851
+ assert result is not None, "Required property 'column_name' is missing"
3852
+ return typing.cast(builtins.str, result)
3853
+
3854
+ @builtins.property
3855
+ def column_type(self) -> builtins.str:
3856
+ '''The column's data type.
3857
+
3858
+ Supported data types: ``ARRAY`` , ``BIGINT`` , ``BOOLEAN`` , ``CHAR`` , ``DATE`` , ``DECIMAL`` , ``DOUBLE`` , ``DOUBLE PRECISION`` , ``FLOAT`` , ``FLOAT4`` , ``INT`` , ``INTEGER`` , ``MAP`` , ``NUMERIC`` , ``NUMBER`` , ``REAL`` , ``SMALLINT`` , ``STRING`` , ``TIMESTAMP`` , ``TIMESTAMP_LTZ`` , ``TIMESTAMP_NTZ`` , ``DATETIME`` , ``TINYINT`` , ``VARCHAR`` , ``TEXT`` , ``CHARACTER`` .
3859
+
3860
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-snowflaketableschemav1.html#cfn-cleanrooms-configuredtable-snowflaketableschemav1-columntype
3861
+ '''
3862
+ result = self._values.get("column_type")
3863
+ assert result is not None, "Required property 'column_type' is missing"
3864
+ return typing.cast(builtins.str, result)
3865
+
3866
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3867
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3868
+
3869
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3870
+ return not (rhs == self)
3871
+
3872
+ def __repr__(self) -> str:
3873
+ return "SnowflakeTableSchemaV1Property(%s)" % ", ".join(
3874
+ k + "=" + repr(v) for k, v in self._values.items()
3875
+ )
3876
+
3084
3877
  @jsii.data_type(
3085
3878
  jsii_type="aws-cdk-lib.aws_cleanrooms.CfnConfiguredTable.TableReferenceProperty",
3086
3879
  jsii_struct_bases=[],
3087
- name_mapping={"glue": "glue"},
3880
+ name_mapping={"athena": "athena", "glue": "glue", "snowflake": "snowflake"},
3088
3881
  )
3089
3882
  class TableReferenceProperty:
3090
3883
  def __init__(
3091
3884
  self,
3092
3885
  *,
3093
- glue: typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfiguredTable.GlueTableReferenceProperty", typing.Dict[builtins.str, typing.Any]]],
3886
+ athena: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfiguredTable.AthenaTableReferenceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3887
+ glue: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfiguredTable.GlueTableReferenceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3888
+ snowflake: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnConfiguredTable.SnowflakeTableReferenceProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3094
3889
  ) -> None:
3095
3890
  '''A pointer to the dataset that underlies this table.
3096
3891
 
3892
+ :param athena: If present, a reference to the Athena table referred to by this table reference.
3097
3893
  :param glue: If present, a reference to the AWS Glue table referred to by this table reference.
3894
+ :param snowflake: If present, a reference to the Snowflake table referred to by this table reference.
3098
3895
 
3099
3896
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-tablereference.html
3100
3897
  :exampleMetadata: fixture=_generated
@@ -3106,30 +3903,78 @@ class CfnConfiguredTable(
3106
3903
  from aws_cdk import aws_cleanrooms as cleanrooms
3107
3904
 
3108
3905
  table_reference_property = cleanrooms.CfnConfiguredTable.TableReferenceProperty(
3906
+ athena=cleanrooms.CfnConfiguredTable.AthenaTableReferenceProperty(
3907
+ database_name="databaseName",
3908
+ table_name="tableName",
3909
+ work_group="workGroup",
3910
+
3911
+ # the properties below are optional
3912
+ output_location="outputLocation"
3913
+ ),
3109
3914
  glue=cleanrooms.CfnConfiguredTable.GlueTableReferenceProperty(
3110
3915
  database_name="databaseName",
3111
3916
  table_name="tableName"
3917
+ ),
3918
+ snowflake=cleanrooms.CfnConfiguredTable.SnowflakeTableReferenceProperty(
3919
+ account_identifier="accountIdentifier",
3920
+ database_name="databaseName",
3921
+ schema_name="schemaName",
3922
+ secret_arn="secretArn",
3923
+ table_name="tableName",
3924
+ table_schema=cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaProperty(
3925
+ v1=[cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property(
3926
+ column_name="columnName",
3927
+ column_type="columnType"
3928
+ )]
3929
+ )
3112
3930
  )
3113
3931
  )
3114
3932
  '''
3115
3933
  if __debug__:
3116
3934
  type_hints = typing.get_type_hints(_typecheckingstub__48547ee47249030cb21aff2b6c33202b13d80f1552ddf62b21595c3e0bb02374)
3935
+ check_type(argname="argument athena", value=athena, expected_type=type_hints["athena"])
3117
3936
  check_type(argname="argument glue", value=glue, expected_type=type_hints["glue"])
3118
- self._values: typing.Dict[builtins.str, typing.Any] = {
3119
- "glue": glue,
3120
- }
3937
+ check_type(argname="argument snowflake", value=snowflake, expected_type=type_hints["snowflake"])
3938
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
3939
+ if athena is not None:
3940
+ self._values["athena"] = athena
3941
+ if glue is not None:
3942
+ self._values["glue"] = glue
3943
+ if snowflake is not None:
3944
+ self._values["snowflake"] = snowflake
3945
+
3946
+ @builtins.property
3947
+ def athena(
3948
+ self,
3949
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.AthenaTableReferenceProperty"]]:
3950
+ '''If present, a reference to the Athena table referred to by this table reference.
3951
+
3952
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-tablereference.html#cfn-cleanrooms-configuredtable-tablereference-athena
3953
+ '''
3954
+ result = self._values.get("athena")
3955
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.AthenaTableReferenceProperty"]], result)
3121
3956
 
3122
3957
  @builtins.property
3123
3958
  def glue(
3124
3959
  self,
3125
- ) -> typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.GlueTableReferenceProperty"]:
3960
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.GlueTableReferenceProperty"]]:
3126
3961
  '''If present, a reference to the AWS Glue table referred to by this table reference.
3127
3962
 
3128
3963
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-tablereference.html#cfn-cleanrooms-configuredtable-tablereference-glue
3129
3964
  '''
3130
3965
  result = self._values.get("glue")
3131
- assert result is not None, "Required property 'glue' is missing"
3132
- return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.GlueTableReferenceProperty"], result)
3966
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.GlueTableReferenceProperty"]], result)
3967
+
3968
+ @builtins.property
3969
+ def snowflake(
3970
+ self,
3971
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.SnowflakeTableReferenceProperty"]]:
3972
+ '''If present, a reference to the Snowflake table referred to by this table reference.
3973
+
3974
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-configuredtable-tablereference.html#cfn-cleanrooms-configuredtable-tablereference-snowflake
3975
+ '''
3976
+ result = self._values.get("snowflake")
3977
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnConfiguredTable.SnowflakeTableReferenceProperty"]], result)
3133
3978
 
3134
3979
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3135
3980
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -4134,9 +4979,30 @@ class CfnConfiguredTableProps:
4134
4979
  analysis_method="analysisMethod",
4135
4980
  name="name",
4136
4981
  table_reference=cleanrooms.CfnConfiguredTable.TableReferenceProperty(
4982
+ athena=cleanrooms.CfnConfiguredTable.AthenaTableReferenceProperty(
4983
+ database_name="databaseName",
4984
+ table_name="tableName",
4985
+ work_group="workGroup",
4986
+
4987
+ # the properties below are optional
4988
+ output_location="outputLocation"
4989
+ ),
4137
4990
  glue=cleanrooms.CfnConfiguredTable.GlueTableReferenceProperty(
4138
4991
  database_name="databaseName",
4139
4992
  table_name="tableName"
4993
+ ),
4994
+ snowflake=cleanrooms.CfnConfiguredTable.SnowflakeTableReferenceProperty(
4995
+ account_identifier="accountIdentifier",
4996
+ database_name="databaseName",
4997
+ schema_name="schemaName",
4998
+ secret_arn="secretArn",
4999
+ table_name="tableName",
5000
+ table_schema=cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaProperty(
5001
+ v1=[cleanrooms.CfnConfiguredTable.SnowflakeTableSchemaV1Property(
5002
+ column_name="columnName",
5003
+ column_type="columnType"
5004
+ )]
5005
+ )
4140
5006
  )
4141
5007
  ),
4142
5008
 
@@ -4428,7 +5294,8 @@ class CfnIdMappingTable(
4428
5294
  @builtins.property
4429
5295
  @jsii.member(jsii_name="attrCollaborationIdentifier")
4430
5296
  def attr_collaboration_identifier(self) -> builtins.str:
4431
- '''
5297
+ '''The unique identifier of the collaboration that contains this ID mapping table.
5298
+
4432
5299
  :cloudformationAttribute: CollaborationIdentifier
4433
5300
  '''
4434
5301
  return typing.cast(builtins.str, jsii.get(self, "attrCollaborationIdentifier"))
@@ -4436,7 +5303,8 @@ class CfnIdMappingTable(
4436
5303
  @builtins.property
4437
5304
  @jsii.member(jsii_name="attrIdMappingTableIdentifier")
4438
5305
  def attr_id_mapping_table_identifier(self) -> builtins.str:
4439
- '''
5306
+ '''The unique identifier of the ID mapping table identifier that you want to retrieve.
5307
+
4440
5308
  :cloudformationAttribute: IdMappingTableIdentifier
4441
5309
  '''
4442
5310
  return typing.cast(builtins.str, jsii.get(self, "attrIdMappingTableIdentifier"))
@@ -5045,7 +5913,8 @@ class CfnIdNamespaceAssociation(
5045
5913
  @builtins.property
5046
5914
  @jsii.member(jsii_name="attrCollaborationIdentifier")
5047
5915
  def attr_collaboration_identifier(self) -> builtins.str:
5048
- '''
5916
+ '''The unique identifier of the collaboration that contains this ID namespace association.
5917
+
5049
5918
  :cloudformationAttribute: CollaborationIdentifier
5050
5919
  '''
5051
5920
  return typing.cast(builtins.str, jsii.get(self, "attrCollaborationIdentifier"))
@@ -5053,7 +5922,8 @@ class CfnIdNamespaceAssociation(
5053
5922
  @builtins.property
5054
5923
  @jsii.member(jsii_name="attrIdNamespaceAssociationIdentifier")
5055
5924
  def attr_id_namespace_association_identifier(self) -> builtins.str:
5056
- '''
5925
+ '''The unique identifier of the ID namespace association that you want to retrieve.
5926
+
5057
5927
  :cloudformationAttribute: IdNamespaceAssociationIdentifier
5058
5928
  '''
5059
5929
  return typing.cast(builtins.str, jsii.get(self, "attrIdNamespaceAssociationIdentifier"))
@@ -5588,6 +6458,16 @@ class CfnMembership(
5588
6458
  payment_configuration=cleanrooms.CfnMembership.MembershipPaymentConfigurationProperty(
5589
6459
  query_compute=cleanrooms.CfnMembership.MembershipQueryComputePaymentConfigProperty(
5590
6460
  is_responsible=False
6461
+ ),
6462
+
6463
+ # the properties below are optional
6464
+ machine_learning=cleanrooms.CfnMembership.MembershipMLPaymentConfigProperty(
6465
+ model_inference=cleanrooms.CfnMembership.MembershipModelInferencePaymentConfigProperty(
6466
+ is_responsible=False
6467
+ ),
6468
+ model_training=cleanrooms.CfnMembership.MembershipModelTrainingPaymentConfigProperty(
6469
+ is_responsible=False
6470
+ )
5591
6471
  )
5592
6472
  ),
5593
6473
  tags=[CfnTag(
@@ -5791,20 +6671,211 @@ class CfnMembership(
5791
6671
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
5792
6672
  jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
5793
6673
 
6674
+ @jsii.data_type(
6675
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnMembership.MembershipMLPaymentConfigProperty",
6676
+ jsii_struct_bases=[],
6677
+ name_mapping={
6678
+ "model_inference": "modelInference",
6679
+ "model_training": "modelTraining",
6680
+ },
6681
+ )
6682
+ class MembershipMLPaymentConfigProperty:
6683
+ def __init__(
6684
+ self,
6685
+ *,
6686
+ model_inference: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnMembership.MembershipModelInferencePaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
6687
+ model_training: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnMembership.MembershipModelTrainingPaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
6688
+ ) -> None:
6689
+ '''
6690
+ :param model_inference:
6691
+ :param model_training:
6692
+
6693
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmlpaymentconfig.html
6694
+ :exampleMetadata: fixture=_generated
6695
+
6696
+ Example::
6697
+
6698
+ # The code below shows an example of how to instantiate this type.
6699
+ # The values are placeholders you should change.
6700
+ from aws_cdk import aws_cleanrooms as cleanrooms
6701
+
6702
+ membership_mLPayment_config_property = cleanrooms.CfnMembership.MembershipMLPaymentConfigProperty(
6703
+ model_inference=cleanrooms.CfnMembership.MembershipModelInferencePaymentConfigProperty(
6704
+ is_responsible=False
6705
+ ),
6706
+ model_training=cleanrooms.CfnMembership.MembershipModelTrainingPaymentConfigProperty(
6707
+ is_responsible=False
6708
+ )
6709
+ )
6710
+ '''
6711
+ if __debug__:
6712
+ type_hints = typing.get_type_hints(_typecheckingstub__13dd2d08b2612b2890adb3362ea4e5bebe48abd3cfb27c026a48fcd95bd347dd)
6713
+ check_type(argname="argument model_inference", value=model_inference, expected_type=type_hints["model_inference"])
6714
+ check_type(argname="argument model_training", value=model_training, expected_type=type_hints["model_training"])
6715
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
6716
+ if model_inference is not None:
6717
+ self._values["model_inference"] = model_inference
6718
+ if model_training is not None:
6719
+ self._values["model_training"] = model_training
6720
+
6721
+ @builtins.property
6722
+ def model_inference(
6723
+ self,
6724
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipModelInferencePaymentConfigProperty"]]:
6725
+ '''
6726
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmlpaymentconfig.html#cfn-cleanrooms-membership-membershipmlpaymentconfig-modelinference
6727
+ '''
6728
+ result = self._values.get("model_inference")
6729
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipModelInferencePaymentConfigProperty"]], result)
6730
+
6731
+ @builtins.property
6732
+ def model_training(
6733
+ self,
6734
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipModelTrainingPaymentConfigProperty"]]:
6735
+ '''
6736
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmlpaymentconfig.html#cfn-cleanrooms-membership-membershipmlpaymentconfig-modeltraining
6737
+ '''
6738
+ result = self._values.get("model_training")
6739
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipModelTrainingPaymentConfigProperty"]], result)
6740
+
6741
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6742
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6743
+
6744
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6745
+ return not (rhs == self)
6746
+
6747
+ def __repr__(self) -> str:
6748
+ return "MembershipMLPaymentConfigProperty(%s)" % ", ".join(
6749
+ k + "=" + repr(v) for k, v in self._values.items()
6750
+ )
6751
+
6752
+ @jsii.data_type(
6753
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnMembership.MembershipModelInferencePaymentConfigProperty",
6754
+ jsii_struct_bases=[],
6755
+ name_mapping={"is_responsible": "isResponsible"},
6756
+ )
6757
+ class MembershipModelInferencePaymentConfigProperty:
6758
+ def __init__(
6759
+ self,
6760
+ *,
6761
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
6762
+ ) -> None:
6763
+ '''
6764
+ :param is_responsible:
6765
+
6766
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmodelinferencepaymentconfig.html
6767
+ :exampleMetadata: fixture=_generated
6768
+
6769
+ Example::
6770
+
6771
+ # The code below shows an example of how to instantiate this type.
6772
+ # The values are placeholders you should change.
6773
+ from aws_cdk import aws_cleanrooms as cleanrooms
6774
+
6775
+ membership_model_inference_payment_config_property = cleanrooms.CfnMembership.MembershipModelInferencePaymentConfigProperty(
6776
+ is_responsible=False
6777
+ )
6778
+ '''
6779
+ if __debug__:
6780
+ type_hints = typing.get_type_hints(_typecheckingstub__2b782e5294b8bba99405cc5a7ca5c775fb2010013a32d43d0fdf4a2878964aca)
6781
+ check_type(argname="argument is_responsible", value=is_responsible, expected_type=type_hints["is_responsible"])
6782
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6783
+ "is_responsible": is_responsible,
6784
+ }
6785
+
6786
+ @builtins.property
6787
+ def is_responsible(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
6788
+ '''
6789
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmodelinferencepaymentconfig.html#cfn-cleanrooms-membership-membershipmodelinferencepaymentconfig-isresponsible
6790
+ '''
6791
+ result = self._values.get("is_responsible")
6792
+ assert result is not None, "Required property 'is_responsible' is missing"
6793
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
6794
+
6795
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6796
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6797
+
6798
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6799
+ return not (rhs == self)
6800
+
6801
+ def __repr__(self) -> str:
6802
+ return "MembershipModelInferencePaymentConfigProperty(%s)" % ", ".join(
6803
+ k + "=" + repr(v) for k, v in self._values.items()
6804
+ )
6805
+
6806
+ @jsii.data_type(
6807
+ jsii_type="aws-cdk-lib.aws_cleanrooms.CfnMembership.MembershipModelTrainingPaymentConfigProperty",
6808
+ jsii_struct_bases=[],
6809
+ name_mapping={"is_responsible": "isResponsible"},
6810
+ )
6811
+ class MembershipModelTrainingPaymentConfigProperty:
6812
+ def __init__(
6813
+ self,
6814
+ *,
6815
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
6816
+ ) -> None:
6817
+ '''
6818
+ :param is_responsible:
6819
+
6820
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmodeltrainingpaymentconfig.html
6821
+ :exampleMetadata: fixture=_generated
6822
+
6823
+ Example::
6824
+
6825
+ # The code below shows an example of how to instantiate this type.
6826
+ # The values are placeholders you should change.
6827
+ from aws_cdk import aws_cleanrooms as cleanrooms
6828
+
6829
+ membership_model_training_payment_config_property = cleanrooms.CfnMembership.MembershipModelTrainingPaymentConfigProperty(
6830
+ is_responsible=False
6831
+ )
6832
+ '''
6833
+ if __debug__:
6834
+ type_hints = typing.get_type_hints(_typecheckingstub__8e5c7b5216c60ffcb694e1961e057ff77a03ba6ae0c1cd13b03497dc0f0df235)
6835
+ check_type(argname="argument is_responsible", value=is_responsible, expected_type=type_hints["is_responsible"])
6836
+ self._values: typing.Dict[builtins.str, typing.Any] = {
6837
+ "is_responsible": is_responsible,
6838
+ }
6839
+
6840
+ @builtins.property
6841
+ def is_responsible(self) -> typing.Union[builtins.bool, _IResolvable_da3f097b]:
6842
+ '''
6843
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershipmodeltrainingpaymentconfig.html#cfn-cleanrooms-membership-membershipmodeltrainingpaymentconfig-isresponsible
6844
+ '''
6845
+ result = self._values.get("is_responsible")
6846
+ assert result is not None, "Required property 'is_responsible' is missing"
6847
+ return typing.cast(typing.Union[builtins.bool, _IResolvable_da3f097b], result)
6848
+
6849
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
6850
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
6851
+
6852
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
6853
+ return not (rhs == self)
6854
+
6855
+ def __repr__(self) -> str:
6856
+ return "MembershipModelTrainingPaymentConfigProperty(%s)" % ", ".join(
6857
+ k + "=" + repr(v) for k, v in self._values.items()
6858
+ )
6859
+
5794
6860
  @jsii.data_type(
5795
6861
  jsii_type="aws-cdk-lib.aws_cleanrooms.CfnMembership.MembershipPaymentConfigurationProperty",
5796
6862
  jsii_struct_bases=[],
5797
- name_mapping={"query_compute": "queryCompute"},
6863
+ name_mapping={
6864
+ "query_compute": "queryCompute",
6865
+ "machine_learning": "machineLearning",
6866
+ },
5798
6867
  )
5799
6868
  class MembershipPaymentConfigurationProperty:
5800
6869
  def __init__(
5801
6870
  self,
5802
6871
  *,
5803
6872
  query_compute: typing.Union[_IResolvable_da3f097b, typing.Union["CfnMembership.MembershipQueryComputePaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]],
6873
+ machine_learning: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnMembership.MembershipMLPaymentConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5804
6874
  ) -> None:
5805
6875
  '''An object representing the payment responsibilities accepted by the collaboration member.
5806
6876
 
5807
6877
  :param query_compute: The payment responsibilities accepted by the collaboration member for query compute costs.
6878
+ :param machine_learning:
5808
6879
 
5809
6880
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershippaymentconfiguration.html
5810
6881
  :exampleMetadata: fixture=_generated
@@ -5818,15 +6889,28 @@ class CfnMembership(
5818
6889
  membership_payment_configuration_property = cleanrooms.CfnMembership.MembershipPaymentConfigurationProperty(
5819
6890
  query_compute=cleanrooms.CfnMembership.MembershipQueryComputePaymentConfigProperty(
5820
6891
  is_responsible=False
6892
+ ),
6893
+
6894
+ # the properties below are optional
6895
+ machine_learning=cleanrooms.CfnMembership.MembershipMLPaymentConfigProperty(
6896
+ model_inference=cleanrooms.CfnMembership.MembershipModelInferencePaymentConfigProperty(
6897
+ is_responsible=False
6898
+ ),
6899
+ model_training=cleanrooms.CfnMembership.MembershipModelTrainingPaymentConfigProperty(
6900
+ is_responsible=False
6901
+ )
5821
6902
  )
5822
6903
  )
5823
6904
  '''
5824
6905
  if __debug__:
5825
6906
  type_hints = typing.get_type_hints(_typecheckingstub__ff9b623af3a2e12d6db7063d2191f9dad178b00c5e761d332496d6065f45dfe6)
5826
6907
  check_type(argname="argument query_compute", value=query_compute, expected_type=type_hints["query_compute"])
6908
+ check_type(argname="argument machine_learning", value=machine_learning, expected_type=type_hints["machine_learning"])
5827
6909
  self._values: typing.Dict[builtins.str, typing.Any] = {
5828
6910
  "query_compute": query_compute,
5829
6911
  }
6912
+ if machine_learning is not None:
6913
+ self._values["machine_learning"] = machine_learning
5830
6914
 
5831
6915
  @builtins.property
5832
6916
  def query_compute(
@@ -5840,6 +6924,16 @@ class CfnMembership(
5840
6924
  assert result is not None, "Required property 'query_compute' is missing"
5841
6925
  return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipQueryComputePaymentConfigProperty"], result)
5842
6926
 
6927
+ @builtins.property
6928
+ def machine_learning(
6929
+ self,
6930
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipMLPaymentConfigProperty"]]:
6931
+ '''
6932
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-cleanrooms-membership-membershippaymentconfiguration.html#cfn-cleanrooms-membership-membershippaymentconfiguration-machinelearning
6933
+ '''
6934
+ result = self._values.get("machine_learning")
6935
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnMembership.MembershipMLPaymentConfigProperty"]], result)
6936
+
5843
6937
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
5844
6938
  return isinstance(rhs, self.__class__) and rhs._values == self._values
5845
6939
 
@@ -6240,6 +7334,16 @@ class CfnMembershipProps:
6240
7334
  payment_configuration=cleanrooms.CfnMembership.MembershipPaymentConfigurationProperty(
6241
7335
  query_compute=cleanrooms.CfnMembership.MembershipQueryComputePaymentConfigProperty(
6242
7336
  is_responsible=False
7337
+ ),
7338
+
7339
+ # the properties below are optional
7340
+ machine_learning=cleanrooms.CfnMembership.MembershipMLPaymentConfigProperty(
7341
+ model_inference=cleanrooms.CfnMembership.MembershipModelInferencePaymentConfigProperty(
7342
+ is_responsible=False
7343
+ ),
7344
+ model_training=cleanrooms.CfnMembership.MembershipModelTrainingPaymentConfigProperty(
7345
+ is_responsible=False
7346
+ )
6243
7347
  )
6244
7348
  ),
6245
7349
  tags=[CfnTag(
@@ -6384,7 +7488,7 @@ class CfnPrivacyBudgetTemplate(
6384
7488
  :param membership_identifier: The identifier for a membership resource.
6385
7489
  :param parameters: Specifies the epsilon and noise parameters for the privacy budget template.
6386
7490
  :param privacy_budget_type: Specifies the type of the privacy budget template.
6387
- :param tags: An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
7491
+ :param tags: An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.
6388
7492
  '''
6389
7493
  if __debug__:
6390
7494
  type_hints = typing.get_type_hints(_typecheckingstub__f4ef80e47afb9dceb9f249b561d13bd079011c08e3eadfd7c85afef7b15b6395)
@@ -6548,7 +7652,7 @@ class CfnPrivacyBudgetTemplate(
6548
7652
  @builtins.property
6549
7653
  @jsii.member(jsii_name="tags")
6550
7654
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
6551
- '''An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.'''
7655
+ '''An optional label that you can assign to a resource when you create it.'''
6552
7656
  return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
6553
7657
 
6554
7658
  @tags.setter
@@ -6662,7 +7766,7 @@ class CfnPrivacyBudgetTemplateProps:
6662
7766
  :param membership_identifier: The identifier for a membership resource.
6663
7767
  :param parameters: Specifies the epsilon and noise parameters for the privacy budget template.
6664
7768
  :param privacy_budget_type: Specifies the type of the privacy budget template.
6665
- :param tags: An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
7769
+ :param tags: An optional label that you can assign to a resource when you create it. Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.
6666
7770
 
6667
7771
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-privacybudgettemplate.html
6668
7772
  :exampleMetadata: fixture=_generated
@@ -6753,7 +7857,9 @@ class CfnPrivacyBudgetTemplateProps:
6753
7857
 
6754
7858
  @builtins.property
6755
7859
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
6756
- '''An arbitrary set of tags (key-value pairs) for this cleanrooms privacy budget template.
7860
+ '''An optional label that you can assign to a resource when you create it.
7861
+
7862
+ Each tag consists of a key and an optional value, both of which you define. When you use tagging, you can also use tag-based access control in IAM policies to control access to this resource.
6757
7863
 
6758
7864
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cleanrooms-privacybudgettemplate.html#cfn-cleanrooms-privacybudgettemplate-tags
6759
7865
  '''
@@ -6909,6 +8015,7 @@ def _typecheckingstub__a8995527da9ce4212caf3c1fdf601e4947c02ff1e364e92811ac8635b
6909
8015
  name: builtins.str,
6910
8016
  query_log_status: builtins.str,
6911
8017
  analytics_engine: typing.Optional[builtins.str] = None,
8018
+ creator_ml_member_abilities: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.MLMemberAbilitiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6912
8019
  creator_payment_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.PaymentConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6913
8020
  data_encryption_metadata: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.DataEncryptionMetadataProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
6914
8021
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -6970,6 +8077,12 @@ def _typecheckingstub__1052deb6a86709adcf30bca5621af3b50e52d20c54f6e014b8baeaa99
6970
8077
  """Type checking stubs"""
6971
8078
  pass
6972
8079
 
8080
+ def _typecheckingstub__97c0d0f6cb32a0cbf54c04b4f619c67713dd848075c944908bc62665b42284a9(
8081
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCollaboration.MLMemberAbilitiesProperty]],
8082
+ ) -> None:
8083
+ """Type checking stubs"""
8084
+ pass
8085
+
6973
8086
  def _typecheckingstub__991360bdd6af4d5b428da7f242ab1cc46f2a619a380ffdff6e2434a3e7541e84(
6974
8087
  value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnCollaboration.PaymentConfigurationProperty]],
6975
8088
  ) -> None:
@@ -6998,19 +8111,50 @@ def _typecheckingstub__b1d5c25162d0eabd19a06fd0a1ec26adcd8d8a0d12434d6ee8fbec8e2
6998
8111
  """Type checking stubs"""
6999
8112
  pass
7000
8113
 
8114
+ def _typecheckingstub__1d12c181790032dcf002dcacb31cb4e50bd00d2ab068f38065b4ad7d1319d80c(
8115
+ *,
8116
+ custom_ml_member_abilities: typing.Sequence[builtins.str],
8117
+ ) -> None:
8118
+ """Type checking stubs"""
8119
+ pass
8120
+
8121
+ def _typecheckingstub__271514c890ff476984844077519496f6cd7107081ee5259613350b060c9bb355(
8122
+ *,
8123
+ model_inference: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.ModelInferencePaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8124
+ model_training: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.ModelTrainingPaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8125
+ ) -> None:
8126
+ """Type checking stubs"""
8127
+ pass
8128
+
7001
8129
  def _typecheckingstub__2c9d415168b79c297b7313d0c42362a70fed420b1dda08e496b99813fbbd3248(
7002
8130
  *,
7003
8131
  account_id: builtins.str,
7004
8132
  display_name: builtins.str,
7005
8133
  member_abilities: typing.Sequence[builtins.str],
8134
+ ml_member_abilities: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.MLMemberAbilitiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7006
8135
  payment_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.PaymentConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7007
8136
  ) -> None:
7008
8137
  """Type checking stubs"""
7009
8138
  pass
7010
8139
 
8140
+ def _typecheckingstub__91778bff8fa4786b2dc1aace0c2b468463ac1eb3971264546bddcbfe95dc8a99(
8141
+ *,
8142
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
8143
+ ) -> None:
8144
+ """Type checking stubs"""
8145
+ pass
8146
+
8147
+ def _typecheckingstub__35cebaf540e2e0f273400ebe690d288c30c23dab0b643fcadc0b6fa47a38e5c1(
8148
+ *,
8149
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
8150
+ ) -> None:
8151
+ """Type checking stubs"""
8152
+ pass
8153
+
7011
8154
  def _typecheckingstub__4bb111eda28dfc76cbd93dac49286726320cc654bfb530550f97b9ec4cf32cbf(
7012
8155
  *,
7013
8156
  query_compute: typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.QueryComputePaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]],
8157
+ machine_learning: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.MLPaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7014
8158
  ) -> None:
7015
8159
  """Type checking stubs"""
7016
8160
  pass
@@ -7031,6 +8175,7 @@ def _typecheckingstub__2049291a9933df94c4258b33838a3aa8100d0214a4519c3d84e6d70ed
7031
8175
  name: builtins.str,
7032
8176
  query_log_status: builtins.str,
7033
8177
  analytics_engine: typing.Optional[builtins.str] = None,
8178
+ creator_ml_member_abilities: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.MLMemberAbilitiesProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7034
8179
  creator_payment_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.PaymentConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7035
8180
  data_encryption_metadata: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnCollaboration.DataEncryptionMetadataProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7036
8181
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -7167,6 +8312,16 @@ def _typecheckingstub__124c3b77588197cdbfdd27c90ac026b586926dd1d223cf478cf9815b9
7167
8312
  """Type checking stubs"""
7168
8313
  pass
7169
8314
 
8315
+ def _typecheckingstub__58a53beb1a0a90ec538b0213243c8721465a73c73f8bf745778a09f20fde15e2(
8316
+ *,
8317
+ database_name: builtins.str,
8318
+ table_name: builtins.str,
8319
+ work_group: builtins.str,
8320
+ output_location: typing.Optional[builtins.str] = None,
8321
+ ) -> None:
8322
+ """Type checking stubs"""
8323
+ pass
8324
+
7170
8325
  def _typecheckingstub__6f1e3e5a795ca7258552d46676801756cc639b2cf39b0a42555fb510dee59fc1(
7171
8326
  *,
7172
8327
  v1: typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.ConfiguredTableAnalysisRulePolicyV1Property, typing.Dict[builtins.str, typing.Any]]],
@@ -7205,9 +8360,38 @@ def _typecheckingstub__ad49810a315ae1c04064504cefbb3e0bc6fec52a1add50545955db56f
7205
8360
  """Type checking stubs"""
7206
8361
  pass
7207
8362
 
8363
+ def _typecheckingstub__f0bac88ed34f9327592c380e538ab50720af8f52dd5162e61df0aec6adf2833a(
8364
+ *,
8365
+ account_identifier: builtins.str,
8366
+ database_name: builtins.str,
8367
+ schema_name: builtins.str,
8368
+ secret_arn: builtins.str,
8369
+ table_name: builtins.str,
8370
+ table_schema: typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.SnowflakeTableSchemaProperty, typing.Dict[builtins.str, typing.Any]]],
8371
+ ) -> None:
8372
+ """Type checking stubs"""
8373
+ pass
8374
+
8375
+ def _typecheckingstub__239c59d3fbfbc31d3d63df05389a6d08ab60a5a59b54a1d142b38a1317d9924a(
8376
+ *,
8377
+ v1: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.SnowflakeTableSchemaV1Property, typing.Dict[builtins.str, typing.Any]]]]],
8378
+ ) -> None:
8379
+ """Type checking stubs"""
8380
+ pass
8381
+
8382
+ def _typecheckingstub__83fba8d181362fec1a7a64673d96ded09367f372899b9e1e5eb170f94c17c13f(
8383
+ *,
8384
+ column_name: builtins.str,
8385
+ column_type: builtins.str,
8386
+ ) -> None:
8387
+ """Type checking stubs"""
8388
+ pass
8389
+
7208
8390
  def _typecheckingstub__48547ee47249030cb21aff2b6c33202b13d80f1552ddf62b21595c3e0bb02374(
7209
8391
  *,
7210
- glue: typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.GlueTableReferenceProperty, typing.Dict[builtins.str, typing.Any]]],
8392
+ athena: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.AthenaTableReferenceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8393
+ glue: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.GlueTableReferenceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8394
+ snowflake: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnConfiguredTable.SnowflakeTableReferenceProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7211
8395
  ) -> None:
7212
8396
  """Type checking stubs"""
7213
8397
  pass
@@ -7604,9 +8788,32 @@ def _typecheckingstub__efad84033de32d67e94b9ac23a8d3176e7fc904203e000dac066b2879
7604
8788
  """Type checking stubs"""
7605
8789
  pass
7606
8790
 
8791
+ def _typecheckingstub__13dd2d08b2612b2890adb3362ea4e5bebe48abd3cfb27c026a48fcd95bd347dd(
8792
+ *,
8793
+ model_inference: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMembership.MembershipModelInferencePaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8794
+ model_training: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMembership.MembershipModelTrainingPaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
8795
+ ) -> None:
8796
+ """Type checking stubs"""
8797
+ pass
8798
+
8799
+ def _typecheckingstub__2b782e5294b8bba99405cc5a7ca5c775fb2010013a32d43d0fdf4a2878964aca(
8800
+ *,
8801
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
8802
+ ) -> None:
8803
+ """Type checking stubs"""
8804
+ pass
8805
+
8806
+ def _typecheckingstub__8e5c7b5216c60ffcb694e1961e057ff77a03ba6ae0c1cd13b03497dc0f0df235(
8807
+ *,
8808
+ is_responsible: typing.Union[builtins.bool, _IResolvable_da3f097b],
8809
+ ) -> None:
8810
+ """Type checking stubs"""
8811
+ pass
8812
+
7607
8813
  def _typecheckingstub__ff9b623af3a2e12d6db7063d2191f9dad178b00c5e761d332496d6065f45dfe6(
7608
8814
  *,
7609
8815
  query_compute: typing.Union[_IResolvable_da3f097b, typing.Union[CfnMembership.MembershipQueryComputePaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]],
8816
+ machine_learning: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnMembership.MembershipMLPaymentConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7610
8817
  ) -> None:
7611
8818
  """Type checking stubs"""
7612
8819
  pass