aws-cdk-lib 2.139.0__py3-none-any.whl → 2.140.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 (47) hide show
  1. aws_cdk/__init__.py +8 -0
  2. aws_cdk/_jsii/__init__.py +1 -1
  3. aws_cdk/_jsii/{aws-cdk-lib@2.139.0.jsii.tgz → aws-cdk-lib@2.140.0.jsii.tgz} +0 -0
  4. aws_cdk/aws_acmpca/__init__.py +70 -56
  5. aws_cdk/aws_apigateway/__init__.py +126 -53
  6. aws_cdk/aws_applicationautoscaling/__init__.py +1 -4
  7. aws_cdk/aws_arczonalshift/__init__.py +49 -44
  8. aws_cdk/aws_bedrock/__init__.py +2818 -146
  9. aws_cdk/aws_cloudfront/__init__.py +51 -9
  10. aws_cdk/aws_codecommit/__init__.py +72 -46
  11. aws_cdk/aws_connectcampaigns/__init__.py +34 -4
  12. aws_cdk/aws_datasync/__init__.py +47 -21
  13. aws_cdk/aws_dms/__init__.py +0 -269
  14. aws_cdk/aws_ec2/__init__.py +149 -44
  15. aws_cdk/aws_ecs/__init__.py +2 -4
  16. aws_cdk/aws_efs/__init__.py +16 -2
  17. aws_cdk/aws_eks/__init__.py +57 -0
  18. aws_cdk/aws_events/__init__.py +115 -0
  19. aws_cdk/aws_events_targets/__init__.py +15 -0
  20. aws_cdk/aws_fis/__init__.py +2 -1
  21. aws_cdk/aws_gamelift/__init__.py +1846 -70
  22. aws_cdk/aws_globalaccelerator/__init__.py +20 -16
  23. aws_cdk/aws_iam/__init__.py +2 -2
  24. aws_cdk/aws_kinesis/__init__.py +21 -0
  25. aws_cdk/aws_kinesisvideo/__init__.py +6 -4
  26. aws_cdk/aws_kms/__init__.py +22 -1
  27. aws_cdk/aws_lambda/__init__.py +0 -9
  28. aws_cdk/aws_medialive/__init__.py +444 -3
  29. aws_cdk/aws_paymentcryptography/__init__.py +1075 -0
  30. aws_cdk/aws_personalize/__init__.py +8 -2
  31. aws_cdk/aws_qbusiness/__init__.py +5257 -0
  32. aws_cdk/aws_quicksight/__init__.py +9996 -1446
  33. aws_cdk/aws_rds/__init__.py +42 -0
  34. aws_cdk/aws_redshiftserverless/__init__.py +13 -9
  35. aws_cdk/aws_route53/__init__.py +350 -0
  36. aws_cdk/aws_route53profiles/__init__.py +1048 -0
  37. aws_cdk/aws_s3/__init__.py +1 -1
  38. aws_cdk/aws_transfer/__init__.py +102 -37
  39. aws_cdk/aws_workspacesweb/__init__.py +92 -6
  40. aws_cdk/custom_resources/__init__.py +23 -2
  41. aws_cdk/cx_api/__init__.py +16 -0
  42. {aws_cdk_lib-2.139.0.dist-info → aws_cdk_lib-2.140.0.dist-info}/METADATA +2 -2
  43. {aws_cdk_lib-2.139.0.dist-info → aws_cdk_lib-2.140.0.dist-info}/RECORD +47 -44
  44. {aws_cdk_lib-2.139.0.dist-info → aws_cdk_lib-2.140.0.dist-info}/LICENSE +0 -0
  45. {aws_cdk_lib-2.139.0.dist-info → aws_cdk_lib-2.140.0.dist-info}/NOTICE +0 -0
  46. {aws_cdk_lib-2.139.0.dist-info → aws_cdk_lib-2.140.0.dist-info}/WHEEL +0 -0
  47. {aws_cdk_lib-2.139.0.dist-info → aws_cdk_lib-2.140.0.dist-info}/top_level.txt +0 -0
@@ -4,8 +4,7 @@
4
4
  Amazon Bedrock is a fully managed service that offers a choice of foundation models (FMs)
5
5
  along with a broad set of capabilities for building generative AI applications.
6
6
 
7
- CloudFormation does not currently support any Bedrock resource types.
8
- This construct library is a collection of constructs that can look up existing Bedrock models
7
+ This construct library provides a collection of constructs that can look up existing Bedrock models
9
8
  for use with other services' CDK constructs, such as AWS Step Functions.
10
9
 
11
10
  To look up a Bedrock base foundation model:
@@ -25,6 +24,11 @@ import aws_cdk.aws_bedrock as bedrock
25
24
 
26
25
  bedrock.ProvisionedModel.from_provisioned_model_arn(self, "Model", "arn:aws:bedrock:us-east-2:123456789012:provisioned-model/abc-123")
27
26
  ```
27
+
28
+ There are no official hand-written ([L2](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_lib)) constructs for provisioning Bedrock resources yet. Here are some suggestions on how to proceed:
29
+
30
+ * Search [Construct Hub for Bedrock construct libraries](https://constructs.dev/search?q=bedrock)
31
+ * Use the automatically generated [L1](https://docs.aws.amazon.com/cdk/latest/guide/constructs.html#constructs_l1_using) constructs, in the same way you would use [the CloudFormation AWS::Bedrock resources](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/AWS_Bedrock.html) directly.
28
32
  '''
29
33
  from pkgutil import extend_path
30
34
  __path__ = extend_path(__path__, __name__)
@@ -46,6 +50,7 @@ from .._jsii import *
46
50
  import constructs as _constructs_77d1e7e8
47
51
  from .. import (
48
52
  CfnResource as _CfnResource_9df397a6,
53
+ CfnTag as _CfnTag_f6864754,
49
54
  IInspectable as _IInspectable_c2943556,
50
55
  IResolvable as _IResolvable_da3f097b,
51
56
  ITaggableV2 as _ITaggableV2_4e6798f8,
@@ -139,6 +144,9 @@ class CfnAgent(
139
144
  skip_resource_in_use_check_on_delete=False,
140
145
  tags={
141
146
  "tags_key": "tags"
147
+ },
148
+ test_alias_tags={
149
+ "test_alias_tags_key": "testAliasTags"
142
150
  }
143
151
  )
144
152
  '''
@@ -161,6 +169,7 @@ class CfnAgent(
161
169
  prompt_override_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnAgent.PromptOverrideConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
162
170
  skip_resource_in_use_check_on_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
163
171
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
172
+ test_alias_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
164
173
  ) -> None:
165
174
  '''
166
175
  :param scope: Scope in which this resource is defined.
@@ -178,6 +187,7 @@ class CfnAgent(
178
187
  :param prompt_override_configuration: Contains configurations to override prompt templates in different parts of an agent sequence. For more information, see `Advanced prompts <https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html>`_ .
179
188
  :param skip_resource_in_use_check_on_delete: Specifies whether to delete the resource even if it's in use. By default, this value is ``false`` . Default: - false
180
189
  :param tags: Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:. - `Tag naming limits and requirements <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions>`_ - `Tagging best practices <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices>`_
190
+ :param test_alias_tags: A map of tag keys and values.
181
191
  '''
182
192
  if __debug__:
183
193
  type_hints = typing.get_type_hints(_typecheckingstub__facaad57ffe16da42f099d2b7997f3e6fd3b9eba46fd226d8fb5afe286371e74)
@@ -197,6 +207,7 @@ class CfnAgent(
197
207
  prompt_override_configuration=prompt_override_configuration,
198
208
  skip_resource_in_use_check_on_delete=skip_resource_in_use_check_on_delete,
199
209
  tags=tags,
210
+ test_alias_tags=test_alias_tags,
200
211
  )
201
212
 
202
213
  jsii.create(self.__class__, self, [scope, id, props])
@@ -531,6 +542,24 @@ class CfnAgent(
531
542
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
532
543
  jsii.set(self, "tags", value)
533
544
 
545
+ @builtins.property
546
+ @jsii.member(jsii_name="testAliasTags")
547
+ def test_alias_tags(
548
+ self,
549
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
550
+ '''A map of tag keys and values.'''
551
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]], jsii.get(self, "testAliasTags"))
552
+
553
+ @test_alias_tags.setter
554
+ def test_alias_tags(
555
+ self,
556
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]],
557
+ ) -> None:
558
+ if __debug__:
559
+ type_hints = typing.get_type_hints(_typecheckingstub__0adf24775a3a1362c3b4eeb79adc26cdf461e3c52ade9a1522d271295bf0d775)
560
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
561
+ jsii.set(self, "testAliasTags", value)
562
+
534
563
  @jsii.data_type(
535
564
  jsii_type="aws-cdk-lib.aws_bedrock.CfnAgent.APISchemaProperty",
536
565
  jsii_struct_bases=[],
@@ -1947,6 +1976,7 @@ class CfnAgentAliasProps:
1947
1976
  "prompt_override_configuration": "promptOverrideConfiguration",
1948
1977
  "skip_resource_in_use_check_on_delete": "skipResourceInUseCheckOnDelete",
1949
1978
  "tags": "tags",
1979
+ "test_alias_tags": "testAliasTags",
1950
1980
  },
1951
1981
  )
1952
1982
  class CfnAgentProps:
@@ -1966,6 +1996,7 @@ class CfnAgentProps:
1966
1996
  prompt_override_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAgent.PromptOverrideConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
1967
1997
  skip_resource_in_use_check_on_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
1968
1998
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
1999
+ test_alias_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
1969
2000
  ) -> None:
1970
2001
  '''Properties for defining a ``CfnAgent``.
1971
2002
 
@@ -1982,6 +2013,7 @@ class CfnAgentProps:
1982
2013
  :param prompt_override_configuration: Contains configurations to override prompt templates in different parts of an agent sequence. For more information, see `Advanced prompts <https://docs.aws.amazon.com/bedrock/latest/userguide/advanced-prompts.html>`_ .
1983
2014
  :param skip_resource_in_use_check_on_delete: Specifies whether to delete the resource even if it's in use. By default, this value is ``false`` . Default: - false
1984
2015
  :param tags: Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:. - `Tag naming limits and requirements <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions>`_ - `Tagging best practices <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices>`_
2016
+ :param test_alias_tags: A map of tag keys and values.
1985
2017
 
1986
2018
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html
1987
2019
  :exampleMetadata: fixture=_generated
@@ -2051,6 +2083,9 @@ class CfnAgentProps:
2051
2083
  skip_resource_in_use_check_on_delete=False,
2052
2084
  tags={
2053
2085
  "tags_key": "tags"
2086
+ },
2087
+ test_alias_tags={
2088
+ "test_alias_tags_key": "testAliasTags"
2054
2089
  }
2055
2090
  )
2056
2091
  '''
@@ -2069,6 +2104,7 @@ class CfnAgentProps:
2069
2104
  check_type(argname="argument prompt_override_configuration", value=prompt_override_configuration, expected_type=type_hints["prompt_override_configuration"])
2070
2105
  check_type(argname="argument skip_resource_in_use_check_on_delete", value=skip_resource_in_use_check_on_delete, expected_type=type_hints["skip_resource_in_use_check_on_delete"])
2071
2106
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
2107
+ check_type(argname="argument test_alias_tags", value=test_alias_tags, expected_type=type_hints["test_alias_tags"])
2072
2108
  self._values: typing.Dict[builtins.str, typing.Any] = {
2073
2109
  "agent_name": agent_name,
2074
2110
  }
@@ -2096,6 +2132,8 @@ class CfnAgentProps:
2096
2132
  self._values["skip_resource_in_use_check_on_delete"] = skip_resource_in_use_check_on_delete
2097
2133
  if tags is not None:
2098
2134
  self._values["tags"] = tags
2135
+ if test_alias_tags is not None:
2136
+ self._values["test_alias_tags"] = test_alias_tags
2099
2137
 
2100
2138
  @builtins.property
2101
2139
  def agent_name(self) -> builtins.str:
@@ -2240,6 +2278,17 @@ class CfnAgentProps:
2240
2278
  result = self._values.get("tags")
2241
2279
  return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
2242
2280
 
2281
+ @builtins.property
2282
+ def test_alias_tags(
2283
+ self,
2284
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]]:
2285
+ '''A map of tag keys and values.
2286
+
2287
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-agent.html#cfn-bedrock-agent-testaliastags
2288
+ '''
2289
+ result = self._values.get("test_alias_tags")
2290
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]], result)
2291
+
2243
2292
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
2244
2293
  return isinstance(rhs, self.__class__) and rhs._values == self._values
2245
2294
 
@@ -2285,6 +2334,7 @@ class CfnDataSource(
2285
2334
  bucket_arn="bucketArn",
2286
2335
 
2287
2336
  # the properties below are optional
2337
+ bucket_owner_account_id="bucketOwnerAccountId",
2288
2338
  inclusion_prefixes=["inclusionPrefixes"]
2289
2339
  ),
2290
2340
  type="type"
@@ -2293,6 +2343,7 @@ class CfnDataSource(
2293
2343
  name="name",
2294
2344
 
2295
2345
  # the properties below are optional
2346
+ data_deletion_policy="dataDeletionPolicy",
2296
2347
  description="description",
2297
2348
  server_side_encryption_configuration=bedrock.CfnDataSource.ServerSideEncryptionConfigurationProperty(
2298
2349
  kms_key_arn="kmsKeyArn"
@@ -2319,6 +2370,7 @@ class CfnDataSource(
2319
2370
  data_source_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.DataSourceConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
2320
2371
  knowledge_base_id: builtins.str,
2321
2372
  name: builtins.str,
2373
+ data_deletion_policy: typing.Optional[builtins.str] = None,
2322
2374
  description: typing.Optional[builtins.str] = None,
2323
2375
  server_side_encryption_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.ServerSideEncryptionConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
2324
2376
  vector_ingestion_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnDataSource.VectorIngestionConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2329,6 +2381,7 @@ class CfnDataSource(
2329
2381
  :param data_source_configuration: Contains details about how the data source is stored.
2330
2382
  :param knowledge_base_id: The unique identifier of the knowledge base to which the data source belongs.
2331
2383
  :param name: The name of the data source.
2384
+ :param data_deletion_policy: The deletion policy for the data source.
2332
2385
  :param description: The description of the data source.
2333
2386
  :param server_side_encryption_configuration: Contains details about the configuration of the server-side encryption.
2334
2387
  :param vector_ingestion_configuration: Contains details about how to ingest the documents in the data source.
@@ -2341,6 +2394,7 @@ class CfnDataSource(
2341
2394
  data_source_configuration=data_source_configuration,
2342
2395
  knowledge_base_id=knowledge_base_id,
2343
2396
  name=name,
2397
+ data_deletion_policy=data_deletion_policy,
2344
2398
  description=description,
2345
2399
  server_side_encryption_configuration=server_side_encryption_configuration,
2346
2400
  vector_ingestion_configuration=vector_ingestion_configuration,
@@ -2408,6 +2462,15 @@ class CfnDataSource(
2408
2462
  '''
2409
2463
  return typing.cast(builtins.str, jsii.get(self, "attrDataSourceStatus"))
2410
2464
 
2465
+ @builtins.property
2466
+ @jsii.member(jsii_name="attrFailureReasons")
2467
+ def attr_failure_reasons(self) -> typing.List[builtins.str]:
2468
+ '''The details of the failure reasons related to the data source.
2469
+
2470
+ :cloudformationAttribute: FailureReasons
2471
+ '''
2472
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "attrFailureReasons"))
2473
+
2411
2474
  @builtins.property
2412
2475
  @jsii.member(jsii_name="attrUpdatedAt")
2413
2476
  def attr_updated_at(self) -> builtins.str:
@@ -2466,6 +2529,19 @@ class CfnDataSource(
2466
2529
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2467
2530
  jsii.set(self, "name", value)
2468
2531
 
2532
+ @builtins.property
2533
+ @jsii.member(jsii_name="dataDeletionPolicy")
2534
+ def data_deletion_policy(self) -> typing.Optional[builtins.str]:
2535
+ '''The deletion policy for the data source.'''
2536
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "dataDeletionPolicy"))
2537
+
2538
+ @data_deletion_policy.setter
2539
+ def data_deletion_policy(self, value: typing.Optional[builtins.str]) -> None:
2540
+ if __debug__:
2541
+ type_hints = typing.get_type_hints(_typecheckingstub__13070c256fb6cad53f284f3bdd82c32491d75ab72033b19aa76e3daf539a2b8f)
2542
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2543
+ jsii.set(self, "dataDeletionPolicy", value)
2544
+
2469
2545
  @builtins.property
2470
2546
  @jsii.member(jsii_name="description")
2471
2547
  def description(self) -> typing.Optional[builtins.str]:
@@ -2636,6 +2712,7 @@ class CfnDataSource(
2636
2712
  bucket_arn="bucketArn",
2637
2713
 
2638
2714
  # the properties below are optional
2715
+ bucket_owner_account_id="bucketOwnerAccountId",
2639
2716
  inclusion_prefixes=["inclusionPrefixes"]
2640
2717
  ),
2641
2718
  type="type"
@@ -2764,6 +2841,7 @@ class CfnDataSource(
2764
2841
  jsii_struct_bases=[],
2765
2842
  name_mapping={
2766
2843
  "bucket_arn": "bucketArn",
2844
+ "bucket_owner_account_id": "bucketOwnerAccountId",
2767
2845
  "inclusion_prefixes": "inclusionPrefixes",
2768
2846
  },
2769
2847
  )
@@ -2772,11 +2850,13 @@ class CfnDataSource(
2772
2850
  self,
2773
2851
  *,
2774
2852
  bucket_arn: builtins.str,
2853
+ bucket_owner_account_id: typing.Optional[builtins.str] = None,
2775
2854
  inclusion_prefixes: typing.Optional[typing.Sequence[builtins.str]] = None,
2776
2855
  ) -> None:
2777
2856
  '''Contains information about the S3 configuration of the data source.
2778
2857
 
2779
2858
  :param bucket_arn: The Amazon Resource Name (ARN) of the bucket that contains the data source.
2859
+ :param bucket_owner_account_id: The account ID for the owner of the S3 bucket.
2780
2860
  :param inclusion_prefixes: A list of S3 prefixes that define the object containing the data sources. For more information, see `Organizing objects using prefixes <https://docs.aws.amazon.com/AmazonS3/latest/userguide/using-prefixes.html>`_ .
2781
2861
 
2782
2862
  :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html
@@ -2792,16 +2872,20 @@ class CfnDataSource(
2792
2872
  bucket_arn="bucketArn",
2793
2873
 
2794
2874
  # the properties below are optional
2875
+ bucket_owner_account_id="bucketOwnerAccountId",
2795
2876
  inclusion_prefixes=["inclusionPrefixes"]
2796
2877
  )
2797
2878
  '''
2798
2879
  if __debug__:
2799
2880
  type_hints = typing.get_type_hints(_typecheckingstub__6b4929296343a5ea55bce5d28d11b34fa10885df35596a08102658f8bcbc8c5b)
2800
2881
  check_type(argname="argument bucket_arn", value=bucket_arn, expected_type=type_hints["bucket_arn"])
2882
+ check_type(argname="argument bucket_owner_account_id", value=bucket_owner_account_id, expected_type=type_hints["bucket_owner_account_id"])
2801
2883
  check_type(argname="argument inclusion_prefixes", value=inclusion_prefixes, expected_type=type_hints["inclusion_prefixes"])
2802
2884
  self._values: typing.Dict[builtins.str, typing.Any] = {
2803
2885
  "bucket_arn": bucket_arn,
2804
2886
  }
2887
+ if bucket_owner_account_id is not None:
2888
+ self._values["bucket_owner_account_id"] = bucket_owner_account_id
2805
2889
  if inclusion_prefixes is not None:
2806
2890
  self._values["inclusion_prefixes"] = inclusion_prefixes
2807
2891
 
@@ -2815,6 +2899,15 @@ class CfnDataSource(
2815
2899
  assert result is not None, "Required property 'bucket_arn' is missing"
2816
2900
  return typing.cast(builtins.str, result)
2817
2901
 
2902
+ @builtins.property
2903
+ def bucket_owner_account_id(self) -> typing.Optional[builtins.str]:
2904
+ '''The account ID for the owner of the S3 bucket.
2905
+
2906
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-datasource-s3datasourceconfiguration.html#cfn-bedrock-datasource-s3datasourceconfiguration-bucketowneraccountid
2907
+ '''
2908
+ result = self._values.get("bucket_owner_account_id")
2909
+ return typing.cast(typing.Optional[builtins.str], result)
2910
+
2818
2911
  @builtins.property
2819
2912
  def inclusion_prefixes(self) -> typing.Optional[typing.List[builtins.str]]:
2820
2913
  '''A list of S3 prefixes that define the object containing the data sources.
@@ -2967,6 +3060,7 @@ class CfnDataSource(
2967
3060
  "data_source_configuration": "dataSourceConfiguration",
2968
3061
  "knowledge_base_id": "knowledgeBaseId",
2969
3062
  "name": "name",
3063
+ "data_deletion_policy": "dataDeletionPolicy",
2970
3064
  "description": "description",
2971
3065
  "server_side_encryption_configuration": "serverSideEncryptionConfiguration",
2972
3066
  "vector_ingestion_configuration": "vectorIngestionConfiguration",
@@ -2979,6 +3073,7 @@ class CfnDataSourceProps:
2979
3073
  data_source_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.DataSourceConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
2980
3074
  knowledge_base_id: builtins.str,
2981
3075
  name: builtins.str,
3076
+ data_deletion_policy: typing.Optional[builtins.str] = None,
2982
3077
  description: typing.Optional[builtins.str] = None,
2983
3078
  server_side_encryption_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.ServerSideEncryptionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
2984
3079
  vector_ingestion_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.VectorIngestionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -2988,6 +3083,7 @@ class CfnDataSourceProps:
2988
3083
  :param data_source_configuration: Contains details about how the data source is stored.
2989
3084
  :param knowledge_base_id: The unique identifier of the knowledge base to which the data source belongs.
2990
3085
  :param name: The name of the data source.
3086
+ :param data_deletion_policy: The deletion policy for the data source.
2991
3087
  :param description: The description of the data source.
2992
3088
  :param server_side_encryption_configuration: Contains details about the configuration of the server-side encryption.
2993
3089
  :param vector_ingestion_configuration: Contains details about how to ingest the documents in the data source.
@@ -3007,6 +3103,7 @@ class CfnDataSourceProps:
3007
3103
  bucket_arn="bucketArn",
3008
3104
 
3009
3105
  # the properties below are optional
3106
+ bucket_owner_account_id="bucketOwnerAccountId",
3010
3107
  inclusion_prefixes=["inclusionPrefixes"]
3011
3108
  ),
3012
3109
  type="type"
@@ -3015,6 +3112,7 @@ class CfnDataSourceProps:
3015
3112
  name="name",
3016
3113
 
3017
3114
  # the properties below are optional
3115
+ data_deletion_policy="dataDeletionPolicy",
3018
3116
  description="description",
3019
3117
  server_side_encryption_configuration=bedrock.CfnDataSource.ServerSideEncryptionConfigurationProperty(
3020
3118
  kms_key_arn="kmsKeyArn"
@@ -3037,6 +3135,7 @@ class CfnDataSourceProps:
3037
3135
  check_type(argname="argument data_source_configuration", value=data_source_configuration, expected_type=type_hints["data_source_configuration"])
3038
3136
  check_type(argname="argument knowledge_base_id", value=knowledge_base_id, expected_type=type_hints["knowledge_base_id"])
3039
3137
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
3138
+ check_type(argname="argument data_deletion_policy", value=data_deletion_policy, expected_type=type_hints["data_deletion_policy"])
3040
3139
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
3041
3140
  check_type(argname="argument server_side_encryption_configuration", value=server_side_encryption_configuration, expected_type=type_hints["server_side_encryption_configuration"])
3042
3141
  check_type(argname="argument vector_ingestion_configuration", value=vector_ingestion_configuration, expected_type=type_hints["vector_ingestion_configuration"])
@@ -3045,6 +3144,8 @@ class CfnDataSourceProps:
3045
3144
  "knowledge_base_id": knowledge_base_id,
3046
3145
  "name": name,
3047
3146
  }
3147
+ if data_deletion_policy is not None:
3148
+ self._values["data_deletion_policy"] = data_deletion_policy
3048
3149
  if description is not None:
3049
3150
  self._values["description"] = description
3050
3151
  if server_side_encryption_configuration is not None:
@@ -3084,6 +3185,15 @@ class CfnDataSourceProps:
3084
3185
  assert result is not None, "Required property 'name' is missing"
3085
3186
  return typing.cast(builtins.str, result)
3086
3187
 
3188
+ @builtins.property
3189
+ def data_deletion_policy(self) -> typing.Optional[builtins.str]:
3190
+ '''The deletion policy for the data source.
3191
+
3192
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-datasource.html#cfn-bedrock-datasource-datadeletionpolicy
3193
+ '''
3194
+ result = self._values.get("data_deletion_policy")
3195
+ return typing.cast(typing.Optional[builtins.str], result)
3196
+
3087
3197
  @builtins.property
3088
3198
  def description(self) -> typing.Optional[builtins.str]:
3089
3199
  '''The description of the data source.
@@ -3128,30 +3238,15 @@ class CfnDataSourceProps:
3128
3238
 
3129
3239
 
3130
3240
  @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
3131
- class CfnKnowledgeBase(
3241
+ class CfnGuardrail(
3132
3242
  _CfnResource_9df397a6,
3133
3243
  metaclass=jsii.JSIIMeta,
3134
- jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase",
3244
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail",
3135
3245
  ):
3136
- '''Specifies a knowledge base as a resource in a top-level template. Minimally, you must specify the following properties:.
3137
-
3138
- - Name – Specify a name for the knowledge base.
3139
- - RoleArn – Specify the Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base. For more information, see `Create a service role for Knowledge base for Amazon Bedrock <https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html>`_ .
3140
- - KnowledgeBaseConfiguration – Specify the embeddings configuration of the knowledge base. The following sub-properties are required:
3141
- - Type – Specify the value ``VECTOR`` .
3142
- - StorageConfiguration – Specify information about the vector store in which the data source is stored. The following sub-properties are required:
3143
- - Type – Specify the vector store service that you are using.
3246
+ '''Definition of AWS::Bedrock::Guardrail Resource Type.
3144
3247
 
3145
- .. epigraph::
3146
-
3147
- Redis Enterprise Cloud vector stores are currently unsupported in AWS CloudFormation .
3148
-
3149
- For more information about using knowledge bases in Amazon Bedrock , see `Knowledge base for Amazon Bedrock <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.html>`_ .
3150
-
3151
- See the *Properties* section below for descriptions of both the required and optional properties.
3152
-
3153
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html
3154
- :cloudformationResource: AWS::Bedrock::KnowledgeBase
3248
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html
3249
+ :cloudformationResource: AWS::Bedrock::Guardrail
3155
3250
  :exampleMetadata: fixture=_generated
3156
3251
 
3157
3252
  Example::
@@ -3160,21 +3255,57 @@ class CfnKnowledgeBase(
3160
3255
  # The values are placeholders you should change.
3161
3256
  from aws_cdk import aws_bedrock as bedrock
3162
3257
 
3163
- cfn_knowledge_base = bedrock.CfnKnowledgeBase(self, "MyCfnKnowledgeBase",
3164
- knowledge_base_configuration=bedrock.CfnKnowledgeBase.KnowledgeBaseConfigurationProperty(
3165
- type="type",
3166
- vector_knowledge_base_configuration=bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty(
3167
- embedding_model_arn="embeddingModelArn"
3168
- )
3169
- ),
3258
+ cfn_guardrail = bedrock.CfnGuardrail(self, "MyCfnGuardrail",
3259
+ blocked_input_messaging="blockedInputMessaging",
3260
+ blocked_outputs_messaging="blockedOutputsMessaging",
3170
3261
  name="name",
3171
- role_arn="roleArn",
3172
3262
 
3173
3263
  # the properties below are optional
3264
+ content_policy_config=bedrock.CfnGuardrail.ContentPolicyConfigProperty(
3265
+ filters_config=[bedrock.CfnGuardrail.ContentFilterConfigProperty(
3266
+ input_strength="inputStrength",
3267
+ output_strength="outputStrength",
3268
+ type="type"
3269
+ )]
3270
+ ),
3174
3271
  description="description",
3175
- tags={
3176
- "tags_key": "tags"
3177
- }
3272
+ kms_key_arn="kmsKeyArn",
3273
+ sensitive_information_policy_config=bedrock.CfnGuardrail.SensitiveInformationPolicyConfigProperty(
3274
+ pii_entities_config=[bedrock.CfnGuardrail.PiiEntityConfigProperty(
3275
+ action="action",
3276
+ type="type"
3277
+ )],
3278
+ regexes_config=[bedrock.CfnGuardrail.RegexConfigProperty(
3279
+ action="action",
3280
+ name="name",
3281
+ pattern="pattern",
3282
+
3283
+ # the properties below are optional
3284
+ description="description"
3285
+ )]
3286
+ ),
3287
+ tags=[CfnTag(
3288
+ key="key",
3289
+ value="value"
3290
+ )],
3291
+ topic_policy_config=bedrock.CfnGuardrail.TopicPolicyConfigProperty(
3292
+ topics_config=[bedrock.CfnGuardrail.TopicConfigProperty(
3293
+ definition="definition",
3294
+ name="name",
3295
+ type="type",
3296
+
3297
+ # the properties below are optional
3298
+ examples=["examples"]
3299
+ )]
3300
+ ),
3301
+ word_policy_config=bedrock.CfnGuardrail.WordPolicyConfigProperty(
3302
+ managed_word_lists_config=[bedrock.CfnGuardrail.ManagedWordsConfigProperty(
3303
+ type="type"
3304
+ )],
3305
+ words_config=[bedrock.CfnGuardrail.WordConfigProperty(
3306
+ text="text"
3307
+ )]
3308
+ )
3178
3309
  )
3179
3310
  '''
3180
3311
 
@@ -3183,31 +3314,46 @@ class CfnKnowledgeBase(
3183
3314
  scope: _constructs_77d1e7e8.Construct,
3184
3315
  id: builtins.str,
3185
3316
  *,
3186
- knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.KnowledgeBaseConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
3317
+ blocked_input_messaging: builtins.str,
3318
+ blocked_outputs_messaging: builtins.str,
3187
3319
  name: builtins.str,
3188
- role_arn: builtins.str,
3320
+ content_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.ContentPolicyConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3189
3321
  description: typing.Optional[builtins.str] = None,
3190
- tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
3322
+ kms_key_arn: typing.Optional[builtins.str] = None,
3323
+ sensitive_information_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.SensitiveInformationPolicyConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3324
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
3325
+ topic_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.TopicPolicyConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3326
+ word_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.WordPolicyConfigProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
3191
3327
  ) -> None:
3192
3328
  '''
3193
3329
  :param scope: Scope in which this resource is defined.
3194
3330
  :param id: Construct identifier for this resource (unique in its scope).
3195
- :param knowledge_base_configuration: Contains details about the embeddings configuration of the knowledge base.
3196
- :param name: The name of the knowledge base.
3197
- :param role_arn: The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
3198
- :param description: The description of the knowledge base.
3199
- :param tags: Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:. - `Tag naming limits and requirements <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions>`_ - `Tagging best practices <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices>`_
3331
+ :param blocked_input_messaging: Messaging for when violations are detected in text.
3332
+ :param blocked_outputs_messaging: Messaging for when violations are detected in text.
3333
+ :param name: Name of the guardrail.
3334
+ :param content_policy_config: Content policy config for a guardrail.
3335
+ :param description: Description of the guardrail or its version.
3336
+ :param kms_key_arn: The KMS key with which the guardrail was encrypted at rest.
3337
+ :param sensitive_information_policy_config: Sensitive information policy config for a guardrail.
3338
+ :param tags: List of Tags.
3339
+ :param topic_policy_config: Topic policy config for a guardrail.
3340
+ :param word_policy_config: Word policy config for a guardrail.
3200
3341
  '''
3201
3342
  if __debug__:
3202
- type_hints = typing.get_type_hints(_typecheckingstub__6ef81b8dcbedbd76b5a39a6fd5a967ba49aa887b63aad45e2bc246c96c7abcec)
3343
+ type_hints = typing.get_type_hints(_typecheckingstub__2043b4e3280827dde584095cdad9778bf2076242696d52ba5a39dc96cedb89a0)
3203
3344
  check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
3204
3345
  check_type(argname="argument id", value=id, expected_type=type_hints["id"])
3205
- props = CfnKnowledgeBaseProps(
3206
- knowledge_base_configuration=knowledge_base_configuration,
3346
+ props = CfnGuardrailProps(
3347
+ blocked_input_messaging=blocked_input_messaging,
3348
+ blocked_outputs_messaging=blocked_outputs_messaging,
3207
3349
  name=name,
3208
- role_arn=role_arn,
3350
+ content_policy_config=content_policy_config,
3209
3351
  description=description,
3352
+ kms_key_arn=kms_key_arn,
3353
+ sensitive_information_policy_config=sensitive_information_policy_config,
3210
3354
  tags=tags,
3355
+ topic_policy_config=topic_policy_config,
3356
+ word_policy_config=word_policy_config,
3211
3357
  )
3212
3358
 
3213
3359
  jsii.create(self.__class__, self, [scope, id, props])
@@ -3219,7 +3365,7 @@ class CfnKnowledgeBase(
3219
3365
  :param inspector: tree inspector to collect and process attributes.
3220
3366
  '''
3221
3367
  if __debug__:
3222
- type_hints = typing.get_type_hints(_typecheckingstub__ff4bc276c76fa89d7e7e13dc3bbd6542bf9248bddf93da183855dfef109357e1)
3368
+ type_hints = typing.get_type_hints(_typecheckingstub__e92a00856c8ad560cb684783884ef636d036b3706e64c243b469db70f7b1d651)
3223
3369
  check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
3224
3370
  return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
3225
3371
 
@@ -3232,7 +3378,7 @@ class CfnKnowledgeBase(
3232
3378
  :param props: -
3233
3379
  '''
3234
3380
  if __debug__:
3235
- type_hints = typing.get_type_hints(_typecheckingstub__ba3c6a8c48301959ccf4c8e325f203936e57edbf8199458a5d3f47355924370f)
3381
+ type_hints = typing.get_type_hints(_typecheckingstub__b769e76e098e449277bbeec2441c2e936bbf304845dbafabf4f5c614c9d2a27a)
3236
3382
  check_type(argname="argument props", value=props, expected_type=type_hints["props"])
3237
3383
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
3238
3384
 
@@ -3245,57 +3391,75 @@ class CfnKnowledgeBase(
3245
3391
  @builtins.property
3246
3392
  @jsii.member(jsii_name="attrCreatedAt")
3247
3393
  def attr_created_at(self) -> builtins.str:
3248
- '''The time at which the knowledge base was created.
3394
+ '''Time Stamp.
3249
3395
 
3250
3396
  :cloudformationAttribute: CreatedAt
3251
3397
  '''
3252
3398
  return typing.cast(builtins.str, jsii.get(self, "attrCreatedAt"))
3253
3399
 
3254
3400
  @builtins.property
3255
- @jsii.member(jsii_name="attrFailureReasons")
3256
- def attr_failure_reasons(self) -> typing.List[builtins.str]:
3257
- '''A list of reasons that the API operation on the knowledge base failed.
3401
+ @jsii.member(jsii_name="attrFailureRecommendations")
3402
+ def attr_failure_recommendations(self) -> typing.List[builtins.str]:
3403
+ '''List of failure recommendations.
3258
3404
 
3259
- :cloudformationAttribute: FailureReasons
3405
+ :cloudformationAttribute: FailureRecommendations
3260
3406
  '''
3261
- return typing.cast(typing.List[builtins.str], jsii.get(self, "attrFailureReasons"))
3407
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "attrFailureRecommendations"))
3262
3408
 
3263
3409
  @builtins.property
3264
- @jsii.member(jsii_name="attrKnowledgeBaseArn")
3265
- def attr_knowledge_base_arn(self) -> builtins.str:
3266
- '''The Amazon Resource Name (ARN) of the knowledge base.
3410
+ @jsii.member(jsii_name="attrGuardrailArn")
3411
+ def attr_guardrail_arn(self) -> builtins.str:
3412
+ '''Arn representation for the guardrail.
3267
3413
 
3268
- :cloudformationAttribute: KnowledgeBaseArn
3414
+ :cloudformationAttribute: GuardrailArn
3269
3415
  '''
3270
- return typing.cast(builtins.str, jsii.get(self, "attrKnowledgeBaseArn"))
3416
+ return typing.cast(builtins.str, jsii.get(self, "attrGuardrailArn"))
3271
3417
 
3272
3418
  @builtins.property
3273
- @jsii.member(jsii_name="attrKnowledgeBaseId")
3274
- def attr_knowledge_base_id(self) -> builtins.str:
3275
- '''The unique identifier of the knowledge base.
3419
+ @jsii.member(jsii_name="attrGuardrailId")
3420
+ def attr_guardrail_id(self) -> builtins.str:
3421
+ '''Unique id for the guardrail.
3276
3422
 
3277
- :cloudformationAttribute: KnowledgeBaseId
3423
+ :cloudformationAttribute: GuardrailId
3278
3424
  '''
3279
- return typing.cast(builtins.str, jsii.get(self, "attrKnowledgeBaseId"))
3425
+ return typing.cast(builtins.str, jsii.get(self, "attrGuardrailId"))
3280
3426
 
3281
3427
  @builtins.property
3282
3428
  @jsii.member(jsii_name="attrStatus")
3283
3429
  def attr_status(self) -> builtins.str:
3284
- '''The status of the knowledge base.
3430
+ '''Status of the guardrail.
3285
3431
 
3286
3432
  :cloudformationAttribute: Status
3287
3433
  '''
3288
3434
  return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
3289
3435
 
3436
+ @builtins.property
3437
+ @jsii.member(jsii_name="attrStatusReasons")
3438
+ def attr_status_reasons(self) -> typing.List[builtins.str]:
3439
+ '''List of status reasons.
3440
+
3441
+ :cloudformationAttribute: StatusReasons
3442
+ '''
3443
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "attrStatusReasons"))
3444
+
3290
3445
  @builtins.property
3291
3446
  @jsii.member(jsii_name="attrUpdatedAt")
3292
3447
  def attr_updated_at(self) -> builtins.str:
3293
- '''The time at which the knowledge base was last updated.
3448
+ '''Time Stamp.
3294
3449
 
3295
3450
  :cloudformationAttribute: UpdatedAt
3296
3451
  '''
3297
3452
  return typing.cast(builtins.str, jsii.get(self, "attrUpdatedAt"))
3298
3453
 
3454
+ @builtins.property
3455
+ @jsii.member(jsii_name="attrVersion")
3456
+ def attr_version(self) -> builtins.str:
3457
+ '''Guardrail version.
3458
+
3459
+ :cloudformationAttribute: Version
3460
+ '''
3461
+ return typing.cast(builtins.str, jsii.get(self, "attrVersion"))
3462
+
3299
3463
  @builtins.property
3300
3464
  @jsii.member(jsii_name="cdkTagManager")
3301
3465
  def cdk_tag_manager(self) -> _TagManager_0a598cb3:
@@ -3308,102 +3472,179 @@ class CfnKnowledgeBase(
3308
3472
  return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
3309
3473
 
3310
3474
  @builtins.property
3311
- @jsii.member(jsii_name="knowledgeBaseConfiguration")
3312
- def knowledge_base_configuration(
3313
- self,
3314
- ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.KnowledgeBaseConfigurationProperty"]:
3315
- '''Contains details about the embeddings configuration of the knowledge base.'''
3316
- return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.KnowledgeBaseConfigurationProperty"], jsii.get(self, "knowledgeBaseConfiguration"))
3475
+ @jsii.member(jsii_name="blockedInputMessaging")
3476
+ def blocked_input_messaging(self) -> builtins.str:
3477
+ '''Messaging for when violations are detected in text.'''
3478
+ return typing.cast(builtins.str, jsii.get(self, "blockedInputMessaging"))
3317
3479
 
3318
- @knowledge_base_configuration.setter
3319
- def knowledge_base_configuration(
3320
- self,
3321
- value: typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.KnowledgeBaseConfigurationProperty"],
3322
- ) -> None:
3480
+ @blocked_input_messaging.setter
3481
+ def blocked_input_messaging(self, value: builtins.str) -> None:
3323
3482
  if __debug__:
3324
- type_hints = typing.get_type_hints(_typecheckingstub__cc53309d6eb9442404b7a33330dfd3740f0c9d24afff9f19814de1a0a0e51d32)
3483
+ type_hints = typing.get_type_hints(_typecheckingstub__b8a2f9687ff4e81f4953a900999b03337df14ba54044290009f92b978479aa71)
3325
3484
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3326
- jsii.set(self, "knowledgeBaseConfiguration", value)
3485
+ jsii.set(self, "blockedInputMessaging", value)
3486
+
3487
+ @builtins.property
3488
+ @jsii.member(jsii_name="blockedOutputsMessaging")
3489
+ def blocked_outputs_messaging(self) -> builtins.str:
3490
+ '''Messaging for when violations are detected in text.'''
3491
+ return typing.cast(builtins.str, jsii.get(self, "blockedOutputsMessaging"))
3492
+
3493
+ @blocked_outputs_messaging.setter
3494
+ def blocked_outputs_messaging(self, value: builtins.str) -> None:
3495
+ if __debug__:
3496
+ type_hints = typing.get_type_hints(_typecheckingstub__59377d273ba1076fa0e7fa7b325e1080a042838c62e3d653e7e2d9fbfd37b757)
3497
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3498
+ jsii.set(self, "blockedOutputsMessaging", value)
3327
3499
 
3328
3500
  @builtins.property
3329
3501
  @jsii.member(jsii_name="name")
3330
3502
  def name(self) -> builtins.str:
3331
- '''The name of the knowledge base.'''
3503
+ '''Name of the guardrail.'''
3332
3504
  return typing.cast(builtins.str, jsii.get(self, "name"))
3333
3505
 
3334
3506
  @name.setter
3335
3507
  def name(self, value: builtins.str) -> None:
3336
3508
  if __debug__:
3337
- type_hints = typing.get_type_hints(_typecheckingstub__98ce011ed3a47084236afba28b5e5d0da34db483b792c0f0dd621b409474b6fb)
3509
+ type_hints = typing.get_type_hints(_typecheckingstub__4214430bb449bbe8c35bffe05d8f030f2f1e4d9bf03e87e52eaf3920fcd73539)
3338
3510
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3339
3511
  jsii.set(self, "name", value)
3340
3512
 
3341
3513
  @builtins.property
3342
- @jsii.member(jsii_name="roleArn")
3343
- def role_arn(self) -> builtins.str:
3344
- '''The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.'''
3345
- return typing.cast(builtins.str, jsii.get(self, "roleArn"))
3514
+ @jsii.member(jsii_name="contentPolicyConfig")
3515
+ def content_policy_config(
3516
+ self,
3517
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ContentPolicyConfigProperty"]]:
3518
+ '''Content policy config for a guardrail.'''
3519
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ContentPolicyConfigProperty"]], jsii.get(self, "contentPolicyConfig"))
3346
3520
 
3347
- @role_arn.setter
3348
- def role_arn(self, value: builtins.str) -> None:
3521
+ @content_policy_config.setter
3522
+ def content_policy_config(
3523
+ self,
3524
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ContentPolicyConfigProperty"]],
3525
+ ) -> None:
3349
3526
  if __debug__:
3350
- type_hints = typing.get_type_hints(_typecheckingstub__e6281f2d1ed9a2f71b02754159fe6b2d8c70d3527e97d2d060434dc3483f2ad5)
3527
+ type_hints = typing.get_type_hints(_typecheckingstub__a2352c360e9d740d982528265b1e13ef0cbbc639f4ce7a9811f5347cf9c39343)
3351
3528
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3352
- jsii.set(self, "roleArn", value)
3529
+ jsii.set(self, "contentPolicyConfig", value)
3353
3530
 
3354
3531
  @builtins.property
3355
3532
  @jsii.member(jsii_name="description")
3356
3533
  def description(self) -> typing.Optional[builtins.str]:
3357
- '''The description of the knowledge base.'''
3534
+ '''Description of the guardrail or its version.'''
3358
3535
  return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
3359
3536
 
3360
3537
  @description.setter
3361
3538
  def description(self, value: typing.Optional[builtins.str]) -> None:
3362
3539
  if __debug__:
3363
- type_hints = typing.get_type_hints(_typecheckingstub__f9fef7f262d2bad58c7f37c90b8756dd028b772a93aa036a4caf0c9565a7fff1)
3540
+ type_hints = typing.get_type_hints(_typecheckingstub__885f2a8f4b710e0b2b1255d6f0514f5b0e080398bf5941c4b2830331855b81ae)
3364
3541
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3365
3542
  jsii.set(self, "description", value)
3366
3543
 
3367
3544
  @builtins.property
3368
- @jsii.member(jsii_name="tags")
3369
- def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
3370
- '''Metadata that you can assign to a resource as key-value pairs.
3545
+ @jsii.member(jsii_name="kmsKeyArn")
3546
+ def kms_key_arn(self) -> typing.Optional[builtins.str]:
3547
+ '''The KMS key with which the guardrail was encrypted at rest.'''
3548
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "kmsKeyArn"))
3371
3549
 
3372
- For more information, see the following resources:.
3373
- '''
3374
- return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], jsii.get(self, "tags"))
3550
+ @kms_key_arn.setter
3551
+ def kms_key_arn(self, value: typing.Optional[builtins.str]) -> None:
3552
+ if __debug__:
3553
+ type_hints = typing.get_type_hints(_typecheckingstub__fbc1d4225a1496cd036d97ea54283afa42f857e546f96fed46866f7df1c2a712)
3554
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3555
+ jsii.set(self, "kmsKeyArn", value)
3375
3556
 
3376
- @tags.setter
3377
- def tags(
3557
+ @builtins.property
3558
+ @jsii.member(jsii_name="sensitiveInformationPolicyConfig")
3559
+ def sensitive_information_policy_config(
3378
3560
  self,
3379
- value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
3561
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.SensitiveInformationPolicyConfigProperty"]]:
3562
+ '''Sensitive information policy config for a guardrail.'''
3563
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.SensitiveInformationPolicyConfigProperty"]], jsii.get(self, "sensitiveInformationPolicyConfig"))
3564
+
3565
+ @sensitive_information_policy_config.setter
3566
+ def sensitive_information_policy_config(
3567
+ self,
3568
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.SensitiveInformationPolicyConfigProperty"]],
3380
3569
  ) -> None:
3381
3570
  if __debug__:
3382
- type_hints = typing.get_type_hints(_typecheckingstub__3aaa5f9544be44cbc2ddb7d96026222438266e370aa05113a01af8f251b7286f)
3571
+ type_hints = typing.get_type_hints(_typecheckingstub__279893b9f82164ec1f1485986bfd2950340b836fafb5d6299d2c28b1d4277f9d)
3572
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3573
+ jsii.set(self, "sensitiveInformationPolicyConfig", value)
3574
+
3575
+ @builtins.property
3576
+ @jsii.member(jsii_name="tags")
3577
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
3578
+ '''List of Tags.'''
3579
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], jsii.get(self, "tags"))
3580
+
3581
+ @tags.setter
3582
+ def tags(self, value: typing.Optional[typing.List[_CfnTag_f6864754]]) -> None:
3583
+ if __debug__:
3584
+ type_hints = typing.get_type_hints(_typecheckingstub__d2d4316cf506347b6f9939e84461c5f14a0501165f7128ebaec15ea06b2fc68a)
3383
3585
  check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3384
3586
  jsii.set(self, "tags", value)
3385
3587
 
3588
+ @builtins.property
3589
+ @jsii.member(jsii_name="topicPolicyConfig")
3590
+ def topic_policy_config(
3591
+ self,
3592
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.TopicPolicyConfigProperty"]]:
3593
+ '''Topic policy config for a guardrail.'''
3594
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.TopicPolicyConfigProperty"]], jsii.get(self, "topicPolicyConfig"))
3595
+
3596
+ @topic_policy_config.setter
3597
+ def topic_policy_config(
3598
+ self,
3599
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.TopicPolicyConfigProperty"]],
3600
+ ) -> None:
3601
+ if __debug__:
3602
+ type_hints = typing.get_type_hints(_typecheckingstub__853c4d50370da0c19067d3356726317d2cb9cfdd5405344e1ded902c29bb30d0)
3603
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3604
+ jsii.set(self, "topicPolicyConfig", value)
3605
+
3606
+ @builtins.property
3607
+ @jsii.member(jsii_name="wordPolicyConfig")
3608
+ def word_policy_config(
3609
+ self,
3610
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.WordPolicyConfigProperty"]]:
3611
+ '''Word policy config for a guardrail.'''
3612
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.WordPolicyConfigProperty"]], jsii.get(self, "wordPolicyConfig"))
3613
+
3614
+ @word_policy_config.setter
3615
+ def word_policy_config(
3616
+ self,
3617
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.WordPolicyConfigProperty"]],
3618
+ ) -> None:
3619
+ if __debug__:
3620
+ type_hints = typing.get_type_hints(_typecheckingstub__8db61eded81d93fbd03b059a0415cd544498a84333ec2ae6cb76fed58dc07062)
3621
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
3622
+ jsii.set(self, "wordPolicyConfig", value)
3623
+
3386
3624
  @jsii.data_type(
3387
- jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.KnowledgeBaseConfigurationProperty",
3625
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.ContentFilterConfigProperty",
3388
3626
  jsii_struct_bases=[],
3389
3627
  name_mapping={
3628
+ "input_strength": "inputStrength",
3629
+ "output_strength": "outputStrength",
3390
3630
  "type": "type",
3391
- "vector_knowledge_base_configuration": "vectorKnowledgeBaseConfiguration",
3392
3631
  },
3393
3632
  )
3394
- class KnowledgeBaseConfigurationProperty:
3633
+ class ContentFilterConfigProperty:
3395
3634
  def __init__(
3396
3635
  self,
3397
3636
  *,
3637
+ input_strength: builtins.str,
3638
+ output_strength: builtins.str,
3398
3639
  type: builtins.str,
3399
- vector_knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
3400
3640
  ) -> None:
3401
- '''Contains details about the embeddings configuration of the knowledge base.
3641
+ '''Content filter config in content policy.
3402
3642
 
3403
- :param type: The type of data that the data source is converted into for the knowledge base.
3404
- :param vector_knowledge_base_configuration: Contains details about the embeddings model that'sused to convert the data source.
3643
+ :param input_strength: Strength for filters.
3644
+ :param output_strength: Strength for filters.
3645
+ :param type: Type of filter in content policy.
3405
3646
 
3406
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html
3647
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-contentfilterconfig.html
3407
3648
  :exampleMetadata: fixture=_generated
3408
3649
 
3409
3650
  Example::
@@ -3412,43 +3653,52 @@ class CfnKnowledgeBase(
3412
3653
  # The values are placeholders you should change.
3413
3654
  from aws_cdk import aws_bedrock as bedrock
3414
3655
 
3415
- knowledge_base_configuration_property = bedrock.CfnKnowledgeBase.KnowledgeBaseConfigurationProperty(
3416
- type="type",
3417
- vector_knowledge_base_configuration=bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty(
3418
- embedding_model_arn="embeddingModelArn"
3419
- )
3656
+ content_filter_config_property = bedrock.CfnGuardrail.ContentFilterConfigProperty(
3657
+ input_strength="inputStrength",
3658
+ output_strength="outputStrength",
3659
+ type="type"
3420
3660
  )
3421
3661
  '''
3422
3662
  if __debug__:
3423
- type_hints = typing.get_type_hints(_typecheckingstub__f2ca26f28cc4cf3a289e62f58643faf6a7d98ea3e55e7ff4f0f77530fa0294b4)
3663
+ type_hints = typing.get_type_hints(_typecheckingstub__e931f7f6b53869d60aab0ecda0e56f276982aaf3a1ee755be3434f26d989ebd5)
3664
+ check_type(argname="argument input_strength", value=input_strength, expected_type=type_hints["input_strength"])
3665
+ check_type(argname="argument output_strength", value=output_strength, expected_type=type_hints["output_strength"])
3424
3666
  check_type(argname="argument type", value=type, expected_type=type_hints["type"])
3425
- check_type(argname="argument vector_knowledge_base_configuration", value=vector_knowledge_base_configuration, expected_type=type_hints["vector_knowledge_base_configuration"])
3426
3667
  self._values: typing.Dict[builtins.str, typing.Any] = {
3668
+ "input_strength": input_strength,
3669
+ "output_strength": output_strength,
3427
3670
  "type": type,
3428
- "vector_knowledge_base_configuration": vector_knowledge_base_configuration,
3429
3671
  }
3430
3672
 
3431
3673
  @builtins.property
3432
- def type(self) -> builtins.str:
3433
- '''The type of data that the data source is converted into for the knowledge base.
3674
+ def input_strength(self) -> builtins.str:
3675
+ '''Strength for filters.
3434
3676
 
3435
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-type
3677
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-contentfilterconfig.html#cfn-bedrock-guardrail-contentfilterconfig-inputstrength
3436
3678
  '''
3437
- result = self._values.get("type")
3438
- assert result is not None, "Required property 'type' is missing"
3679
+ result = self._values.get("input_strength")
3680
+ assert result is not None, "Required property 'input_strength' is missing"
3439
3681
  return typing.cast(builtins.str, result)
3440
3682
 
3441
3683
  @builtins.property
3442
- def vector_knowledge_base_configuration(
3443
- self,
3444
- ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty"]:
3445
- '''Contains details about the embeddings model that'sused to convert the data source.
3684
+ def output_strength(self) -> builtins.str:
3685
+ '''Strength for filters.
3446
3686
 
3447
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-vectorknowledgebaseconfiguration
3687
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-contentfilterconfig.html#cfn-bedrock-guardrail-contentfilterconfig-outputstrength
3448
3688
  '''
3449
- result = self._values.get("vector_knowledge_base_configuration")
3450
- assert result is not None, "Required property 'vector_knowledge_base_configuration' is missing"
3451
- return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty"], result)
3689
+ result = self._values.get("output_strength")
3690
+ assert result is not None, "Required property 'output_strength' is missing"
3691
+ return typing.cast(builtins.str, result)
3692
+
3693
+ @builtins.property
3694
+ def type(self) -> builtins.str:
3695
+ '''Type of filter in content policy.
3696
+
3697
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-contentfilterconfig.html#cfn-bedrock-guardrail-contentfilterconfig-type
3698
+ '''
3699
+ result = self._values.get("type")
3700
+ assert result is not None, "Required property 'type' is missing"
3701
+ return typing.cast(builtins.str, result)
3452
3702
 
3453
3703
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
3454
3704
  return isinstance(rhs, self.__class__) and rhs._values == self._values
@@ -3457,22 +3707,26 @@ class CfnKnowledgeBase(
3457
3707
  return not (rhs == self)
3458
3708
 
3459
3709
  def __repr__(self) -> str:
3460
- return "KnowledgeBaseConfigurationProperty(%s)" % ", ".join(
3710
+ return "ContentFilterConfigProperty(%s)" % ", ".join(
3461
3711
  k + "=" + repr(v) for k, v in self._values.items()
3462
3712
  )
3463
3713
 
3464
3714
  @jsii.data_type(
3465
- jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty",
3715
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.ContentPolicyConfigProperty",
3466
3716
  jsii_struct_bases=[],
3467
- name_mapping={"embedding_model_arn": "embeddingModelArn"},
3717
+ name_mapping={"filters_config": "filtersConfig"},
3468
3718
  )
3469
- class VectorKnowledgeBaseConfigurationProperty:
3470
- def __init__(self, *, embedding_model_arn: builtins.str) -> None:
3471
- '''Contains details about the model used to create vector embeddings for the knowledge base.
3719
+ class ContentPolicyConfigProperty:
3720
+ def __init__(
3721
+ self,
3722
+ *,
3723
+ filters_config: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.ContentFilterConfigProperty", typing.Dict[builtins.str, typing.Any]]]]],
3724
+ ) -> None:
3725
+ '''Content policy config for a guardrail.
3472
3726
 
3473
- :param embedding_model_arn: The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.
3727
+ :param filters_config: List of content filter configs in content policy.
3474
3728
 
3475
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.html
3729
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-contentpolicyconfig.html
3476
3730
  :exampleMetadata: fixture=_generated
3477
3731
 
3478
3732
  Example::
@@ -3481,24 +3735,2107 @@ class CfnKnowledgeBase(
3481
3735
  # The values are placeholders you should change.
3482
3736
  from aws_cdk import aws_bedrock as bedrock
3483
3737
 
3484
- vector_knowledge_base_configuration_property = bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty(
3485
- embedding_model_arn="embeddingModelArn"
3738
+ content_policy_config_property = bedrock.CfnGuardrail.ContentPolicyConfigProperty(
3739
+ filters_config=[bedrock.CfnGuardrail.ContentFilterConfigProperty(
3740
+ input_strength="inputStrength",
3741
+ output_strength="outputStrength",
3742
+ type="type"
3743
+ )]
3486
3744
  )
3487
3745
  '''
3488
3746
  if __debug__:
3489
- type_hints = typing.get_type_hints(_typecheckingstub__53b08e209954b21c35b746e5eee517d51370af30630f5f17b3e5435150898236)
3490
- check_type(argname="argument embedding_model_arn", value=embedding_model_arn, expected_type=type_hints["embedding_model_arn"])
3747
+ type_hints = typing.get_type_hints(_typecheckingstub__3c9f736a4ece8c00be77ba5cd1cda628f4fd10884f3d7ed2c668ae9c1c654fb0)
3748
+ check_type(argname="argument filters_config", value=filters_config, expected_type=type_hints["filters_config"])
3491
3749
  self._values: typing.Dict[builtins.str, typing.Any] = {
3492
- "embedding_model_arn": embedding_model_arn,
3750
+ "filters_config": filters_config,
3493
3751
  }
3494
3752
 
3495
3753
  @builtins.property
3496
- def embedding_model_arn(self) -> builtins.str:
3497
- '''The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.
3754
+ def filters_config(
3755
+ self,
3756
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ContentFilterConfigProperty"]]]:
3757
+ '''List of content filter configs in content policy.
3498
3758
 
3499
- :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelarn
3759
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-contentpolicyconfig.html#cfn-bedrock-guardrail-contentpolicyconfig-filtersconfig
3500
3760
  '''
3501
- result = self._values.get("embedding_model_arn")
3761
+ result = self._values.get("filters_config")
3762
+ assert result is not None, "Required property 'filters_config' is missing"
3763
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ContentFilterConfigProperty"]]], result)
3764
+
3765
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3766
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3767
+
3768
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3769
+ return not (rhs == self)
3770
+
3771
+ def __repr__(self) -> str:
3772
+ return "ContentPolicyConfigProperty(%s)" % ", ".join(
3773
+ k + "=" + repr(v) for k, v in self._values.items()
3774
+ )
3775
+
3776
+ @jsii.data_type(
3777
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.ManagedWordsConfigProperty",
3778
+ jsii_struct_bases=[],
3779
+ name_mapping={"type": "type"},
3780
+ )
3781
+ class ManagedWordsConfigProperty:
3782
+ def __init__(self, *, type: builtins.str) -> None:
3783
+ '''A managed words config.
3784
+
3785
+ :param type: Options for managed words.
3786
+
3787
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-managedwordsconfig.html
3788
+ :exampleMetadata: fixture=_generated
3789
+
3790
+ Example::
3791
+
3792
+ # The code below shows an example of how to instantiate this type.
3793
+ # The values are placeholders you should change.
3794
+ from aws_cdk import aws_bedrock as bedrock
3795
+
3796
+ managed_words_config_property = bedrock.CfnGuardrail.ManagedWordsConfigProperty(
3797
+ type="type"
3798
+ )
3799
+ '''
3800
+ if __debug__:
3801
+ type_hints = typing.get_type_hints(_typecheckingstub__a4bf7d4d57eaea6d7c62d6852c2666ebfc7a95d0b72269c42fb757f13cdcece6)
3802
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
3803
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3804
+ "type": type,
3805
+ }
3806
+
3807
+ @builtins.property
3808
+ def type(self) -> builtins.str:
3809
+ '''Options for managed words.
3810
+
3811
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-managedwordsconfig.html#cfn-bedrock-guardrail-managedwordsconfig-type
3812
+ '''
3813
+ result = self._values.get("type")
3814
+ assert result is not None, "Required property 'type' is missing"
3815
+ return typing.cast(builtins.str, result)
3816
+
3817
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3818
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3819
+
3820
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3821
+ return not (rhs == self)
3822
+
3823
+ def __repr__(self) -> str:
3824
+ return "ManagedWordsConfigProperty(%s)" % ", ".join(
3825
+ k + "=" + repr(v) for k, v in self._values.items()
3826
+ )
3827
+
3828
+ @jsii.data_type(
3829
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.PiiEntityConfigProperty",
3830
+ jsii_struct_bases=[],
3831
+ name_mapping={"action": "action", "type": "type"},
3832
+ )
3833
+ class PiiEntityConfigProperty:
3834
+ def __init__(self, *, action: builtins.str, type: builtins.str) -> None:
3835
+ '''Pii entity configuration.
3836
+
3837
+ :param action: Options for sensitive information action.
3838
+ :param type: The currently supported PII entities.
3839
+
3840
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-piientityconfig.html
3841
+ :exampleMetadata: fixture=_generated
3842
+
3843
+ Example::
3844
+
3845
+ # The code below shows an example of how to instantiate this type.
3846
+ # The values are placeholders you should change.
3847
+ from aws_cdk import aws_bedrock as bedrock
3848
+
3849
+ pii_entity_config_property = bedrock.CfnGuardrail.PiiEntityConfigProperty(
3850
+ action="action",
3851
+ type="type"
3852
+ )
3853
+ '''
3854
+ if __debug__:
3855
+ type_hints = typing.get_type_hints(_typecheckingstub__b1b637cd24a7601fa9e29e9667a11a4859f00240df5f6c858a1c38c3b51a9ece)
3856
+ check_type(argname="argument action", value=action, expected_type=type_hints["action"])
3857
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
3858
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3859
+ "action": action,
3860
+ "type": type,
3861
+ }
3862
+
3863
+ @builtins.property
3864
+ def action(self) -> builtins.str:
3865
+ '''Options for sensitive information action.
3866
+
3867
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-piientityconfig.html#cfn-bedrock-guardrail-piientityconfig-action
3868
+ '''
3869
+ result = self._values.get("action")
3870
+ assert result is not None, "Required property 'action' is missing"
3871
+ return typing.cast(builtins.str, result)
3872
+
3873
+ @builtins.property
3874
+ def type(self) -> builtins.str:
3875
+ '''The currently supported PII entities.
3876
+
3877
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-piientityconfig.html#cfn-bedrock-guardrail-piientityconfig-type
3878
+ '''
3879
+ result = self._values.get("type")
3880
+ assert result is not None, "Required property 'type' is missing"
3881
+ return typing.cast(builtins.str, result)
3882
+
3883
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3884
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3885
+
3886
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3887
+ return not (rhs == self)
3888
+
3889
+ def __repr__(self) -> str:
3890
+ return "PiiEntityConfigProperty(%s)" % ", ".join(
3891
+ k + "=" + repr(v) for k, v in self._values.items()
3892
+ )
3893
+
3894
+ @jsii.data_type(
3895
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.RegexConfigProperty",
3896
+ jsii_struct_bases=[],
3897
+ name_mapping={
3898
+ "action": "action",
3899
+ "name": "name",
3900
+ "pattern": "pattern",
3901
+ "description": "description",
3902
+ },
3903
+ )
3904
+ class RegexConfigProperty:
3905
+ def __init__(
3906
+ self,
3907
+ *,
3908
+ action: builtins.str,
3909
+ name: builtins.str,
3910
+ pattern: builtins.str,
3911
+ description: typing.Optional[builtins.str] = None,
3912
+ ) -> None:
3913
+ '''A regex configuration.
3914
+
3915
+ :param action: Options for sensitive information action.
3916
+ :param name: The regex name.
3917
+ :param pattern: The regex pattern.
3918
+ :param description: The regex description.
3919
+
3920
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-regexconfig.html
3921
+ :exampleMetadata: fixture=_generated
3922
+
3923
+ Example::
3924
+
3925
+ # The code below shows an example of how to instantiate this type.
3926
+ # The values are placeholders you should change.
3927
+ from aws_cdk import aws_bedrock as bedrock
3928
+
3929
+ regex_config_property = bedrock.CfnGuardrail.RegexConfigProperty(
3930
+ action="action",
3931
+ name="name",
3932
+ pattern="pattern",
3933
+
3934
+ # the properties below are optional
3935
+ description="description"
3936
+ )
3937
+ '''
3938
+ if __debug__:
3939
+ type_hints = typing.get_type_hints(_typecheckingstub__6b89e42a3611474b89e78273413fafd42e2ceb034d2f5fa3e3c122fbd7b3f064)
3940
+ check_type(argname="argument action", value=action, expected_type=type_hints["action"])
3941
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
3942
+ check_type(argname="argument pattern", value=pattern, expected_type=type_hints["pattern"])
3943
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
3944
+ self._values: typing.Dict[builtins.str, typing.Any] = {
3945
+ "action": action,
3946
+ "name": name,
3947
+ "pattern": pattern,
3948
+ }
3949
+ if description is not None:
3950
+ self._values["description"] = description
3951
+
3952
+ @builtins.property
3953
+ def action(self) -> builtins.str:
3954
+ '''Options for sensitive information action.
3955
+
3956
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-regexconfig.html#cfn-bedrock-guardrail-regexconfig-action
3957
+ '''
3958
+ result = self._values.get("action")
3959
+ assert result is not None, "Required property 'action' is missing"
3960
+ return typing.cast(builtins.str, result)
3961
+
3962
+ @builtins.property
3963
+ def name(self) -> builtins.str:
3964
+ '''The regex name.
3965
+
3966
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-regexconfig.html#cfn-bedrock-guardrail-regexconfig-name
3967
+ '''
3968
+ result = self._values.get("name")
3969
+ assert result is not None, "Required property 'name' is missing"
3970
+ return typing.cast(builtins.str, result)
3971
+
3972
+ @builtins.property
3973
+ def pattern(self) -> builtins.str:
3974
+ '''The regex pattern.
3975
+
3976
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-regexconfig.html#cfn-bedrock-guardrail-regexconfig-pattern
3977
+ '''
3978
+ result = self._values.get("pattern")
3979
+ assert result is not None, "Required property 'pattern' is missing"
3980
+ return typing.cast(builtins.str, result)
3981
+
3982
+ @builtins.property
3983
+ def description(self) -> typing.Optional[builtins.str]:
3984
+ '''The regex description.
3985
+
3986
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-regexconfig.html#cfn-bedrock-guardrail-regexconfig-description
3987
+ '''
3988
+ result = self._values.get("description")
3989
+ return typing.cast(typing.Optional[builtins.str], result)
3990
+
3991
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
3992
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
3993
+
3994
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
3995
+ return not (rhs == self)
3996
+
3997
+ def __repr__(self) -> str:
3998
+ return "RegexConfigProperty(%s)" % ", ".join(
3999
+ k + "=" + repr(v) for k, v in self._values.items()
4000
+ )
4001
+
4002
+ @jsii.data_type(
4003
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.SensitiveInformationPolicyConfigProperty",
4004
+ jsii_struct_bases=[],
4005
+ name_mapping={
4006
+ "pii_entities_config": "piiEntitiesConfig",
4007
+ "regexes_config": "regexesConfig",
4008
+ },
4009
+ )
4010
+ class SensitiveInformationPolicyConfigProperty:
4011
+ def __init__(
4012
+ self,
4013
+ *,
4014
+ pii_entities_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.PiiEntityConfigProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4015
+ regexes_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.RegexConfigProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4016
+ ) -> None:
4017
+ '''Sensitive information policy config for a guardrail.
4018
+
4019
+ :param pii_entities_config: List of entities.
4020
+ :param regexes_config: List of regex.
4021
+
4022
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig.html
4023
+ :exampleMetadata: fixture=_generated
4024
+
4025
+ Example::
4026
+
4027
+ # The code below shows an example of how to instantiate this type.
4028
+ # The values are placeholders you should change.
4029
+ from aws_cdk import aws_bedrock as bedrock
4030
+
4031
+ sensitive_information_policy_config_property = bedrock.CfnGuardrail.SensitiveInformationPolicyConfigProperty(
4032
+ pii_entities_config=[bedrock.CfnGuardrail.PiiEntityConfigProperty(
4033
+ action="action",
4034
+ type="type"
4035
+ )],
4036
+ regexes_config=[bedrock.CfnGuardrail.RegexConfigProperty(
4037
+ action="action",
4038
+ name="name",
4039
+ pattern="pattern",
4040
+
4041
+ # the properties below are optional
4042
+ description="description"
4043
+ )]
4044
+ )
4045
+ '''
4046
+ if __debug__:
4047
+ type_hints = typing.get_type_hints(_typecheckingstub__ce533c46d8cdf8ee409b3343d7148ef4f9260d103d28195f722d007266162d12)
4048
+ check_type(argname="argument pii_entities_config", value=pii_entities_config, expected_type=type_hints["pii_entities_config"])
4049
+ check_type(argname="argument regexes_config", value=regexes_config, expected_type=type_hints["regexes_config"])
4050
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4051
+ if pii_entities_config is not None:
4052
+ self._values["pii_entities_config"] = pii_entities_config
4053
+ if regexes_config is not None:
4054
+ self._values["regexes_config"] = regexes_config
4055
+
4056
+ @builtins.property
4057
+ def pii_entities_config(
4058
+ self,
4059
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.PiiEntityConfigProperty"]]]]:
4060
+ '''List of entities.
4061
+
4062
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig.html#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-piientitiesconfig
4063
+ '''
4064
+ result = self._values.get("pii_entities_config")
4065
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.PiiEntityConfigProperty"]]]], result)
4066
+
4067
+ @builtins.property
4068
+ def regexes_config(
4069
+ self,
4070
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.RegexConfigProperty"]]]]:
4071
+ '''List of regex.
4072
+
4073
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-sensitiveinformationpolicyconfig.html#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig-regexesconfig
4074
+ '''
4075
+ result = self._values.get("regexes_config")
4076
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.RegexConfigProperty"]]]], result)
4077
+
4078
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4079
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4080
+
4081
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4082
+ return not (rhs == self)
4083
+
4084
+ def __repr__(self) -> str:
4085
+ return "SensitiveInformationPolicyConfigProperty(%s)" % ", ".join(
4086
+ k + "=" + repr(v) for k, v in self._values.items()
4087
+ )
4088
+
4089
+ @jsii.data_type(
4090
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.TopicConfigProperty",
4091
+ jsii_struct_bases=[],
4092
+ name_mapping={
4093
+ "definition": "definition",
4094
+ "name": "name",
4095
+ "type": "type",
4096
+ "examples": "examples",
4097
+ },
4098
+ )
4099
+ class TopicConfigProperty:
4100
+ def __init__(
4101
+ self,
4102
+ *,
4103
+ definition: builtins.str,
4104
+ name: builtins.str,
4105
+ type: builtins.str,
4106
+ examples: typing.Optional[typing.Sequence[builtins.str]] = None,
4107
+ ) -> None:
4108
+ '''Topic config in topic policy.
4109
+
4110
+ :param definition: Definition of topic in topic policy.
4111
+ :param name: Name of topic in topic policy.
4112
+ :param type: Type of topic in a policy.
4113
+ :param examples: List of text examples.
4114
+
4115
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicconfig.html
4116
+ :exampleMetadata: fixture=_generated
4117
+
4118
+ Example::
4119
+
4120
+ # The code below shows an example of how to instantiate this type.
4121
+ # The values are placeholders you should change.
4122
+ from aws_cdk import aws_bedrock as bedrock
4123
+
4124
+ topic_config_property = bedrock.CfnGuardrail.TopicConfigProperty(
4125
+ definition="definition",
4126
+ name="name",
4127
+ type="type",
4128
+
4129
+ # the properties below are optional
4130
+ examples=["examples"]
4131
+ )
4132
+ '''
4133
+ if __debug__:
4134
+ type_hints = typing.get_type_hints(_typecheckingstub__55baba87f7434d59d4b6be04489cbfbd90b857b82944e9437475de8bd648c94c)
4135
+ check_type(argname="argument definition", value=definition, expected_type=type_hints["definition"])
4136
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
4137
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
4138
+ check_type(argname="argument examples", value=examples, expected_type=type_hints["examples"])
4139
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4140
+ "definition": definition,
4141
+ "name": name,
4142
+ "type": type,
4143
+ }
4144
+ if examples is not None:
4145
+ self._values["examples"] = examples
4146
+
4147
+ @builtins.property
4148
+ def definition(self) -> builtins.str:
4149
+ '''Definition of topic in topic policy.
4150
+
4151
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicconfig.html#cfn-bedrock-guardrail-topicconfig-definition
4152
+ '''
4153
+ result = self._values.get("definition")
4154
+ assert result is not None, "Required property 'definition' is missing"
4155
+ return typing.cast(builtins.str, result)
4156
+
4157
+ @builtins.property
4158
+ def name(self) -> builtins.str:
4159
+ '''Name of topic in topic policy.
4160
+
4161
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicconfig.html#cfn-bedrock-guardrail-topicconfig-name
4162
+ '''
4163
+ result = self._values.get("name")
4164
+ assert result is not None, "Required property 'name' is missing"
4165
+ return typing.cast(builtins.str, result)
4166
+
4167
+ @builtins.property
4168
+ def type(self) -> builtins.str:
4169
+ '''Type of topic in a policy.
4170
+
4171
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicconfig.html#cfn-bedrock-guardrail-topicconfig-type
4172
+ '''
4173
+ result = self._values.get("type")
4174
+ assert result is not None, "Required property 'type' is missing"
4175
+ return typing.cast(builtins.str, result)
4176
+
4177
+ @builtins.property
4178
+ def examples(self) -> typing.Optional[typing.List[builtins.str]]:
4179
+ '''List of text examples.
4180
+
4181
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicconfig.html#cfn-bedrock-guardrail-topicconfig-examples
4182
+ '''
4183
+ result = self._values.get("examples")
4184
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
4185
+
4186
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4187
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4188
+
4189
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4190
+ return not (rhs == self)
4191
+
4192
+ def __repr__(self) -> str:
4193
+ return "TopicConfigProperty(%s)" % ", ".join(
4194
+ k + "=" + repr(v) for k, v in self._values.items()
4195
+ )
4196
+
4197
+ @jsii.data_type(
4198
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.TopicPolicyConfigProperty",
4199
+ jsii_struct_bases=[],
4200
+ name_mapping={"topics_config": "topicsConfig"},
4201
+ )
4202
+ class TopicPolicyConfigProperty:
4203
+ def __init__(
4204
+ self,
4205
+ *,
4206
+ topics_config: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.TopicConfigProperty", typing.Dict[builtins.str, typing.Any]]]]],
4207
+ ) -> None:
4208
+ '''Topic policy config for a guardrail.
4209
+
4210
+ :param topics_config: List of topic configs in topic policy.
4211
+
4212
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicpolicyconfig.html
4213
+ :exampleMetadata: fixture=_generated
4214
+
4215
+ Example::
4216
+
4217
+ # The code below shows an example of how to instantiate this type.
4218
+ # The values are placeholders you should change.
4219
+ from aws_cdk import aws_bedrock as bedrock
4220
+
4221
+ topic_policy_config_property = bedrock.CfnGuardrail.TopicPolicyConfigProperty(
4222
+ topics_config=[bedrock.CfnGuardrail.TopicConfigProperty(
4223
+ definition="definition",
4224
+ name="name",
4225
+ type="type",
4226
+
4227
+ # the properties below are optional
4228
+ examples=["examples"]
4229
+ )]
4230
+ )
4231
+ '''
4232
+ if __debug__:
4233
+ type_hints = typing.get_type_hints(_typecheckingstub__a601b9bb5110351c09983ddf7f804dd1b1d64d78dffded374d89618a609277eb)
4234
+ check_type(argname="argument topics_config", value=topics_config, expected_type=type_hints["topics_config"])
4235
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4236
+ "topics_config": topics_config,
4237
+ }
4238
+
4239
+ @builtins.property
4240
+ def topics_config(
4241
+ self,
4242
+ ) -> typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.TopicConfigProperty"]]]:
4243
+ '''List of topic configs in topic policy.
4244
+
4245
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-topicpolicyconfig.html#cfn-bedrock-guardrail-topicpolicyconfig-topicsconfig
4246
+ '''
4247
+ result = self._values.get("topics_config")
4248
+ assert result is not None, "Required property 'topics_config' is missing"
4249
+ return typing.cast(typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.TopicConfigProperty"]]], result)
4250
+
4251
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4252
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4253
+
4254
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4255
+ return not (rhs == self)
4256
+
4257
+ def __repr__(self) -> str:
4258
+ return "TopicPolicyConfigProperty(%s)" % ", ".join(
4259
+ k + "=" + repr(v) for k, v in self._values.items()
4260
+ )
4261
+
4262
+ @jsii.data_type(
4263
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.WordConfigProperty",
4264
+ jsii_struct_bases=[],
4265
+ name_mapping={"text": "text"},
4266
+ )
4267
+ class WordConfigProperty:
4268
+ def __init__(self, *, text: builtins.str) -> None:
4269
+ '''A custom word config.
4270
+
4271
+ :param text: The custom word text.
4272
+
4273
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-wordconfig.html
4274
+ :exampleMetadata: fixture=_generated
4275
+
4276
+ Example::
4277
+
4278
+ # The code below shows an example of how to instantiate this type.
4279
+ # The values are placeholders you should change.
4280
+ from aws_cdk import aws_bedrock as bedrock
4281
+
4282
+ word_config_property = bedrock.CfnGuardrail.WordConfigProperty(
4283
+ text="text"
4284
+ )
4285
+ '''
4286
+ if __debug__:
4287
+ type_hints = typing.get_type_hints(_typecheckingstub__8d97ba02e51405985a3642a48511f50ab8ebae582cdd068b6dec0252d49b5497)
4288
+ check_type(argname="argument text", value=text, expected_type=type_hints["text"])
4289
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4290
+ "text": text,
4291
+ }
4292
+
4293
+ @builtins.property
4294
+ def text(self) -> builtins.str:
4295
+ '''The custom word text.
4296
+
4297
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-wordconfig.html#cfn-bedrock-guardrail-wordconfig-text
4298
+ '''
4299
+ result = self._values.get("text")
4300
+ assert result is not None, "Required property 'text' is missing"
4301
+ return typing.cast(builtins.str, result)
4302
+
4303
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4304
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4305
+
4306
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4307
+ return not (rhs == self)
4308
+
4309
+ def __repr__(self) -> str:
4310
+ return "WordConfigProperty(%s)" % ", ".join(
4311
+ k + "=" + repr(v) for k, v in self._values.items()
4312
+ )
4313
+
4314
+ @jsii.data_type(
4315
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrail.WordPolicyConfigProperty",
4316
+ jsii_struct_bases=[],
4317
+ name_mapping={
4318
+ "managed_word_lists_config": "managedWordListsConfig",
4319
+ "words_config": "wordsConfig",
4320
+ },
4321
+ )
4322
+ class WordPolicyConfigProperty:
4323
+ def __init__(
4324
+ self,
4325
+ *,
4326
+ managed_word_lists_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.ManagedWordsConfigProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4327
+ words_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union["CfnGuardrail.WordConfigProperty", typing.Dict[builtins.str, typing.Any]]]]]] = None,
4328
+ ) -> None:
4329
+ '''Word policy config for a guardrail.
4330
+
4331
+ :param managed_word_lists_config: A config for the list of managed words.
4332
+ :param words_config: List of custom word configs.
4333
+
4334
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-wordpolicyconfig.html
4335
+ :exampleMetadata: fixture=_generated
4336
+
4337
+ Example::
4338
+
4339
+ # The code below shows an example of how to instantiate this type.
4340
+ # The values are placeholders you should change.
4341
+ from aws_cdk import aws_bedrock as bedrock
4342
+
4343
+ word_policy_config_property = bedrock.CfnGuardrail.WordPolicyConfigProperty(
4344
+ managed_word_lists_config=[bedrock.CfnGuardrail.ManagedWordsConfigProperty(
4345
+ type="type"
4346
+ )],
4347
+ words_config=[bedrock.CfnGuardrail.WordConfigProperty(
4348
+ text="text"
4349
+ )]
4350
+ )
4351
+ '''
4352
+ if __debug__:
4353
+ type_hints = typing.get_type_hints(_typecheckingstub__40e1ce19bae133dd80df92a2b7a2a8185b6ce800337dbf3519f8449ef4f93952)
4354
+ check_type(argname="argument managed_word_lists_config", value=managed_word_lists_config, expected_type=type_hints["managed_word_lists_config"])
4355
+ check_type(argname="argument words_config", value=words_config, expected_type=type_hints["words_config"])
4356
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
4357
+ if managed_word_lists_config is not None:
4358
+ self._values["managed_word_lists_config"] = managed_word_lists_config
4359
+ if words_config is not None:
4360
+ self._values["words_config"] = words_config
4361
+
4362
+ @builtins.property
4363
+ def managed_word_lists_config(
4364
+ self,
4365
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ManagedWordsConfigProperty"]]]]:
4366
+ '''A config for the list of managed words.
4367
+
4368
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-wordpolicyconfig.html#cfn-bedrock-guardrail-wordpolicyconfig-managedwordlistsconfig
4369
+ '''
4370
+ result = self._values.get("managed_word_lists_config")
4371
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.ManagedWordsConfigProperty"]]]], result)
4372
+
4373
+ @builtins.property
4374
+ def words_config(
4375
+ self,
4376
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.WordConfigProperty"]]]]:
4377
+ '''List of custom word configs.
4378
+
4379
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-guardrail-wordpolicyconfig.html#cfn-bedrock-guardrail-wordpolicyconfig-wordsconfig
4380
+ '''
4381
+ result = self._values.get("words_config")
4382
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, typing.List[typing.Union[_IResolvable_da3f097b, "CfnGuardrail.WordConfigProperty"]]]], result)
4383
+
4384
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4385
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4386
+
4387
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4388
+ return not (rhs == self)
4389
+
4390
+ def __repr__(self) -> str:
4391
+ return "WordPolicyConfigProperty(%s)" % ", ".join(
4392
+ k + "=" + repr(v) for k, v in self._values.items()
4393
+ )
4394
+
4395
+
4396
+ @jsii.data_type(
4397
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnGuardrailProps",
4398
+ jsii_struct_bases=[],
4399
+ name_mapping={
4400
+ "blocked_input_messaging": "blockedInputMessaging",
4401
+ "blocked_outputs_messaging": "blockedOutputsMessaging",
4402
+ "name": "name",
4403
+ "content_policy_config": "contentPolicyConfig",
4404
+ "description": "description",
4405
+ "kms_key_arn": "kmsKeyArn",
4406
+ "sensitive_information_policy_config": "sensitiveInformationPolicyConfig",
4407
+ "tags": "tags",
4408
+ "topic_policy_config": "topicPolicyConfig",
4409
+ "word_policy_config": "wordPolicyConfig",
4410
+ },
4411
+ )
4412
+ class CfnGuardrailProps:
4413
+ def __init__(
4414
+ self,
4415
+ *,
4416
+ blocked_input_messaging: builtins.str,
4417
+ blocked_outputs_messaging: builtins.str,
4418
+ name: builtins.str,
4419
+ content_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.ContentPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4420
+ description: typing.Optional[builtins.str] = None,
4421
+ kms_key_arn: typing.Optional[builtins.str] = None,
4422
+ sensitive_information_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.SensitiveInformationPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4423
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
4424
+ topic_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.TopicPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4425
+ word_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.WordPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4426
+ ) -> None:
4427
+ '''Properties for defining a ``CfnGuardrail``.
4428
+
4429
+ :param blocked_input_messaging: Messaging for when violations are detected in text.
4430
+ :param blocked_outputs_messaging: Messaging for when violations are detected in text.
4431
+ :param name: Name of the guardrail.
4432
+ :param content_policy_config: Content policy config for a guardrail.
4433
+ :param description: Description of the guardrail or its version.
4434
+ :param kms_key_arn: The KMS key with which the guardrail was encrypted at rest.
4435
+ :param sensitive_information_policy_config: Sensitive information policy config for a guardrail.
4436
+ :param tags: List of Tags.
4437
+ :param topic_policy_config: Topic policy config for a guardrail.
4438
+ :param word_policy_config: Word policy config for a guardrail.
4439
+
4440
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html
4441
+ :exampleMetadata: fixture=_generated
4442
+
4443
+ Example::
4444
+
4445
+ # The code below shows an example of how to instantiate this type.
4446
+ # The values are placeholders you should change.
4447
+ from aws_cdk import aws_bedrock as bedrock
4448
+
4449
+ cfn_guardrail_props = bedrock.CfnGuardrailProps(
4450
+ blocked_input_messaging="blockedInputMessaging",
4451
+ blocked_outputs_messaging="blockedOutputsMessaging",
4452
+ name="name",
4453
+
4454
+ # the properties below are optional
4455
+ content_policy_config=bedrock.CfnGuardrail.ContentPolicyConfigProperty(
4456
+ filters_config=[bedrock.CfnGuardrail.ContentFilterConfigProperty(
4457
+ input_strength="inputStrength",
4458
+ output_strength="outputStrength",
4459
+ type="type"
4460
+ )]
4461
+ ),
4462
+ description="description",
4463
+ kms_key_arn="kmsKeyArn",
4464
+ sensitive_information_policy_config=bedrock.CfnGuardrail.SensitiveInformationPolicyConfigProperty(
4465
+ pii_entities_config=[bedrock.CfnGuardrail.PiiEntityConfigProperty(
4466
+ action="action",
4467
+ type="type"
4468
+ )],
4469
+ regexes_config=[bedrock.CfnGuardrail.RegexConfigProperty(
4470
+ action="action",
4471
+ name="name",
4472
+ pattern="pattern",
4473
+
4474
+ # the properties below are optional
4475
+ description="description"
4476
+ )]
4477
+ ),
4478
+ tags=[CfnTag(
4479
+ key="key",
4480
+ value="value"
4481
+ )],
4482
+ topic_policy_config=bedrock.CfnGuardrail.TopicPolicyConfigProperty(
4483
+ topics_config=[bedrock.CfnGuardrail.TopicConfigProperty(
4484
+ definition="definition",
4485
+ name="name",
4486
+ type="type",
4487
+
4488
+ # the properties below are optional
4489
+ examples=["examples"]
4490
+ )]
4491
+ ),
4492
+ word_policy_config=bedrock.CfnGuardrail.WordPolicyConfigProperty(
4493
+ managed_word_lists_config=[bedrock.CfnGuardrail.ManagedWordsConfigProperty(
4494
+ type="type"
4495
+ )],
4496
+ words_config=[bedrock.CfnGuardrail.WordConfigProperty(
4497
+ text="text"
4498
+ )]
4499
+ )
4500
+ )
4501
+ '''
4502
+ if __debug__:
4503
+ type_hints = typing.get_type_hints(_typecheckingstub__e16800cc7473874d0d58b13a772dade51a596e19ff440f95ad243d23606a6cea)
4504
+ check_type(argname="argument blocked_input_messaging", value=blocked_input_messaging, expected_type=type_hints["blocked_input_messaging"])
4505
+ check_type(argname="argument blocked_outputs_messaging", value=blocked_outputs_messaging, expected_type=type_hints["blocked_outputs_messaging"])
4506
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
4507
+ check_type(argname="argument content_policy_config", value=content_policy_config, expected_type=type_hints["content_policy_config"])
4508
+ check_type(argname="argument description", value=description, expected_type=type_hints["description"])
4509
+ check_type(argname="argument kms_key_arn", value=kms_key_arn, expected_type=type_hints["kms_key_arn"])
4510
+ check_type(argname="argument sensitive_information_policy_config", value=sensitive_information_policy_config, expected_type=type_hints["sensitive_information_policy_config"])
4511
+ check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
4512
+ check_type(argname="argument topic_policy_config", value=topic_policy_config, expected_type=type_hints["topic_policy_config"])
4513
+ check_type(argname="argument word_policy_config", value=word_policy_config, expected_type=type_hints["word_policy_config"])
4514
+ self._values: typing.Dict[builtins.str, typing.Any] = {
4515
+ "blocked_input_messaging": blocked_input_messaging,
4516
+ "blocked_outputs_messaging": blocked_outputs_messaging,
4517
+ "name": name,
4518
+ }
4519
+ if content_policy_config is not None:
4520
+ self._values["content_policy_config"] = content_policy_config
4521
+ if description is not None:
4522
+ self._values["description"] = description
4523
+ if kms_key_arn is not None:
4524
+ self._values["kms_key_arn"] = kms_key_arn
4525
+ if sensitive_information_policy_config is not None:
4526
+ self._values["sensitive_information_policy_config"] = sensitive_information_policy_config
4527
+ if tags is not None:
4528
+ self._values["tags"] = tags
4529
+ if topic_policy_config is not None:
4530
+ self._values["topic_policy_config"] = topic_policy_config
4531
+ if word_policy_config is not None:
4532
+ self._values["word_policy_config"] = word_policy_config
4533
+
4534
+ @builtins.property
4535
+ def blocked_input_messaging(self) -> builtins.str:
4536
+ '''Messaging for when violations are detected in text.
4537
+
4538
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-blockedinputmessaging
4539
+ '''
4540
+ result = self._values.get("blocked_input_messaging")
4541
+ assert result is not None, "Required property 'blocked_input_messaging' is missing"
4542
+ return typing.cast(builtins.str, result)
4543
+
4544
+ @builtins.property
4545
+ def blocked_outputs_messaging(self) -> builtins.str:
4546
+ '''Messaging for when violations are detected in text.
4547
+
4548
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-blockedoutputsmessaging
4549
+ '''
4550
+ result = self._values.get("blocked_outputs_messaging")
4551
+ assert result is not None, "Required property 'blocked_outputs_messaging' is missing"
4552
+ return typing.cast(builtins.str, result)
4553
+
4554
+ @builtins.property
4555
+ def name(self) -> builtins.str:
4556
+ '''Name of the guardrail.
4557
+
4558
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-name
4559
+ '''
4560
+ result = self._values.get("name")
4561
+ assert result is not None, "Required property 'name' is missing"
4562
+ return typing.cast(builtins.str, result)
4563
+
4564
+ @builtins.property
4565
+ def content_policy_config(
4566
+ self,
4567
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.ContentPolicyConfigProperty]]:
4568
+ '''Content policy config for a guardrail.
4569
+
4570
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-contentpolicyconfig
4571
+ '''
4572
+ result = self._values.get("content_policy_config")
4573
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.ContentPolicyConfigProperty]], result)
4574
+
4575
+ @builtins.property
4576
+ def description(self) -> typing.Optional[builtins.str]:
4577
+ '''Description of the guardrail or its version.
4578
+
4579
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-description
4580
+ '''
4581
+ result = self._values.get("description")
4582
+ return typing.cast(typing.Optional[builtins.str], result)
4583
+
4584
+ @builtins.property
4585
+ def kms_key_arn(self) -> typing.Optional[builtins.str]:
4586
+ '''The KMS key with which the guardrail was encrypted at rest.
4587
+
4588
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-kmskeyarn
4589
+ '''
4590
+ result = self._values.get("kms_key_arn")
4591
+ return typing.cast(typing.Optional[builtins.str], result)
4592
+
4593
+ @builtins.property
4594
+ def sensitive_information_policy_config(
4595
+ self,
4596
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.SensitiveInformationPolicyConfigProperty]]:
4597
+ '''Sensitive information policy config for a guardrail.
4598
+
4599
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-sensitiveinformationpolicyconfig
4600
+ '''
4601
+ result = self._values.get("sensitive_information_policy_config")
4602
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.SensitiveInformationPolicyConfigProperty]], result)
4603
+
4604
+ @builtins.property
4605
+ def tags(self) -> typing.Optional[typing.List[_CfnTag_f6864754]]:
4606
+ '''List of Tags.
4607
+
4608
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-tags
4609
+ '''
4610
+ result = self._values.get("tags")
4611
+ return typing.cast(typing.Optional[typing.List[_CfnTag_f6864754]], result)
4612
+
4613
+ @builtins.property
4614
+ def topic_policy_config(
4615
+ self,
4616
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.TopicPolicyConfigProperty]]:
4617
+ '''Topic policy config for a guardrail.
4618
+
4619
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-topicpolicyconfig
4620
+ '''
4621
+ result = self._values.get("topic_policy_config")
4622
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.TopicPolicyConfigProperty]], result)
4623
+
4624
+ @builtins.property
4625
+ def word_policy_config(
4626
+ self,
4627
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.WordPolicyConfigProperty]]:
4628
+ '''Word policy config for a guardrail.
4629
+
4630
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-guardrail.html#cfn-bedrock-guardrail-wordpolicyconfig
4631
+ '''
4632
+ result = self._values.get("word_policy_config")
4633
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.WordPolicyConfigProperty]], result)
4634
+
4635
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
4636
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
4637
+
4638
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
4639
+ return not (rhs == self)
4640
+
4641
+ def __repr__(self) -> str:
4642
+ return "CfnGuardrailProps(%s)" % ", ".join(
4643
+ k + "=" + repr(v) for k, v in self._values.items()
4644
+ )
4645
+
4646
+
4647
+ @jsii.implements(_IInspectable_c2943556, _ITaggableV2_4e6798f8)
4648
+ class CfnKnowledgeBase(
4649
+ _CfnResource_9df397a6,
4650
+ metaclass=jsii.JSIIMeta,
4651
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase",
4652
+ ):
4653
+ '''Specifies a knowledge base as a resource in a top-level template. Minimally, you must specify the following properties:.
4654
+
4655
+ - Name – Specify a name for the knowledge base.
4656
+ - RoleArn – Specify the Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base. For more information, see `Create a service role for Knowledge base for Amazon Bedrock <https://docs.aws.amazon.com/bedrock/latest/userguide/kb-permissions.html>`_ .
4657
+ - KnowledgeBaseConfiguration – Specify the embeddings configuration of the knowledge base. The following sub-properties are required:
4658
+ - Type – Specify the value ``VECTOR`` .
4659
+ - StorageConfiguration – Specify information about the vector store in which the data source is stored. The following sub-properties are required:
4660
+ - Type – Specify the vector store service that you are using.
4661
+
4662
+ .. epigraph::
4663
+
4664
+ Redis Enterprise Cloud vector stores are currently unsupported in AWS CloudFormation .
4665
+
4666
+ For more information about using knowledge bases in Amazon Bedrock , see `Knowledge base for Amazon Bedrock <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base.html>`_ .
4667
+
4668
+ See the *Properties* section below for descriptions of both the required and optional properties.
4669
+
4670
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html
4671
+ :cloudformationResource: AWS::Bedrock::KnowledgeBase
4672
+ :exampleMetadata: fixture=_generated
4673
+
4674
+ Example::
4675
+
4676
+ # The code below shows an example of how to instantiate this type.
4677
+ # The values are placeholders you should change.
4678
+ from aws_cdk import aws_bedrock as bedrock
4679
+
4680
+ cfn_knowledge_base = bedrock.CfnKnowledgeBase(self, "MyCfnKnowledgeBase",
4681
+ knowledge_base_configuration=bedrock.CfnKnowledgeBase.KnowledgeBaseConfigurationProperty(
4682
+ type="type",
4683
+ vector_knowledge_base_configuration=bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty(
4684
+ embedding_model_arn="embeddingModelArn"
4685
+ )
4686
+ ),
4687
+ name="name",
4688
+ role_arn="roleArn",
4689
+ storage_configuration=bedrock.CfnKnowledgeBase.StorageConfigurationProperty(
4690
+ type="type",
4691
+
4692
+ # the properties below are optional
4693
+ opensearch_serverless_configuration=bedrock.CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty(
4694
+ collection_arn="collectionArn",
4695
+ field_mapping=bedrock.CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty(
4696
+ metadata_field="metadataField",
4697
+ text_field="textField",
4698
+ vector_field="vectorField"
4699
+ ),
4700
+ vector_index_name="vectorIndexName"
4701
+ ),
4702
+ pinecone_configuration=bedrock.CfnKnowledgeBase.PineconeConfigurationProperty(
4703
+ connection_string="connectionString",
4704
+ credentials_secret_arn="credentialsSecretArn",
4705
+ field_mapping=bedrock.CfnKnowledgeBase.PineconeFieldMappingProperty(
4706
+ metadata_field="metadataField",
4707
+ text_field="textField"
4708
+ ),
4709
+
4710
+ # the properties below are optional
4711
+ namespace="namespace"
4712
+ ),
4713
+ rds_configuration=bedrock.CfnKnowledgeBase.RdsConfigurationProperty(
4714
+ credentials_secret_arn="credentialsSecretArn",
4715
+ database_name="databaseName",
4716
+ field_mapping=bedrock.CfnKnowledgeBase.RdsFieldMappingProperty(
4717
+ metadata_field="metadataField",
4718
+ primary_key_field="primaryKeyField",
4719
+ text_field="textField",
4720
+ vector_field="vectorField"
4721
+ ),
4722
+ resource_arn="resourceArn",
4723
+ table_name="tableName"
4724
+ )
4725
+ ),
4726
+
4727
+ # the properties below are optional
4728
+ description="description",
4729
+ tags={
4730
+ "tags_key": "tags"
4731
+ }
4732
+ )
4733
+ '''
4734
+
4735
+ def __init__(
4736
+ self,
4737
+ scope: _constructs_77d1e7e8.Construct,
4738
+ id: builtins.str,
4739
+ *,
4740
+ knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.KnowledgeBaseConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
4741
+ name: builtins.str,
4742
+ role_arn: builtins.str,
4743
+ storage_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.StorageConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
4744
+ description: typing.Optional[builtins.str] = None,
4745
+ tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
4746
+ ) -> None:
4747
+ '''
4748
+ :param scope: Scope in which this resource is defined.
4749
+ :param id: Construct identifier for this resource (unique in its scope).
4750
+ :param knowledge_base_configuration: Contains details about the embeddings configuration of the knowledge base.
4751
+ :param name: The name of the knowledge base.
4752
+ :param role_arn: The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
4753
+ :param storage_configuration: Contains details about the storage configuration of the knowledge base.
4754
+ :param description: The description of the knowledge base.
4755
+ :param tags: Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:. - `Tag naming limits and requirements <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions>`_ - `Tagging best practices <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices>`_
4756
+ '''
4757
+ if __debug__:
4758
+ type_hints = typing.get_type_hints(_typecheckingstub__6ef81b8dcbedbd76b5a39a6fd5a967ba49aa887b63aad45e2bc246c96c7abcec)
4759
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
4760
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
4761
+ props = CfnKnowledgeBaseProps(
4762
+ knowledge_base_configuration=knowledge_base_configuration,
4763
+ name=name,
4764
+ role_arn=role_arn,
4765
+ storage_configuration=storage_configuration,
4766
+ description=description,
4767
+ tags=tags,
4768
+ )
4769
+
4770
+ jsii.create(self.__class__, self, [scope, id, props])
4771
+
4772
+ @jsii.member(jsii_name="inspect")
4773
+ def inspect(self, inspector: _TreeInspector_488e0dd5) -> None:
4774
+ '''Examines the CloudFormation resource and discloses attributes.
4775
+
4776
+ :param inspector: tree inspector to collect and process attributes.
4777
+ '''
4778
+ if __debug__:
4779
+ type_hints = typing.get_type_hints(_typecheckingstub__ff4bc276c76fa89d7e7e13dc3bbd6542bf9248bddf93da183855dfef109357e1)
4780
+ check_type(argname="argument inspector", value=inspector, expected_type=type_hints["inspector"])
4781
+ return typing.cast(None, jsii.invoke(self, "inspect", [inspector]))
4782
+
4783
+ @jsii.member(jsii_name="renderProperties")
4784
+ def _render_properties(
4785
+ self,
4786
+ props: typing.Mapping[builtins.str, typing.Any],
4787
+ ) -> typing.Mapping[builtins.str, typing.Any]:
4788
+ '''
4789
+ :param props: -
4790
+ '''
4791
+ if __debug__:
4792
+ type_hints = typing.get_type_hints(_typecheckingstub__ba3c6a8c48301959ccf4c8e325f203936e57edbf8199458a5d3f47355924370f)
4793
+ check_type(argname="argument props", value=props, expected_type=type_hints["props"])
4794
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "renderProperties", [props]))
4795
+
4796
+ @jsii.python.classproperty
4797
+ @jsii.member(jsii_name="CFN_RESOURCE_TYPE_NAME")
4798
+ def CFN_RESOURCE_TYPE_NAME(cls) -> builtins.str:
4799
+ '''The CloudFormation resource type name for this resource class.'''
4800
+ return typing.cast(builtins.str, jsii.sget(cls, "CFN_RESOURCE_TYPE_NAME"))
4801
+
4802
+ @builtins.property
4803
+ @jsii.member(jsii_name="attrCreatedAt")
4804
+ def attr_created_at(self) -> builtins.str:
4805
+ '''The time at which the knowledge base was created.
4806
+
4807
+ :cloudformationAttribute: CreatedAt
4808
+ '''
4809
+ return typing.cast(builtins.str, jsii.get(self, "attrCreatedAt"))
4810
+
4811
+ @builtins.property
4812
+ @jsii.member(jsii_name="attrFailureReasons")
4813
+ def attr_failure_reasons(self) -> typing.List[builtins.str]:
4814
+ '''A list of reasons that the API operation on the knowledge base failed.
4815
+
4816
+ :cloudformationAttribute: FailureReasons
4817
+ '''
4818
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "attrFailureReasons"))
4819
+
4820
+ @builtins.property
4821
+ @jsii.member(jsii_name="attrKnowledgeBaseArn")
4822
+ def attr_knowledge_base_arn(self) -> builtins.str:
4823
+ '''The Amazon Resource Name (ARN) of the knowledge base.
4824
+
4825
+ :cloudformationAttribute: KnowledgeBaseArn
4826
+ '''
4827
+ return typing.cast(builtins.str, jsii.get(self, "attrKnowledgeBaseArn"))
4828
+
4829
+ @builtins.property
4830
+ @jsii.member(jsii_name="attrKnowledgeBaseId")
4831
+ def attr_knowledge_base_id(self) -> builtins.str:
4832
+ '''The unique identifier of the knowledge base.
4833
+
4834
+ :cloudformationAttribute: KnowledgeBaseId
4835
+ '''
4836
+ return typing.cast(builtins.str, jsii.get(self, "attrKnowledgeBaseId"))
4837
+
4838
+ @builtins.property
4839
+ @jsii.member(jsii_name="attrStatus")
4840
+ def attr_status(self) -> builtins.str:
4841
+ '''The status of the knowledge base.
4842
+
4843
+ :cloudformationAttribute: Status
4844
+ '''
4845
+ return typing.cast(builtins.str, jsii.get(self, "attrStatus"))
4846
+
4847
+ @builtins.property
4848
+ @jsii.member(jsii_name="attrUpdatedAt")
4849
+ def attr_updated_at(self) -> builtins.str:
4850
+ '''The time at which the knowledge base was last updated.
4851
+
4852
+ :cloudformationAttribute: UpdatedAt
4853
+ '''
4854
+ return typing.cast(builtins.str, jsii.get(self, "attrUpdatedAt"))
4855
+
4856
+ @builtins.property
4857
+ @jsii.member(jsii_name="cdkTagManager")
4858
+ def cdk_tag_manager(self) -> _TagManager_0a598cb3:
4859
+ '''Tag Manager which manages the tags for this resource.'''
4860
+ return typing.cast(_TagManager_0a598cb3, jsii.get(self, "cdkTagManager"))
4861
+
4862
+ @builtins.property
4863
+ @jsii.member(jsii_name="cfnProperties")
4864
+ def _cfn_properties(self) -> typing.Mapping[builtins.str, typing.Any]:
4865
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.get(self, "cfnProperties"))
4866
+
4867
+ @builtins.property
4868
+ @jsii.member(jsii_name="knowledgeBaseConfiguration")
4869
+ def knowledge_base_configuration(
4870
+ self,
4871
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.KnowledgeBaseConfigurationProperty"]:
4872
+ '''Contains details about the embeddings configuration of the knowledge base.'''
4873
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.KnowledgeBaseConfigurationProperty"], jsii.get(self, "knowledgeBaseConfiguration"))
4874
+
4875
+ @knowledge_base_configuration.setter
4876
+ def knowledge_base_configuration(
4877
+ self,
4878
+ value: typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.KnowledgeBaseConfigurationProperty"],
4879
+ ) -> None:
4880
+ if __debug__:
4881
+ type_hints = typing.get_type_hints(_typecheckingstub__cc53309d6eb9442404b7a33330dfd3740f0c9d24afff9f19814de1a0a0e51d32)
4882
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4883
+ jsii.set(self, "knowledgeBaseConfiguration", value)
4884
+
4885
+ @builtins.property
4886
+ @jsii.member(jsii_name="name")
4887
+ def name(self) -> builtins.str:
4888
+ '''The name of the knowledge base.'''
4889
+ return typing.cast(builtins.str, jsii.get(self, "name"))
4890
+
4891
+ @name.setter
4892
+ def name(self, value: builtins.str) -> None:
4893
+ if __debug__:
4894
+ type_hints = typing.get_type_hints(_typecheckingstub__98ce011ed3a47084236afba28b5e5d0da34db483b792c0f0dd621b409474b6fb)
4895
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4896
+ jsii.set(self, "name", value)
4897
+
4898
+ @builtins.property
4899
+ @jsii.member(jsii_name="roleArn")
4900
+ def role_arn(self) -> builtins.str:
4901
+ '''The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.'''
4902
+ return typing.cast(builtins.str, jsii.get(self, "roleArn"))
4903
+
4904
+ @role_arn.setter
4905
+ def role_arn(self, value: builtins.str) -> None:
4906
+ if __debug__:
4907
+ type_hints = typing.get_type_hints(_typecheckingstub__e6281f2d1ed9a2f71b02754159fe6b2d8c70d3527e97d2d060434dc3483f2ad5)
4908
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4909
+ jsii.set(self, "roleArn", value)
4910
+
4911
+ @builtins.property
4912
+ @jsii.member(jsii_name="storageConfiguration")
4913
+ def storage_configuration(
4914
+ self,
4915
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.StorageConfigurationProperty"]:
4916
+ '''Contains details about the storage configuration of the knowledge base.'''
4917
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.StorageConfigurationProperty"], jsii.get(self, "storageConfiguration"))
4918
+
4919
+ @storage_configuration.setter
4920
+ def storage_configuration(
4921
+ self,
4922
+ value: typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.StorageConfigurationProperty"],
4923
+ ) -> None:
4924
+ if __debug__:
4925
+ type_hints = typing.get_type_hints(_typecheckingstub__9c3409dc5fcb9799e2f638dda4e66d2391cf6984b3e10eb29b36e85981cfc59b)
4926
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4927
+ jsii.set(self, "storageConfiguration", value)
4928
+
4929
+ @builtins.property
4930
+ @jsii.member(jsii_name="description")
4931
+ def description(self) -> typing.Optional[builtins.str]:
4932
+ '''The description of the knowledge base.'''
4933
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "description"))
4934
+
4935
+ @description.setter
4936
+ def description(self, value: typing.Optional[builtins.str]) -> None:
4937
+ if __debug__:
4938
+ type_hints = typing.get_type_hints(_typecheckingstub__f9fef7f262d2bad58c7f37c90b8756dd028b772a93aa036a4caf0c9565a7fff1)
4939
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4940
+ jsii.set(self, "description", value)
4941
+
4942
+ @builtins.property
4943
+ @jsii.member(jsii_name="tags")
4944
+ def tags(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
4945
+ '''Metadata that you can assign to a resource as key-value pairs.
4946
+
4947
+ For more information, see the following resources:.
4948
+ '''
4949
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], jsii.get(self, "tags"))
4950
+
4951
+ @tags.setter
4952
+ def tags(
4953
+ self,
4954
+ value: typing.Optional[typing.Mapping[builtins.str, builtins.str]],
4955
+ ) -> None:
4956
+ if __debug__:
4957
+ type_hints = typing.get_type_hints(_typecheckingstub__3aaa5f9544be44cbc2ddb7d96026222438266e370aa05113a01af8f251b7286f)
4958
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
4959
+ jsii.set(self, "tags", value)
4960
+
4961
+ @jsii.data_type(
4962
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.KnowledgeBaseConfigurationProperty",
4963
+ jsii_struct_bases=[],
4964
+ name_mapping={
4965
+ "type": "type",
4966
+ "vector_knowledge_base_configuration": "vectorKnowledgeBaseConfiguration",
4967
+ },
4968
+ )
4969
+ class KnowledgeBaseConfigurationProperty:
4970
+ def __init__(
4971
+ self,
4972
+ *,
4973
+ type: builtins.str,
4974
+ vector_knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty", typing.Dict[builtins.str, typing.Any]]],
4975
+ ) -> None:
4976
+ '''Contains details about the embeddings configuration of the knowledge base.
4977
+
4978
+ :param type: The type of data that the data source is converted into for the knowledge base.
4979
+ :param vector_knowledge_base_configuration: Contains details about the embeddings model that'sused to convert the data source.
4980
+
4981
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html
4982
+ :exampleMetadata: fixture=_generated
4983
+
4984
+ Example::
4985
+
4986
+ # The code below shows an example of how to instantiate this type.
4987
+ # The values are placeholders you should change.
4988
+ from aws_cdk import aws_bedrock as bedrock
4989
+
4990
+ knowledge_base_configuration_property = bedrock.CfnKnowledgeBase.KnowledgeBaseConfigurationProperty(
4991
+ type="type",
4992
+ vector_knowledge_base_configuration=bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty(
4993
+ embedding_model_arn="embeddingModelArn"
4994
+ )
4995
+ )
4996
+ '''
4997
+ if __debug__:
4998
+ type_hints = typing.get_type_hints(_typecheckingstub__f2ca26f28cc4cf3a289e62f58643faf6a7d98ea3e55e7ff4f0f77530fa0294b4)
4999
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
5000
+ check_type(argname="argument vector_knowledge_base_configuration", value=vector_knowledge_base_configuration, expected_type=type_hints["vector_knowledge_base_configuration"])
5001
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5002
+ "type": type,
5003
+ "vector_knowledge_base_configuration": vector_knowledge_base_configuration,
5004
+ }
5005
+
5006
+ @builtins.property
5007
+ def type(self) -> builtins.str:
5008
+ '''The type of data that the data source is converted into for the knowledge base.
5009
+
5010
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-type
5011
+ '''
5012
+ result = self._values.get("type")
5013
+ assert result is not None, "Required property 'type' is missing"
5014
+ return typing.cast(builtins.str, result)
5015
+
5016
+ @builtins.property
5017
+ def vector_knowledge_base_configuration(
5018
+ self,
5019
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty"]:
5020
+ '''Contains details about the embeddings model that'sused to convert the data source.
5021
+
5022
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-knowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-knowledgebaseconfiguration-vectorknowledgebaseconfiguration
5023
+ '''
5024
+ result = self._values.get("vector_knowledge_base_configuration")
5025
+ assert result is not None, "Required property 'vector_knowledge_base_configuration' is missing"
5026
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty"], result)
5027
+
5028
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5029
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5030
+
5031
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5032
+ return not (rhs == self)
5033
+
5034
+ def __repr__(self) -> str:
5035
+ return "KnowledgeBaseConfigurationProperty(%s)" % ", ".join(
5036
+ k + "=" + repr(v) for k, v in self._values.items()
5037
+ )
5038
+
5039
+ @jsii.data_type(
5040
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty",
5041
+ jsii_struct_bases=[],
5042
+ name_mapping={
5043
+ "collection_arn": "collectionArn",
5044
+ "field_mapping": "fieldMapping",
5045
+ "vector_index_name": "vectorIndexName",
5046
+ },
5047
+ )
5048
+ class OpenSearchServerlessConfigurationProperty:
5049
+ def __init__(
5050
+ self,
5051
+ *,
5052
+ collection_arn: builtins.str,
5053
+ field_mapping: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty", typing.Dict[builtins.str, typing.Any]]],
5054
+ vector_index_name: builtins.str,
5055
+ ) -> None:
5056
+ '''Contains details about the storage configuration of the knowledge base in Amazon OpenSearch Service.
5057
+
5058
+ For more information, see `Create a vector index in Amazon OpenSearch Service <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-oss.html>`_ .
5059
+
5060
+ :param collection_arn: The Amazon Resource Name (ARN) of the OpenSearch Service vector store.
5061
+ :param field_mapping: Contains the names of the fields to which to map information about the vector store.
5062
+ :param vector_index_name: The name of the vector store.
5063
+
5064
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration.html
5065
+ :exampleMetadata: fixture=_generated
5066
+
5067
+ Example::
5068
+
5069
+ # The code below shows an example of how to instantiate this type.
5070
+ # The values are placeholders you should change.
5071
+ from aws_cdk import aws_bedrock as bedrock
5072
+
5073
+ open_search_serverless_configuration_property = bedrock.CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty(
5074
+ collection_arn="collectionArn",
5075
+ field_mapping=bedrock.CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty(
5076
+ metadata_field="metadataField",
5077
+ text_field="textField",
5078
+ vector_field="vectorField"
5079
+ ),
5080
+ vector_index_name="vectorIndexName"
5081
+ )
5082
+ '''
5083
+ if __debug__:
5084
+ type_hints = typing.get_type_hints(_typecheckingstub__ebf20de0b58d579ecbd2aeccf094bb6c29ae3627a2b4628485b0235e33626d24)
5085
+ check_type(argname="argument collection_arn", value=collection_arn, expected_type=type_hints["collection_arn"])
5086
+ check_type(argname="argument field_mapping", value=field_mapping, expected_type=type_hints["field_mapping"])
5087
+ check_type(argname="argument vector_index_name", value=vector_index_name, expected_type=type_hints["vector_index_name"])
5088
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5089
+ "collection_arn": collection_arn,
5090
+ "field_mapping": field_mapping,
5091
+ "vector_index_name": vector_index_name,
5092
+ }
5093
+
5094
+ @builtins.property
5095
+ def collection_arn(self) -> builtins.str:
5096
+ '''The Amazon Resource Name (ARN) of the OpenSearch Service vector store.
5097
+
5098
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration.html#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-collectionarn
5099
+ '''
5100
+ result = self._values.get("collection_arn")
5101
+ assert result is not None, "Required property 'collection_arn' is missing"
5102
+ return typing.cast(builtins.str, result)
5103
+
5104
+ @builtins.property
5105
+ def field_mapping(
5106
+ self,
5107
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty"]:
5108
+ '''Contains the names of the fields to which to map information about the vector store.
5109
+
5110
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration.html#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-fieldmapping
5111
+ '''
5112
+ result = self._values.get("field_mapping")
5113
+ assert result is not None, "Required property 'field_mapping' is missing"
5114
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty"], result)
5115
+
5116
+ @builtins.property
5117
+ def vector_index_name(self) -> builtins.str:
5118
+ '''The name of the vector store.
5119
+
5120
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessconfiguration.html#cfn-bedrock-knowledgebase-opensearchserverlessconfiguration-vectorindexname
5121
+ '''
5122
+ result = self._values.get("vector_index_name")
5123
+ assert result is not None, "Required property 'vector_index_name' is missing"
5124
+ return typing.cast(builtins.str, result)
5125
+
5126
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5127
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5128
+
5129
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5130
+ return not (rhs == self)
5131
+
5132
+ def __repr__(self) -> str:
5133
+ return "OpenSearchServerlessConfigurationProperty(%s)" % ", ".join(
5134
+ k + "=" + repr(v) for k, v in self._values.items()
5135
+ )
5136
+
5137
+ @jsii.data_type(
5138
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty",
5139
+ jsii_struct_bases=[],
5140
+ name_mapping={
5141
+ "metadata_field": "metadataField",
5142
+ "text_field": "textField",
5143
+ "vector_field": "vectorField",
5144
+ },
5145
+ )
5146
+ class OpenSearchServerlessFieldMappingProperty:
5147
+ def __init__(
5148
+ self,
5149
+ *,
5150
+ metadata_field: builtins.str,
5151
+ text_field: builtins.str,
5152
+ vector_field: builtins.str,
5153
+ ) -> None:
5154
+ '''Contains the names of the fields to which to map information about the vector store.
5155
+
5156
+ :param metadata_field: The name of the field in which Amazon Bedrock stores metadata about the vector store.
5157
+ :param text_field: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
5158
+ :param vector_field: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
5159
+
5160
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping.html
5161
+ :exampleMetadata: fixture=_generated
5162
+
5163
+ Example::
5164
+
5165
+ # The code below shows an example of how to instantiate this type.
5166
+ # The values are placeholders you should change.
5167
+ from aws_cdk import aws_bedrock as bedrock
5168
+
5169
+ open_search_serverless_field_mapping_property = bedrock.CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty(
5170
+ metadata_field="metadataField",
5171
+ text_field="textField",
5172
+ vector_field="vectorField"
5173
+ )
5174
+ '''
5175
+ if __debug__:
5176
+ type_hints = typing.get_type_hints(_typecheckingstub__b8e490584f9c3a514d8b66b508fa651b9eead4ae9af9f9cfa66c2ef1e1e4495f)
5177
+ check_type(argname="argument metadata_field", value=metadata_field, expected_type=type_hints["metadata_field"])
5178
+ check_type(argname="argument text_field", value=text_field, expected_type=type_hints["text_field"])
5179
+ check_type(argname="argument vector_field", value=vector_field, expected_type=type_hints["vector_field"])
5180
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5181
+ "metadata_field": metadata_field,
5182
+ "text_field": text_field,
5183
+ "vector_field": vector_field,
5184
+ }
5185
+
5186
+ @builtins.property
5187
+ def metadata_field(self) -> builtins.str:
5188
+ '''The name of the field in which Amazon Bedrock stores metadata about the vector store.
5189
+
5190
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping.html#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-metadatafield
5191
+ '''
5192
+ result = self._values.get("metadata_field")
5193
+ assert result is not None, "Required property 'metadata_field' is missing"
5194
+ return typing.cast(builtins.str, result)
5195
+
5196
+ @builtins.property
5197
+ def text_field(self) -> builtins.str:
5198
+ '''The name of the field in which Amazon Bedrock stores the raw text from your data.
5199
+
5200
+ The text is split according to the chunking strategy you choose.
5201
+
5202
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping.html#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-textfield
5203
+ '''
5204
+ result = self._values.get("text_field")
5205
+ assert result is not None, "Required property 'text_field' is missing"
5206
+ return typing.cast(builtins.str, result)
5207
+
5208
+ @builtins.property
5209
+ def vector_field(self) -> builtins.str:
5210
+ '''The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
5211
+
5212
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-opensearchserverlessfieldmapping.html#cfn-bedrock-knowledgebase-opensearchserverlessfieldmapping-vectorfield
5213
+ '''
5214
+ result = self._values.get("vector_field")
5215
+ assert result is not None, "Required property 'vector_field' is missing"
5216
+ return typing.cast(builtins.str, result)
5217
+
5218
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5219
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5220
+
5221
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5222
+ return not (rhs == self)
5223
+
5224
+ def __repr__(self) -> str:
5225
+ return "OpenSearchServerlessFieldMappingProperty(%s)" % ", ".join(
5226
+ k + "=" + repr(v) for k, v in self._values.items()
5227
+ )
5228
+
5229
+ @jsii.data_type(
5230
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.PineconeConfigurationProperty",
5231
+ jsii_struct_bases=[],
5232
+ name_mapping={
5233
+ "connection_string": "connectionString",
5234
+ "credentials_secret_arn": "credentialsSecretArn",
5235
+ "field_mapping": "fieldMapping",
5236
+ "namespace": "namespace",
5237
+ },
5238
+ )
5239
+ class PineconeConfigurationProperty:
5240
+ def __init__(
5241
+ self,
5242
+ *,
5243
+ connection_string: builtins.str,
5244
+ credentials_secret_arn: builtins.str,
5245
+ field_mapping: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.PineconeFieldMappingProperty", typing.Dict[builtins.str, typing.Any]]],
5246
+ namespace: typing.Optional[builtins.str] = None,
5247
+ ) -> None:
5248
+ '''Contains details about the storage configuration of the knowledge base in Pinecone.
5249
+
5250
+ For more information, see `Create a vector index in Pinecone <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-pinecone.html>`_ .
5251
+
5252
+ :param connection_string: The endpoint URL for your index management page.
5253
+ :param credentials_secret_arn: The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that is linked to your Pinecone API key.
5254
+ :param field_mapping: Contains the names of the fields to which to map information about the vector store.
5255
+ :param namespace: The namespace to be used to write new data to your database.
5256
+
5257
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconeconfiguration.html
5258
+ :exampleMetadata: fixture=_generated
5259
+
5260
+ Example::
5261
+
5262
+ # The code below shows an example of how to instantiate this type.
5263
+ # The values are placeholders you should change.
5264
+ from aws_cdk import aws_bedrock as bedrock
5265
+
5266
+ pinecone_configuration_property = bedrock.CfnKnowledgeBase.PineconeConfigurationProperty(
5267
+ connection_string="connectionString",
5268
+ credentials_secret_arn="credentialsSecretArn",
5269
+ field_mapping=bedrock.CfnKnowledgeBase.PineconeFieldMappingProperty(
5270
+ metadata_field="metadataField",
5271
+ text_field="textField"
5272
+ ),
5273
+
5274
+ # the properties below are optional
5275
+ namespace="namespace"
5276
+ )
5277
+ '''
5278
+ if __debug__:
5279
+ type_hints = typing.get_type_hints(_typecheckingstub__9425ac4f69df601cd9f6eaef75febf9d71ce4845a6c4629a0c9fd790f5af4075)
5280
+ check_type(argname="argument connection_string", value=connection_string, expected_type=type_hints["connection_string"])
5281
+ check_type(argname="argument credentials_secret_arn", value=credentials_secret_arn, expected_type=type_hints["credentials_secret_arn"])
5282
+ check_type(argname="argument field_mapping", value=field_mapping, expected_type=type_hints["field_mapping"])
5283
+ check_type(argname="argument namespace", value=namespace, expected_type=type_hints["namespace"])
5284
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5285
+ "connection_string": connection_string,
5286
+ "credentials_secret_arn": credentials_secret_arn,
5287
+ "field_mapping": field_mapping,
5288
+ }
5289
+ if namespace is not None:
5290
+ self._values["namespace"] = namespace
5291
+
5292
+ @builtins.property
5293
+ def connection_string(self) -> builtins.str:
5294
+ '''The endpoint URL for your index management page.
5295
+
5296
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconeconfiguration.html#cfn-bedrock-knowledgebase-pineconeconfiguration-connectionstring
5297
+ '''
5298
+ result = self._values.get("connection_string")
5299
+ assert result is not None, "Required property 'connection_string' is missing"
5300
+ return typing.cast(builtins.str, result)
5301
+
5302
+ @builtins.property
5303
+ def credentials_secret_arn(self) -> builtins.str:
5304
+ '''The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that is linked to your Pinecone API key.
5305
+
5306
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconeconfiguration.html#cfn-bedrock-knowledgebase-pineconeconfiguration-credentialssecretarn
5307
+ '''
5308
+ result = self._values.get("credentials_secret_arn")
5309
+ assert result is not None, "Required property 'credentials_secret_arn' is missing"
5310
+ return typing.cast(builtins.str, result)
5311
+
5312
+ @builtins.property
5313
+ def field_mapping(
5314
+ self,
5315
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.PineconeFieldMappingProperty"]:
5316
+ '''Contains the names of the fields to which to map information about the vector store.
5317
+
5318
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconeconfiguration.html#cfn-bedrock-knowledgebase-pineconeconfiguration-fieldmapping
5319
+ '''
5320
+ result = self._values.get("field_mapping")
5321
+ assert result is not None, "Required property 'field_mapping' is missing"
5322
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.PineconeFieldMappingProperty"], result)
5323
+
5324
+ @builtins.property
5325
+ def namespace(self) -> typing.Optional[builtins.str]:
5326
+ '''The namespace to be used to write new data to your database.
5327
+
5328
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconeconfiguration.html#cfn-bedrock-knowledgebase-pineconeconfiguration-namespace
5329
+ '''
5330
+ result = self._values.get("namespace")
5331
+ return typing.cast(typing.Optional[builtins.str], result)
5332
+
5333
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5334
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5335
+
5336
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5337
+ return not (rhs == self)
5338
+
5339
+ def __repr__(self) -> str:
5340
+ return "PineconeConfigurationProperty(%s)" % ", ".join(
5341
+ k + "=" + repr(v) for k, v in self._values.items()
5342
+ )
5343
+
5344
+ @jsii.data_type(
5345
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.PineconeFieldMappingProperty",
5346
+ jsii_struct_bases=[],
5347
+ name_mapping={"metadata_field": "metadataField", "text_field": "textField"},
5348
+ )
5349
+ class PineconeFieldMappingProperty:
5350
+ def __init__(
5351
+ self,
5352
+ *,
5353
+ metadata_field: builtins.str,
5354
+ text_field: builtins.str,
5355
+ ) -> None:
5356
+ '''Contains the names of the fields to which to map information about the vector store.
5357
+
5358
+ :param metadata_field: The name of the field in which Amazon Bedrock stores metadata about the vector store.
5359
+ :param text_field: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
5360
+
5361
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconefieldmapping.html
5362
+ :exampleMetadata: fixture=_generated
5363
+
5364
+ Example::
5365
+
5366
+ # The code below shows an example of how to instantiate this type.
5367
+ # The values are placeholders you should change.
5368
+ from aws_cdk import aws_bedrock as bedrock
5369
+
5370
+ pinecone_field_mapping_property = bedrock.CfnKnowledgeBase.PineconeFieldMappingProperty(
5371
+ metadata_field="metadataField",
5372
+ text_field="textField"
5373
+ )
5374
+ '''
5375
+ if __debug__:
5376
+ type_hints = typing.get_type_hints(_typecheckingstub__2169e124a8314b619ba9fb9f5ea31bc496b6bec20da9f8880770981d442b591d)
5377
+ check_type(argname="argument metadata_field", value=metadata_field, expected_type=type_hints["metadata_field"])
5378
+ check_type(argname="argument text_field", value=text_field, expected_type=type_hints["text_field"])
5379
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5380
+ "metadata_field": metadata_field,
5381
+ "text_field": text_field,
5382
+ }
5383
+
5384
+ @builtins.property
5385
+ def metadata_field(self) -> builtins.str:
5386
+ '''The name of the field in which Amazon Bedrock stores metadata about the vector store.
5387
+
5388
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconefieldmapping.html#cfn-bedrock-knowledgebase-pineconefieldmapping-metadatafield
5389
+ '''
5390
+ result = self._values.get("metadata_field")
5391
+ assert result is not None, "Required property 'metadata_field' is missing"
5392
+ return typing.cast(builtins.str, result)
5393
+
5394
+ @builtins.property
5395
+ def text_field(self) -> builtins.str:
5396
+ '''The name of the field in which Amazon Bedrock stores the raw text from your data.
5397
+
5398
+ The text is split according to the chunking strategy you choose.
5399
+
5400
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-pineconefieldmapping.html#cfn-bedrock-knowledgebase-pineconefieldmapping-textfield
5401
+ '''
5402
+ result = self._values.get("text_field")
5403
+ assert result is not None, "Required property 'text_field' is missing"
5404
+ return typing.cast(builtins.str, result)
5405
+
5406
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5407
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5408
+
5409
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5410
+ return not (rhs == self)
5411
+
5412
+ def __repr__(self) -> str:
5413
+ return "PineconeFieldMappingProperty(%s)" % ", ".join(
5414
+ k + "=" + repr(v) for k, v in self._values.items()
5415
+ )
5416
+
5417
+ @jsii.data_type(
5418
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.RdsConfigurationProperty",
5419
+ jsii_struct_bases=[],
5420
+ name_mapping={
5421
+ "credentials_secret_arn": "credentialsSecretArn",
5422
+ "database_name": "databaseName",
5423
+ "field_mapping": "fieldMapping",
5424
+ "resource_arn": "resourceArn",
5425
+ "table_name": "tableName",
5426
+ },
5427
+ )
5428
+ class RdsConfigurationProperty:
5429
+ def __init__(
5430
+ self,
5431
+ *,
5432
+ credentials_secret_arn: builtins.str,
5433
+ database_name: builtins.str,
5434
+ field_mapping: typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.RdsFieldMappingProperty", typing.Dict[builtins.str, typing.Any]]],
5435
+ resource_arn: builtins.str,
5436
+ table_name: builtins.str,
5437
+ ) -> None:
5438
+ '''Contains details about the storage configuration of the knowledge base in Amazon RDS.
5439
+
5440
+ For more information, see `Create a vector index in Amazon RDS <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-rds.html>`_ .
5441
+
5442
+ :param credentials_secret_arn: The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that is linked to your Amazon RDS database.
5443
+ :param database_name: The name of your Amazon RDS database.
5444
+ :param field_mapping: Contains the names of the fields to which to map information about the vector store.
5445
+ :param resource_arn: The Amazon Resource Name (ARN) of the vector store.
5446
+ :param table_name: The name of the table in the database.
5447
+
5448
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsconfiguration.html
5449
+ :exampleMetadata: fixture=_generated
5450
+
5451
+ Example::
5452
+
5453
+ # The code below shows an example of how to instantiate this type.
5454
+ # The values are placeholders you should change.
5455
+ from aws_cdk import aws_bedrock as bedrock
5456
+
5457
+ rds_configuration_property = bedrock.CfnKnowledgeBase.RdsConfigurationProperty(
5458
+ credentials_secret_arn="credentialsSecretArn",
5459
+ database_name="databaseName",
5460
+ field_mapping=bedrock.CfnKnowledgeBase.RdsFieldMappingProperty(
5461
+ metadata_field="metadataField",
5462
+ primary_key_field="primaryKeyField",
5463
+ text_field="textField",
5464
+ vector_field="vectorField"
5465
+ ),
5466
+ resource_arn="resourceArn",
5467
+ table_name="tableName"
5468
+ )
5469
+ '''
5470
+ if __debug__:
5471
+ type_hints = typing.get_type_hints(_typecheckingstub__5bd4ba48a510008cefecd72d69bf8fed706c5791b8305e19be10355faa482026)
5472
+ check_type(argname="argument credentials_secret_arn", value=credentials_secret_arn, expected_type=type_hints["credentials_secret_arn"])
5473
+ check_type(argname="argument database_name", value=database_name, expected_type=type_hints["database_name"])
5474
+ check_type(argname="argument field_mapping", value=field_mapping, expected_type=type_hints["field_mapping"])
5475
+ check_type(argname="argument resource_arn", value=resource_arn, expected_type=type_hints["resource_arn"])
5476
+ check_type(argname="argument table_name", value=table_name, expected_type=type_hints["table_name"])
5477
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5478
+ "credentials_secret_arn": credentials_secret_arn,
5479
+ "database_name": database_name,
5480
+ "field_mapping": field_mapping,
5481
+ "resource_arn": resource_arn,
5482
+ "table_name": table_name,
5483
+ }
5484
+
5485
+ @builtins.property
5486
+ def credentials_secret_arn(self) -> builtins.str:
5487
+ '''The Amazon Resource Name (ARN) of the secret that you created in AWS Secrets Manager that is linked to your Amazon RDS database.
5488
+
5489
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsconfiguration.html#cfn-bedrock-knowledgebase-rdsconfiguration-credentialssecretarn
5490
+ '''
5491
+ result = self._values.get("credentials_secret_arn")
5492
+ assert result is not None, "Required property 'credentials_secret_arn' is missing"
5493
+ return typing.cast(builtins.str, result)
5494
+
5495
+ @builtins.property
5496
+ def database_name(self) -> builtins.str:
5497
+ '''The name of your Amazon RDS database.
5498
+
5499
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsconfiguration.html#cfn-bedrock-knowledgebase-rdsconfiguration-databasename
5500
+ '''
5501
+ result = self._values.get("database_name")
5502
+ assert result is not None, "Required property 'database_name' is missing"
5503
+ return typing.cast(builtins.str, result)
5504
+
5505
+ @builtins.property
5506
+ def field_mapping(
5507
+ self,
5508
+ ) -> typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.RdsFieldMappingProperty"]:
5509
+ '''Contains the names of the fields to which to map information about the vector store.
5510
+
5511
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsconfiguration.html#cfn-bedrock-knowledgebase-rdsconfiguration-fieldmapping
5512
+ '''
5513
+ result = self._values.get("field_mapping")
5514
+ assert result is not None, "Required property 'field_mapping' is missing"
5515
+ return typing.cast(typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.RdsFieldMappingProperty"], result)
5516
+
5517
+ @builtins.property
5518
+ def resource_arn(self) -> builtins.str:
5519
+ '''The Amazon Resource Name (ARN) of the vector store.
5520
+
5521
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsconfiguration.html#cfn-bedrock-knowledgebase-rdsconfiguration-resourcearn
5522
+ '''
5523
+ result = self._values.get("resource_arn")
5524
+ assert result is not None, "Required property 'resource_arn' is missing"
5525
+ return typing.cast(builtins.str, result)
5526
+
5527
+ @builtins.property
5528
+ def table_name(self) -> builtins.str:
5529
+ '''The name of the table in the database.
5530
+
5531
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsconfiguration.html#cfn-bedrock-knowledgebase-rdsconfiguration-tablename
5532
+ '''
5533
+ result = self._values.get("table_name")
5534
+ assert result is not None, "Required property 'table_name' is missing"
5535
+ return typing.cast(builtins.str, result)
5536
+
5537
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5538
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5539
+
5540
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5541
+ return not (rhs == self)
5542
+
5543
+ def __repr__(self) -> str:
5544
+ return "RdsConfigurationProperty(%s)" % ", ".join(
5545
+ k + "=" + repr(v) for k, v in self._values.items()
5546
+ )
5547
+
5548
+ @jsii.data_type(
5549
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.RdsFieldMappingProperty",
5550
+ jsii_struct_bases=[],
5551
+ name_mapping={
5552
+ "metadata_field": "metadataField",
5553
+ "primary_key_field": "primaryKeyField",
5554
+ "text_field": "textField",
5555
+ "vector_field": "vectorField",
5556
+ },
5557
+ )
5558
+ class RdsFieldMappingProperty:
5559
+ def __init__(
5560
+ self,
5561
+ *,
5562
+ metadata_field: builtins.str,
5563
+ primary_key_field: builtins.str,
5564
+ text_field: builtins.str,
5565
+ vector_field: builtins.str,
5566
+ ) -> None:
5567
+ '''Contains the names of the fields to which to map information about the vector store.
5568
+
5569
+ :param metadata_field: The name of the field in which Amazon Bedrock stores metadata about the vector store.
5570
+ :param primary_key_field: The name of the field in which Amazon Bedrock stores the ID for each entry.
5571
+ :param text_field: The name of the field in which Amazon Bedrock stores the raw text from your data. The text is split according to the chunking strategy you choose.
5572
+ :param vector_field: The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
5573
+
5574
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsfieldmapping.html
5575
+ :exampleMetadata: fixture=_generated
5576
+
5577
+ Example::
5578
+
5579
+ # The code below shows an example of how to instantiate this type.
5580
+ # The values are placeholders you should change.
5581
+ from aws_cdk import aws_bedrock as bedrock
5582
+
5583
+ rds_field_mapping_property = bedrock.CfnKnowledgeBase.RdsFieldMappingProperty(
5584
+ metadata_field="metadataField",
5585
+ primary_key_field="primaryKeyField",
5586
+ text_field="textField",
5587
+ vector_field="vectorField"
5588
+ )
5589
+ '''
5590
+ if __debug__:
5591
+ type_hints = typing.get_type_hints(_typecheckingstub__0060deafed28d2f4c1690bf8921de0b9aca79fe88ac4c5ca53f29b4ef0895537)
5592
+ check_type(argname="argument metadata_field", value=metadata_field, expected_type=type_hints["metadata_field"])
5593
+ check_type(argname="argument primary_key_field", value=primary_key_field, expected_type=type_hints["primary_key_field"])
5594
+ check_type(argname="argument text_field", value=text_field, expected_type=type_hints["text_field"])
5595
+ check_type(argname="argument vector_field", value=vector_field, expected_type=type_hints["vector_field"])
5596
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5597
+ "metadata_field": metadata_field,
5598
+ "primary_key_field": primary_key_field,
5599
+ "text_field": text_field,
5600
+ "vector_field": vector_field,
5601
+ }
5602
+
5603
+ @builtins.property
5604
+ def metadata_field(self) -> builtins.str:
5605
+ '''The name of the field in which Amazon Bedrock stores metadata about the vector store.
5606
+
5607
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsfieldmapping.html#cfn-bedrock-knowledgebase-rdsfieldmapping-metadatafield
5608
+ '''
5609
+ result = self._values.get("metadata_field")
5610
+ assert result is not None, "Required property 'metadata_field' is missing"
5611
+ return typing.cast(builtins.str, result)
5612
+
5613
+ @builtins.property
5614
+ def primary_key_field(self) -> builtins.str:
5615
+ '''The name of the field in which Amazon Bedrock stores the ID for each entry.
5616
+
5617
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsfieldmapping.html#cfn-bedrock-knowledgebase-rdsfieldmapping-primarykeyfield
5618
+ '''
5619
+ result = self._values.get("primary_key_field")
5620
+ assert result is not None, "Required property 'primary_key_field' is missing"
5621
+ return typing.cast(builtins.str, result)
5622
+
5623
+ @builtins.property
5624
+ def text_field(self) -> builtins.str:
5625
+ '''The name of the field in which Amazon Bedrock stores the raw text from your data.
5626
+
5627
+ The text is split according to the chunking strategy you choose.
5628
+
5629
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsfieldmapping.html#cfn-bedrock-knowledgebase-rdsfieldmapping-textfield
5630
+ '''
5631
+ result = self._values.get("text_field")
5632
+ assert result is not None, "Required property 'text_field' is missing"
5633
+ return typing.cast(builtins.str, result)
5634
+
5635
+ @builtins.property
5636
+ def vector_field(self) -> builtins.str:
5637
+ '''The name of the field in which Amazon Bedrock stores the vector embeddings for your data sources.
5638
+
5639
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-rdsfieldmapping.html#cfn-bedrock-knowledgebase-rdsfieldmapping-vectorfield
5640
+ '''
5641
+ result = self._values.get("vector_field")
5642
+ assert result is not None, "Required property 'vector_field' is missing"
5643
+ return typing.cast(builtins.str, result)
5644
+
5645
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5646
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5647
+
5648
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5649
+ return not (rhs == self)
5650
+
5651
+ def __repr__(self) -> str:
5652
+ return "RdsFieldMappingProperty(%s)" % ", ".join(
5653
+ k + "=" + repr(v) for k, v in self._values.items()
5654
+ )
5655
+
5656
+ @jsii.data_type(
5657
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.StorageConfigurationProperty",
5658
+ jsii_struct_bases=[],
5659
+ name_mapping={
5660
+ "type": "type",
5661
+ "opensearch_serverless_configuration": "opensearchServerlessConfiguration",
5662
+ "pinecone_configuration": "pineconeConfiguration",
5663
+ "rds_configuration": "rdsConfiguration",
5664
+ },
5665
+ )
5666
+ class StorageConfigurationProperty:
5667
+ def __init__(
5668
+ self,
5669
+ *,
5670
+ type: builtins.str,
5671
+ opensearch_serverless_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5672
+ pinecone_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.PineconeConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5673
+ rds_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union["CfnKnowledgeBase.RdsConfigurationProperty", typing.Dict[builtins.str, typing.Any]]]] = None,
5674
+ ) -> None:
5675
+ '''Contains the storage configuration of the knowledge base.
5676
+
5677
+ :param type: The vector store service in which the knowledge base is stored.
5678
+ :param opensearch_serverless_configuration: Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.
5679
+ :param pinecone_configuration: Contains the storage configuration of the knowledge base in Pinecone.
5680
+ :param rds_configuration: Contains details about the storage configuration of the knowledge base in Amazon RDS. For more information, see `Create a vector index in Amazon RDS <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-rds.html>`_ .
5681
+
5682
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-storageconfiguration.html
5683
+ :exampleMetadata: fixture=_generated
5684
+
5685
+ Example::
5686
+
5687
+ # The code below shows an example of how to instantiate this type.
5688
+ # The values are placeholders you should change.
5689
+ from aws_cdk import aws_bedrock as bedrock
5690
+
5691
+ storage_configuration_property = bedrock.CfnKnowledgeBase.StorageConfigurationProperty(
5692
+ type="type",
5693
+
5694
+ # the properties below are optional
5695
+ opensearch_serverless_configuration=bedrock.CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty(
5696
+ collection_arn="collectionArn",
5697
+ field_mapping=bedrock.CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty(
5698
+ metadata_field="metadataField",
5699
+ text_field="textField",
5700
+ vector_field="vectorField"
5701
+ ),
5702
+ vector_index_name="vectorIndexName"
5703
+ ),
5704
+ pinecone_configuration=bedrock.CfnKnowledgeBase.PineconeConfigurationProperty(
5705
+ connection_string="connectionString",
5706
+ credentials_secret_arn="credentialsSecretArn",
5707
+ field_mapping=bedrock.CfnKnowledgeBase.PineconeFieldMappingProperty(
5708
+ metadata_field="metadataField",
5709
+ text_field="textField"
5710
+ ),
5711
+
5712
+ # the properties below are optional
5713
+ namespace="namespace"
5714
+ ),
5715
+ rds_configuration=bedrock.CfnKnowledgeBase.RdsConfigurationProperty(
5716
+ credentials_secret_arn="credentialsSecretArn",
5717
+ database_name="databaseName",
5718
+ field_mapping=bedrock.CfnKnowledgeBase.RdsFieldMappingProperty(
5719
+ metadata_field="metadataField",
5720
+ primary_key_field="primaryKeyField",
5721
+ text_field="textField",
5722
+ vector_field="vectorField"
5723
+ ),
5724
+ resource_arn="resourceArn",
5725
+ table_name="tableName"
5726
+ )
5727
+ )
5728
+ '''
5729
+ if __debug__:
5730
+ type_hints = typing.get_type_hints(_typecheckingstub__fa4cccae88d65689f5f3cabcb8393a082af16eb90d7613332a03867c32272af4)
5731
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
5732
+ check_type(argname="argument opensearch_serverless_configuration", value=opensearch_serverless_configuration, expected_type=type_hints["opensearch_serverless_configuration"])
5733
+ check_type(argname="argument pinecone_configuration", value=pinecone_configuration, expected_type=type_hints["pinecone_configuration"])
5734
+ check_type(argname="argument rds_configuration", value=rds_configuration, expected_type=type_hints["rds_configuration"])
5735
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5736
+ "type": type,
5737
+ }
5738
+ if opensearch_serverless_configuration is not None:
5739
+ self._values["opensearch_serverless_configuration"] = opensearch_serverless_configuration
5740
+ if pinecone_configuration is not None:
5741
+ self._values["pinecone_configuration"] = pinecone_configuration
5742
+ if rds_configuration is not None:
5743
+ self._values["rds_configuration"] = rds_configuration
5744
+
5745
+ @builtins.property
5746
+ def type(self) -> builtins.str:
5747
+ '''The vector store service in which the knowledge base is stored.
5748
+
5749
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-storageconfiguration.html#cfn-bedrock-knowledgebase-storageconfiguration-type
5750
+ '''
5751
+ result = self._values.get("type")
5752
+ assert result is not None, "Required property 'type' is missing"
5753
+ return typing.cast(builtins.str, result)
5754
+
5755
+ @builtins.property
5756
+ def opensearch_serverless_configuration(
5757
+ self,
5758
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty"]]:
5759
+ '''Contains the storage configuration of the knowledge base in Amazon OpenSearch Service.
5760
+
5761
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-storageconfiguration.html#cfn-bedrock-knowledgebase-storageconfiguration-opensearchserverlessconfiguration
5762
+ '''
5763
+ result = self._values.get("opensearch_serverless_configuration")
5764
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty"]], result)
5765
+
5766
+ @builtins.property
5767
+ def pinecone_configuration(
5768
+ self,
5769
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.PineconeConfigurationProperty"]]:
5770
+ '''Contains the storage configuration of the knowledge base in Pinecone.
5771
+
5772
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-storageconfiguration.html#cfn-bedrock-knowledgebase-storageconfiguration-pineconeconfiguration
5773
+ '''
5774
+ result = self._values.get("pinecone_configuration")
5775
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.PineconeConfigurationProperty"]], result)
5776
+
5777
+ @builtins.property
5778
+ def rds_configuration(
5779
+ self,
5780
+ ) -> typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.RdsConfigurationProperty"]]:
5781
+ '''Contains details about the storage configuration of the knowledge base in Amazon RDS.
5782
+
5783
+ For more information, see `Create a vector index in Amazon RDS <https://docs.aws.amazon.com/bedrock/latest/userguide/knowledge-base-setup-rds.html>`_ .
5784
+
5785
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-storageconfiguration.html#cfn-bedrock-knowledgebase-storageconfiguration-rdsconfiguration
5786
+ '''
5787
+ result = self._values.get("rds_configuration")
5788
+ return typing.cast(typing.Optional[typing.Union[_IResolvable_da3f097b, "CfnKnowledgeBase.RdsConfigurationProperty"]], result)
5789
+
5790
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
5791
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
5792
+
5793
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
5794
+ return not (rhs == self)
5795
+
5796
+ def __repr__(self) -> str:
5797
+ return "StorageConfigurationProperty(%s)" % ", ".join(
5798
+ k + "=" + repr(v) for k, v in self._values.items()
5799
+ )
5800
+
5801
+ @jsii.data_type(
5802
+ jsii_type="aws-cdk-lib.aws_bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty",
5803
+ jsii_struct_bases=[],
5804
+ name_mapping={"embedding_model_arn": "embeddingModelArn"},
5805
+ )
5806
+ class VectorKnowledgeBaseConfigurationProperty:
5807
+ def __init__(self, *, embedding_model_arn: builtins.str) -> None:
5808
+ '''Contains details about the model used to create vector embeddings for the knowledge base.
5809
+
5810
+ :param embedding_model_arn: The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.
5811
+
5812
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.html
5813
+ :exampleMetadata: fixture=_generated
5814
+
5815
+ Example::
5816
+
5817
+ # The code below shows an example of how to instantiate this type.
5818
+ # The values are placeholders you should change.
5819
+ from aws_cdk import aws_bedrock as bedrock
5820
+
5821
+ vector_knowledge_base_configuration_property = bedrock.CfnKnowledgeBase.VectorKnowledgeBaseConfigurationProperty(
5822
+ embedding_model_arn="embeddingModelArn"
5823
+ )
5824
+ '''
5825
+ if __debug__:
5826
+ type_hints = typing.get_type_hints(_typecheckingstub__53b08e209954b21c35b746e5eee517d51370af30630f5f17b3e5435150898236)
5827
+ check_type(argname="argument embedding_model_arn", value=embedding_model_arn, expected_type=type_hints["embedding_model_arn"])
5828
+ self._values: typing.Dict[builtins.str, typing.Any] = {
5829
+ "embedding_model_arn": embedding_model_arn,
5830
+ }
5831
+
5832
+ @builtins.property
5833
+ def embedding_model_arn(self) -> builtins.str:
5834
+ '''The Amazon Resource Name (ARN) of the model used to create vector embeddings for the knowledge base.
5835
+
5836
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-bedrock-knowledgebase-vectorknowledgebaseconfiguration.html#cfn-bedrock-knowledgebase-vectorknowledgebaseconfiguration-embeddingmodelarn
5837
+ '''
5838
+ result = self._values.get("embedding_model_arn")
3502
5839
  assert result is not None, "Required property 'embedding_model_arn' is missing"
3503
5840
  return typing.cast(builtins.str, result)
3504
5841
 
@@ -3521,6 +5858,7 @@ class CfnKnowledgeBase(
3521
5858
  "knowledge_base_configuration": "knowledgeBaseConfiguration",
3522
5859
  "name": "name",
3523
5860
  "role_arn": "roleArn",
5861
+ "storage_configuration": "storageConfiguration",
3524
5862
  "description": "description",
3525
5863
  "tags": "tags",
3526
5864
  },
@@ -3532,6 +5870,7 @@ class CfnKnowledgeBaseProps:
3532
5870
  knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.KnowledgeBaseConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
3533
5871
  name: builtins.str,
3534
5872
  role_arn: builtins.str,
5873
+ storage_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.StorageConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
3535
5874
  description: typing.Optional[builtins.str] = None,
3536
5875
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
3537
5876
  ) -> None:
@@ -3540,6 +5879,7 @@ class CfnKnowledgeBaseProps:
3540
5879
  :param knowledge_base_configuration: Contains details about the embeddings configuration of the knowledge base.
3541
5880
  :param name: The name of the knowledge base.
3542
5881
  :param role_arn: The Amazon Resource Name (ARN) of the IAM role with permissions to invoke API operations on the knowledge base.
5882
+ :param storage_configuration: Contains details about the storage configuration of the knowledge base.
3543
5883
  :param description: The description of the knowledge base.
3544
5884
  :param tags: Metadata that you can assign to a resource as key-value pairs. For more information, see the following resources:. - `Tag naming limits and requirements <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-conventions>`_ - `Tagging best practices <https://docs.aws.amazon.com/tag-editor/latest/userguide/tagging.html#tag-best-practices>`_
3545
5885
 
@@ -3561,6 +5901,43 @@ class CfnKnowledgeBaseProps:
3561
5901
  ),
3562
5902
  name="name",
3563
5903
  role_arn="roleArn",
5904
+ storage_configuration=bedrock.CfnKnowledgeBase.StorageConfigurationProperty(
5905
+ type="type",
5906
+
5907
+ # the properties below are optional
5908
+ opensearch_serverless_configuration=bedrock.CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty(
5909
+ collection_arn="collectionArn",
5910
+ field_mapping=bedrock.CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty(
5911
+ metadata_field="metadataField",
5912
+ text_field="textField",
5913
+ vector_field="vectorField"
5914
+ ),
5915
+ vector_index_name="vectorIndexName"
5916
+ ),
5917
+ pinecone_configuration=bedrock.CfnKnowledgeBase.PineconeConfigurationProperty(
5918
+ connection_string="connectionString",
5919
+ credentials_secret_arn="credentialsSecretArn",
5920
+ field_mapping=bedrock.CfnKnowledgeBase.PineconeFieldMappingProperty(
5921
+ metadata_field="metadataField",
5922
+ text_field="textField"
5923
+ ),
5924
+
5925
+ # the properties below are optional
5926
+ namespace="namespace"
5927
+ ),
5928
+ rds_configuration=bedrock.CfnKnowledgeBase.RdsConfigurationProperty(
5929
+ credentials_secret_arn="credentialsSecretArn",
5930
+ database_name="databaseName",
5931
+ field_mapping=bedrock.CfnKnowledgeBase.RdsFieldMappingProperty(
5932
+ metadata_field="metadataField",
5933
+ primary_key_field="primaryKeyField",
5934
+ text_field="textField",
5935
+ vector_field="vectorField"
5936
+ ),
5937
+ resource_arn="resourceArn",
5938
+ table_name="tableName"
5939
+ )
5940
+ ),
3564
5941
 
3565
5942
  # the properties below are optional
3566
5943
  description="description",
@@ -3574,12 +5951,14 @@ class CfnKnowledgeBaseProps:
3574
5951
  check_type(argname="argument knowledge_base_configuration", value=knowledge_base_configuration, expected_type=type_hints["knowledge_base_configuration"])
3575
5952
  check_type(argname="argument name", value=name, expected_type=type_hints["name"])
3576
5953
  check_type(argname="argument role_arn", value=role_arn, expected_type=type_hints["role_arn"])
5954
+ check_type(argname="argument storage_configuration", value=storage_configuration, expected_type=type_hints["storage_configuration"])
3577
5955
  check_type(argname="argument description", value=description, expected_type=type_hints["description"])
3578
5956
  check_type(argname="argument tags", value=tags, expected_type=type_hints["tags"])
3579
5957
  self._values: typing.Dict[builtins.str, typing.Any] = {
3580
5958
  "knowledge_base_configuration": knowledge_base_configuration,
3581
5959
  "name": name,
3582
5960
  "role_arn": role_arn,
5961
+ "storage_configuration": storage_configuration,
3583
5962
  }
3584
5963
  if description is not None:
3585
5964
  self._values["description"] = description
@@ -3618,6 +5997,18 @@ class CfnKnowledgeBaseProps:
3618
5997
  assert result is not None, "Required property 'role_arn' is missing"
3619
5998
  return typing.cast(builtins.str, result)
3620
5999
 
6000
+ @builtins.property
6001
+ def storage_configuration(
6002
+ self,
6003
+ ) -> typing.Union[_IResolvable_da3f097b, CfnKnowledgeBase.StorageConfigurationProperty]:
6004
+ '''Contains details about the storage configuration of the knowledge base.
6005
+
6006
+ :see: http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-bedrock-knowledgebase.html#cfn-bedrock-knowledgebase-storageconfiguration
6007
+ '''
6008
+ result = self._values.get("storage_configuration")
6009
+ assert result is not None, "Required property 'storage_configuration' is missing"
6010
+ return typing.cast(typing.Union[_IResolvable_da3f097b, CfnKnowledgeBase.StorageConfigurationProperty], result)
6011
+
3621
6012
  @builtins.property
3622
6013
  def description(self) -> typing.Optional[builtins.str]:
3623
6014
  '''The description of the knowledge base.
@@ -4187,6 +6578,8 @@ __all__ = [
4187
6578
  "CfnAgentProps",
4188
6579
  "CfnDataSource",
4189
6580
  "CfnDataSourceProps",
6581
+ "CfnGuardrail",
6582
+ "CfnGuardrailProps",
4190
6583
  "CfnKnowledgeBase",
4191
6584
  "CfnKnowledgeBaseProps",
4192
6585
  "FoundationModel",
@@ -4214,6 +6607,7 @@ def _typecheckingstub__facaad57ffe16da42f099d2b7997f3e6fd3b9eba46fd226d8fb5afe28
4214
6607
  prompt_override_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAgent.PromptOverrideConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4215
6608
  skip_resource_in_use_check_on_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4216
6609
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6610
+ test_alias_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
4217
6611
  ) -> None:
4218
6612
  """Type checking stubs"""
4219
6613
  pass
@@ -4308,6 +6702,12 @@ def _typecheckingstub__f9e79489cae3525b40539f62fddb8a1f8b194bc0b1d166146c12f85a5
4308
6702
  """Type checking stubs"""
4309
6703
  pass
4310
6704
 
6705
+ def _typecheckingstub__0adf24775a3a1362c3b4eeb79adc26cdf461e3c52ade9a1522d271295bf0d775(
6706
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]],
6707
+ ) -> None:
6708
+ """Type checking stubs"""
6709
+ pass
6710
+
4311
6711
  def _typecheckingstub__537a89983eef4dfdf436d52865dbd27f462f778f0de6c8ec6162918153faf331(
4312
6712
  *,
4313
6713
  payload: typing.Optional[builtins.str] = None,
@@ -4481,6 +6881,7 @@ def _typecheckingstub__b4f714080f6d4f9b0a3fe85a8425a8ba69698695e35d6fbd9d710ca5d
4481
6881
  prompt_override_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnAgent.PromptOverrideConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4482
6882
  skip_resource_in_use_check_on_delete: typing.Optional[typing.Union[builtins.bool, _IResolvable_da3f097b]] = None,
4483
6883
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
6884
+ test_alias_tags: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Mapping[builtins.str, builtins.str]]] = None,
4484
6885
  ) -> None:
4485
6886
  """Type checking stubs"""
4486
6887
  pass
@@ -4492,6 +6893,7 @@ def _typecheckingstub__8b6230da788965416b3262c41917eaab2193b3cfccf7a03f313a8c191
4492
6893
  data_source_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.DataSourceConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4493
6894
  knowledge_base_id: builtins.str,
4494
6895
  name: builtins.str,
6896
+ data_deletion_policy: typing.Optional[builtins.str] = None,
4495
6897
  description: typing.Optional[builtins.str] = None,
4496
6898
  server_side_encryption_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.ServerSideEncryptionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4497
6899
  vector_ingestion_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.VectorIngestionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -4529,6 +6931,12 @@ def _typecheckingstub__99613771dd63beb77d047c2f17b9362e99ec38dd6fb89ec0c78f690f7
4529
6931
  """Type checking stubs"""
4530
6932
  pass
4531
6933
 
6934
+ def _typecheckingstub__13070c256fb6cad53f284f3bdd82c32491d75ab72033b19aa76e3daf539a2b8f(
6935
+ value: typing.Optional[builtins.str],
6936
+ ) -> None:
6937
+ """Type checking stubs"""
6938
+ pass
6939
+
4532
6940
  def _typecheckingstub__7fc31b7620f239d59ff8a40cb711119c09cf659e115e22ba5d86a3d2a36aa17b(
4533
6941
  value: typing.Optional[builtins.str],
4534
6942
  ) -> None:
@@ -4574,6 +6982,7 @@ def _typecheckingstub__7b9e8054cbf79d2292e738f1061947914954b89440b15bf572c87c969
4574
6982
  def _typecheckingstub__6b4929296343a5ea55bce5d28d11b34fa10885df35596a08102658f8bcbc8c5b(
4575
6983
  *,
4576
6984
  bucket_arn: builtins.str,
6985
+ bucket_owner_account_id: typing.Optional[builtins.str] = None,
4577
6986
  inclusion_prefixes: typing.Optional[typing.Sequence[builtins.str]] = None,
4578
6987
  ) -> None:
4579
6988
  """Type checking stubs"""
@@ -4598,6 +7007,7 @@ def _typecheckingstub__4beca3e3b31c91619a3fa9da2bf185ffd738124b7965f1c90a191b43c
4598
7007
  data_source_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.DataSourceConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4599
7008
  knowledge_base_id: builtins.str,
4600
7009
  name: builtins.str,
7010
+ data_deletion_policy: typing.Optional[builtins.str] = None,
4601
7011
  description: typing.Optional[builtins.str] = None,
4602
7012
  server_side_encryption_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.ServerSideEncryptionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
4603
7013
  vector_ingestion_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnDataSource.VectorIngestionConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -4605,6 +7015,193 @@ def _typecheckingstub__4beca3e3b31c91619a3fa9da2bf185ffd738124b7965f1c90a191b43c
4605
7015
  """Type checking stubs"""
4606
7016
  pass
4607
7017
 
7018
+ def _typecheckingstub__2043b4e3280827dde584095cdad9778bf2076242696d52ba5a39dc96cedb89a0(
7019
+ scope: _constructs_77d1e7e8.Construct,
7020
+ id: builtins.str,
7021
+ *,
7022
+ blocked_input_messaging: builtins.str,
7023
+ blocked_outputs_messaging: builtins.str,
7024
+ name: builtins.str,
7025
+ content_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.ContentPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7026
+ description: typing.Optional[builtins.str] = None,
7027
+ kms_key_arn: typing.Optional[builtins.str] = None,
7028
+ sensitive_information_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.SensitiveInformationPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7029
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7030
+ topic_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.TopicPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7031
+ word_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.WordPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7032
+ ) -> None:
7033
+ """Type checking stubs"""
7034
+ pass
7035
+
7036
+ def _typecheckingstub__e92a00856c8ad560cb684783884ef636d036b3706e64c243b469db70f7b1d651(
7037
+ inspector: _TreeInspector_488e0dd5,
7038
+ ) -> None:
7039
+ """Type checking stubs"""
7040
+ pass
7041
+
7042
+ def _typecheckingstub__b769e76e098e449277bbeec2441c2e936bbf304845dbafabf4f5c614c9d2a27a(
7043
+ props: typing.Mapping[builtins.str, typing.Any],
7044
+ ) -> None:
7045
+ """Type checking stubs"""
7046
+ pass
7047
+
7048
+ def _typecheckingstub__b8a2f9687ff4e81f4953a900999b03337df14ba54044290009f92b978479aa71(
7049
+ value: builtins.str,
7050
+ ) -> None:
7051
+ """Type checking stubs"""
7052
+ pass
7053
+
7054
+ def _typecheckingstub__59377d273ba1076fa0e7fa7b325e1080a042838c62e3d653e7e2d9fbfd37b757(
7055
+ value: builtins.str,
7056
+ ) -> None:
7057
+ """Type checking stubs"""
7058
+ pass
7059
+
7060
+ def _typecheckingstub__4214430bb449bbe8c35bffe05d8f030f2f1e4d9bf03e87e52eaf3920fcd73539(
7061
+ value: builtins.str,
7062
+ ) -> None:
7063
+ """Type checking stubs"""
7064
+ pass
7065
+
7066
+ def _typecheckingstub__a2352c360e9d740d982528265b1e13ef0cbbc639f4ce7a9811f5347cf9c39343(
7067
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.ContentPolicyConfigProperty]],
7068
+ ) -> None:
7069
+ """Type checking stubs"""
7070
+ pass
7071
+
7072
+ def _typecheckingstub__885f2a8f4b710e0b2b1255d6f0514f5b0e080398bf5941c4b2830331855b81ae(
7073
+ value: typing.Optional[builtins.str],
7074
+ ) -> None:
7075
+ """Type checking stubs"""
7076
+ pass
7077
+
7078
+ def _typecheckingstub__fbc1d4225a1496cd036d97ea54283afa42f857e546f96fed46866f7df1c2a712(
7079
+ value: typing.Optional[builtins.str],
7080
+ ) -> None:
7081
+ """Type checking stubs"""
7082
+ pass
7083
+
7084
+ def _typecheckingstub__279893b9f82164ec1f1485986bfd2950340b836fafb5d6299d2c28b1d4277f9d(
7085
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.SensitiveInformationPolicyConfigProperty]],
7086
+ ) -> None:
7087
+ """Type checking stubs"""
7088
+ pass
7089
+
7090
+ def _typecheckingstub__d2d4316cf506347b6f9939e84461c5f14a0501165f7128ebaec15ea06b2fc68a(
7091
+ value: typing.Optional[typing.List[_CfnTag_f6864754]],
7092
+ ) -> None:
7093
+ """Type checking stubs"""
7094
+ pass
7095
+
7096
+ def _typecheckingstub__853c4d50370da0c19067d3356726317d2cb9cfdd5405344e1ded902c29bb30d0(
7097
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.TopicPolicyConfigProperty]],
7098
+ ) -> None:
7099
+ """Type checking stubs"""
7100
+ pass
7101
+
7102
+ def _typecheckingstub__8db61eded81d93fbd03b059a0415cd544498a84333ec2ae6cb76fed58dc07062(
7103
+ value: typing.Optional[typing.Union[_IResolvable_da3f097b, CfnGuardrail.WordPolicyConfigProperty]],
7104
+ ) -> None:
7105
+ """Type checking stubs"""
7106
+ pass
7107
+
7108
+ def _typecheckingstub__e931f7f6b53869d60aab0ecda0e56f276982aaf3a1ee755be3434f26d989ebd5(
7109
+ *,
7110
+ input_strength: builtins.str,
7111
+ output_strength: builtins.str,
7112
+ type: builtins.str,
7113
+ ) -> None:
7114
+ """Type checking stubs"""
7115
+ pass
7116
+
7117
+ def _typecheckingstub__3c9f736a4ece8c00be77ba5cd1cda628f4fd10884f3d7ed2c668ae9c1c654fb0(
7118
+ *,
7119
+ filters_config: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.ContentFilterConfigProperty, typing.Dict[builtins.str, typing.Any]]]]],
7120
+ ) -> None:
7121
+ """Type checking stubs"""
7122
+ pass
7123
+
7124
+ def _typecheckingstub__a4bf7d4d57eaea6d7c62d6852c2666ebfc7a95d0b72269c42fb757f13cdcece6(
7125
+ *,
7126
+ type: builtins.str,
7127
+ ) -> None:
7128
+ """Type checking stubs"""
7129
+ pass
7130
+
7131
+ def _typecheckingstub__b1b637cd24a7601fa9e29e9667a11a4859f00240df5f6c858a1c38c3b51a9ece(
7132
+ *,
7133
+ action: builtins.str,
7134
+ type: builtins.str,
7135
+ ) -> None:
7136
+ """Type checking stubs"""
7137
+ pass
7138
+
7139
+ def _typecheckingstub__6b89e42a3611474b89e78273413fafd42e2ceb034d2f5fa3e3c122fbd7b3f064(
7140
+ *,
7141
+ action: builtins.str,
7142
+ name: builtins.str,
7143
+ pattern: builtins.str,
7144
+ description: typing.Optional[builtins.str] = None,
7145
+ ) -> None:
7146
+ """Type checking stubs"""
7147
+ pass
7148
+
7149
+ def _typecheckingstub__ce533c46d8cdf8ee409b3343d7148ef4f9260d103d28195f722d007266162d12(
7150
+ *,
7151
+ pii_entities_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.PiiEntityConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7152
+ regexes_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.RegexConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7153
+ ) -> None:
7154
+ """Type checking stubs"""
7155
+ pass
7156
+
7157
+ def _typecheckingstub__55baba87f7434d59d4b6be04489cbfbd90b857b82944e9437475de8bd648c94c(
7158
+ *,
7159
+ definition: builtins.str,
7160
+ name: builtins.str,
7161
+ type: builtins.str,
7162
+ examples: typing.Optional[typing.Sequence[builtins.str]] = None,
7163
+ ) -> None:
7164
+ """Type checking stubs"""
7165
+ pass
7166
+
7167
+ def _typecheckingstub__a601b9bb5110351c09983ddf7f804dd1b1d64d78dffded374d89618a609277eb(
7168
+ *,
7169
+ topics_config: typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.TopicConfigProperty, typing.Dict[builtins.str, typing.Any]]]]],
7170
+ ) -> None:
7171
+ """Type checking stubs"""
7172
+ pass
7173
+
7174
+ def _typecheckingstub__8d97ba02e51405985a3642a48511f50ab8ebae582cdd068b6dec0252d49b5497(
7175
+ *,
7176
+ text: builtins.str,
7177
+ ) -> None:
7178
+ """Type checking stubs"""
7179
+ pass
7180
+
7181
+ def _typecheckingstub__40e1ce19bae133dd80df92a2b7a2a8185b6ce800337dbf3519f8449ef4f93952(
7182
+ *,
7183
+ managed_word_lists_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.ManagedWordsConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7184
+ words_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Sequence[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.WordConfigProperty, typing.Dict[builtins.str, typing.Any]]]]]] = None,
7185
+ ) -> None:
7186
+ """Type checking stubs"""
7187
+ pass
7188
+
7189
+ def _typecheckingstub__e16800cc7473874d0d58b13a772dade51a596e19ff440f95ad243d23606a6cea(
7190
+ *,
7191
+ blocked_input_messaging: builtins.str,
7192
+ blocked_outputs_messaging: builtins.str,
7193
+ name: builtins.str,
7194
+ content_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.ContentPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7195
+ description: typing.Optional[builtins.str] = None,
7196
+ kms_key_arn: typing.Optional[builtins.str] = None,
7197
+ sensitive_information_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.SensitiveInformationPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7198
+ tags: typing.Optional[typing.Sequence[typing.Union[_CfnTag_f6864754, typing.Dict[builtins.str, typing.Any]]]] = None,
7199
+ topic_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.TopicPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7200
+ word_policy_config: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnGuardrail.WordPolicyConfigProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7201
+ ) -> None:
7202
+ """Type checking stubs"""
7203
+ pass
7204
+
4608
7205
  def _typecheckingstub__6ef81b8dcbedbd76b5a39a6fd5a967ba49aa887b63aad45e2bc246c96c7abcec(
4609
7206
  scope: _constructs_77d1e7e8.Construct,
4610
7207
  id: builtins.str,
@@ -4612,6 +7209,7 @@ def _typecheckingstub__6ef81b8dcbedbd76b5a39a6fd5a967ba49aa887b63aad45e2bc246c96
4612
7209
  knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.KnowledgeBaseConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4613
7210
  name: builtins.str,
4614
7211
  role_arn: builtins.str,
7212
+ storage_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.StorageConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4615
7213
  description: typing.Optional[builtins.str] = None,
4616
7214
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
4617
7215
  ) -> None:
@@ -4648,6 +7246,12 @@ def _typecheckingstub__e6281f2d1ed9a2f71b02754159fe6b2d8c70d3527e97d2d060434dc34
4648
7246
  """Type checking stubs"""
4649
7247
  pass
4650
7248
 
7249
+ def _typecheckingstub__9c3409dc5fcb9799e2f638dda4e66d2391cf6984b3e10eb29b36e85981cfc59b(
7250
+ value: typing.Union[_IResolvable_da3f097b, CfnKnowledgeBase.StorageConfigurationProperty],
7251
+ ) -> None:
7252
+ """Type checking stubs"""
7253
+ pass
7254
+
4651
7255
  def _typecheckingstub__f9fef7f262d2bad58c7f37c90b8756dd028b772a93aa036a4caf0c9565a7fff1(
4652
7256
  value: typing.Optional[builtins.str],
4653
7257
  ) -> None:
@@ -4668,6 +7272,73 @@ def _typecheckingstub__f2ca26f28cc4cf3a289e62f58643faf6a7d98ea3e55e7ff4f0f77530f
4668
7272
  """Type checking stubs"""
4669
7273
  pass
4670
7274
 
7275
+ def _typecheckingstub__ebf20de0b58d579ecbd2aeccf094bb6c29ae3627a2b4628485b0235e33626d24(
7276
+ *,
7277
+ collection_arn: builtins.str,
7278
+ field_mapping: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.OpenSearchServerlessFieldMappingProperty, typing.Dict[builtins.str, typing.Any]]],
7279
+ vector_index_name: builtins.str,
7280
+ ) -> None:
7281
+ """Type checking stubs"""
7282
+ pass
7283
+
7284
+ def _typecheckingstub__b8e490584f9c3a514d8b66b508fa651b9eead4ae9af9f9cfa66c2ef1e1e4495f(
7285
+ *,
7286
+ metadata_field: builtins.str,
7287
+ text_field: builtins.str,
7288
+ vector_field: builtins.str,
7289
+ ) -> None:
7290
+ """Type checking stubs"""
7291
+ pass
7292
+
7293
+ def _typecheckingstub__9425ac4f69df601cd9f6eaef75febf9d71ce4845a6c4629a0c9fd790f5af4075(
7294
+ *,
7295
+ connection_string: builtins.str,
7296
+ credentials_secret_arn: builtins.str,
7297
+ field_mapping: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.PineconeFieldMappingProperty, typing.Dict[builtins.str, typing.Any]]],
7298
+ namespace: typing.Optional[builtins.str] = None,
7299
+ ) -> None:
7300
+ """Type checking stubs"""
7301
+ pass
7302
+
7303
+ def _typecheckingstub__2169e124a8314b619ba9fb9f5ea31bc496b6bec20da9f8880770981d442b591d(
7304
+ *,
7305
+ metadata_field: builtins.str,
7306
+ text_field: builtins.str,
7307
+ ) -> None:
7308
+ """Type checking stubs"""
7309
+ pass
7310
+
7311
+ def _typecheckingstub__5bd4ba48a510008cefecd72d69bf8fed706c5791b8305e19be10355faa482026(
7312
+ *,
7313
+ credentials_secret_arn: builtins.str,
7314
+ database_name: builtins.str,
7315
+ field_mapping: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.RdsFieldMappingProperty, typing.Dict[builtins.str, typing.Any]]],
7316
+ resource_arn: builtins.str,
7317
+ table_name: builtins.str,
7318
+ ) -> None:
7319
+ """Type checking stubs"""
7320
+ pass
7321
+
7322
+ def _typecheckingstub__0060deafed28d2f4c1690bf8921de0b9aca79fe88ac4c5ca53f29b4ef0895537(
7323
+ *,
7324
+ metadata_field: builtins.str,
7325
+ primary_key_field: builtins.str,
7326
+ text_field: builtins.str,
7327
+ vector_field: builtins.str,
7328
+ ) -> None:
7329
+ """Type checking stubs"""
7330
+ pass
7331
+
7332
+ def _typecheckingstub__fa4cccae88d65689f5f3cabcb8393a082af16eb90d7613332a03867c32272af4(
7333
+ *,
7334
+ type: builtins.str,
7335
+ opensearch_serverless_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.OpenSearchServerlessConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7336
+ pinecone_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.PineconeConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7337
+ rds_configuration: typing.Optional[typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.RdsConfigurationProperty, typing.Dict[builtins.str, typing.Any]]]] = None,
7338
+ ) -> None:
7339
+ """Type checking stubs"""
7340
+ pass
7341
+
4671
7342
  def _typecheckingstub__53b08e209954b21c35b746e5eee517d51370af30630f5f17b3e5435150898236(
4672
7343
  *,
4673
7344
  embedding_model_arn: builtins.str,
@@ -4680,6 +7351,7 @@ def _typecheckingstub__a5f6560ff734e79a877ac4cd934408cd79b9c6a6c1dac195972f27ac4
4680
7351
  knowledge_base_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.KnowledgeBaseConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4681
7352
  name: builtins.str,
4682
7353
  role_arn: builtins.str,
7354
+ storage_configuration: typing.Union[_IResolvable_da3f097b, typing.Union[CfnKnowledgeBase.StorageConfigurationProperty, typing.Dict[builtins.str, typing.Any]]],
4683
7355
  description: typing.Optional[builtins.str] = None,
4684
7356
  tags: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
4685
7357
  ) -> None: