aws-cdk-lib 2.210.0__py3-none-any.whl → 2.212.0__py3-none-any.whl

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

Potentially problematic release.


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

Files changed (78) hide show
  1. aws_cdk/__init__.py +404 -54
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.210.0.jsii.tgz → aws-cdk-lib@2.212.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_amazonmq/__init__.py +2 -1
  5. aws_cdk/aws_apigateway/__init__.py +2 -0
  6. aws_cdk/aws_apigatewayv2/__init__.py +1798 -74
  7. aws_cdk/aws_appconfig/__init__.py +9 -0
  8. aws_cdk/aws_appintegrations/__init__.py +395 -0
  9. aws_cdk/aws_arcregionswitch/__init__.py +5080 -0
  10. aws_cdk/aws_athena/__init__.py +23 -19
  11. aws_cdk/aws_autoscaling/__init__.py +6 -6
  12. aws_cdk/aws_batch/__init__.py +725 -55
  13. aws_cdk/aws_bedrock/__init__.py +18 -0
  14. aws_cdk/aws_billingconductor/__init__.py +3 -3
  15. aws_cdk/aws_cassandra/__init__.py +28 -1
  16. aws_cdk/aws_cloudfront/__init__.py +39 -8
  17. aws_cdk/aws_codebuild/__init__.py +122 -0
  18. aws_cdk/aws_codepipeline/__init__.py +51 -50
  19. aws_cdk/aws_cognito/__init__.py +9 -2
  20. aws_cdk/aws_connect/__init__.py +40 -15
  21. aws_cdk/aws_datazone/__init__.py +118 -77
  22. aws_cdk/aws_dax/__init__.py +39 -0
  23. aws_cdk/aws_deadline/__init__.py +166 -7
  24. aws_cdk/aws_docdb/__init__.py +20 -11
  25. aws_cdk/aws_dynamodb/__init__.py +246 -36
  26. aws_cdk/aws_ec2/__init__.py +1044 -111
  27. aws_cdk/aws_ecr/__init__.py +274 -0
  28. aws_cdk/aws_ecs/__init__.py +1637 -137
  29. aws_cdk/aws_eks/__init__.py +53 -3
  30. aws_cdk/aws_elasticloadbalancingv2/__init__.py +31 -17
  31. aws_cdk/aws_entityresolution/__init__.py +240 -45
  32. aws_cdk/aws_evs/__init__.py +20 -45
  33. aws_cdk/aws_gameliftstreams/__init__.py +7 -6
  34. aws_cdk/aws_glue/__init__.py +18 -9
  35. aws_cdk/aws_guardduty/__init__.py +1233 -113
  36. aws_cdk/aws_imagebuilder/__init__.py +34 -20
  37. aws_cdk/aws_inspectorv2/__init__.py +1516 -0
  38. aws_cdk/aws_iot/__init__.py +387 -0
  39. aws_cdk/aws_iotsitewise/__init__.py +1247 -139
  40. aws_cdk/aws_ivs/__init__.py +443 -33
  41. aws_cdk/aws_kinesisfirehose/__init__.py +2 -0
  42. aws_cdk/aws_lakeformation/__init__.py +1 -1
  43. aws_cdk/aws_lambda/__init__.py +9 -9
  44. aws_cdk/aws_lightsail/__init__.py +590 -0
  45. aws_cdk/aws_logs/__init__.py +97 -3
  46. aws_cdk/aws_medialive/__init__.py +270 -7
  47. aws_cdk/aws_mediapackagev2/__init__.py +204 -6
  48. aws_cdk/aws_neptune/__init__.py +41 -2
  49. aws_cdk/aws_networkfirewall/__init__.py +490 -134
  50. aws_cdk/aws_observabilityadmin/__init__.py +1468 -0
  51. aws_cdk/aws_omics/__init__.py +1 -1
  52. aws_cdk/aws_opensearchserverless/__init__.py +2 -2
  53. aws_cdk/aws_opensearchservice/__init__.py +128 -0
  54. aws_cdk/aws_opsworks/__init__.py +125 -125
  55. aws_cdk/aws_opsworkscm/__init__.py +1 -53
  56. aws_cdk/aws_pcs/__init__.py +49 -5
  57. aws_cdk/aws_qbusiness/__init__.py +3 -3
  58. aws_cdk/aws_quicksight/__init__.py +188 -83
  59. aws_cdk/aws_rds/__init__.py +245 -103
  60. aws_cdk/aws_s3/__init__.py +56 -1
  61. aws_cdk/aws_s3express/__init__.py +56 -1
  62. aws_cdk/aws_s3tables/__init__.py +2 -2
  63. aws_cdk/aws_sagemaker/__init__.py +4080 -223
  64. aws_cdk/aws_ses/__init__.py +172 -9
  65. aws_cdk/aws_sqs/__init__.py +4 -3
  66. aws_cdk/aws_ssm/__init__.py +8 -4
  67. aws_cdk/aws_stepfunctions_tasks/__init__.py +16 -9
  68. aws_cdk/aws_synthetics/__init__.py +116 -0
  69. aws_cdk/aws_verifiedpermissions/__init__.py +23 -2
  70. aws_cdk/aws_wisdom/__init__.py +2 -2
  71. aws_cdk/aws_workspacesweb/__init__.py +949 -157
  72. aws_cdk/cx_api/__init__.py +22 -0
  73. {aws_cdk_lib-2.210.0.dist-info → aws_cdk_lib-2.212.0.dist-info}/METADATA +335 -15
  74. {aws_cdk_lib-2.210.0.dist-info → aws_cdk_lib-2.212.0.dist-info}/RECORD +78 -76
  75. {aws_cdk_lib-2.210.0.dist-info → aws_cdk_lib-2.212.0.dist-info}/LICENSE +0 -0
  76. {aws_cdk_lib-2.210.0.dist-info → aws_cdk_lib-2.212.0.dist-info}/NOTICE +0 -0
  77. {aws_cdk_lib-2.210.0.dist-info → aws_cdk_lib-2.212.0.dist-info}/WHEEL +0 -0
  78. {aws_cdk_lib-2.210.0.dist-info → aws_cdk_lib-2.212.0.dist-info}/top_level.txt +0 -0
@@ -1329,10 +1329,11 @@ class CfnAssetModel(
1329
1329
 
1330
1330
  You create assets from asset models. With asset models, you can easily create assets of the same type that have standardized definitions. Each asset created from a model inherits the asset model's property and hierarchy definitions. For more information, see `Defining asset models <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/define-models.html>`_ in the *AWS IoT SiteWise User Guide* .
1331
1331
 
1332
- You can create two types of asset models, ``ASSET_MODEL`` or ``COMPONENT_MODEL`` .
1332
+ You can create three types of asset models, ``ASSET_MODEL`` , ``COMPONENT_MODEL`` , or an ``INTERFACE`` .
1333
1333
 
1334
1334
  - *ASSET_MODEL* – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model.
1335
1335
  - *COMPONENT_MODEL* – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
1336
+ - *INTERFACE* – An interface is a type of model that defines a standard structure that can be applied to different asset models.
1336
1337
 
1337
1338
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html
1338
1339
  :cloudformationResource: AWS::IoTSiteWise::AssetModel
@@ -1494,6 +1495,16 @@ class CfnAssetModel(
1494
1495
  unit="unit"
1495
1496
  )],
1496
1497
  asset_model_type="assetModelType",
1498
+ enforced_asset_model_interface_relationships=[iotsitewise.CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty(
1499
+ interface_asset_model_id="interfaceAssetModelId",
1500
+ property_mappings=[iotsitewise.CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty(
1501
+ interface_asset_model_property_external_id="interfaceAssetModelPropertyExternalId",
1502
+
1503
+ # the properties below are optional
1504
+ asset_model_property_external_id="assetModelPropertyExternalId",
1505
+ asset_model_property_logical_id="assetModelPropertyLogicalId"
1506
+ )]
1507
+ )],
1497
1508
  tags=[CfnTag(
1498
1509
  key="key",
1499
1510
  value="value"
@@ -1513,6 +1524,7 @@ class CfnAssetModel(
1513
1524
  asset_model_hierarchies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAssetModel.AssetModelHierarchyProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1514
1525
  asset_model_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAssetModel.AssetModelPropertyProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1515
1526
  asset_model_type: typing.Optional[builtins.str] = None,
1527
+ enforced_asset_model_interface_relationships: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
1516
1528
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
1517
1529
  ) -> None:
1518
1530
  '''
@@ -1525,6 +1537,7 @@ class CfnAssetModel(
1525
1537
  :param asset_model_hierarchies: The hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. For more information, see `Asset hierarchies <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html>`_ in the *AWS IoT SiteWise User Guide* . You can specify up to 10 hierarchies per asset model. For more information, see `Quotas <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html>`_ in the *AWS IoT SiteWise User Guide* .
1526
1538
  :param asset_model_properties: The property definitions of the asset model. For more information, see `Asset properties <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html>`_ in the *AWS IoT SiteWise User Guide* . You can specify up to 200 properties per asset model. For more information, see `Quotas <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html>`_ in the *AWS IoT SiteWise User Guide* .
1527
1539
  :param asset_model_type: The type of asset model. - *ASSET_MODEL* – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. - *COMPONENT_MODEL* – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
1540
+ :param enforced_asset_model_interface_relationships: a list of asset model and interface relationships.
1528
1541
  :param tags: A list of key-value pairs that contain metadata for the asset. For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
1529
1542
  '''
1530
1543
  if __debug__:
@@ -1539,6 +1552,7 @@ class CfnAssetModel(
1539
1552
  asset_model_hierarchies=asset_model_hierarchies,
1540
1553
  asset_model_properties=asset_model_properties,
1541
1554
  asset_model_type=asset_model_type,
1555
+ enforced_asset_model_interface_relationships=enforced_asset_model_interface_relationships,
1542
1556
  tags=tags,
1543
1557
  )
1544
1558
 
@@ -1709,6 +1723,24 @@ class CfnAssetModel(
1709
1723
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1710
1724
  jsii.set(self, "assetModelType", value) # pyright: ignore[reportArgumentType]
1711
1725
 
1726
+ @builtins.property
1727
+ @jsii.member(jsii_name="enforcedAssetModelInterfaceRelationships")
1728
+ def enforced_asset_model_interface_relationships(
1729
+ self,
1730
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty"]]]]:
1731
+ '''a list of asset model and interface relationships.'''
1732
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty"]]]], jsii.get(self, "enforcedAssetModelInterfaceRelationships"))
1733
+
1734
+ @enforced_asset_model_interface_relationships.setter
1735
+ def enforced_asset_model_interface_relationships(
1736
+ self,
1737
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty"]]]],
1738
+ ) -> None:
1739
+ if __debug__:
1740
+ type_hints = typing.get_type_hints(_typecheckingstub__8585343b0b44aebb25048a1408ef7b098cbb2e611b50c8ec2cbecceb8582d081)
1741
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1742
+ jsii.set(self, "enforcedAssetModelInterfaceRelationships", value) # pyright: ignore[reportArgumentType]
1743
+
1712
1744
  @builtins.property
1713
1745
  @jsii.member(jsii_name="tagsRaw")
1714
1746
  def tags_raw(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
@@ -2438,6 +2470,179 @@ class CfnAssetModel(
2438
2470
  k + "=" + repr(v) for k, v in self._values.items()
2439
2471
  )
2440
2472
 
2473
+ @jsii.data_type(
2474
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty",
2475
+ jsii_struct_bases=[],
2476
+ name_mapping={
2477
+ "interface_asset_model_property_external_id": "interfaceAssetModelPropertyExternalId",
2478
+ "asset_model_property_external_id": "assetModelPropertyExternalId",
2479
+ "asset_model_property_logical_id": "assetModelPropertyLogicalId",
2480
+ },
2481
+ )
2482
+ class EnforcedAssetModelInterfacePropertyMappingProperty:
2483
+ def __init__(
2484
+ self,
2485
+ *,
2486
+ interface_asset_model_property_external_id: builtins.str,
2487
+ asset_model_property_external_id: typing.Optional[builtins.str] = None,
2488
+ asset_model_property_logical_id: typing.Optional[builtins.str] = None,
2489
+ ) -> None:
2490
+ '''Contains information about enforced interface property and asset model property.
2491
+
2492
+ :param interface_asset_model_property_external_id: The external ID of the enforced interface property.
2493
+ :param asset_model_property_external_id: The external ID of the enforced asset model property.
2494
+ :param asset_model_property_logical_id: The logical ID of the enforced asset model property.
2495
+
2496
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping.html
2497
+ :exampleMetadata: fixture=_generated
2498
+
2499
+ Example::
2500
+
2501
+ # The code below shows an example of how to instantiate this type.
2502
+ # The values are placeholders you should change.
2503
+ from aws_cdk import aws_iotsitewise as iotsitewise
2504
+
2505
+ enforced_asset_model_interface_property_mapping_property = iotsitewise.CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty(
2506
+ interface_asset_model_property_external_id="interfaceAssetModelPropertyExternalId",
2507
+
2508
+ # the properties below are optional
2509
+ asset_model_property_external_id="assetModelPropertyExternalId",
2510
+ asset_model_property_logical_id="assetModelPropertyLogicalId"
2511
+ )
2512
+ '''
2513
+ if __debug__:
2514
+ type_hints = typing.get_type_hints(_typecheckingstub__602edbd4a6db7058c0a2d97bafdee4ac831e8e9cefa95964c590f9009304858f)
2515
+ check_type(argname="argument interface_asset_model_property_external_id", value=interface_asset_model_property_external_id, expected_type=type_hints["interface_asset_model_property_external_id"])
2516
+ check_type(argname="argument asset_model_property_external_id", value=asset_model_property_external_id, expected_type=type_hints["asset_model_property_external_id"])
2517
+ check_type(argname="argument asset_model_property_logical_id", value=asset_model_property_logical_id, expected_type=type_hints["asset_model_property_logical_id"])
2518
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2519
+ "interface_asset_model_property_external_id": interface_asset_model_property_external_id,
2520
+ }
2521
+ if asset_model_property_external_id is not None:
2522
+ self._values["asset_model_property_external_id"] = asset_model_property_external_id
2523
+ if asset_model_property_logical_id is not None:
2524
+ self._values["asset_model_property_logical_id"] = asset_model_property_logical_id
2525
+
2526
+ @builtins.property
2527
+ def interface_asset_model_property_external_id(self) -> builtins.str:
2528
+ '''The external ID of the enforced interface property.
2529
+
2530
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping.html#cfn-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping-interfaceassetmodelpropertyexternalid
2531
+ '''
2532
+ result = self._values.get("interface_asset_model_property_external_id")
2533
+ assert result is not None, "Required property 'interface_asset_model_property_external_id' is missing"
2534
+ return typing.cast(builtins.str, result)
2535
+
2536
+ @builtins.property
2537
+ def asset_model_property_external_id(self) -> typing.Optional[builtins.str]:
2538
+ '''The external ID of the enforced asset model property.
2539
+
2540
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping.html#cfn-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping-assetmodelpropertyexternalid
2541
+ '''
2542
+ result = self._values.get("asset_model_property_external_id")
2543
+ return typing.cast(typing.Optional[builtins.str], result)
2544
+
2545
+ @builtins.property
2546
+ def asset_model_property_logical_id(self) -> typing.Optional[builtins.str]:
2547
+ '''The logical ID of the enforced asset model property.
2548
+
2549
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping.html#cfn-iotsitewise-assetmodel-enforcedassetmodelinterfacepropertymapping-assetmodelpropertylogicalid
2550
+ '''
2551
+ result = self._values.get("asset_model_property_logical_id")
2552
+ return typing.cast(typing.Optional[builtins.str], result)
2553
+
2554
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2555
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2556
+
2557
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2558
+ return not (rhs == self)
2559
+
2560
+ def __repr__(self) -> str:
2561
+ return "EnforcedAssetModelInterfacePropertyMappingProperty(%s)" % ", ".join(
2562
+ k + "=" + repr(v) for k, v in self._values.items()
2563
+ )
2564
+
2565
+ @jsii.data_type(
2566
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty",
2567
+ jsii_struct_bases=[],
2568
+ name_mapping={
2569
+ "interface_asset_model_id": "interfaceAssetModelId",
2570
+ "property_mappings": "propertyMappings",
2571
+ },
2572
+ )
2573
+ class EnforcedAssetModelInterfaceRelationshipProperty:
2574
+ def __init__(
2575
+ self,
2576
+ *,
2577
+ interface_asset_model_id: typing.Optional[builtins.str] = None,
2578
+ property_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
2579
+ ) -> None:
2580
+ '''Contains information about enforced interface hierarchy and asset model hierarchy.
2581
+
2582
+ :param interface_asset_model_id: The ID of the interface that is enforced to the asset model.
2583
+ :param property_mappings: Contains information about enforced interface property and asset model property.
2584
+
2585
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacerelationship.html
2586
+ :exampleMetadata: fixture=_generated
2587
+
2588
+ Example::
2589
+
2590
+ # The code below shows an example of how to instantiate this type.
2591
+ # The values are placeholders you should change.
2592
+ from aws_cdk import aws_iotsitewise as iotsitewise
2593
+
2594
+ enforced_asset_model_interface_relationship_property = iotsitewise.CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty(
2595
+ interface_asset_model_id="interfaceAssetModelId",
2596
+ property_mappings=[iotsitewise.CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty(
2597
+ interface_asset_model_property_external_id="interfaceAssetModelPropertyExternalId",
2598
+
2599
+ # the properties below are optional
2600
+ asset_model_property_external_id="assetModelPropertyExternalId",
2601
+ asset_model_property_logical_id="assetModelPropertyLogicalId"
2602
+ )]
2603
+ )
2604
+ '''
2605
+ if __debug__:
2606
+ type_hints = typing.get_type_hints(_typecheckingstub__1fe8dfe5b5064a1ee03d773eb65966bf8eb13cf514900f6647f677f88f271459)
2607
+ check_type(argname="argument interface_asset_model_id", value=interface_asset_model_id, expected_type=type_hints["interface_asset_model_id"])
2608
+ check_type(argname="argument property_mappings", value=property_mappings, expected_type=type_hints["property_mappings"])
2609
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
2610
+ if interface_asset_model_id is not None:
2611
+ self._values["interface_asset_model_id"] = interface_asset_model_id
2612
+ if property_mappings is not None:
2613
+ self._values["property_mappings"] = property_mappings
2614
+
2615
+ @builtins.property
2616
+ def interface_asset_model_id(self) -> typing.Optional[builtins.str]:
2617
+ '''The ID of the interface that is enforced to the asset model.
2618
+
2619
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacerelationship.html#cfn-iotsitewise-assetmodel-enforcedassetmodelinterfacerelationship-interfaceassetmodelid
2620
+ '''
2621
+ result = self._values.get("interface_asset_model_id")
2622
+ return typing.cast(typing.Optional[builtins.str], result)
2623
+
2624
+ @builtins.property
2625
+ def property_mappings(
2626
+ self,
2627
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty"]]]]:
2628
+ '''Contains information about enforced interface property and asset model property.
2629
+
2630
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-assetmodel-enforcedassetmodelinterfacerelationship.html#cfn-iotsitewise-assetmodel-enforcedassetmodelinterfacerelationship-propertymappings
2631
+ '''
2632
+ result = self._values.get("property_mappings")
2633
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty"]]]], result)
2634
+
2635
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2636
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2637
+
2638
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2639
+ return not (rhs == self)
2640
+
2641
+ def __repr__(self) -> str:
2642
+ return "EnforcedAssetModelInterfaceRelationshipProperty(%s)" % ", ".join(
2643
+ k + "=" + repr(v) for k, v in self._values.items()
2644
+ )
2645
+
2441
2646
  @jsii.data_type(
2442
2647
  jsii_type="aws-cdk-lib.aws_iotsitewise.CfnAssetModel.ExpressionVariableProperty",
2443
2648
  jsii_struct_bases=[],
@@ -3311,6 +3516,7 @@ class CfnAssetModel(
3311
3516
  "asset_model_hierarchies": "assetModelHierarchies",
3312
3517
  "asset_model_properties": "assetModelProperties",
3313
3518
  "asset_model_type": "assetModelType",
3519
+ "enforced_asset_model_interface_relationships": "enforcedAssetModelInterfaceRelationships",
3314
3520
  "tags": "tags",
3315
3521
  },
3316
3522
  )
@@ -3325,6 +3531,7 @@ class CfnAssetModelProps:
3325
3531
  asset_model_hierarchies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.AssetModelHierarchyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3326
3532
  asset_model_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.AssetModelPropertyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3327
3533
  asset_model_type: typing.Optional[builtins.str] = None,
3534
+ enforced_asset_model_interface_relationships: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3328
3535
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3329
3536
  ) -> None:
3330
3537
  '''Properties for defining a ``CfnAssetModel``.
@@ -3336,6 +3543,7 @@ class CfnAssetModelProps:
3336
3543
  :param asset_model_hierarchies: The hierarchy definitions of the asset model. Each hierarchy specifies an asset model whose assets can be children of any other assets created from this asset model. For more information, see `Asset hierarchies <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-hierarchies.html>`_ in the *AWS IoT SiteWise User Guide* . You can specify up to 10 hierarchies per asset model. For more information, see `Quotas <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html>`_ in the *AWS IoT SiteWise User Guide* .
3337
3544
  :param asset_model_properties: The property definitions of the asset model. For more information, see `Asset properties <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/asset-properties.html>`_ in the *AWS IoT SiteWise User Guide* . You can specify up to 200 properties per asset model. For more information, see `Quotas <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/quotas.html>`_ in the *AWS IoT SiteWise User Guide* .
3338
3545
  :param asset_model_type: The type of asset model. - *ASSET_MODEL* – (default) An asset model that you can use to create assets. Can't be included as a component in another asset model. - *COMPONENT_MODEL* – A reusable component that you can include in the composite models of other asset models. You can't create assets directly from this type of asset model.
3546
+ :param enforced_asset_model_interface_relationships: a list of asset model and interface relationships.
3339
3547
  :param tags: A list of key-value pairs that contain metadata for the asset. For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
3340
3548
 
3341
3549
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html
@@ -3497,6 +3705,16 @@ class CfnAssetModelProps:
3497
3705
  unit="unit"
3498
3706
  )],
3499
3707
  asset_model_type="assetModelType",
3708
+ enforced_asset_model_interface_relationships=[iotsitewise.CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty(
3709
+ interface_asset_model_id="interfaceAssetModelId",
3710
+ property_mappings=[iotsitewise.CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty(
3711
+ interface_asset_model_property_external_id="interfaceAssetModelPropertyExternalId",
3712
+
3713
+ # the properties below are optional
3714
+ asset_model_property_external_id="assetModelPropertyExternalId",
3715
+ asset_model_property_logical_id="assetModelPropertyLogicalId"
3716
+ )]
3717
+ )],
3500
3718
  tags=[CfnTag(
3501
3719
  key="key",
3502
3720
  value="value"
@@ -3512,6 +3730,7 @@ class CfnAssetModelProps:
3512
3730
  check_type(argname="argument asset_model_hierarchies", value=asset_model_hierarchies, expected_type=type_hints["asset_model_hierarchies"])
3513
3731
  check_type(argname="argument asset_model_properties", value=asset_model_properties, expected_type=type_hints["asset_model_properties"])
3514
3732
  check_type(argname="argument asset_model_type", value=asset_model_type, expected_type=type_hints["asset_model_type"])
3733
+ check_type(argname="argument enforced_asset_model_interface_relationships", value=enforced_asset_model_interface_relationships, expected_type=type_hints["enforced_asset_model_interface_relationships"])
3515
3734
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3516
3735
  self._values: typing.Dict[builtins.str, typing.Any] = {
3517
3736
  "asset_model_name": asset_model_name,
@@ -3528,6 +3747,8 @@ class CfnAssetModelProps:
3528
3747
  self._values["asset_model_properties"] = asset_model_properties
3529
3748
  if asset_model_type is not None:
3530
3749
  self._values["asset_model_type"] = asset_model_type
3750
+ if enforced_asset_model_interface_relationships is not None:
3751
+ self._values["enforced_asset_model_interface_relationships"] = enforced_asset_model_interface_relationships
3531
3752
  if tags is not None:
3532
3753
  self._values["tags"] = tags
3533
3754
 
@@ -3619,65 +3840,850 @@ class CfnAssetModelProps:
3619
3840
  result = self._values.get("asset_model_type")
3620
3841
  return typing.cast(typing.Optional[builtins.str], result)
3621
3842
 
3622
- @builtins.property
3623
- def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3624
- '''A list of key-value pairs that contain metadata for the asset.
3843
+ @builtins.property
3844
+ def enforced_asset_model_interface_relationships(
3845
+ self,
3846
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty]]]]:
3847
+ '''a list of asset model and interface relationships.
3848
+
3849
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-enforcedassetmodelinterfacerelationships
3850
+ '''
3851
+ result = self._values.get("enforced_asset_model_interface_relationships")
3852
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty]]]], result)
3853
+
3854
+ @builtins.property
3855
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3856
+ '''A list of key-value pairs that contain metadata for the asset.
3857
+
3858
+ For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
3859
+
3860
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-tags
3861
+ '''
3862
+ result = self._values.get("tags")
3863
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
3864
+
3865
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3866
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3867
+
3868
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3869
+ return not (rhs == self)
3870
+
3871
+ def __repr__(self) -> str:
3872
+ return "CfnAssetModelProps(%s)" % ", ".join(
3873
+ k + "=" + repr(v) for k, v in self._values.items()
3874
+ )
3875
+
3876
+
3877
+ @jsii.data_type(
3878
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnAssetProps",
3879
+ jsii_struct_bases=[],
3880
+ name_mapping={
3881
+ "asset_model_id": "assetModelId",
3882
+ "asset_name": "assetName",
3883
+ "asset_description": "assetDescription",
3884
+ "asset_external_id": "assetExternalId",
3885
+ "asset_hierarchies": "assetHierarchies",
3886
+ "asset_properties": "assetProperties",
3887
+ "tags": "tags",
3888
+ },
3889
+ )
3890
+ class CfnAssetProps:
3891
+ def __init__(
3892
+ self,
3893
+ *,
3894
+ asset_model_id: builtins.str,
3895
+ asset_name: builtins.str,
3896
+ asset_description: typing.Optional[builtins.str] = None,
3897
+ asset_external_id: typing.Optional[builtins.str] = None,
3898
+ asset_hierarchies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAsset.AssetHierarchyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3899
+ asset_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAsset.AssetPropertyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3900
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3901
+ ) -> None:
3902
+ '''Properties for defining a ``CfnAsset``.
3903
+
3904
+ :param asset_model_id: The ID of the asset model from which to create the asset. This can be either the actual ID in UUID format, or else ``externalId:`` followed by the external ID, if it has one. For more information, see `Referencing objects with external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references>`_ in the *AWS IoT SiteWise User Guide* .
3905
+ :param asset_name: A friendly name for the asset.
3906
+ :param asset_description: The ID of the asset, in UUID format.
3907
+ :param asset_external_id: The external ID of the asset model composite model. For more information, see `Using external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids>`_ in the *AWS IoT SiteWise User Guide* .
3908
+ :param asset_hierarchies: A list of asset hierarchies that each contain a ``hierarchyId`` . A hierarchy specifies allowed parent/child asset relationships.
3909
+ :param asset_properties: The list of asset properties for the asset. This object doesn't include properties that you define in composite models. You can find composite model properties in the ``assetCompositeModels`` object.
3910
+ :param tags: A list of key-value pairs that contain metadata for the asset. For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
3911
+
3912
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html
3913
+ :exampleMetadata: fixture=_generated
3914
+
3915
+ Example::
3916
+
3917
+ # The code below shows an example of how to instantiate this type.
3918
+ # The values are placeholders you should change.
3919
+ from aws_cdk import aws_iotsitewise as iotsitewise
3920
+
3921
+ cfn_asset_props = iotsitewise.CfnAssetProps(
3922
+ asset_model_id="assetModelId",
3923
+ asset_name="assetName",
3924
+
3925
+ # the properties below are optional
3926
+ asset_description="assetDescription",
3927
+ asset_external_id="assetExternalId",
3928
+ asset_hierarchies=[iotsitewise.CfnAsset.AssetHierarchyProperty(
3929
+ child_asset_id="childAssetId",
3930
+
3931
+ # the properties below are optional
3932
+ external_id="externalId",
3933
+ id="id",
3934
+ logical_id="logicalId"
3935
+ )],
3936
+ asset_properties=[iotsitewise.CfnAsset.AssetPropertyProperty(
3937
+ alias="alias",
3938
+ external_id="externalId",
3939
+ id="id",
3940
+ logical_id="logicalId",
3941
+ notification_state="notificationState",
3942
+ unit="unit"
3943
+ )],
3944
+ tags=[CfnTag(
3945
+ key="key",
3946
+ value="value"
3947
+ )]
3948
+ )
3949
+ '''
3950
+ if __debug__:
3951
+ type_hints = typing.get_type_hints(_typecheckingstub__306f4833ce13fd25ec4269f2a96d0ee80f11a34f43885f5b4b372569dc9f7931)
3952
+ check_type(argname="argument asset_model_id", value=asset_model_id, expected_type=type_hints["asset_model_id"])
3953
+ check_type(argname="argument asset_name", value=asset_name, expected_type=type_hints["asset_name"])
3954
+ check_type(argname="argument asset_description", value=asset_description, expected_type=type_hints["asset_description"])
3955
+ check_type(argname="argument asset_external_id", value=asset_external_id, expected_type=type_hints["asset_external_id"])
3956
+ check_type(argname="argument asset_hierarchies", value=asset_hierarchies, expected_type=type_hints["asset_hierarchies"])
3957
+ check_type(argname="argument asset_properties", value=asset_properties, expected_type=type_hints["asset_properties"])
3958
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3959
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3960
+ "asset_model_id": asset_model_id,
3961
+ "asset_name": asset_name,
3962
+ }
3963
+ if asset_description is not None:
3964
+ self._values["asset_description"] = asset_description
3965
+ if asset_external_id is not None:
3966
+ self._values["asset_external_id"] = asset_external_id
3967
+ if asset_hierarchies is not None:
3968
+ self._values["asset_hierarchies"] = asset_hierarchies
3969
+ if asset_properties is not None:
3970
+ self._values["asset_properties"] = asset_properties
3971
+ if tags is not None:
3972
+ self._values["tags"] = tags
3973
+
3974
+ @builtins.property
3975
+ def asset_model_id(self) -> builtins.str:
3976
+ '''The ID of the asset model from which to create the asset.
3977
+
3978
+ This can be either the actual ID in UUID format, or else ``externalId:`` followed by the external ID, if it has one. For more information, see `Referencing objects with external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references>`_ in the *AWS IoT SiteWise User Guide* .
3979
+
3980
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetmodelid
3981
+ '''
3982
+ result = self._values.get("asset_model_id")
3983
+ assert result is not None, "Required property 'asset_model_id' is missing"
3984
+ return typing.cast(builtins.str, result)
3985
+
3986
+ @builtins.property
3987
+ def asset_name(self) -> builtins.str:
3988
+ '''A friendly name for the asset.
3989
+
3990
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetname
3991
+ '''
3992
+ result = self._values.get("asset_name")
3993
+ assert result is not None, "Required property 'asset_name' is missing"
3994
+ return typing.cast(builtins.str, result)
3995
+
3996
+ @builtins.property
3997
+ def asset_description(self) -> typing.Optional[builtins.str]:
3998
+ '''The ID of the asset, in UUID format.
3999
+
4000
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetdescription
4001
+ '''
4002
+ result = self._values.get("asset_description")
4003
+ return typing.cast(typing.Optional[builtins.str], result)
4004
+
4005
+ @builtins.property
4006
+ def asset_external_id(self) -> typing.Optional[builtins.str]:
4007
+ '''The external ID of the asset model composite model.
4008
+
4009
+ For more information, see `Using external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids>`_ in the *AWS IoT SiteWise User Guide* .
4010
+
4011
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetexternalid
4012
+ '''
4013
+ result = self._values.get("asset_external_id")
4014
+ return typing.cast(typing.Optional[builtins.str], result)
4015
+
4016
+ @builtins.property
4017
+ def asset_hierarchies(
4018
+ self,
4019
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetHierarchyProperty]]]]:
4020
+ '''A list of asset hierarchies that each contain a ``hierarchyId`` .
4021
+
4022
+ A hierarchy specifies allowed parent/child asset relationships.
4023
+
4024
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assethierarchies
4025
+ '''
4026
+ result = self._values.get("asset_hierarchies")
4027
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetHierarchyProperty]]]], result)
4028
+
4029
+ @builtins.property
4030
+ def asset_properties(
4031
+ self,
4032
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetPropertyProperty]]]]:
4033
+ '''The list of asset properties for the asset.
4034
+
4035
+ This object doesn't include properties that you define in composite models. You can find composite model properties in the ``assetCompositeModels`` object.
4036
+
4037
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetproperties
4038
+ '''
4039
+ result = self._values.get("asset_properties")
4040
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetPropertyProperty]]]], result)
4041
+
4042
+ @builtins.property
4043
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4044
+ '''A list of key-value pairs that contain metadata for the asset.
4045
+
4046
+ For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
4047
+
4048
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-tags
4049
+ '''
4050
+ result = self._values.get("tags")
4051
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
4052
+
4053
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4054
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4055
+
4056
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4057
+ return not (rhs == self)
4058
+
4059
+ def __repr__(self) -> str:
4060
+ return "CfnAssetProps(%s)" % ", ".join(
4061
+ k + "=" + repr(v) for k, v in self._values.items()
4062
+ )
4063
+
4064
+
4065
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
4066
+ class CfnComputationModel(
4067
+ _CfnResource_9df397a6,
4068
+ metaclass=jsii.JSIIMeta,
4069
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModel",
4070
+ ):
4071
+ '''Resource schema for AWS::IoTSiteWise::ComputationModel.
4072
+
4073
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html
4074
+ :cloudformationResource: AWS::IoTSiteWise::ComputationModel
4075
+ :exampleMetadata: fixture=_generated
4076
+
4077
+ Example::
4078
+
4079
+ # The code below shows an example of how to instantiate this type.
4080
+ # The values are placeholders you should change.
4081
+ from aws_cdk import aws_iotsitewise as iotsitewise
4082
+
4083
+ # computation_model_data_binding_value_property_: iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty
4084
+
4085
+ cfn_computation_model = iotsitewise.CfnComputationModel(self, "MyCfnComputationModel",
4086
+ computation_model_configuration=iotsitewise.CfnComputationModel.ComputationModelConfigurationProperty(
4087
+ anomaly_detection=iotsitewise.CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty(
4088
+ input_properties="inputProperties",
4089
+ result_property="resultProperty"
4090
+ )
4091
+ ),
4092
+ computation_model_data_binding={
4093
+ "computation_model_data_binding_key": iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty(
4094
+ asset_model_property=iotsitewise.CfnComputationModel.AssetModelPropertyBindingValueProperty(
4095
+ asset_model_id="assetModelId",
4096
+ property_id="propertyId"
4097
+ ),
4098
+ asset_property=iotsitewise.CfnComputationModel.AssetPropertyBindingValueProperty(
4099
+ asset_id="assetId",
4100
+ property_id="propertyId"
4101
+ ),
4102
+ list=[computation_model_data_binding_value_property_]
4103
+ )
4104
+ },
4105
+ computation_model_name="computationModelName",
4106
+
4107
+ # the properties below are optional
4108
+ computation_model_description="computationModelDescription",
4109
+ tags=[CfnTag(
4110
+ key="key",
4111
+ value="value"
4112
+ )]
4113
+ )
4114
+ '''
4115
+
4116
+ def __init__(
4117
+ self,
4118
+ scope: _constructs_77d1e7e8.Construct,
4119
+ id: builtins.str,
4120
+ *,
4121
+ computation_model_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputationModel.ComputationModelConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
4122
+ computation_model_data_binding: typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputationModel.ComputationModelDataBindingValueProperty", typing.Dict[builtins.str, typing.Any]]]]],
4123
+ computation_model_name: builtins.str,
4124
+ computation_model_description: typing.Optional[builtins.str] = None,
4125
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4126
+ ) -> None:
4127
+ '''
4128
+ :param scope: Scope in which this resource is defined.
4129
+ :param id: Construct identifier for this resource (unique in its scope).
4130
+ :param computation_model_configuration:
4131
+ :param computation_model_data_binding:
4132
+ :param computation_model_name: The name of the computation model.
4133
+ :param computation_model_description: A description about the computation model.
4134
+ :param tags: An array of key-value pairs to apply to this resource.
4135
+ '''
4136
+ if __debug__:
4137
+ type_hints = typing.get_type_hints(_typecheckingstub__566bf1711c9dcacb9cb88add46c2c4e157208bdce4a774ccb256a7d21c68de89)
4138
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
4139
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
4140
+ props = CfnComputationModelProps(
4141
+ computation_model_configuration=computation_model_configuration,
4142
+ computation_model_data_binding=computation_model_data_binding,
4143
+ computation_model_name=computation_model_name,
4144
+ computation_model_description=computation_model_description,
4145
+ tags=tags,
4146
+ )
4147
+
4148
+ jsii.create(self.__class__, self, [scope, id, props])
4149
+
4150
+ @jsii.member(jsii_name="inspect")
4151
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
4152
+ '''Examines the CloudFormation resource and discloses attributes.
4153
+
4154
+ :param inspector: tree inspector to collect and process attributes.
4155
+ '''
4156
+ if __debug__:
4157
+ type_hints = typing.get_type_hints(_typecheckingstub__137e70d4839513d333c73d5f02909172ab78f14b28c52c7f13f6f52ff398e870)
4158
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
4159
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
4160
+
4161
+ @jsii.member(jsii_name="renderProperties")
4162
+ def _render_properties(
4163
+ self,
4164
+ props: typing.Mapping[builtins.str, typing.Any],
4165
+ ) -> typing.Mapping[builtins.str, typing.Any]:
4166
+ '''
4167
+ :param props: -
4168
+ '''
4169
+ if __debug__:
4170
+ type_hints = typing.get_type_hints(_typecheckingstub__27af8e5f561e3e573b9a04774edf0c0c6cf2f3e31d385b4ffe28873a39dc7e48)
4171
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
4172
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
4173
+
4174
+ @jsii.python.classproperty
4175
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
4176
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
4177
+ '''The CloudFormation resource type name for this resource class.'''
4178
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
4179
+
4180
+ @builtins.property
4181
+ @jsii.member(jsii_name="attrComputationModelArn")
4182
+ def attr_computation_model_arn(self) -> builtins.str:
4183
+ '''The ARN of the computation model.
4184
+
4185
+ :cloudformationAttribute: ComputationModelArn
4186
+ '''
4187
+ return typing.cast(builtins.str, jsii.get(self, "attrComputationModelArn"))
4188
+
4189
+ @builtins.property
4190
+ @jsii.member(jsii_name="attrComputationModelId")
4191
+ def attr_computation_model_id(self) -> builtins.str:
4192
+ '''The ID of the computation model.
4193
+
4194
+ :cloudformationAttribute: ComputationModelId
4195
+ '''
4196
+ return typing.cast(builtins.str, jsii.get(self, "attrComputationModelId"))
4197
+
4198
+ @builtins.property
4199
+ @jsii.member(jsii_name="cdkTagManager")
4200
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
4201
+ '''Tag Manager which manages the tags for this resource.'''
4202
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
4203
+
4204
+ @builtins.property
4205
+ @jsii.member(jsii_name="cfnProperties")
4206
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4207
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4208
+
4209
+ @builtins.property
4210
+ @jsii.member(jsii_name="computationModelConfiguration")
4211
+ def computation_model_configuration(
4212
+ self,
4213
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelConfigurationProperty"]:
4214
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelConfigurationProperty"], jsii.get(self, "computationModelConfiguration"))
4215
+
4216
+ @computation_model_configuration.setter
4217
+ def computation_model_configuration(
4218
+ self,
4219
+ value: typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelConfigurationProperty"],
4220
+ ) -> None:
4221
+ if __debug__:
4222
+ type_hints = typing.get_type_hints(_typecheckingstub__3fa195f1583c09a0caa02fa5c50ed928dbf5232ca80e6affc9fa715d83e57cd1)
4223
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4224
+ jsii.set(self, "computationModelConfiguration", value) # pyright: ignore[reportArgumentType]
4225
+
4226
+ @builtins.property
4227
+ @jsii.member(jsii_name="computationModelDataBinding")
4228
+ def computation_model_data_binding(
4229
+ self,
4230
+ ) -> typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelDataBindingValueProperty"]]]:
4231
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelDataBindingValueProperty"]]], jsii.get(self, "computationModelDataBinding"))
4232
+
4233
+ @computation_model_data_binding.setter
4234
+ def computation_model_data_binding(
4235
+ self,
4236
+ value: typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelDataBindingValueProperty"]]],
4237
+ ) -> None:
4238
+ if __debug__:
4239
+ type_hints = typing.get_type_hints(_typecheckingstub__be967ec7617c0ed0efa50fb8a3519a87b8800751beb73a6449a1637314931d2c)
4240
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4241
+ jsii.set(self, "computationModelDataBinding", value) # pyright: ignore[reportArgumentType]
4242
+
4243
+ @builtins.property
4244
+ @jsii.member(jsii_name="computationModelName")
4245
+ def computation_model_name(self) -> builtins.str:
4246
+ '''The name of the computation model.'''
4247
+ return typing.cast(builtins.str, jsii.get(self, "computationModelName"))
4248
+
4249
+ @computation_model_name.setter
4250
+ def computation_model_name(self, value: builtins.str) -> None:
4251
+ if __debug__:
4252
+ type_hints = typing.get_type_hints(_typecheckingstub__a009db7b645690134b3878ea2c7cdee53682cf297919e1b3f54b712539f8b0de)
4253
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4254
+ jsii.set(self, "computationModelName", value) # pyright: ignore[reportArgumentType]
4255
+
4256
+ @builtins.property
4257
+ @jsii.member(jsii_name="computationModelDescription")
4258
+ def computation_model_description(self) -> typing.Optional[builtins.str]:
4259
+ '''A description about the computation model.'''
4260
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "computationModelDescription"))
4261
+
4262
+ @computation_model_description.setter
4263
+ def computation_model_description(
4264
+ self,
4265
+ value: typing.Optional[builtins.str],
4266
+ ) -> None:
4267
+ if __debug__:
4268
+ type_hints = typing.get_type_hints(_typecheckingstub__7d577131789cc578cee733460d23165debfb49d0d90b94e3e10d38d4d0d44a79)
4269
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4270
+ jsii.set(self, "computationModelDescription", value) # pyright: ignore[reportArgumentType]
4271
+
4272
+ @builtins.property
4273
+ @jsii.member(jsii_name="tags")
4274
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4275
+ '''An array of key-value pairs to apply to this resource.'''
4276
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
4277
+
4278
+ @tags.setter
4279
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
4280
+ if __debug__:
4281
+ type_hints = typing.get_type_hints(_typecheckingstub__a82834353206c4a7be4a8ed40665c48481769bb21be0214fd279c598a8007929)
4282
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4283
+ jsii.set(self, "tags", value) # pyright: ignore[reportArgumentType]
4284
+
4285
+ @jsii.data_type(
4286
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty",
4287
+ jsii_struct_bases=[],
4288
+ name_mapping={
4289
+ "input_properties": "inputProperties",
4290
+ "result_property": "resultProperty",
4291
+ },
4292
+ )
4293
+ class AnomalyDetectionComputationModelConfigurationProperty:
4294
+ def __init__(
4295
+ self,
4296
+ *,
4297
+ input_properties: builtins.str,
4298
+ result_property: builtins.str,
4299
+ ) -> None:
4300
+ '''
4301
+ :param input_properties: Input properties for anomaly detection.
4302
+ :param result_property: Result property for anomaly detection.
4303
+
4304
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-anomalydetectioncomputationmodelconfiguration.html
4305
+ :exampleMetadata: fixture=_generated
4306
+
4307
+ Example::
4308
+
4309
+ # The code below shows an example of how to instantiate this type.
4310
+ # The values are placeholders you should change.
4311
+ from aws_cdk import aws_iotsitewise as iotsitewise
4312
+
4313
+ anomaly_detection_computation_model_configuration_property = iotsitewise.CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty(
4314
+ input_properties="inputProperties",
4315
+ result_property="resultProperty"
4316
+ )
4317
+ '''
4318
+ if __debug__:
4319
+ type_hints = typing.get_type_hints(_typecheckingstub__69d1839ca00b91b9b1180620638bc2ec0b687463e3828b79ad3dd49ef5189aa7)
4320
+ check_type(argname="argument input_properties", value=input_properties, expected_type=type_hints["input_properties"])
4321
+ check_type(argname="argument result_property", value=result_property, expected_type=type_hints["result_property"])
4322
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4323
+ "input_properties": input_properties,
4324
+ "result_property": result_property,
4325
+ }
4326
+
4327
+ @builtins.property
4328
+ def input_properties(self) -> builtins.str:
4329
+ '''Input properties for anomaly detection.
4330
+
4331
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-anomalydetectioncomputationmodelconfiguration.html#cfn-iotsitewise-computationmodel-anomalydetectioncomputationmodelconfiguration-inputproperties
4332
+ '''
4333
+ result = self._values.get("input_properties")
4334
+ assert result is not None, "Required property 'input_properties' is missing"
4335
+ return typing.cast(builtins.str, result)
4336
+
4337
+ @builtins.property
4338
+ def result_property(self) -> builtins.str:
4339
+ '''Result property for anomaly detection.
4340
+
4341
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-anomalydetectioncomputationmodelconfiguration.html#cfn-iotsitewise-computationmodel-anomalydetectioncomputationmodelconfiguration-resultproperty
4342
+ '''
4343
+ result = self._values.get("result_property")
4344
+ assert result is not None, "Required property 'result_property' is missing"
4345
+ return typing.cast(builtins.str, result)
4346
+
4347
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4348
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4349
+
4350
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4351
+ return not (rhs == self)
4352
+
4353
+ def __repr__(self) -> str:
4354
+ return "AnomalyDetectionComputationModelConfigurationProperty(%s)" % ", ".join(
4355
+ k + "=" + repr(v) for k, v in self._values.items()
4356
+ )
4357
+
4358
+ @jsii.data_type(
4359
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModel.AssetModelPropertyBindingValueProperty",
4360
+ jsii_struct_bases=[],
4361
+ name_mapping={"asset_model_id": "assetModelId", "property_id": "propertyId"},
4362
+ )
4363
+ class AssetModelPropertyBindingValueProperty:
4364
+ def __init__(
4365
+ self,
4366
+ *,
4367
+ asset_model_id: builtins.str,
4368
+ property_id: builtins.str,
4369
+ ) -> None:
4370
+ '''
4371
+ :param asset_model_id: The ID of the asset model.
4372
+ :param property_id: The ID of the asset model property.
4373
+
4374
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-assetmodelpropertybindingvalue.html
4375
+ :exampleMetadata: fixture=_generated
4376
+
4377
+ Example::
4378
+
4379
+ # The code below shows an example of how to instantiate this type.
4380
+ # The values are placeholders you should change.
4381
+ from aws_cdk import aws_iotsitewise as iotsitewise
4382
+
4383
+ asset_model_property_binding_value_property = iotsitewise.CfnComputationModel.AssetModelPropertyBindingValueProperty(
4384
+ asset_model_id="assetModelId",
4385
+ property_id="propertyId"
4386
+ )
4387
+ '''
4388
+ if __debug__:
4389
+ type_hints = typing.get_type_hints(_typecheckingstub__949067d8ab294bdc850ab646091006fd0e748f018285b21dcc99fb980c1a0f5e)
4390
+ check_type(argname="argument asset_model_id", value=asset_model_id, expected_type=type_hints["asset_model_id"])
4391
+ check_type(argname="argument property_id", value=property_id, expected_type=type_hints["property_id"])
4392
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4393
+ "asset_model_id": asset_model_id,
4394
+ "property_id": property_id,
4395
+ }
4396
+
4397
+ @builtins.property
4398
+ def asset_model_id(self) -> builtins.str:
4399
+ '''The ID of the asset model.
4400
+
4401
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-assetmodelpropertybindingvalue.html#cfn-iotsitewise-computationmodel-assetmodelpropertybindingvalue-assetmodelid
4402
+ '''
4403
+ result = self._values.get("asset_model_id")
4404
+ assert result is not None, "Required property 'asset_model_id' is missing"
4405
+ return typing.cast(builtins.str, result)
4406
+
4407
+ @builtins.property
4408
+ def property_id(self) -> builtins.str:
4409
+ '''The ID of the asset model property.
4410
+
4411
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-assetmodelpropertybindingvalue.html#cfn-iotsitewise-computationmodel-assetmodelpropertybindingvalue-propertyid
4412
+ '''
4413
+ result = self._values.get("property_id")
4414
+ assert result is not None, "Required property 'property_id' is missing"
4415
+ return typing.cast(builtins.str, result)
4416
+
4417
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4418
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4419
+
4420
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4421
+ return not (rhs == self)
4422
+
4423
+ def __repr__(self) -> str:
4424
+ return "AssetModelPropertyBindingValueProperty(%s)" % ", ".join(
4425
+ k + "=" + repr(v) for k, v in self._values.items()
4426
+ )
4427
+
4428
+ @jsii.data_type(
4429
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModel.AssetPropertyBindingValueProperty",
4430
+ jsii_struct_bases=[],
4431
+ name_mapping={"asset_id": "assetId", "property_id": "propertyId"},
4432
+ )
4433
+ class AssetPropertyBindingValueProperty:
4434
+ def __init__(
4435
+ self,
4436
+ *,
4437
+ asset_id: builtins.str,
4438
+ property_id: builtins.str,
4439
+ ) -> None:
4440
+ '''
4441
+ :param asset_id: The ID of the asset.
4442
+ :param property_id: The ID of the asset property.
4443
+
4444
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-assetpropertybindingvalue.html
4445
+ :exampleMetadata: fixture=_generated
4446
+
4447
+ Example::
4448
+
4449
+ # The code below shows an example of how to instantiate this type.
4450
+ # The values are placeholders you should change.
4451
+ from aws_cdk import aws_iotsitewise as iotsitewise
4452
+
4453
+ asset_property_binding_value_property = iotsitewise.CfnComputationModel.AssetPropertyBindingValueProperty(
4454
+ asset_id="assetId",
4455
+ property_id="propertyId"
4456
+ )
4457
+ '''
4458
+ if __debug__:
4459
+ type_hints = typing.get_type_hints(_typecheckingstub__e4a3ae5efabf3788291f9b7ef194e309cc061d66db8346fea04452f02980728d)
4460
+ check_type(argname="argument asset_id", value=asset_id, expected_type=type_hints["asset_id"])
4461
+ check_type(argname="argument property_id", value=property_id, expected_type=type_hints["property_id"])
4462
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4463
+ "asset_id": asset_id,
4464
+ "property_id": property_id,
4465
+ }
4466
+
4467
+ @builtins.property
4468
+ def asset_id(self) -> builtins.str:
4469
+ '''The ID of the asset.
4470
+
4471
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-assetpropertybindingvalue.html#cfn-iotsitewise-computationmodel-assetpropertybindingvalue-assetid
4472
+ '''
4473
+ result = self._values.get("asset_id")
4474
+ assert result is not None, "Required property 'asset_id' is missing"
4475
+ return typing.cast(builtins.str, result)
4476
+
4477
+ @builtins.property
4478
+ def property_id(self) -> builtins.str:
4479
+ '''The ID of the asset property.
4480
+
4481
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-assetpropertybindingvalue.html#cfn-iotsitewise-computationmodel-assetpropertybindingvalue-propertyid
4482
+ '''
4483
+ result = self._values.get("property_id")
4484
+ assert result is not None, "Required property 'property_id' is missing"
4485
+ return typing.cast(builtins.str, result)
4486
+
4487
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4488
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4489
+
4490
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4491
+ return not (rhs == self)
4492
+
4493
+ def __repr__(self) -> str:
4494
+ return "AssetPropertyBindingValueProperty(%s)" % ", ".join(
4495
+ k + "=" + repr(v) for k, v in self._values.items()
4496
+ )
4497
+
4498
+ @jsii.data_type(
4499
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModel.ComputationModelConfigurationProperty",
4500
+ jsii_struct_bases=[],
4501
+ name_mapping={"anomaly_detection": "anomalyDetection"},
4502
+ )
4503
+ class ComputationModelConfigurationProperty:
4504
+ def __init__(
4505
+ self,
4506
+ *,
4507
+ anomaly_detection: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4508
+ ) -> None:
4509
+ '''
4510
+ :param anomaly_detection:
4511
+
4512
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-computationmodelconfiguration.html
4513
+ :exampleMetadata: fixture=_generated
4514
+
4515
+ Example::
4516
+
4517
+ # The code below shows an example of how to instantiate this type.
4518
+ # The values are placeholders you should change.
4519
+ from aws_cdk import aws_iotsitewise as iotsitewise
4520
+
4521
+ computation_model_configuration_property = iotsitewise.CfnComputationModel.ComputationModelConfigurationProperty(
4522
+ anomaly_detection=iotsitewise.CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty(
4523
+ input_properties="inputProperties",
4524
+ result_property="resultProperty"
4525
+ )
4526
+ )
4527
+ '''
4528
+ if __debug__:
4529
+ type_hints = typing.get_type_hints(_typecheckingstub__7b33f062481ddc382b1fb7a44ec3672f2844ad5a2ee31f5ede04b108b279328e)
4530
+ check_type(argname="argument anomaly_detection", value=anomaly_detection, expected_type=type_hints["anomaly_detection"])
4531
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4532
+ if anomaly_detection is not None:
4533
+ self._values["anomaly_detection"] = anomaly_detection
4534
+
4535
+ @builtins.property
4536
+ def anomaly_detection(
4537
+ self,
4538
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty"]]:
4539
+ '''
4540
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-computationmodelconfiguration.html#cfn-iotsitewise-computationmodel-computationmodelconfiguration-anomalydetection
4541
+ '''
4542
+ result = self._values.get("anomaly_detection")
4543
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty"]], result)
4544
+
4545
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4546
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4547
+
4548
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4549
+ return not (rhs == self)
4550
+
4551
+ def __repr__(self) -> str:
4552
+ return "ComputationModelConfigurationProperty(%s)" % ", ".join(
4553
+ k + "=" + repr(v) for k, v in self._values.items()
4554
+ )
4555
+
4556
+ @jsii.data_type(
4557
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty",
4558
+ jsii_struct_bases=[],
4559
+ name_mapping={
4560
+ "asset_model_property": "assetModelProperty",
4561
+ "asset_property": "assetProperty",
4562
+ "list": "list",
4563
+ },
4564
+ )
4565
+ class ComputationModelDataBindingValueProperty:
4566
+ def __init__(
4567
+ self,
4568
+ *,
4569
+ asset_model_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputationModel.AssetModelPropertyBindingValueProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4570
+ asset_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputationModel.AssetPropertyBindingValueProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
4571
+ list: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnComputationModel.ComputationModelDataBindingValueProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4572
+ ) -> None:
4573
+ '''
4574
+ :param asset_model_property:
4575
+ :param asset_property:
4576
+ :param list: Defines a list of computation model binding values.
4577
+
4578
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-computationmodeldatabindingvalue.html
4579
+ :exampleMetadata: fixture=_generated
4580
+
4581
+ Example::
4582
+
4583
+ # The code below shows an example of how to instantiate this type.
4584
+ # The values are placeholders you should change.
4585
+ from aws_cdk import aws_iotsitewise as iotsitewise
4586
+
4587
+ # computation_model_data_binding_value_property_: iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty
4588
+
4589
+ computation_model_data_binding_value_property = iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty(
4590
+ asset_model_property=iotsitewise.CfnComputationModel.AssetModelPropertyBindingValueProperty(
4591
+ asset_model_id="assetModelId",
4592
+ property_id="propertyId"
4593
+ ),
4594
+ asset_property=iotsitewise.CfnComputationModel.AssetPropertyBindingValueProperty(
4595
+ asset_id="assetId",
4596
+ property_id="propertyId"
4597
+ ),
4598
+ list=[computation_model_data_binding_value_property_]
4599
+ )
4600
+ '''
4601
+ if __debug__:
4602
+ type_hints = typing.get_type_hints(_typecheckingstub__30609777f6bb1d4c3fb4232f9af93dc24089504c669f64d1de9edd24a9e6d0df)
4603
+ check_type(argname="argument asset_model_property", value=asset_model_property, expected_type=type_hints["asset_model_property"])
4604
+ check_type(argname="argument asset_property", value=asset_property, expected_type=type_hints["asset_property"])
4605
+ check_type(argname="argument list", value=list, expected_type=type_hints["list"])
4606
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4607
+ if asset_model_property is not None:
4608
+ self._values["asset_model_property"] = asset_model_property
4609
+ if asset_property is not None:
4610
+ self._values["asset_property"] = asset_property
4611
+ if list is not None:
4612
+ self._values["list"] = list
4613
+
4614
+ @builtins.property
4615
+ def asset_model_property(
4616
+ self,
4617
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.AssetModelPropertyBindingValueProperty"]]:
4618
+ '''
4619
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-computationmodeldatabindingvalue.html#cfn-iotsitewise-computationmodel-computationmodeldatabindingvalue-assetmodelproperty
4620
+ '''
4621
+ result = self._values.get("asset_model_property")
4622
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.AssetModelPropertyBindingValueProperty"]], result)
3625
4623
 
3626
- For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
4624
+ @builtins.property
4625
+ def asset_property(
4626
+ self,
4627
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.AssetPropertyBindingValueProperty"]]:
4628
+ '''
4629
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-computationmodeldatabindingvalue.html#cfn-iotsitewise-computationmodel-computationmodeldatabindingvalue-assetproperty
4630
+ '''
4631
+ result = self._values.get("asset_property")
4632
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.AssetPropertyBindingValueProperty"]], result)
3627
4633
 
3628
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-assetmodel.html#cfn-iotsitewise-assetmodel-tags
3629
- '''
3630
- result = self._values.get("tags")
3631
- return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
4634
+ @builtins.property
4635
+ def list(
4636
+ self,
4637
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelDataBindingValueProperty"]]]]:
4638
+ '''Defines a list of computation model binding values.
3632
4639
 
3633
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
3634
- return isinstance(rhs, self.__class__) and rhs._values == self._values
4640
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-iotsitewise-computationmodel-computationmodeldatabindingvalue.html#cfn-iotsitewise-computationmodel-computationmodeldatabindingvalue-list
4641
+ '''
4642
+ result = self._values.get("list")
4643
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnComputationModel.ComputationModelDataBindingValueProperty"]]]], result)
3635
4644
 
3636
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
3637
- return not (rhs == self)
4645
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4646
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3638
4647
 
3639
- def __repr__(self) -> str:
3640
- return "CfnAssetModelProps(%s)" % ", ".join(
3641
- k + "=" + repr(v) for k, v in self._values.items()
3642
- )
4648
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4649
+ return not (rhs == self)
4650
+
4651
+ def __repr__(self) -> str:
4652
+ return "ComputationModelDataBindingValueProperty(%s)" % ", ".join(
4653
+ k + "=" + repr(v) for k, v in self._values.items()
4654
+ )
3643
4655
 
3644
4656
 
3645
4657
  @jsii.data_type(
3646
- jsii_type="aws-cdk-lib.aws_iotsitewise.CfnAssetProps",
4658
+ jsii_type="aws-cdk-lib.aws_iotsitewise.CfnComputationModelProps",
3647
4659
  jsii_struct_bases=[],
3648
4660
  name_mapping={
3649
- "asset_model_id": "assetModelId",
3650
- "asset_name": "assetName",
3651
- "asset_description": "assetDescription",
3652
- "asset_external_id": "assetExternalId",
3653
- "asset_hierarchies": "assetHierarchies",
3654
- "asset_properties": "assetProperties",
4661
+ "computation_model_configuration": "computationModelConfiguration",
4662
+ "computation_model_data_binding": "computationModelDataBinding",
4663
+ "computation_model_name": "computationModelName",
4664
+ "computation_model_description": "computationModelDescription",
3655
4665
  "tags": "tags",
3656
4666
  },
3657
4667
  )
3658
- class CfnAssetProps:
4668
+ class CfnComputationModelProps:
3659
4669
  def __init__(
3660
4670
  self,
3661
4671
  *,
3662
- asset_model_id: builtins.str,
3663
- asset_name: builtins.str,
3664
- asset_description: typing.Optional[builtins.str] = None,
3665
- asset_external_id: typing.Optional[builtins.str] = None,
3666
- asset_hierarchies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAsset.AssetHierarchyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
3667
- asset_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAsset.AssetPropertyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
4672
+ computation_model_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4673
+ computation_model_data_binding: typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelDataBindingValueProperty, typing.Dict[builtins.str, typing.Any]]]]],
4674
+ computation_model_name: builtins.str,
4675
+ computation_model_description: typing.Optional[builtins.str] = None,
3668
4676
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3669
4677
  ) -> None:
3670
- '''Properties for defining a ``CfnAsset``.
4678
+ '''Properties for defining a ``CfnComputationModel``.
3671
4679
 
3672
- :param asset_model_id: The ID of the asset model from which to create the asset. This can be either the actual ID in UUID format, or else ``externalId:`` followed by the external ID, if it has one. For more information, see `Referencing objects with external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references>`_ in the *AWS IoT SiteWise User Guide* .
3673
- :param asset_name: A friendly name for the asset.
3674
- :param asset_description: The ID of the asset, in UUID format.
3675
- :param asset_external_id: The external ID of the asset model composite model. For more information, see `Using external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids>`_ in the *AWS IoT SiteWise User Guide* .
3676
- :param asset_hierarchies: A list of asset hierarchies that each contain a ``hierarchyId`` . A hierarchy specifies allowed parent/child asset relationships.
3677
- :param asset_properties: The list of asset properties for the asset. This object doesn't include properties that you define in composite models. You can find composite model properties in the ``assetCompositeModels`` object.
3678
- :param tags: A list of key-value pairs that contain metadata for the asset. For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
4680
+ :param computation_model_configuration:
4681
+ :param computation_model_data_binding:
4682
+ :param computation_model_name: The name of the computation model.
4683
+ :param computation_model_description: A description about the computation model.
4684
+ :param tags: An array of key-value pairs to apply to this resource.
3679
4685
 
3680
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html
4686
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html
3681
4687
  :exampleMetadata: fixture=_generated
3682
4688
 
3683
4689
  Example::
@@ -3686,29 +4692,32 @@ class CfnAssetProps:
3686
4692
  # The values are placeholders you should change.
3687
4693
  from aws_cdk import aws_iotsitewise as iotsitewise
3688
4694
 
3689
- cfn_asset_props = iotsitewise.CfnAssetProps(
3690
- asset_model_id="assetModelId",
3691
- asset_name="assetName",
4695
+ # computation_model_data_binding_value_property_: iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty
3692
4696
 
3693
- # the properties below are optional
3694
- asset_description="assetDescription",
3695
- asset_external_id="assetExternalId",
3696
- asset_hierarchies=[iotsitewise.CfnAsset.AssetHierarchyProperty(
3697
- child_asset_id="childAssetId",
4697
+ cfn_computation_model_props = iotsitewise.CfnComputationModelProps(
4698
+ computation_model_configuration=iotsitewise.CfnComputationModel.ComputationModelConfigurationProperty(
4699
+ anomaly_detection=iotsitewise.CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty(
4700
+ input_properties="inputProperties",
4701
+ result_property="resultProperty"
4702
+ )
4703
+ ),
4704
+ computation_model_data_binding={
4705
+ "computation_model_data_binding_key": iotsitewise.CfnComputationModel.ComputationModelDataBindingValueProperty(
4706
+ asset_model_property=iotsitewise.CfnComputationModel.AssetModelPropertyBindingValueProperty(
4707
+ asset_model_id="assetModelId",
4708
+ property_id="propertyId"
4709
+ ),
4710
+ asset_property=iotsitewise.CfnComputationModel.AssetPropertyBindingValueProperty(
4711
+ asset_id="assetId",
4712
+ property_id="propertyId"
4713
+ ),
4714
+ list=[computation_model_data_binding_value_property_]
4715
+ )
4716
+ },
4717
+ computation_model_name="computationModelName",
3698
4718
 
3699
- # the properties below are optional
3700
- external_id="externalId",
3701
- id="id",
3702
- logical_id="logicalId"
3703
- )],
3704
- asset_properties=[iotsitewise.CfnAsset.AssetPropertyProperty(
3705
- alias="alias",
3706
- external_id="externalId",
3707
- id="id",
3708
- logical_id="logicalId",
3709
- notification_state="notificationState",
3710
- unit="unit"
3711
- )],
4719
+ # the properties below are optional
4720
+ computation_model_description="computationModelDescription",
3712
4721
  tags=[CfnTag(
3713
4722
  key="key",
3714
4723
  value="value"
@@ -3716,104 +4725,68 @@ class CfnAssetProps:
3716
4725
  )
3717
4726
  '''
3718
4727
  if __debug__:
3719
- type_hints = typing.get_type_hints(_typecheckingstub__306f4833ce13fd25ec4269f2a96d0ee80f11a34f43885f5b4b372569dc9f7931)
3720
- check_type(argname="argument asset_model_id", value=asset_model_id, expected_type=type_hints["asset_model_id"])
3721
- check_type(argname="argument asset_name", value=asset_name, expected_type=type_hints["asset_name"])
3722
- check_type(argname="argument asset_description", value=asset_description, expected_type=type_hints["asset_description"])
3723
- check_type(argname="argument asset_external_id", value=asset_external_id, expected_type=type_hints["asset_external_id"])
3724
- check_type(argname="argument asset_hierarchies", value=asset_hierarchies, expected_type=type_hints["asset_hierarchies"])
3725
- check_type(argname="argument asset_properties", value=asset_properties, expected_type=type_hints["asset_properties"])
4728
+ type_hints = typing.get_type_hints(_typecheckingstub__ed97b2e804664b4c2090fb09c1141fc63e60c4fbaee41661ef227778c1ed7dd3)
4729
+ check_type(argname="argument computation_model_configuration", value=computation_model_configuration, expected_type=type_hints["computation_model_configuration"])
4730
+ check_type(argname="argument computation_model_data_binding", value=computation_model_data_binding, expected_type=type_hints["computation_model_data_binding"])
4731
+ check_type(argname="argument computation_model_name", value=computation_model_name, expected_type=type_hints["computation_model_name"])
4732
+ check_type(argname="argument computation_model_description", value=computation_model_description, expected_type=type_hints["computation_model_description"])
3726
4733
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3727
4734
  self._values: typing.Dict[builtins.str, typing.Any] = {
3728
- "asset_model_id": asset_model_id,
3729
- "asset_name": asset_name,
4735
+ "computation_model_configuration": computation_model_configuration,
4736
+ "computation_model_data_binding": computation_model_data_binding,
4737
+ "computation_model_name": computation_model_name,
3730
4738
  }
3731
- if asset_description is not None:
3732
- self._values["asset_description"] = asset_description
3733
- if asset_external_id is not None:
3734
- self._values["asset_external_id"] = asset_external_id
3735
- if asset_hierarchies is not None:
3736
- self._values["asset_hierarchies"] = asset_hierarchies
3737
- if asset_properties is not None:
3738
- self._values["asset_properties"] = asset_properties
4739
+ if computation_model_description is not None:
4740
+ self._values["computation_model_description"] = computation_model_description
3739
4741
  if tags is not None:
3740
4742
  self._values["tags"] = tags
3741
4743
 
3742
4744
  @builtins.property
3743
- def asset_model_id(self) -> builtins.str:
3744
- '''The ID of the asset model from which to create the asset.
3745
-
3746
- This can be either the actual ID in UUID format, or else ``externalId:`` followed by the external ID, if it has one. For more information, see `Referencing objects with external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-id-references>`_ in the *AWS IoT SiteWise User Guide* .
3747
-
3748
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetmodelid
4745
+ def computation_model_configuration(
4746
+ self,
4747
+ ) -> typing.Union[_IResolvable_da3f097b, CfnComputationModel.ComputationModelConfigurationProperty]:
3749
4748
  '''
3750
- result = self._values.get("asset_model_id")
3751
- assert result is not None, "Required property 'asset_model_id' is missing"
3752
- return typing.cast(builtins.str, result)
3753
-
3754
- @builtins.property
3755
- def asset_name(self) -> builtins.str:
3756
- '''A friendly name for the asset.
3757
-
3758
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetname
4749
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html#cfn-iotsitewise-computationmodel-computationmodelconfiguration
3759
4750
  '''
3760
- result = self._values.get("asset_name")
3761
- assert result is not None, "Required property 'asset_name' is missing"
3762
- return typing.cast(builtins.str, result)
4751
+ result = self._values.get("computation_model_configuration")
4752
+ assert result is not None, "Required property 'computation_model_configuration' is missing"
4753
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnComputationModel.ComputationModelConfigurationProperty], result)
3763
4754
 
3764
4755
  @builtins.property
3765
- def asset_description(self) -> typing.Optional[builtins.str]:
3766
- '''The ID of the asset, in UUID format.
3767
-
3768
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetdescription
4756
+ def computation_model_data_binding(
4757
+ self,
4758
+ ) -> typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, CfnComputationModel.ComputationModelDataBindingValueProperty]]]:
3769
4759
  '''
3770
- result = self._values.get("asset_description")
3771
- return typing.cast(typing.Optional[builtins.str], result)
3772
-
3773
- @builtins.property
3774
- def asset_external_id(self) -> typing.Optional[builtins.str]:
3775
- '''The external ID of the asset model composite model.
3776
-
3777
- For more information, see `Using external IDs <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/object-ids.html#external-ids>`_ in the *AWS IoT SiteWise User Guide* .
3778
-
3779
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetexternalid
4760
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html#cfn-iotsitewise-computationmodel-computationmodeldatabinding
3780
4761
  '''
3781
- result = self._values.get("asset_external_id")
3782
- return typing.cast(typing.Optional[builtins.str], result)
4762
+ result = self._values.get("computation_model_data_binding")
4763
+ assert result is not None, "Required property 'computation_model_data_binding' is missing"
4764
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, CfnComputationModel.ComputationModelDataBindingValueProperty]]], result)
3783
4765
 
3784
4766
  @builtins.property
3785
- def asset_hierarchies(
3786
- self,
3787
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetHierarchyProperty]]]]:
3788
- '''A list of asset hierarchies that each contain a ``hierarchyId`` .
3789
-
3790
- A hierarchy specifies allowed parent/child asset relationships.
4767
+ def computation_model_name(self) -> builtins.str:
4768
+ '''The name of the computation model.
3791
4769
 
3792
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assethierarchies
4770
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html#cfn-iotsitewise-computationmodel-computationmodelname
3793
4771
  '''
3794
- result = self._values.get("asset_hierarchies")
3795
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetHierarchyProperty]]]], result)
4772
+ result = self._values.get("computation_model_name")
4773
+ assert result is not None, "Required property 'computation_model_name' is missing"
4774
+ return typing.cast(builtins.str, result)
3796
4775
 
3797
4776
  @builtins.property
3798
- def asset_properties(
3799
- self,
3800
- ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetPropertyProperty]]]]:
3801
- '''The list of asset properties for the asset.
4777
+ def computation_model_description(self) -> typing.Optional[builtins.str]:
4778
+ '''A description about the computation model.
3802
4779
 
3803
- This object doesn't include properties that you define in composite models. You can find composite model properties in the ``assetCompositeModels`` object.
3804
-
3805
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-assetproperties
4780
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html#cfn-iotsitewise-computationmodel-computationmodeldescription
3806
4781
  '''
3807
- result = self._values.get("asset_properties")
3808
- return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAsset.AssetPropertyProperty]]]], result)
4782
+ result = self._values.get("computation_model_description")
4783
+ return typing.cast(typing.Optional[builtins.str], result)
3809
4784
 
3810
4785
  @builtins.property
3811
4786
  def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3812
- '''A list of key-value pairs that contain metadata for the asset.
3813
-
3814
- For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
4787
+ '''An array of key-value pairs to apply to this resource.
3815
4788
 
3816
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-asset.html#cfn-iotsitewise-asset-tags
4789
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-computationmodel.html#cfn-iotsitewise-computationmodel-tags
3817
4790
  '''
3818
4791
  result = self._values.get("tags")
3819
4792
  return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
@@ -3825,7 +4798,7 @@ class CfnAssetProps:
3825
4798
  return not (rhs == self)
3826
4799
 
3827
4800
  def __repr__(self) -> str:
3828
- return "CfnAssetProps(%s)" % ", ".join(
4801
+ return "CfnComputationModelProps(%s)" % ", ".join(
3829
4802
  k + "=" + repr(v) for k, v in self._values.items()
3830
4803
  )
3831
4804
 
@@ -4765,7 +5738,7 @@ class CfnGateway(
4765
5738
  :param gateway_name: A unique name for the gateway.
4766
5739
  :param gateway_platform: The gateway's platform. You can only specify one platform in a gateway.
4767
5740
  :param gateway_capability_summaries: A list of gateway capability summaries that each contain a namespace and status. Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use `DescribeGatewayCapabilityConfiguration <https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeGatewayCapabilityConfiguration.html>`_ .
4768
- :param gateway_version: The version of the gateway you want to create.
5741
+ :param gateway_version: The version of the gateway. A value of ``3`` indicates an MQTT-enabled, V3 gateway, while ``2`` indicates a Classic streams, V2 gateway.
4769
5742
  :param tags: A list of key-value pairs that contain metadata for the gateway. For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
4770
5743
  '''
4771
5744
  if __debug__:
@@ -4884,7 +5857,7 @@ class CfnGateway(
4884
5857
  @builtins.property
4885
5858
  @jsii.member(jsii_name="gatewayVersion")
4886
5859
  def gateway_version(self) -> typing.Optional[builtins.str]:
4887
- '''The version of the gateway you want to create.'''
5860
+ '''The version of the gateway.'''
4888
5861
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "gatewayVersion"))
4889
5862
 
4890
5863
  @gateway_version.setter
@@ -5303,7 +6276,7 @@ class CfnGatewayProps:
5303
6276
  :param gateway_name: A unique name for the gateway.
5304
6277
  :param gateway_platform: The gateway's platform. You can only specify one platform in a gateway.
5305
6278
  :param gateway_capability_summaries: A list of gateway capability summaries that each contain a namespace and status. Each gateway capability defines data sources for the gateway. To retrieve a capability configuration's definition, use `DescribeGatewayCapabilityConfiguration <https://docs.aws.amazon.com/iot-sitewise/latest/APIReference/API_DescribeGatewayCapabilityConfiguration.html>`_ .
5306
- :param gateway_version: The version of the gateway you want to create.
6279
+ :param gateway_version: The version of the gateway. A value of ``3`` indicates an MQTT-enabled, V3 gateway, while ``2`` indicates a Classic streams, V2 gateway.
5307
6280
  :param tags: A list of key-value pairs that contain metadata for the gateway. For more information, see `Tagging your AWS IoT SiteWise resources <https://docs.aws.amazon.com/iot-sitewise/latest/userguide/tag-resources.html>`_ in the *AWS IoT SiteWise User Guide* .
5308
6281
 
5309
6282
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html
@@ -5403,7 +6376,9 @@ class CfnGatewayProps:
5403
6376
 
5404
6377
  @builtins.property
5405
6378
  def gateway_version(self) -> typing.Optional[builtins.str]:
5406
- '''The version of the gateway you want to create.
6379
+ '''The version of the gateway.
6380
+
6381
+ A value of ``3`` indicates an MQTT-enabled, V3 gateway, while ``2`` indicates a Classic streams, V2 gateway.
5407
6382
 
5408
6383
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-iotsitewise-gateway.html#cfn-iotsitewise-gateway-gatewayversion
5409
6384
  '''
@@ -6444,6 +7419,8 @@ __all__ = [
6444
7419
  "CfnAssetModel",
6445
7420
  "CfnAssetModelProps",
6446
7421
  "CfnAssetProps",
7422
+ "CfnComputationModel",
7423
+ "CfnComputationModelProps",
6447
7424
  "CfnDashboard",
6448
7425
  "CfnDashboardProps",
6449
7426
  "CfnDataset",
@@ -6662,6 +7639,7 @@ def _typecheckingstub__64edf231bb465b8f44da5cbed11fe0e7614208f47a50131d6c645ff0d
6662
7639
  asset_model_hierarchies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.AssetModelHierarchyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6663
7640
  asset_model_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.AssetModelPropertyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6664
7641
  asset_model_type: typing.Optional[builtins.str] = None,
7642
+ enforced_asset_model_interface_relationships: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6665
7643
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6666
7644
  ) -> None:
6667
7645
  """Type checking stubs"""
@@ -6721,6 +7699,12 @@ def _typecheckingstub__33747ea8b68fd7ca1298da79a238d24533fca030571c5c5f494b79381
6721
7699
  """Type checking stubs"""
6722
7700
  pass
6723
7701
 
7702
+ def _typecheckingstub__8585343b0b44aebb25048a1408ef7b098cbb2e611b50c8ec2cbecceb8582d081(
7703
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty]]]],
7704
+ ) -> None:
7705
+ """Type checking stubs"""
7706
+ pass
7707
+
6724
7708
  def _typecheckingstub__087e71db10fe7e46cfbe736951d8b93342a08c50afea582cbddc2eaa71151a64(
6725
7709
  value: typing.Optional[typing.List[_CfnTag_f6864754]],
6726
7710
  ) -> None:
@@ -6774,6 +7758,23 @@ def _typecheckingstub__3172068ecee12a11a997c0f7922e1b5c5f5b9e44979e3f39af0c9f997
6774
7758
  """Type checking stubs"""
6775
7759
  pass
6776
7760
 
7761
+ def _typecheckingstub__602edbd4a6db7058c0a2d97bafdee4ac831e8e9cefa95964c590f9009304858f(
7762
+ *,
7763
+ interface_asset_model_property_external_id: builtins.str,
7764
+ asset_model_property_external_id: typing.Optional[builtins.str] = None,
7765
+ asset_model_property_logical_id: typing.Optional[builtins.str] = None,
7766
+ ) -> None:
7767
+ """Type checking stubs"""
7768
+ pass
7769
+
7770
+ def _typecheckingstub__1fe8dfe5b5064a1ee03d773eb65966bf8eb13cf514900f6647f677f88f271459(
7771
+ *,
7772
+ interface_asset_model_id: typing.Optional[builtins.str] = None,
7773
+ property_mappings: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.EnforcedAssetModelInterfacePropertyMappingProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7774
+ ) -> None:
7775
+ """Type checking stubs"""
7776
+ pass
7777
+
6777
7778
  def _typecheckingstub__47d40674b47217f8eb75acf1060336f44b9e0583e395a98550f44b5a4681f3db(
6778
7779
  *,
6779
7780
  name: builtins.str,
@@ -6853,6 +7854,7 @@ def _typecheckingstub__a4c397ea0e26142735f716b5c92fe1c51048d94b5142d035ce8dc4cb1
6853
7854
  asset_model_hierarchies: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.AssetModelHierarchyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6854
7855
  asset_model_properties: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.AssetModelPropertyProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6855
7856
  asset_model_type: typing.Optional[builtins.str] = None,
7857
+ enforced_asset_model_interface_relationships: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAssetModel.EnforcedAssetModelInterfaceRelationshipProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
6856
7858
  tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
6857
7859
  ) -> None:
6858
7860
  """Type checking stubs"""
@@ -6871,6 +7873,112 @@ def _typecheckingstub__306f4833ce13fd25ec4269f2a96d0ee80f11a34f43885f5b4b372569d
6871
7873
  """Type checking stubs"""
6872
7874
  pass
6873
7875
 
7876
+ def _typecheckingstub__566bf1711c9dcacb9cb88add46c2c4e157208bdce4a774ccb256a7d21c68de89(
7877
+ scope: _constructs_77d1e7e8.Construct,
7878
+ id: builtins.str,
7879
+ *,
7880
+ computation_model_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
7881
+ computation_model_data_binding: typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelDataBindingValueProperty, typing.Dict[builtins.str, typing.Any]]]]],
7882
+ computation_model_name: builtins.str,
7883
+ computation_model_description: typing.Optional[builtins.str] = None,
7884
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7885
+ ) -> None:
7886
+ """Type checking stubs"""
7887
+ pass
7888
+
7889
+ def _typecheckingstub__137e70d4839513d333c73d5f02909172ab78f14b28c52c7f13f6f52ff398e870(
7890
+ inspector: _TreeInspector_488e0dd5,
7891
+ ) -> None:
7892
+ """Type checking stubs"""
7893
+ pass
7894
+
7895
+ def _typecheckingstub__27af8e5f561e3e573b9a04774edf0c0c6cf2f3e31d385b4ffe28873a39dc7e48(
7896
+ props: typing.Mapping[builtins.str, typing.Any],
7897
+ ) -> None:
7898
+ """Type checking stubs"""
7899
+ pass
7900
+
7901
+ def _typecheckingstub__3fa195f1583c09a0caa02fa5c50ed928dbf5232ca80e6affc9fa715d83e57cd1(
7902
+ value: typing.Union[_IResolvable_da3f097b, CfnComputationModel.ComputationModelConfigurationProperty],
7903
+ ) -> None:
7904
+ """Type checking stubs"""
7905
+ pass
7906
+
7907
+ def _typecheckingstub__be967ec7617c0ed0efa50fb8a3519a87b8800751beb73a6449a1637314931d2c(
7908
+ value: typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, CfnComputationModel.ComputationModelDataBindingValueProperty]]],
7909
+ ) -> None:
7910
+ """Type checking stubs"""
7911
+ pass
7912
+
7913
+ def _typecheckingstub__a009db7b645690134b3878ea2c7cdee53682cf297919e1b3f54b712539f8b0de(
7914
+ value: builtins.str,
7915
+ ) -> None:
7916
+ """Type checking stubs"""
7917
+ pass
7918
+
7919
+ def _typecheckingstub__7d577131789cc578cee733460d23165debfb49d0d90b94e3e10d38d4d0d44a79(
7920
+ value: typing.Optional[builtins.str],
7921
+ ) -> None:
7922
+ """Type checking stubs"""
7923
+ pass
7924
+
7925
+ def _typecheckingstub__a82834353206c4a7be4a8ed40665c48481769bb21be0214fd279c598a8007929(
7926
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
7927
+ ) -> None:
7928
+ """Type checking stubs"""
7929
+ pass
7930
+
7931
+ def _typecheckingstub__69d1839ca00b91b9b1180620638bc2ec0b687463e3828b79ad3dd49ef5189aa7(
7932
+ *,
7933
+ input_properties: builtins.str,
7934
+ result_property: builtins.str,
7935
+ ) -> None:
7936
+ """Type checking stubs"""
7937
+ pass
7938
+
7939
+ def _typecheckingstub__949067d8ab294bdc850ab646091006fd0e748f018285b21dcc99fb980c1a0f5e(
7940
+ *,
7941
+ asset_model_id: builtins.str,
7942
+ property_id: builtins.str,
7943
+ ) -> None:
7944
+ """Type checking stubs"""
7945
+ pass
7946
+
7947
+ def _typecheckingstub__e4a3ae5efabf3788291f9b7ef194e309cc061d66db8346fea04452f02980728d(
7948
+ *,
7949
+ asset_id: builtins.str,
7950
+ property_id: builtins.str,
7951
+ ) -> None:
7952
+ """Type checking stubs"""
7953
+ pass
7954
+
7955
+ def _typecheckingstub__7b33f062481ddc382b1fb7a44ec3672f2844ad5a2ee31f5ede04b108b279328e(
7956
+ *,
7957
+ anomaly_detection: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.AnomalyDetectionComputationModelConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7958
+ ) -> None:
7959
+ """Type checking stubs"""
7960
+ pass
7961
+
7962
+ def _typecheckingstub__30609777f6bb1d4c3fb4232f9af93dc24089504c669f64d1de9edd24a9e6d0df(
7963
+ *,
7964
+ asset_model_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.AssetModelPropertyBindingValueProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7965
+ asset_property: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.AssetPropertyBindingValueProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7966
+ list: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelDataBindingValueProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7967
+ ) -> None:
7968
+ """Type checking stubs"""
7969
+ pass
7970
+
7971
+ def _typecheckingstub__ed97b2e804664b4c2090fb09c1141fc63e60c4fbaee41661ef227778c1ed7dd3(
7972
+ *,
7973
+ computation_model_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
7974
+ computation_model_data_binding: typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, typing.Union[_IResolvable_da3f097b, typing.Union[CfnComputationModel.ComputationModelDataBindingValueProperty, typing.Dict[builtins.str, typing.Any]]]]],
7975
+ computation_model_name: builtins.str,
7976
+ computation_model_description: typing.Optional[builtins.str] = None,
7977
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7978
+ ) -> None:
7979
+ """Type checking stubs"""
7980
+ pass
7981
+
6874
7982
  def _typecheckingstub__7408e63e7ba97e630e06dc4a383d275da9719808da2d750b179e27c09b363329(
6875
7983
  scope: _constructs_77d1e7e8.Construct,
6876
7984
  id: builtins.str,