aws-cdk-lib 2.159.0__py3-none-any.whl → 2.160.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.

@@ -88,123 +88,6 @@ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing
88
88
  from .._jsii import *
89
89
 
90
90
 
91
- @jsii.data_type(
92
- jsii_type="aws-cdk-lib.cloud_assembly_schema.AmiContextQuery",
93
- jsii_struct_bases=[],
94
- name_mapping={
95
- "account": "account",
96
- "filters": "filters",
97
- "region": "region",
98
- "lookup_role_arn": "lookupRoleArn",
99
- "owners": "owners",
100
- },
101
- )
102
- class AmiContextQuery:
103
- def __init__(
104
- self,
105
- *,
106
- account: builtins.str,
107
- filters: typing.Mapping[builtins.str, typing.Sequence[builtins.str]],
108
- region: builtins.str,
109
- lookup_role_arn: typing.Optional[builtins.str] = None,
110
- owners: typing.Optional[typing.Sequence[builtins.str]] = None,
111
- ) -> None:
112
- '''Query to AMI context provider.
113
-
114
- :param account: Account to query.
115
- :param filters: Filters to DescribeImages call.
116
- :param region: Region to query.
117
- :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
118
- :param owners: Owners to DescribeImages call. Default: - All owners
119
-
120
- :exampleMetadata: fixture=_generated
121
-
122
- Example::
123
-
124
- # The code below shows an example of how to instantiate this type.
125
- # The values are placeholders you should change.
126
- from aws_cdk import cloud_assembly_schema
127
-
128
- ami_context_query = AmiContextQuery(
129
- account="account",
130
- filters={
131
- "filters_key": ["filters"]
132
- },
133
- region="region",
134
-
135
- # the properties below are optional
136
- lookup_role_arn="lookupRoleArn",
137
- owners=["owners"]
138
- )
139
- '''
140
- if __debug__:
141
- type_hints = typing.get_type_hints(_typecheckingstub__9ad6944b308c0d053938a9bf5ce1be77af5b529135dc35a4c245384840501111)
142
- check_type(argname="argument account", value=account, expected_type=type_hints["account"])
143
- check_type(argname="argument filters", value=filters, expected_type=type_hints["filters"])
144
- check_type(argname="argument region", value=region, expected_type=type_hints["region"])
145
- check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
146
- check_type(argname="argument owners", value=owners, expected_type=type_hints["owners"])
147
- self._values: typing.Dict[builtins.str, typing.Any] = {
148
- "account": account,
149
- "filters": filters,
150
- "region": region,
151
- }
152
- if lookup_role_arn is not None:
153
- self._values["lookup_role_arn"] = lookup_role_arn
154
- if owners is not None:
155
- self._values["owners"] = owners
156
-
157
- @builtins.property
158
- def account(self) -> builtins.str:
159
- '''Account to query.'''
160
- result = self._values.get("account")
161
- assert result is not None, "Required property 'account' is missing"
162
- return typing.cast(builtins.str, result)
163
-
164
- @builtins.property
165
- def filters(self) -> typing.Mapping[builtins.str, typing.List[builtins.str]]:
166
- '''Filters to DescribeImages call.'''
167
- result = self._values.get("filters")
168
- assert result is not None, "Required property 'filters' is missing"
169
- return typing.cast(typing.Mapping[builtins.str, typing.List[builtins.str]], result)
170
-
171
- @builtins.property
172
- def region(self) -> builtins.str:
173
- '''Region to query.'''
174
- result = self._values.get("region")
175
- assert result is not None, "Required property 'region' is missing"
176
- return typing.cast(builtins.str, result)
177
-
178
- @builtins.property
179
- def lookup_role_arn(self) -> typing.Optional[builtins.str]:
180
- '''The ARN of the role that should be used to look up the missing values.
181
-
182
- :default: - None
183
- '''
184
- result = self._values.get("lookup_role_arn")
185
- return typing.cast(typing.Optional[builtins.str], result)
186
-
187
- @builtins.property
188
- def owners(self) -> typing.Optional[typing.List[builtins.str]]:
189
- '''Owners to DescribeImages call.
190
-
191
- :default: - All owners
192
- '''
193
- result = self._values.get("owners")
194
- return typing.cast(typing.Optional[typing.List[builtins.str]], result)
195
-
196
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
197
- return isinstance(rhs, self.__class__) and rhs._values == self._values
198
-
199
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
200
- return not (rhs == self)
201
-
202
- def __repr__(self) -> str:
203
- return "AmiContextQuery(%s)" % ", ".join(
204
- k + "=" + repr(v) for k, v in self._values.items()
205
- )
206
-
207
-
208
91
  @jsii.data_type(
209
92
  jsii_type="aws-cdk-lib.cloud_assembly_schema.ArtifactManifest",
210
93
  jsii_struct_bases=[],
@@ -245,6 +128,8 @@ class ArtifactManifest:
245
128
  # The values are placeholders you should change.
246
129
  from aws_cdk import cloud_assembly_schema
247
130
 
131
+ # assume_role_additional_options: Any
132
+
248
133
  artifact_manifest = ArtifactManifest(
249
134
  type=cloud_assembly_schema.ArtifactType.NONE,
250
135
 
@@ -265,6 +150,9 @@ class ArtifactManifest:
265
150
  template_file="templateFile",
266
151
 
267
152
  # the properties below are optional
153
+ assume_role_additional_options={
154
+ "assume_role_additional_options_key": assume_role_additional_options
155
+ },
268
156
  assume_role_arn="assumeRoleArn",
269
157
  assume_role_external_id="assumeRoleExternalId",
270
158
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
@@ -273,10 +161,14 @@ class ArtifactManifest:
273
161
  arn="arn",
274
162
 
275
163
  # the properties below are optional
164
+ assume_role_additional_options={
165
+ "assume_role_additional_options_key": assume_role_additional_options
166
+ },
276
167
  assume_role_external_id="assumeRoleExternalId",
277
168
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
278
169
  requires_bootstrap_stack_version=123
279
170
  ),
171
+ notification_arns=["notificationArns"],
280
172
  parameters={
281
173
  "parameters_key": "parameters"
282
174
  },
@@ -451,6 +343,8 @@ class AssemblyManifest:
451
343
  # The values are placeholders you should change.
452
344
  from aws_cdk import cloud_assembly_schema
453
345
 
346
+ # assume_role_additional_options: Any
347
+
454
348
  assembly_manifest = AssemblyManifest(
455
349
  version="version",
456
350
 
@@ -476,6 +370,9 @@ class AssemblyManifest:
476
370
  template_file="templateFile",
477
371
 
478
372
  # the properties below are optional
373
+ assume_role_additional_options={
374
+ "assume_role_additional_options_key": assume_role_additional_options
375
+ },
479
376
  assume_role_arn="assumeRoleArn",
480
377
  assume_role_external_id="assumeRoleExternalId",
481
378
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
@@ -484,10 +381,14 @@ class AssemblyManifest:
484
381
  arn="arn",
485
382
 
486
383
  # the properties below are optional
384
+ assume_role_additional_options={
385
+ "assume_role_additional_options_key": assume_role_additional_options
386
+ },
487
387
  assume_role_external_id="assumeRoleExternalId",
488
388
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
489
389
  requires_bootstrap_stack_version=123
490
390
  ),
391
+ notification_arns=["notificationArns"],
491
392
  parameters={
492
393
  "parameters_key": "parameters"
493
394
  },
@@ -512,7 +413,11 @@ class AssemblyManifest:
512
413
  region="region",
513
414
 
514
415
  # the properties below are optional
416
+ assume_role_additional_options={
417
+ "assume_role_additional_options_key": assume_role_additional_options
418
+ },
515
419
  lookup_role_arn="lookupRoleArn",
420
+ lookup_role_external_id="lookupRoleExternalId",
516
421
  owners=["owners"]
517
422
  ),
518
423
  provider=cloud_assembly_schema.ContextProvider.AMI_PROVIDER
@@ -624,6 +529,8 @@ class AssetManifest:
624
529
  # The values are placeholders you should change.
625
530
  from aws_cdk import cloud_assembly_schema
626
531
 
532
+ # assume_role_additional_options: Any
533
+
627
534
  asset_manifest = AssetManifest(
628
535
  version="version",
629
536
 
@@ -636,6 +543,9 @@ class AssetManifest:
636
543
  repository_name="repositoryName",
637
544
 
638
545
  # the properties below are optional
546
+ assume_role_additional_options={
547
+ "assume_role_additional_options_key": assume_role_additional_options
548
+ },
639
549
  assume_role_arn="assumeRoleArn",
640
550
  assume_role_external_id="assumeRoleExternalId",
641
551
  region="region"
@@ -684,6 +594,9 @@ class AssetManifest:
684
594
  object_key="objectKey",
685
595
 
686
596
  # the properties below are optional
597
+ assume_role_additional_options={
598
+ "assume_role_additional_options_key": assume_role_additional_options
599
+ },
687
600
  assume_role_arn="assumeRoleArn",
688
601
  assume_role_external_id="assumeRoleExternalId",
689
602
  region="region"
@@ -924,102 +837,18 @@ class AssetManifestProperties(AssetManifestOptions):
924
837
  )
925
838
 
926
839
 
927
- @jsii.data_type(
928
- jsii_type="aws-cdk-lib.cloud_assembly_schema.AvailabilityZonesContextQuery",
929
- jsii_struct_bases=[],
930
- name_mapping={
931
- "account": "account",
932
- "region": "region",
933
- "lookup_role_arn": "lookupRoleArn",
934
- },
935
- )
936
- class AvailabilityZonesContextQuery:
937
- def __init__(
938
- self,
939
- *,
940
- account: builtins.str,
941
- region: builtins.str,
942
- lookup_role_arn: typing.Optional[builtins.str] = None,
943
- ) -> None:
944
- '''Query to availability zone context provider.
945
-
946
- :param account: Query account.
947
- :param region: Query region.
948
- :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
949
-
950
- :exampleMetadata: fixture=_generated
951
-
952
- Example::
953
-
954
- # The code below shows an example of how to instantiate this type.
955
- # The values are placeholders you should change.
956
- from aws_cdk import cloud_assembly_schema
957
-
958
- availability_zones_context_query = AvailabilityZonesContextQuery(
959
- account="account",
960
- region="region",
961
-
962
- # the properties below are optional
963
- lookup_role_arn="lookupRoleArn"
964
- )
965
- '''
966
- if __debug__:
967
- type_hints = typing.get_type_hints(_typecheckingstub__e23cb5710241f65fda5e65504911a7340786a62ce9cf7c60c9cfc1d4d4a05753)
968
- check_type(argname="argument account", value=account, expected_type=type_hints["account"])
969
- check_type(argname="argument region", value=region, expected_type=type_hints["region"])
970
- check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
971
- self._values: typing.Dict[builtins.str, typing.Any] = {
972
- "account": account,
973
- "region": region,
974
- }
975
- if lookup_role_arn is not None:
976
- self._values["lookup_role_arn"] = lookup_role_arn
977
-
978
- @builtins.property
979
- def account(self) -> builtins.str:
980
- '''Query account.'''
981
- result = self._values.get("account")
982
- assert result is not None, "Required property 'account' is missing"
983
- return typing.cast(builtins.str, result)
984
-
985
- @builtins.property
986
- def region(self) -> builtins.str:
987
- '''Query region.'''
988
- result = self._values.get("region")
989
- assert result is not None, "Required property 'region' is missing"
990
- return typing.cast(builtins.str, result)
991
-
992
- @builtins.property
993
- def lookup_role_arn(self) -> typing.Optional[builtins.str]:
994
- '''The ARN of the role that should be used to look up the missing values.
995
-
996
- :default: - None
997
- '''
998
- result = self._values.get("lookup_role_arn")
999
- return typing.cast(typing.Optional[builtins.str], result)
1000
-
1001
- def __eq__(self, rhs: typing.Any) -> builtins.bool:
1002
- return isinstance(rhs, self.__class__) and rhs._values == self._values
1003
-
1004
- def __ne__(self, rhs: typing.Any) -> builtins.bool:
1005
- return not (rhs == self)
1006
-
1007
- def __repr__(self) -> str:
1008
- return "AvailabilityZonesContextQuery(%s)" % ", ".join(
1009
- k + "=" + repr(v) for k, v in self._values.items()
1010
- )
1011
-
1012
-
1013
840
  @jsii.data_type(
1014
841
  jsii_type="aws-cdk-lib.cloud_assembly_schema.AwsCloudFormationStackProperties",
1015
842
  jsii_struct_bases=[],
1016
843
  name_mapping={
1017
844
  "template_file": "templateFile",
845
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
1018
846
  "assume_role_arn": "assumeRoleArn",
1019
847
  "assume_role_external_id": "assumeRoleExternalId",
1020
848
  "bootstrap_stack_version_ssm_parameter": "bootstrapStackVersionSsmParameter",
1021
849
  "cloud_formation_execution_role_arn": "cloudFormationExecutionRoleArn",
1022
850
  "lookup_role": "lookupRole",
851
+ "notification_arns": "notificationArns",
1023
852
  "parameters": "parameters",
1024
853
  "requires_bootstrap_stack_version": "requiresBootstrapStackVersion",
1025
854
  "stack_name": "stackName",
@@ -1034,11 +863,13 @@ class AwsCloudFormationStackProperties:
1034
863
  self,
1035
864
  *,
1036
865
  template_file: builtins.str,
866
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
1037
867
  assume_role_arn: typing.Optional[builtins.str] = None,
1038
868
  assume_role_external_id: typing.Optional[builtins.str] = None,
1039
869
  bootstrap_stack_version_ssm_parameter: typing.Optional[builtins.str] = None,
1040
870
  cloud_formation_execution_role_arn: typing.Optional[builtins.str] = None,
1041
871
  lookup_role: typing.Optional[typing.Union["BootstrapRole", typing.Dict[builtins.str, typing.Any]]] = None,
872
+ notification_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
1042
873
  parameters: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
1043
874
  requires_bootstrap_stack_version: typing.Optional[jsii.Number] = None,
1044
875
  stack_name: typing.Optional[builtins.str] = None,
@@ -1050,11 +881,13 @@ class AwsCloudFormationStackProperties:
1050
881
  '''Artifact properties for CloudFormation stacks.
1051
882
 
1052
883
  :param template_file: A file relative to the assembly root which contains the CloudFormation template for this stack.
884
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the role. - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead. Default: - No additional options.
1053
885
  :param assume_role_arn: The role that needs to be assumed to deploy the stack. Default: - No role is assumed (current credentials are used)
1054
886
  :param assume_role_external_id: External ID to use when assuming role for cloudformation deployments. Default: - No external ID
1055
887
  :param bootstrap_stack_version_ssm_parameter: SSM parameter where the bootstrap stack version number can be found. Only used if ``requiresBootstrapStackVersion`` is set. - If this value is not set, the bootstrap stack name must be known at deployment time so the stack version can be looked up from the stack outputs. - If this value is set, the bootstrap stack can have any name because we won't need to look it up. Default: - Bootstrap stack version number looked up
1056
888
  :param cloud_formation_execution_role_arn: The role that is passed to CloudFormation to execute the change set. Default: - No role is passed (currently assumed role/credentials are used)
1057
889
  :param lookup_role: The role to use to look up values from the target AWS account. Default: - No role is assumed (current credentials are used)
890
+ :param notification_arns: SNS Notification ARNs that should receive CloudFormation Stack Events. Default: - No notification arns
1058
891
  :param parameters: Values for CloudFormation stack parameters that should be passed when the stack is deployed. Default: - No parameters
1059
892
  :param requires_bootstrap_stack_version: Version of bootstrap stack required to deploy this stack. Default: - No bootstrap stack required
1060
893
  :param stack_name: The name to use for the CloudFormation stack. Default: - name derived from artifact ID
@@ -1071,10 +904,15 @@ class AwsCloudFormationStackProperties:
1071
904
  # The values are placeholders you should change.
1072
905
  from aws_cdk import cloud_assembly_schema
1073
906
 
907
+ # assume_role_additional_options: Any
908
+
1074
909
  aws_cloud_formation_stack_properties = AwsCloudFormationStackProperties(
1075
910
  template_file="templateFile",
1076
911
 
1077
912
  # the properties below are optional
913
+ assume_role_additional_options={
914
+ "assume_role_additional_options_key": assume_role_additional_options
915
+ },
1078
916
  assume_role_arn="assumeRoleArn",
1079
917
  assume_role_external_id="assumeRoleExternalId",
1080
918
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
@@ -1083,10 +921,14 @@ class AwsCloudFormationStackProperties:
1083
921
  arn="arn",
1084
922
 
1085
923
  # the properties below are optional
924
+ assume_role_additional_options={
925
+ "assume_role_additional_options_key": assume_role_additional_options
926
+ },
1086
927
  assume_role_external_id="assumeRoleExternalId",
1087
928
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
1088
929
  requires_bootstrap_stack_version=123
1089
930
  ),
931
+ notification_arns=["notificationArns"],
1090
932
  parameters={
1091
933
  "parameters_key": "parameters"
1092
934
  },
@@ -1105,11 +947,13 @@ class AwsCloudFormationStackProperties:
1105
947
  if __debug__:
1106
948
  type_hints = typing.get_type_hints(_typecheckingstub__662c8e7475bc8ebd11512c676ac10ca4f84539770ce9a2a5d5d96a46956fe50e)
1107
949
  check_type(argname="argument template_file", value=template_file, expected_type=type_hints["template_file"])
950
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
1108
951
  check_type(argname="argument assume_role_arn", value=assume_role_arn, expected_type=type_hints["assume_role_arn"])
1109
952
  check_type(argname="argument assume_role_external_id", value=assume_role_external_id, expected_type=type_hints["assume_role_external_id"])
1110
953
  check_type(argname="argument bootstrap_stack_version_ssm_parameter", value=bootstrap_stack_version_ssm_parameter, expected_type=type_hints["bootstrap_stack_version_ssm_parameter"])
1111
954
  check_type(argname="argument cloud_formation_execution_role_arn", value=cloud_formation_execution_role_arn, expected_type=type_hints["cloud_formation_execution_role_arn"])
1112
955
  check_type(argname="argument lookup_role", value=lookup_role, expected_type=type_hints["lookup_role"])
956
+ check_type(argname="argument notification_arns", value=notification_arns, expected_type=type_hints["notification_arns"])
1113
957
  check_type(argname="argument parameters", value=parameters, expected_type=type_hints["parameters"])
1114
958
  check_type(argname="argument requires_bootstrap_stack_version", value=requires_bootstrap_stack_version, expected_type=type_hints["requires_bootstrap_stack_version"])
1115
959
  check_type(argname="argument stack_name", value=stack_name, expected_type=type_hints["stack_name"])
@@ -1120,6 +964,8 @@ class AwsCloudFormationStackProperties:
1120
964
  self._values: typing.Dict[builtins.str, typing.Any] = {
1121
965
  "template_file": template_file,
1122
966
  }
967
+ if assume_role_additional_options is not None:
968
+ self._values["assume_role_additional_options"] = assume_role_additional_options
1123
969
  if assume_role_arn is not None:
1124
970
  self._values["assume_role_arn"] = assume_role_arn
1125
971
  if assume_role_external_id is not None:
@@ -1130,6 +976,8 @@ class AwsCloudFormationStackProperties:
1130
976
  self._values["cloud_formation_execution_role_arn"] = cloud_formation_execution_role_arn
1131
977
  if lookup_role is not None:
1132
978
  self._values["lookup_role"] = lookup_role
979
+ if notification_arns is not None:
980
+ self._values["notification_arns"] = notification_arns
1133
981
  if parameters is not None:
1134
982
  self._values["parameters"] = parameters
1135
983
  if requires_bootstrap_stack_version is not None:
@@ -1152,6 +1000,22 @@ class AwsCloudFormationStackProperties:
1152
1000
  assert result is not None, "Required property 'template_file' is missing"
1153
1001
  return typing.cast(builtins.str, result)
1154
1002
 
1003
+ @builtins.property
1004
+ def assume_role_additional_options(
1005
+ self,
1006
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
1007
+ '''Additional options to pass to STS when assuming the role.
1008
+
1009
+ - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead.
1010
+ - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead.
1011
+
1012
+ :default: - No additional options.
1013
+
1014
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
1015
+ '''
1016
+ result = self._values.get("assume_role_additional_options")
1017
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
1018
+
1155
1019
  @builtins.property
1156
1020
  def assume_role_arn(self) -> typing.Optional[builtins.str]:
1157
1021
  '''The role that needs to be assumed to deploy the stack.
@@ -1205,6 +1069,15 @@ class AwsCloudFormationStackProperties:
1205
1069
  result = self._values.get("lookup_role")
1206
1070
  return typing.cast(typing.Optional["BootstrapRole"], result)
1207
1071
 
1072
+ @builtins.property
1073
+ def notification_arns(self) -> typing.Optional[typing.List[builtins.str]]:
1074
+ '''SNS Notification ARNs that should receive CloudFormation Stack Events.
1075
+
1076
+ :default: - No notification arns
1077
+ '''
1078
+ result = self._values.get("notification_arns")
1079
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
1080
+
1208
1081
  @builtins.property
1209
1082
  def parameters(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
1210
1083
  '''Values for CloudFormation stack parameters that should be passed when the stack is deployed.
@@ -1284,6 +1157,7 @@ class AwsCloudFormationStackProperties:
1284
1157
  jsii_type="aws-cdk-lib.cloud_assembly_schema.AwsDestination",
1285
1158
  jsii_struct_bases=[],
1286
1159
  name_mapping={
1160
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
1287
1161
  "assume_role_arn": "assumeRoleArn",
1288
1162
  "assume_role_external_id": "assumeRoleExternalId",
1289
1163
  "region": "region",
@@ -1293,12 +1167,14 @@ class AwsDestination:
1293
1167
  def __init__(
1294
1168
  self,
1295
1169
  *,
1170
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
1296
1171
  assume_role_arn: typing.Optional[builtins.str] = None,
1297
1172
  assume_role_external_id: typing.Optional[builtins.str] = None,
1298
1173
  region: typing.Optional[builtins.str] = None,
1299
1174
  ) -> None:
1300
1175
  '''Destination for assets that need to be uploaded to AWS.
1301
1176
 
1177
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the role. - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead. Default: - No additional options.
1302
1178
  :param assume_role_arn: The role that needs to be assumed while publishing this asset. Default: - No role will be assumed
1303
1179
  :param assume_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
1304
1180
  :param region: The region where this asset will need to be published. Default: - Current region
@@ -1311,7 +1187,12 @@ class AwsDestination:
1311
1187
  # The values are placeholders you should change.
1312
1188
  from aws_cdk import cloud_assembly_schema
1313
1189
 
1190
+ # assume_role_additional_options: Any
1191
+
1314
1192
  aws_destination = AwsDestination(
1193
+ assume_role_additional_options={
1194
+ "assume_role_additional_options_key": assume_role_additional_options
1195
+ },
1315
1196
  assume_role_arn="assumeRoleArn",
1316
1197
  assume_role_external_id="assumeRoleExternalId",
1317
1198
  region="region"
@@ -1319,10 +1200,13 @@ class AwsDestination:
1319
1200
  '''
1320
1201
  if __debug__:
1321
1202
  type_hints = typing.get_type_hints(_typecheckingstub__e91cfad0a891b03534a612d02721f5d8d6378d9951a8f62fa2272323da013b6c)
1203
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
1322
1204
  check_type(argname="argument assume_role_arn", value=assume_role_arn, expected_type=type_hints["assume_role_arn"])
1323
1205
  check_type(argname="argument assume_role_external_id", value=assume_role_external_id, expected_type=type_hints["assume_role_external_id"])
1324
1206
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
1325
1207
  self._values: typing.Dict[builtins.str, typing.Any] = {}
1208
+ if assume_role_additional_options is not None:
1209
+ self._values["assume_role_additional_options"] = assume_role_additional_options
1326
1210
  if assume_role_arn is not None:
1327
1211
  self._values["assume_role_arn"] = assume_role_arn
1328
1212
  if assume_role_external_id is not None:
@@ -1330,6 +1214,22 @@ class AwsDestination:
1330
1214
  if region is not None:
1331
1215
  self._values["region"] = region
1332
1216
 
1217
+ @builtins.property
1218
+ def assume_role_additional_options(
1219
+ self,
1220
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
1221
+ '''Additional options to pass to STS when assuming the role.
1222
+
1223
+ - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead.
1224
+ - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead.
1225
+
1226
+ :default: - No additional options.
1227
+
1228
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
1229
+ '''
1230
+ result = self._values.get("assume_role_additional_options")
1231
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
1232
+
1333
1233
  @builtins.property
1334
1234
  def assume_role_arn(self) -> typing.Optional[builtins.str]:
1335
1235
  '''The role that needs to be assumed while publishing this asset.
@@ -1374,6 +1274,7 @@ class AwsDestination:
1374
1274
  jsii_struct_bases=[],
1375
1275
  name_mapping={
1376
1276
  "arn": "arn",
1277
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
1377
1278
  "assume_role_external_id": "assumeRoleExternalId",
1378
1279
  "bootstrap_stack_version_ssm_parameter": "bootstrapStackVersionSsmParameter",
1379
1280
  "requires_bootstrap_stack_version": "requiresBootstrapStackVersion",
@@ -1384,6 +1285,7 @@ class BootstrapRole:
1384
1285
  self,
1385
1286
  *,
1386
1287
  arn: builtins.str,
1288
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
1387
1289
  assume_role_external_id: typing.Optional[builtins.str] = None,
1388
1290
  bootstrap_stack_version_ssm_parameter: typing.Optional[builtins.str] = None,
1389
1291
  requires_bootstrap_stack_version: typing.Optional[jsii.Number] = None,
@@ -1391,6 +1293,7 @@ class BootstrapRole:
1391
1293
  '''Information needed to access an IAM role created as part of the bootstrap process.
1392
1294
 
1393
1295
  :param arn: The ARN of the IAM role created as part of bootrapping e.g. lookupRoleArn.
1296
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the role. - ``RoleArn`` should not be used. Use the dedicated ``arn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead. Default: - No additional options.
1394
1297
  :param assume_role_external_id: External ID to use when assuming the bootstrap role. Default: - No external ID
1395
1298
  :param bootstrap_stack_version_ssm_parameter: Name of SSM parameter with bootstrap stack version. Default: - Discover SSM parameter by reading stack
1396
1299
  :param requires_bootstrap_stack_version: Version of bootstrap stack required to use this role. Default: - No bootstrap stack required
@@ -1403,10 +1306,15 @@ class BootstrapRole:
1403
1306
  # The values are placeholders you should change.
1404
1307
  from aws_cdk import cloud_assembly_schema
1405
1308
 
1309
+ # assume_role_additional_options: Any
1310
+
1406
1311
  bootstrap_role = BootstrapRole(
1407
1312
  arn="arn",
1408
1313
 
1409
1314
  # the properties below are optional
1315
+ assume_role_additional_options={
1316
+ "assume_role_additional_options_key": assume_role_additional_options
1317
+ },
1410
1318
  assume_role_external_id="assumeRoleExternalId",
1411
1319
  bootstrap_stack_version_ssm_parameter="bootstrapStackVersionSsmParameter",
1412
1320
  requires_bootstrap_stack_version=123
@@ -1415,12 +1323,15 @@ class BootstrapRole:
1415
1323
  if __debug__:
1416
1324
  type_hints = typing.get_type_hints(_typecheckingstub__a573afe6fe73a260b78458b7d6ff4d548c9379eb945ffcadd64389efe9b6e65d)
1417
1325
  check_type(argname="argument arn", value=arn, expected_type=type_hints["arn"])
1326
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
1418
1327
  check_type(argname="argument assume_role_external_id", value=assume_role_external_id, expected_type=type_hints["assume_role_external_id"])
1419
1328
  check_type(argname="argument bootstrap_stack_version_ssm_parameter", value=bootstrap_stack_version_ssm_parameter, expected_type=type_hints["bootstrap_stack_version_ssm_parameter"])
1420
1329
  check_type(argname="argument requires_bootstrap_stack_version", value=requires_bootstrap_stack_version, expected_type=type_hints["requires_bootstrap_stack_version"])
1421
1330
  self._values: typing.Dict[builtins.str, typing.Any] = {
1422
1331
  "arn": arn,
1423
1332
  }
1333
+ if assume_role_additional_options is not None:
1334
+ self._values["assume_role_additional_options"] = assume_role_additional_options
1424
1335
  if assume_role_external_id is not None:
1425
1336
  self._values["assume_role_external_id"] = assume_role_external_id
1426
1337
  if bootstrap_stack_version_ssm_parameter is not None:
@@ -1435,6 +1346,22 @@ class BootstrapRole:
1435
1346
  assert result is not None, "Required property 'arn' is missing"
1436
1347
  return typing.cast(builtins.str, result)
1437
1348
 
1349
+ @builtins.property
1350
+ def assume_role_additional_options(
1351
+ self,
1352
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
1353
+ '''Additional options to pass to STS when assuming the role.
1354
+
1355
+ - ``RoleArn`` should not be used. Use the dedicated ``arn`` property instead.
1356
+ - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead.
1357
+
1358
+ :default: - No additional options.
1359
+
1360
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
1361
+ '''
1362
+ result = self._values.get("assume_role_additional_options")
1363
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
1364
+
1438
1365
  @builtins.property
1439
1366
  def assume_role_external_id(self) -> typing.Optional[builtins.str]:
1440
1367
  '''External ID to use when assuming the bootstrap role.
@@ -2114,16 +2041,145 @@ class ContainerImageAssetMetadataEntry:
2114
2041
  )
2115
2042
 
2116
2043
 
2117
- @jsii.enum(jsii_type="aws-cdk-lib.cloud_assembly_schema.ContextProvider")
2118
- class ContextProvider(enum.Enum):
2119
- '''Identifier for the context provider.'''
2120
-
2121
- AMI_PROVIDER = "AMI_PROVIDER"
2122
- '''AMI provider.'''
2123
- AVAILABILITY_ZONE_PROVIDER = "AVAILABILITY_ZONE_PROVIDER"
2124
- '''AZ provider.'''
2125
- HOSTED_ZONE_PROVIDER = "HOSTED_ZONE_PROVIDER"
2126
- '''Route53 Hosted Zone provider.'''
2044
+ @jsii.data_type(
2045
+ jsii_type="aws-cdk-lib.cloud_assembly_schema.ContextLookupRoleOptions",
2046
+ jsii_struct_bases=[],
2047
+ name_mapping={
2048
+ "account": "account",
2049
+ "region": "region",
2050
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
2051
+ "lookup_role_arn": "lookupRoleArn",
2052
+ "lookup_role_external_id": "lookupRoleExternalId",
2053
+ },
2054
+ )
2055
+ class ContextLookupRoleOptions:
2056
+ def __init__(
2057
+ self,
2058
+ *,
2059
+ account: builtins.str,
2060
+ region: builtins.str,
2061
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
2062
+ lookup_role_arn: typing.Optional[builtins.str] = None,
2063
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
2064
+ ) -> None:
2065
+ '''Options for context lookup roles.
2066
+
2067
+ :param account: Query account.
2068
+ :param region: Query region.
2069
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
2070
+ :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
2071
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
2072
+
2073
+ :exampleMetadata: fixture=_generated
2074
+
2075
+ Example::
2076
+
2077
+ # The code below shows an example of how to instantiate this type.
2078
+ # The values are placeholders you should change.
2079
+ from aws_cdk import cloud_assembly_schema
2080
+
2081
+ # assume_role_additional_options: Any
2082
+
2083
+ context_lookup_role_options = ContextLookupRoleOptions(
2084
+ account="account",
2085
+ region="region",
2086
+
2087
+ # the properties below are optional
2088
+ assume_role_additional_options={
2089
+ "assume_role_additional_options_key": assume_role_additional_options
2090
+ },
2091
+ lookup_role_arn="lookupRoleArn",
2092
+ lookup_role_external_id="lookupRoleExternalId"
2093
+ )
2094
+ '''
2095
+ if __debug__:
2096
+ type_hints = typing.get_type_hints(_typecheckingstub__426943c947fb44b9deefd019e7f66ce3401c1a856d9f2773d450cd96adae6f59)
2097
+ check_type(argname="argument account", value=account, expected_type=type_hints["account"])
2098
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
2099
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
2100
+ check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
2101
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
2102
+ self._values: typing.Dict[builtins.str, typing.Any] = {
2103
+ "account": account,
2104
+ "region": region,
2105
+ }
2106
+ if assume_role_additional_options is not None:
2107
+ self._values["assume_role_additional_options"] = assume_role_additional_options
2108
+ if lookup_role_arn is not None:
2109
+ self._values["lookup_role_arn"] = lookup_role_arn
2110
+ if lookup_role_external_id is not None:
2111
+ self._values["lookup_role_external_id"] = lookup_role_external_id
2112
+
2113
+ @builtins.property
2114
+ def account(self) -> builtins.str:
2115
+ '''Query account.'''
2116
+ result = self._values.get("account")
2117
+ assert result is not None, "Required property 'account' is missing"
2118
+ return typing.cast(builtins.str, result)
2119
+
2120
+ @builtins.property
2121
+ def region(self) -> builtins.str:
2122
+ '''Query region.'''
2123
+ result = self._values.get("region")
2124
+ assert result is not None, "Required property 'region' is missing"
2125
+ return typing.cast(builtins.str, result)
2126
+
2127
+ @builtins.property
2128
+ def assume_role_additional_options(
2129
+ self,
2130
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
2131
+ '''Additional options to pass to STS when assuming the lookup role.
2132
+
2133
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
2134
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
2135
+
2136
+ :default: - No additional options.
2137
+
2138
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
2139
+ '''
2140
+ result = self._values.get("assume_role_additional_options")
2141
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
2142
+
2143
+ @builtins.property
2144
+ def lookup_role_arn(self) -> typing.Optional[builtins.str]:
2145
+ '''The ARN of the role that should be used to look up the missing values.
2146
+
2147
+ :default: - None
2148
+ '''
2149
+ result = self._values.get("lookup_role_arn")
2150
+ return typing.cast(typing.Optional[builtins.str], result)
2151
+
2152
+ @builtins.property
2153
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
2154
+ '''The ExternalId that needs to be supplied while assuming this role.
2155
+
2156
+ :default: - No ExternalId will be supplied
2157
+ '''
2158
+ result = self._values.get("lookup_role_external_id")
2159
+ return typing.cast(typing.Optional[builtins.str], result)
2160
+
2161
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2162
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2163
+
2164
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2165
+ return not (rhs == self)
2166
+
2167
+ def __repr__(self) -> str:
2168
+ return "ContextLookupRoleOptions(%s)" % ", ".join(
2169
+ k + "=" + repr(v) for k, v in self._values.items()
2170
+ )
2171
+
2172
+
2173
+ @jsii.enum(jsii_type="aws-cdk-lib.cloud_assembly_schema.ContextProvider")
2174
+ class ContextProvider(enum.Enum):
2175
+ '''Identifier for the context provider.'''
2176
+
2177
+ AMI_PROVIDER = "AMI_PROVIDER"
2178
+ '''AMI provider.'''
2179
+ AVAILABILITY_ZONE_PROVIDER = "AVAILABILITY_ZONE_PROVIDER"
2180
+ '''AZ provider.'''
2181
+ HOSTED_ZONE_PROVIDER = "HOSTED_ZONE_PROVIDER"
2182
+ '''Route53 Hosted Zone provider.'''
2127
2183
  SSM_PARAMETER_PROVIDER = "SSM_PARAMETER_PROVIDER"
2128
2184
  '''SSM Parameter Provider.'''
2129
2185
  VPC_PROVIDER = "VPC_PROVIDER"
@@ -4075,6 +4131,8 @@ class DockerImageAsset:
4075
4131
  # The values are placeholders you should change.
4076
4132
  from aws_cdk import cloud_assembly_schema
4077
4133
 
4134
+ # assume_role_additional_options: Any
4135
+
4078
4136
  docker_image_asset = DockerImageAsset(
4079
4137
  destinations={
4080
4138
  "destinations_key": DockerImageDestination(
@@ -4082,6 +4140,9 @@ class DockerImageAsset:
4082
4140
  repository_name="repositoryName",
4083
4141
 
4084
4142
  # the properties below are optional
4143
+ assume_role_additional_options={
4144
+ "assume_role_additional_options_key": assume_role_additional_options
4145
+ },
4085
4146
  assume_role_arn="assumeRoleArn",
4086
4147
  assume_role_external_id="assumeRoleExternalId",
4087
4148
  region="region"
@@ -4163,6 +4224,7 @@ class DockerImageAsset:
4163
4224
  jsii_type="aws-cdk-lib.cloud_assembly_schema.DockerImageDestination",
4164
4225
  jsii_struct_bases=[AwsDestination],
4165
4226
  name_mapping={
4227
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
4166
4228
  "assume_role_arn": "assumeRoleArn",
4167
4229
  "assume_role_external_id": "assumeRoleExternalId",
4168
4230
  "region": "region",
@@ -4174,6 +4236,7 @@ class DockerImageDestination(AwsDestination):
4174
4236
  def __init__(
4175
4237
  self,
4176
4238
  *,
4239
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
4177
4240
  assume_role_arn: typing.Optional[builtins.str] = None,
4178
4241
  assume_role_external_id: typing.Optional[builtins.str] = None,
4179
4242
  region: typing.Optional[builtins.str] = None,
@@ -4182,6 +4245,7 @@ class DockerImageDestination(AwsDestination):
4182
4245
  ) -> None:
4183
4246
  '''Where to publish docker images.
4184
4247
 
4248
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the role. - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead. Default: - No additional options.
4185
4249
  :param assume_role_arn: The role that needs to be assumed while publishing this asset. Default: - No role will be assumed
4186
4250
  :param assume_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
4187
4251
  :param region: The region where this asset will need to be published. Default: - Current region
@@ -4196,11 +4260,16 @@ class DockerImageDestination(AwsDestination):
4196
4260
  # The values are placeholders you should change.
4197
4261
  from aws_cdk import cloud_assembly_schema
4198
4262
 
4263
+ # assume_role_additional_options: Any
4264
+
4199
4265
  docker_image_destination = DockerImageDestination(
4200
4266
  image_tag="imageTag",
4201
4267
  repository_name="repositoryName",
4202
4268
 
4203
4269
  # the properties below are optional
4270
+ assume_role_additional_options={
4271
+ "assume_role_additional_options_key": assume_role_additional_options
4272
+ },
4204
4273
  assume_role_arn="assumeRoleArn",
4205
4274
  assume_role_external_id="assumeRoleExternalId",
4206
4275
  region="region"
@@ -4208,6 +4277,7 @@ class DockerImageDestination(AwsDestination):
4208
4277
  '''
4209
4278
  if __debug__:
4210
4279
  type_hints = typing.get_type_hints(_typecheckingstub__01e136052f71999035d3e1605dff6c0878e98a56b1d1493de1cc03b20f38345a)
4280
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
4211
4281
  check_type(argname="argument assume_role_arn", value=assume_role_arn, expected_type=type_hints["assume_role_arn"])
4212
4282
  check_type(argname="argument assume_role_external_id", value=assume_role_external_id, expected_type=type_hints["assume_role_external_id"])
4213
4283
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
@@ -4217,6 +4287,8 @@ class DockerImageDestination(AwsDestination):
4217
4287
  "image_tag": image_tag,
4218
4288
  "repository_name": repository_name,
4219
4289
  }
4290
+ if assume_role_additional_options is not None:
4291
+ self._values["assume_role_additional_options"] = assume_role_additional_options
4220
4292
  if assume_role_arn is not None:
4221
4293
  self._values["assume_role_arn"] = assume_role_arn
4222
4294
  if assume_role_external_id is not None:
@@ -4224,6 +4296,22 @@ class DockerImageDestination(AwsDestination):
4224
4296
  if region is not None:
4225
4297
  self._values["region"] = region
4226
4298
 
4299
+ @builtins.property
4300
+ def assume_role_additional_options(
4301
+ self,
4302
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
4303
+ '''Additional options to pass to STS when assuming the role.
4304
+
4305
+ - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead.
4306
+ - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead.
4307
+
4308
+ :default: - No additional options.
4309
+
4310
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
4311
+ '''
4312
+ result = self._values.get("assume_role_additional_options")
4313
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
4314
+
4227
4315
  @builtins.property
4228
4316
  def assume_role_arn(self) -> typing.Optional[builtins.str]:
4229
4317
  '''The role that needs to be assumed while publishing this asset.
@@ -4574,29 +4662,35 @@ class DockerImageSource:
4574
4662
 
4575
4663
  @jsii.data_type(
4576
4664
  jsii_type="aws-cdk-lib.cloud_assembly_schema.EndpointServiceAvailabilityZonesContextQuery",
4577
- jsii_struct_bases=[],
4665
+ jsii_struct_bases=[ContextLookupRoleOptions],
4578
4666
  name_mapping={
4579
4667
  "account": "account",
4580
4668
  "region": "region",
4581
- "service_name": "serviceName",
4669
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
4582
4670
  "lookup_role_arn": "lookupRoleArn",
4671
+ "lookup_role_external_id": "lookupRoleExternalId",
4672
+ "service_name": "serviceName",
4583
4673
  },
4584
4674
  )
4585
- class EndpointServiceAvailabilityZonesContextQuery:
4675
+ class EndpointServiceAvailabilityZonesContextQuery(ContextLookupRoleOptions):
4586
4676
  def __init__(
4587
4677
  self,
4588
4678
  *,
4589
4679
  account: builtins.str,
4590
4680
  region: builtins.str,
4591
- service_name: builtins.str,
4681
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
4592
4682
  lookup_role_arn: typing.Optional[builtins.str] = None,
4683
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
4684
+ service_name: builtins.str,
4593
4685
  ) -> None:
4594
4686
  '''Query to endpoint service context provider.
4595
4687
 
4596
4688
  :param account: Query account.
4597
4689
  :param region: Query region.
4598
- :param service_name: Query service name.
4690
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
4599
4691
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
4692
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
4693
+ :param service_name: Query service name.
4600
4694
 
4601
4695
  :exampleMetadata: fixture=_generated
4602
4696
 
@@ -4606,28 +4700,40 @@ class EndpointServiceAvailabilityZonesContextQuery:
4606
4700
  # The values are placeholders you should change.
4607
4701
  from aws_cdk import cloud_assembly_schema
4608
4702
 
4703
+ # assume_role_additional_options: Any
4704
+
4609
4705
  endpoint_service_availability_zones_context_query = EndpointServiceAvailabilityZonesContextQuery(
4610
4706
  account="account",
4611
4707
  region="region",
4612
4708
  service_name="serviceName",
4613
4709
 
4614
4710
  # the properties below are optional
4615
- lookup_role_arn="lookupRoleArn"
4711
+ assume_role_additional_options={
4712
+ "assume_role_additional_options_key": assume_role_additional_options
4713
+ },
4714
+ lookup_role_arn="lookupRoleArn",
4715
+ lookup_role_external_id="lookupRoleExternalId"
4616
4716
  )
4617
4717
  '''
4618
4718
  if __debug__:
4619
4719
  type_hints = typing.get_type_hints(_typecheckingstub__b028a59a345f6074485bae83f874fa7eca8081fea4616b491a43cfb788b0dd28)
4620
4720
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
4621
4721
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
4622
- check_type(argname="argument service_name", value=service_name, expected_type=type_hints["service_name"])
4722
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
4623
4723
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
4724
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
4725
+ check_type(argname="argument service_name", value=service_name, expected_type=type_hints["service_name"])
4624
4726
  self._values: typing.Dict[builtins.str, typing.Any] = {
4625
4727
  "account": account,
4626
4728
  "region": region,
4627
4729
  "service_name": service_name,
4628
4730
  }
4731
+ if assume_role_additional_options is not None:
4732
+ self._values["assume_role_additional_options"] = assume_role_additional_options
4629
4733
  if lookup_role_arn is not None:
4630
4734
  self._values["lookup_role_arn"] = lookup_role_arn
4735
+ if lookup_role_external_id is not None:
4736
+ self._values["lookup_role_external_id"] = lookup_role_external_id
4631
4737
 
4632
4738
  @builtins.property
4633
4739
  def account(self) -> builtins.str:
@@ -4644,11 +4750,20 @@ class EndpointServiceAvailabilityZonesContextQuery:
4644
4750
  return typing.cast(builtins.str, result)
4645
4751
 
4646
4752
  @builtins.property
4647
- def service_name(self) -> builtins.str:
4648
- '''Query service name.'''
4649
- result = self._values.get("service_name")
4650
- assert result is not None, "Required property 'service_name' is missing"
4651
- return typing.cast(builtins.str, result)
4753
+ def assume_role_additional_options(
4754
+ self,
4755
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
4756
+ '''Additional options to pass to STS when assuming the lookup role.
4757
+
4758
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
4759
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
4760
+
4761
+ :default: - No additional options.
4762
+
4763
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
4764
+ '''
4765
+ result = self._values.get("assume_role_additional_options")
4766
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
4652
4767
 
4653
4768
  @builtins.property
4654
4769
  def lookup_role_arn(self) -> typing.Optional[builtins.str]:
@@ -4659,6 +4774,22 @@ class EndpointServiceAvailabilityZonesContextQuery:
4659
4774
  result = self._values.get("lookup_role_arn")
4660
4775
  return typing.cast(typing.Optional[builtins.str], result)
4661
4776
 
4777
+ @builtins.property
4778
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
4779
+ '''The ExternalId that needs to be supplied while assuming this role.
4780
+
4781
+ :default: - No ExternalId will be supplied
4782
+ '''
4783
+ result = self._values.get("lookup_role_external_id")
4784
+ return typing.cast(typing.Optional[builtins.str], result)
4785
+
4786
+ @builtins.property
4787
+ def service_name(self) -> builtins.str:
4788
+ '''Query service name.'''
4789
+ result = self._values.get("service_name")
4790
+ assert result is not None, "Required property 'service_name' is missing"
4791
+ return typing.cast(builtins.str, result)
4792
+
4662
4793
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
4663
4794
  return isinstance(rhs, self.__class__) and rhs._values == self._values
4664
4795
 
@@ -4696,6 +4827,8 @@ class FileAsset:
4696
4827
  # The values are placeholders you should change.
4697
4828
  from aws_cdk import cloud_assembly_schema
4698
4829
 
4830
+ # assume_role_additional_options: Any
4831
+
4699
4832
  file_asset = FileAsset(
4700
4833
  destinations={
4701
4834
  "destinations_key": FileDestination(
@@ -4703,6 +4836,9 @@ class FileAsset:
4703
4836
  object_key="objectKey",
4704
4837
 
4705
4838
  # the properties below are optional
4839
+ assume_role_additional_options={
4840
+ "assume_role_additional_options_key": assume_role_additional_options
4841
+ },
4706
4842
  assume_role_arn="assumeRoleArn",
4707
4843
  assume_role_external_id="assumeRoleExternalId",
4708
4844
  region="region"
@@ -4890,6 +5026,7 @@ class FileAssetPackaging(enum.Enum):
4890
5026
  jsii_type="aws-cdk-lib.cloud_assembly_schema.FileDestination",
4891
5027
  jsii_struct_bases=[AwsDestination],
4892
5028
  name_mapping={
5029
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
4893
5030
  "assume_role_arn": "assumeRoleArn",
4894
5031
  "assume_role_external_id": "assumeRoleExternalId",
4895
5032
  "region": "region",
@@ -4901,6 +5038,7 @@ class FileDestination(AwsDestination):
4901
5038
  def __init__(
4902
5039
  self,
4903
5040
  *,
5041
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
4904
5042
  assume_role_arn: typing.Optional[builtins.str] = None,
4905
5043
  assume_role_external_id: typing.Optional[builtins.str] = None,
4906
5044
  region: typing.Optional[builtins.str] = None,
@@ -4909,6 +5047,7 @@ class FileDestination(AwsDestination):
4909
5047
  ) -> None:
4910
5048
  '''Where in S3 a file asset needs to be published.
4911
5049
 
5050
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the role. - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead. Default: - No additional options.
4912
5051
  :param assume_role_arn: The role that needs to be assumed while publishing this asset. Default: - No role will be assumed
4913
5052
  :param assume_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
4914
5053
  :param region: The region where this asset will need to be published. Default: - Current region
@@ -4923,11 +5062,16 @@ class FileDestination(AwsDestination):
4923
5062
  # The values are placeholders you should change.
4924
5063
  from aws_cdk import cloud_assembly_schema
4925
5064
 
5065
+ # assume_role_additional_options: Any
5066
+
4926
5067
  file_destination = FileDestination(
4927
5068
  bucket_name="bucketName",
4928
5069
  object_key="objectKey",
4929
5070
 
4930
5071
  # the properties below are optional
5072
+ assume_role_additional_options={
5073
+ "assume_role_additional_options_key": assume_role_additional_options
5074
+ },
4931
5075
  assume_role_arn="assumeRoleArn",
4932
5076
  assume_role_external_id="assumeRoleExternalId",
4933
5077
  region="region"
@@ -4935,6 +5079,7 @@ class FileDestination(AwsDestination):
4935
5079
  '''
4936
5080
  if __debug__:
4937
5081
  type_hints = typing.get_type_hints(_typecheckingstub__482362971cab2cc43f5645dc6db216e662ebd818f06c2cdcac27f66423f068f7)
5082
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
4938
5083
  check_type(argname="argument assume_role_arn", value=assume_role_arn, expected_type=type_hints["assume_role_arn"])
4939
5084
  check_type(argname="argument assume_role_external_id", value=assume_role_external_id, expected_type=type_hints["assume_role_external_id"])
4940
5085
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
@@ -4944,6 +5089,8 @@ class FileDestination(AwsDestination):
4944
5089
  "bucket_name": bucket_name,
4945
5090
  "object_key": object_key,
4946
5091
  }
5092
+ if assume_role_additional_options is not None:
5093
+ self._values["assume_role_additional_options"] = assume_role_additional_options
4947
5094
  if assume_role_arn is not None:
4948
5095
  self._values["assume_role_arn"] = assume_role_arn
4949
5096
  if assume_role_external_id is not None:
@@ -4951,6 +5098,22 @@ class FileDestination(AwsDestination):
4951
5098
  if region is not None:
4952
5099
  self._values["region"] = region
4953
5100
 
5101
+ @builtins.property
5102
+ def assume_role_additional_options(
5103
+ self,
5104
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
5105
+ '''Additional options to pass to STS when assuming the role.
5106
+
5107
+ - ``RoleArn`` should not be used. Use the dedicated ``assumeRoleArn`` property instead.
5108
+ - ``ExternalId`` should not be used. Use the dedicated ``assumeRoleExternalId`` instead.
5109
+
5110
+ :default: - No additional options.
5111
+
5112
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
5113
+ '''
5114
+ result = self._values.get("assume_role_additional_options")
5115
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
5116
+
4954
5117
  @builtins.property
4955
5118
  def assume_role_arn(self) -> typing.Optional[builtins.str]:
4956
5119
  '''The role that needs to be assumed while publishing this asset.
@@ -5204,33 +5367,39 @@ class Hooks:
5204
5367
 
5205
5368
  @jsii.data_type(
5206
5369
  jsii_type="aws-cdk-lib.cloud_assembly_schema.HostedZoneContextQuery",
5207
- jsii_struct_bases=[],
5370
+ jsii_struct_bases=[ContextLookupRoleOptions],
5208
5371
  name_mapping={
5209
5372
  "account": "account",
5210
- "domain_name": "domainName",
5211
5373
  "region": "region",
5374
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
5212
5375
  "lookup_role_arn": "lookupRoleArn",
5376
+ "lookup_role_external_id": "lookupRoleExternalId",
5377
+ "domain_name": "domainName",
5213
5378
  "private_zone": "privateZone",
5214
5379
  "vpc_id": "vpcId",
5215
5380
  },
5216
5381
  )
5217
- class HostedZoneContextQuery:
5382
+ class HostedZoneContextQuery(ContextLookupRoleOptions):
5218
5383
  def __init__(
5219
5384
  self,
5220
5385
  *,
5221
5386
  account: builtins.str,
5222
- domain_name: builtins.str,
5223
5387
  region: builtins.str,
5388
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
5224
5389
  lookup_role_arn: typing.Optional[builtins.str] = None,
5390
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
5391
+ domain_name: builtins.str,
5225
5392
  private_zone: typing.Optional[builtins.bool] = None,
5226
5393
  vpc_id: typing.Optional[builtins.str] = None,
5227
5394
  ) -> None:
5228
5395
  '''Query to hosted zone context provider.
5229
5396
 
5230
5397
  :param account: Query account.
5231
- :param domain_name: The domain name e.g. example.com to lookup.
5232
5398
  :param region: Query region.
5399
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
5233
5400
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
5401
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
5402
+ :param domain_name: The domain name e.g. example.com to lookup.
5234
5403
  :param private_zone: True if the zone you want to find is a private hosted zone. Default: false
5235
5404
  :param vpc_id: The VPC ID to that the private zone must be associated with. If you provide VPC ID and privateZone is false, this will return no results and raise an error. Default: - Required if privateZone=true
5236
5405
 
@@ -5242,13 +5411,19 @@ class HostedZoneContextQuery:
5242
5411
  # The values are placeholders you should change.
5243
5412
  from aws_cdk import cloud_assembly_schema
5244
5413
 
5414
+ # assume_role_additional_options: Any
5415
+
5245
5416
  hosted_zone_context_query = HostedZoneContextQuery(
5246
5417
  account="account",
5247
5418
  domain_name="domainName",
5248
5419
  region="region",
5249
5420
 
5250
5421
  # the properties below are optional
5422
+ assume_role_additional_options={
5423
+ "assume_role_additional_options_key": assume_role_additional_options
5424
+ },
5251
5425
  lookup_role_arn="lookupRoleArn",
5426
+ lookup_role_external_id="lookupRoleExternalId",
5252
5427
  private_zone=False,
5253
5428
  vpc_id="vpcId"
5254
5429
  )
@@ -5256,18 +5431,24 @@ class HostedZoneContextQuery:
5256
5431
  if __debug__:
5257
5432
  type_hints = typing.get_type_hints(_typecheckingstub__479c87e6b7f0a4547d04d73de1bad2d396c1e1383975038b6ca8a7ee078e9ab8)
5258
5433
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
5259
- check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
5260
5434
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
5435
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
5261
5436
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
5437
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
5438
+ check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
5262
5439
  check_type(argname="argument private_zone", value=private_zone, expected_type=type_hints["private_zone"])
5263
5440
  check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
5264
5441
  self._values: typing.Dict[builtins.str, typing.Any] = {
5265
5442
  "account": account,
5266
- "domain_name": domain_name,
5267
5443
  "region": region,
5444
+ "domain_name": domain_name,
5268
5445
  }
5446
+ if assume_role_additional_options is not None:
5447
+ self._values["assume_role_additional_options"] = assume_role_additional_options
5269
5448
  if lookup_role_arn is not None:
5270
5449
  self._values["lookup_role_arn"] = lookup_role_arn
5450
+ if lookup_role_external_id is not None:
5451
+ self._values["lookup_role_external_id"] = lookup_role_external_id
5271
5452
  if private_zone is not None:
5272
5453
  self._values["private_zone"] = private_zone
5273
5454
  if vpc_id is not None:
@@ -5280,13 +5461,6 @@ class HostedZoneContextQuery:
5280
5461
  assert result is not None, "Required property 'account' is missing"
5281
5462
  return typing.cast(builtins.str, result)
5282
5463
 
5283
- @builtins.property
5284
- def domain_name(self) -> builtins.str:
5285
- '''The domain name e.g. example.com to lookup.'''
5286
- result = self._values.get("domain_name")
5287
- assert result is not None, "Required property 'domain_name' is missing"
5288
- return typing.cast(builtins.str, result)
5289
-
5290
5464
  @builtins.property
5291
5465
  def region(self) -> builtins.str:
5292
5466
  '''Query region.'''
@@ -5294,6 +5468,22 @@ class HostedZoneContextQuery:
5294
5468
  assert result is not None, "Required property 'region' is missing"
5295
5469
  return typing.cast(builtins.str, result)
5296
5470
 
5471
+ @builtins.property
5472
+ def assume_role_additional_options(
5473
+ self,
5474
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
5475
+ '''Additional options to pass to STS when assuming the lookup role.
5476
+
5477
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
5478
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
5479
+
5480
+ :default: - No additional options.
5481
+
5482
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
5483
+ '''
5484
+ result = self._values.get("assume_role_additional_options")
5485
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
5486
+
5297
5487
  @builtins.property
5298
5488
  def lookup_role_arn(self) -> typing.Optional[builtins.str]:
5299
5489
  '''The ARN of the role that should be used to look up the missing values.
@@ -5303,6 +5493,22 @@ class HostedZoneContextQuery:
5303
5493
  result = self._values.get("lookup_role_arn")
5304
5494
  return typing.cast(typing.Optional[builtins.str], result)
5305
5495
 
5496
+ @builtins.property
5497
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
5498
+ '''The ExternalId that needs to be supplied while assuming this role.
5499
+
5500
+ :default: - No ExternalId will be supplied
5501
+ '''
5502
+ result = self._values.get("lookup_role_external_id")
5503
+ return typing.cast(typing.Optional[builtins.str], result)
5504
+
5505
+ @builtins.property
5506
+ def domain_name(self) -> builtins.str:
5507
+ '''The domain name e.g. example.com to lookup.'''
5508
+ result = self._values.get("domain_name")
5509
+ assert result is not None, "Required property 'domain_name' is missing"
5510
+ return typing.cast(builtins.str, result)
5511
+
5306
5512
  @builtins.property
5307
5513
  def private_zone(self) -> typing.Optional[builtins.bool]:
5308
5514
  '''True if the zone you want to find is a private hosted zone.
@@ -5554,29 +5760,35 @@ class IntegManifest:
5554
5760
 
5555
5761
  @jsii.data_type(
5556
5762
  jsii_type="aws-cdk-lib.cloud_assembly_schema.KeyContextQuery",
5557
- jsii_struct_bases=[],
5763
+ jsii_struct_bases=[ContextLookupRoleOptions],
5558
5764
  name_mapping={
5559
5765
  "account": "account",
5560
- "alias_name": "aliasName",
5561
5766
  "region": "region",
5767
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
5562
5768
  "lookup_role_arn": "lookupRoleArn",
5769
+ "lookup_role_external_id": "lookupRoleExternalId",
5770
+ "alias_name": "aliasName",
5563
5771
  },
5564
5772
  )
5565
- class KeyContextQuery:
5773
+ class KeyContextQuery(ContextLookupRoleOptions):
5566
5774
  def __init__(
5567
5775
  self,
5568
5776
  *,
5569
5777
  account: builtins.str,
5570
- alias_name: builtins.str,
5571
5778
  region: builtins.str,
5779
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
5572
5780
  lookup_role_arn: typing.Optional[builtins.str] = None,
5781
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
5782
+ alias_name: builtins.str,
5573
5783
  ) -> None:
5574
5784
  '''Query input for looking up a KMS Key.
5575
5785
 
5576
5786
  :param account: Query account.
5577
- :param alias_name: Alias name used to search the Key.
5578
5787
  :param region: Query region.
5788
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
5579
5789
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
5790
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
5791
+ :param alias_name: Alias name used to search the Key.
5580
5792
 
5581
5793
  :exampleMetadata: fixture=_generated
5582
5794
 
@@ -5586,28 +5798,40 @@ class KeyContextQuery:
5586
5798
  # The values are placeholders you should change.
5587
5799
  from aws_cdk import cloud_assembly_schema
5588
5800
 
5801
+ # assume_role_additional_options: Any
5802
+
5589
5803
  key_context_query = KeyContextQuery(
5590
5804
  account="account",
5591
5805
  alias_name="aliasName",
5592
5806
  region="region",
5593
5807
 
5594
5808
  # the properties below are optional
5595
- lookup_role_arn="lookupRoleArn"
5809
+ assume_role_additional_options={
5810
+ "assume_role_additional_options_key": assume_role_additional_options
5811
+ },
5812
+ lookup_role_arn="lookupRoleArn",
5813
+ lookup_role_external_id="lookupRoleExternalId"
5596
5814
  )
5597
5815
  '''
5598
5816
  if __debug__:
5599
5817
  type_hints = typing.get_type_hints(_typecheckingstub__b738d31e8937d0dc914b364457cedd3794a0911b61fec9b17eb3f8ad72e53832)
5600
5818
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
5601
- check_type(argname="argument alias_name", value=alias_name, expected_type=type_hints["alias_name"])
5602
5819
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
5820
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
5603
5821
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
5822
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
5823
+ check_type(argname="argument alias_name", value=alias_name, expected_type=type_hints["alias_name"])
5604
5824
  self._values: typing.Dict[builtins.str, typing.Any] = {
5605
5825
  "account": account,
5606
- "alias_name": alias_name,
5607
5826
  "region": region,
5827
+ "alias_name": alias_name,
5608
5828
  }
5829
+ if assume_role_additional_options is not None:
5830
+ self._values["assume_role_additional_options"] = assume_role_additional_options
5609
5831
  if lookup_role_arn is not None:
5610
5832
  self._values["lookup_role_arn"] = lookup_role_arn
5833
+ if lookup_role_external_id is not None:
5834
+ self._values["lookup_role_external_id"] = lookup_role_external_id
5611
5835
 
5612
5836
  @builtins.property
5613
5837
  def account(self) -> builtins.str:
@@ -5616,13 +5840,6 @@ class KeyContextQuery:
5616
5840
  assert result is not None, "Required property 'account' is missing"
5617
5841
  return typing.cast(builtins.str, result)
5618
5842
 
5619
- @builtins.property
5620
- def alias_name(self) -> builtins.str:
5621
- '''Alias name used to search the Key.'''
5622
- result = self._values.get("alias_name")
5623
- assert result is not None, "Required property 'alias_name' is missing"
5624
- return typing.cast(builtins.str, result)
5625
-
5626
5843
  @builtins.property
5627
5844
  def region(self) -> builtins.str:
5628
5845
  '''Query region.'''
@@ -5630,6 +5847,22 @@ class KeyContextQuery:
5630
5847
  assert result is not None, "Required property 'region' is missing"
5631
5848
  return typing.cast(builtins.str, result)
5632
5849
 
5850
+ @builtins.property
5851
+ def assume_role_additional_options(
5852
+ self,
5853
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
5854
+ '''Additional options to pass to STS when assuming the lookup role.
5855
+
5856
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
5857
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
5858
+
5859
+ :default: - No additional options.
5860
+
5861
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
5862
+ '''
5863
+ result = self._values.get("assume_role_additional_options")
5864
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
5865
+
5633
5866
  @builtins.property
5634
5867
  def lookup_role_arn(self) -> typing.Optional[builtins.str]:
5635
5868
  '''The ARN of the role that should be used to look up the missing values.
@@ -5639,6 +5872,22 @@ class KeyContextQuery:
5639
5872
  result = self._values.get("lookup_role_arn")
5640
5873
  return typing.cast(typing.Optional[builtins.str], result)
5641
5874
 
5875
+ @builtins.property
5876
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
5877
+ '''The ExternalId that needs to be supplied while assuming this role.
5878
+
5879
+ :default: - No ExternalId will be supplied
5880
+ '''
5881
+ result = self._values.get("lookup_role_external_id")
5882
+ return typing.cast(typing.Optional[builtins.str], result)
5883
+
5884
+ @builtins.property
5885
+ def alias_name(self) -> builtins.str:
5886
+ '''Alias name used to search the Key.'''
5887
+ result = self._values.get("alias_name")
5888
+ assert result is not None, "Required property 'alias_name' is missing"
5889
+ return typing.cast(builtins.str, result)
5890
+
5642
5891
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
5643
5892
  return isinstance(rhs, self.__class__) and rhs._values == self._values
5644
5893
 
@@ -5653,25 +5902,40 @@ class KeyContextQuery:
5653
5902
 
5654
5903
  @jsii.data_type(
5655
5904
  jsii_type="aws-cdk-lib.cloud_assembly_schema.LoadBalancerFilter",
5656
- jsii_struct_bases=[],
5905
+ jsii_struct_bases=[ContextLookupRoleOptions],
5657
5906
  name_mapping={
5907
+ "account": "account",
5908
+ "region": "region",
5909
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
5910
+ "lookup_role_arn": "lookupRoleArn",
5911
+ "lookup_role_external_id": "lookupRoleExternalId",
5658
5912
  "load_balancer_type": "loadBalancerType",
5659
5913
  "load_balancer_arn": "loadBalancerArn",
5660
5914
  "load_balancer_tags": "loadBalancerTags",
5661
5915
  },
5662
5916
  )
5663
- class LoadBalancerFilter:
5917
+ class LoadBalancerFilter(ContextLookupRoleOptions):
5664
5918
  def __init__(
5665
5919
  self,
5666
5920
  *,
5921
+ account: builtins.str,
5922
+ region: builtins.str,
5923
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
5924
+ lookup_role_arn: typing.Optional[builtins.str] = None,
5925
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
5667
5926
  load_balancer_type: "LoadBalancerType",
5668
5927
  load_balancer_arn: typing.Optional[builtins.str] = None,
5669
5928
  load_balancer_tags: typing.Optional[typing.Sequence[typing.Union["Tag", typing.Dict[builtins.str, typing.Any]]]] = None,
5670
5929
  ) -> None:
5671
5930
  '''Filters for selecting load balancers.
5672
5931
 
5673
- :param load_balancer_type: Filter load balancers by their type.
5674
- :param load_balancer_arn: Find by load balancer's ARN. Default: - does not search by load balancer arn
5932
+ :param account: Query account.
5933
+ :param region: Query region.
5934
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
5935
+ :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
5936
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
5937
+ :param load_balancer_type: Filter load balancers by their type.
5938
+ :param load_balancer_arn: Find by load balancer's ARN. Default: - does not search by load balancer arn
5675
5939
  :param load_balancer_tags: Match load balancer tags. Default: - does not match load balancers by tags
5676
5940
 
5677
5941
  :exampleMetadata: fixture=_generated
@@ -5682,30 +5946,100 @@ class LoadBalancerFilter:
5682
5946
  # The values are placeholders you should change.
5683
5947
  from aws_cdk import cloud_assembly_schema
5684
5948
 
5949
+ # assume_role_additional_options: Any
5950
+
5685
5951
  load_balancer_filter = LoadBalancerFilter(
5952
+ account="account",
5686
5953
  load_balancer_type=cloud_assembly_schema.LoadBalancerType.NETWORK,
5954
+ region="region",
5687
5955
 
5688
5956
  # the properties below are optional
5957
+ assume_role_additional_options={
5958
+ "assume_role_additional_options_key": assume_role_additional_options
5959
+ },
5689
5960
  load_balancer_arn="loadBalancerArn",
5690
5961
  load_balancer_tags=[Tag(
5691
5962
  key="key",
5692
5963
  value="value"
5693
- )]
5964
+ )],
5965
+ lookup_role_arn="lookupRoleArn",
5966
+ lookup_role_external_id="lookupRoleExternalId"
5694
5967
  )
5695
5968
  '''
5696
5969
  if __debug__:
5697
5970
  type_hints = typing.get_type_hints(_typecheckingstub__b57ff0c819ed8af3b684900df083604408f77b99e70f2dd2d12b1cc7e4a8e68c)
5971
+ check_type(argname="argument account", value=account, expected_type=type_hints["account"])
5972
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
5973
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
5974
+ check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
5975
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
5698
5976
  check_type(argname="argument load_balancer_type", value=load_balancer_type, expected_type=type_hints["load_balancer_type"])
5699
5977
  check_type(argname="argument load_balancer_arn", value=load_balancer_arn, expected_type=type_hints["load_balancer_arn"])
5700
5978
  check_type(argname="argument load_balancer_tags", value=load_balancer_tags, expected_type=type_hints["load_balancer_tags"])
5701
5979
  self._values: typing.Dict[builtins.str, typing.Any] = {
5980
+ "account": account,
5981
+ "region": region,
5702
5982
  "load_balancer_type": load_balancer_type,
5703
5983
  }
5984
+ if assume_role_additional_options is not None:
5985
+ self._values["assume_role_additional_options"] = assume_role_additional_options
5986
+ if lookup_role_arn is not None:
5987
+ self._values["lookup_role_arn"] = lookup_role_arn
5988
+ if lookup_role_external_id is not None:
5989
+ self._values["lookup_role_external_id"] = lookup_role_external_id
5704
5990
  if load_balancer_arn is not None:
5705
5991
  self._values["load_balancer_arn"] = load_balancer_arn
5706
5992
  if load_balancer_tags is not None:
5707
5993
  self._values["load_balancer_tags"] = load_balancer_tags
5708
5994
 
5995
+ @builtins.property
5996
+ def account(self) -> builtins.str:
5997
+ '''Query account.'''
5998
+ result = self._values.get("account")
5999
+ assert result is not None, "Required property 'account' is missing"
6000
+ return typing.cast(builtins.str, result)
6001
+
6002
+ @builtins.property
6003
+ def region(self) -> builtins.str:
6004
+ '''Query region.'''
6005
+ result = self._values.get("region")
6006
+ assert result is not None, "Required property 'region' is missing"
6007
+ return typing.cast(builtins.str, result)
6008
+
6009
+ @builtins.property
6010
+ def assume_role_additional_options(
6011
+ self,
6012
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
6013
+ '''Additional options to pass to STS when assuming the lookup role.
6014
+
6015
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
6016
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
6017
+
6018
+ :default: - No additional options.
6019
+
6020
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
6021
+ '''
6022
+ result = self._values.get("assume_role_additional_options")
6023
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
6024
+
6025
+ @builtins.property
6026
+ def lookup_role_arn(self) -> typing.Optional[builtins.str]:
6027
+ '''The ARN of the role that should be used to look up the missing values.
6028
+
6029
+ :default: - None
6030
+ '''
6031
+ result = self._values.get("lookup_role_arn")
6032
+ return typing.cast(typing.Optional[builtins.str], result)
6033
+
6034
+ @builtins.property
6035
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
6036
+ '''The ExternalId that needs to be supplied while assuming this role.
6037
+
6038
+ :default: - No ExternalId will be supplied
6039
+ '''
6040
+ result = self._values.get("lookup_role_external_id")
6041
+ return typing.cast(typing.Optional[builtins.str], result)
6042
+
5709
6043
  @builtins.property
5710
6044
  def load_balancer_type(self) -> "LoadBalancerType":
5711
6045
  '''Filter load balancers by their type.'''
@@ -5747,42 +6081,48 @@ class LoadBalancerFilter:
5747
6081
  jsii_type="aws-cdk-lib.cloud_assembly_schema.LoadBalancerListenerContextQuery",
5748
6082
  jsii_struct_bases=[LoadBalancerFilter],
5749
6083
  name_mapping={
6084
+ "account": "account",
6085
+ "region": "region",
6086
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
6087
+ "lookup_role_arn": "lookupRoleArn",
6088
+ "lookup_role_external_id": "lookupRoleExternalId",
5750
6089
  "load_balancer_type": "loadBalancerType",
5751
6090
  "load_balancer_arn": "loadBalancerArn",
5752
6091
  "load_balancer_tags": "loadBalancerTags",
5753
- "account": "account",
5754
- "region": "region",
5755
6092
  "listener_arn": "listenerArn",
5756
6093
  "listener_port": "listenerPort",
5757
6094
  "listener_protocol": "listenerProtocol",
5758
- "lookup_role_arn": "lookupRoleArn",
5759
6095
  },
5760
6096
  )
5761
6097
  class LoadBalancerListenerContextQuery(LoadBalancerFilter):
5762
6098
  def __init__(
5763
6099
  self,
5764
6100
  *,
6101
+ account: builtins.str,
6102
+ region: builtins.str,
6103
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
6104
+ lookup_role_arn: typing.Optional[builtins.str] = None,
6105
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
5765
6106
  load_balancer_type: "LoadBalancerType",
5766
6107
  load_balancer_arn: typing.Optional[builtins.str] = None,
5767
6108
  load_balancer_tags: typing.Optional[typing.Sequence[typing.Union["Tag", typing.Dict[builtins.str, typing.Any]]]] = None,
5768
- account: builtins.str,
5769
- region: builtins.str,
5770
6109
  listener_arn: typing.Optional[builtins.str] = None,
5771
6110
  listener_port: typing.Optional[jsii.Number] = None,
5772
6111
  listener_protocol: typing.Optional["LoadBalancerListenerProtocol"] = None,
5773
- lookup_role_arn: typing.Optional[builtins.str] = None,
5774
6112
  ) -> None:
5775
6113
  '''Query input for looking up a load balancer listener.
5776
6114
 
6115
+ :param account: Query account.
6116
+ :param region: Query region.
6117
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
6118
+ :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
6119
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
5777
6120
  :param load_balancer_type: Filter load balancers by their type.
5778
6121
  :param load_balancer_arn: Find by load balancer's ARN. Default: - does not search by load balancer arn
5779
6122
  :param load_balancer_tags: Match load balancer tags. Default: - does not match load balancers by tags
5780
- :param account: Query account.
5781
- :param region: Query region.
5782
6123
  :param listener_arn: Find by listener's arn. Default: - does not find by listener arn
5783
6124
  :param listener_port: Filter listeners by listener port. Default: - does not filter by a listener port
5784
6125
  :param listener_protocol: Filter by listener protocol. Default: - does not filter by listener protocol
5785
- :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
5786
6126
 
5787
6127
  :exampleMetadata: fixture=_generated
5788
6128
 
@@ -5792,12 +6132,17 @@ class LoadBalancerListenerContextQuery(LoadBalancerFilter):
5792
6132
  # The values are placeholders you should change.
5793
6133
  from aws_cdk import cloud_assembly_schema
5794
6134
 
6135
+ # assume_role_additional_options: Any
6136
+
5795
6137
  load_balancer_listener_context_query = LoadBalancerListenerContextQuery(
5796
6138
  account="account",
5797
6139
  load_balancer_type=cloud_assembly_schema.LoadBalancerType.NETWORK,
5798
6140
  region="region",
5799
6141
 
5800
6142
  # the properties below are optional
6143
+ assume_role_additional_options={
6144
+ "assume_role_additional_options_key": assume_role_additional_options
6145
+ },
5801
6146
  listener_arn="listenerArn",
5802
6147
  listener_port=123,
5803
6148
  listener_protocol=cloud_assembly_schema.LoadBalancerListenerProtocol.HTTP,
@@ -5806,25 +6151,34 @@ class LoadBalancerListenerContextQuery(LoadBalancerFilter):
5806
6151
  key="key",
5807
6152
  value="value"
5808
6153
  )],
5809
- lookup_role_arn="lookupRoleArn"
6154
+ lookup_role_arn="lookupRoleArn",
6155
+ lookup_role_external_id="lookupRoleExternalId"
5810
6156
  )
5811
6157
  '''
5812
6158
  if __debug__:
5813
6159
  type_hints = typing.get_type_hints(_typecheckingstub__0e0c4bf3a41978c03455699a53b8dc150feef48b4e8d1cb490e0e3cffa75ced7)
6160
+ check_type(argname="argument account", value=account, expected_type=type_hints["account"])
6161
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
6162
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
6163
+ check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
6164
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
5814
6165
  check_type(argname="argument load_balancer_type", value=load_balancer_type, expected_type=type_hints["load_balancer_type"])
5815
6166
  check_type(argname="argument load_balancer_arn", value=load_balancer_arn, expected_type=type_hints["load_balancer_arn"])
5816
6167
  check_type(argname="argument load_balancer_tags", value=load_balancer_tags, expected_type=type_hints["load_balancer_tags"])
5817
- check_type(argname="argument account", value=account, expected_type=type_hints["account"])
5818
- check_type(argname="argument region", value=region, expected_type=type_hints["region"])
5819
6168
  check_type(argname="argument listener_arn", value=listener_arn, expected_type=type_hints["listener_arn"])
5820
6169
  check_type(argname="argument listener_port", value=listener_port, expected_type=type_hints["listener_port"])
5821
6170
  check_type(argname="argument listener_protocol", value=listener_protocol, expected_type=type_hints["listener_protocol"])
5822
- check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
5823
6171
  self._values: typing.Dict[builtins.str, typing.Any] = {
5824
- "load_balancer_type": load_balancer_type,
5825
6172
  "account": account,
5826
6173
  "region": region,
6174
+ "load_balancer_type": load_balancer_type,
5827
6175
  }
6176
+ if assume_role_additional_options is not None:
6177
+ self._values["assume_role_additional_options"] = assume_role_additional_options
6178
+ if lookup_role_arn is not None:
6179
+ self._values["lookup_role_arn"] = lookup_role_arn
6180
+ if lookup_role_external_id is not None:
6181
+ self._values["lookup_role_external_id"] = lookup_role_external_id
5828
6182
  if load_balancer_arn is not None:
5829
6183
  self._values["load_balancer_arn"] = load_balancer_arn
5830
6184
  if load_balancer_tags is not None:
@@ -5835,8 +6189,54 @@ class LoadBalancerListenerContextQuery(LoadBalancerFilter):
5835
6189
  self._values["listener_port"] = listener_port
5836
6190
  if listener_protocol is not None:
5837
6191
  self._values["listener_protocol"] = listener_protocol
5838
- if lookup_role_arn is not None:
5839
- self._values["lookup_role_arn"] = lookup_role_arn
6192
+
6193
+ @builtins.property
6194
+ def account(self) -> builtins.str:
6195
+ '''Query account.'''
6196
+ result = self._values.get("account")
6197
+ assert result is not None, "Required property 'account' is missing"
6198
+ return typing.cast(builtins.str, result)
6199
+
6200
+ @builtins.property
6201
+ def region(self) -> builtins.str:
6202
+ '''Query region.'''
6203
+ result = self._values.get("region")
6204
+ assert result is not None, "Required property 'region' is missing"
6205
+ return typing.cast(builtins.str, result)
6206
+
6207
+ @builtins.property
6208
+ def assume_role_additional_options(
6209
+ self,
6210
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
6211
+ '''Additional options to pass to STS when assuming the lookup role.
6212
+
6213
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
6214
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
6215
+
6216
+ :default: - No additional options.
6217
+
6218
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
6219
+ '''
6220
+ result = self._values.get("assume_role_additional_options")
6221
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
6222
+
6223
+ @builtins.property
6224
+ def lookup_role_arn(self) -> typing.Optional[builtins.str]:
6225
+ '''The ARN of the role that should be used to look up the missing values.
6226
+
6227
+ :default: - None
6228
+ '''
6229
+ result = self._values.get("lookup_role_arn")
6230
+ return typing.cast(typing.Optional[builtins.str], result)
6231
+
6232
+ @builtins.property
6233
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
6234
+ '''The ExternalId that needs to be supplied while assuming this role.
6235
+
6236
+ :default: - No ExternalId will be supplied
6237
+ '''
6238
+ result = self._values.get("lookup_role_external_id")
6239
+ return typing.cast(typing.Optional[builtins.str], result)
5840
6240
 
5841
6241
  @builtins.property
5842
6242
  def load_balancer_type(self) -> "LoadBalancerType":
@@ -5863,20 +6263,6 @@ class LoadBalancerListenerContextQuery(LoadBalancerFilter):
5863
6263
  result = self._values.get("load_balancer_tags")
5864
6264
  return typing.cast(typing.Optional[typing.List["Tag"]], result)
5865
6265
 
5866
- @builtins.property
5867
- def account(self) -> builtins.str:
5868
- '''Query account.'''
5869
- result = self._values.get("account")
5870
- assert result is not None, "Required property 'account' is missing"
5871
- return typing.cast(builtins.str, result)
5872
-
5873
- @builtins.property
5874
- def region(self) -> builtins.str:
5875
- '''Query region.'''
5876
- result = self._values.get("region")
5877
- assert result is not None, "Required property 'region' is missing"
5878
- return typing.cast(builtins.str, result)
5879
-
5880
6266
  @builtins.property
5881
6267
  def listener_arn(self) -> typing.Optional[builtins.str]:
5882
6268
  '''Find by listener's arn.
@@ -5904,15 +6290,6 @@ class LoadBalancerListenerContextQuery(LoadBalancerFilter):
5904
6290
  result = self._values.get("listener_protocol")
5905
6291
  return typing.cast(typing.Optional["LoadBalancerListenerProtocol"], result)
5906
6292
 
5907
- @builtins.property
5908
- def lookup_role_arn(self) -> typing.Optional[builtins.str]:
5909
- '''The ARN of the role that should be used to look up the missing values.
5910
-
5911
- :default: - None
5912
- '''
5913
- result = self._values.get("lookup_role_arn")
5914
- return typing.cast(typing.Optional[builtins.str], result)
5915
-
5916
6293
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
5917
6294
  return isinstance(rhs, self.__class__) and rhs._values == self._values
5918
6295
 
@@ -6268,7 +6645,7 @@ class MissingContext:
6268
6645
  self,
6269
6646
  *,
6270
6647
  key: builtins.str,
6271
- props: typing.Union[typing.Union[AmiContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union[AvailabilityZonesContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union[HostedZoneContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["SSMParameterContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union["VpcContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[EndpointServiceAvailabilityZonesContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["LoadBalancerContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[LoadBalancerListenerContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["SecurityGroupContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[KeyContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["PluginContextQuery", typing.Dict[builtins.str, typing.Any]]],
6648
+ props: typing.Union[typing.Union["AmiContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union["AvailabilityZonesContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[HostedZoneContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["SSMParameterContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union["VpcContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[EndpointServiceAvailabilityZonesContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["LoadBalancerContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[LoadBalancerListenerContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["SecurityGroupContextQuery", typing.Dict[builtins.str, typing.Any]], typing.Union[KeyContextQuery, typing.Dict[builtins.str, typing.Any]], typing.Union["PluginContextQuery", typing.Dict[builtins.str, typing.Any]]],
6272
6649
  provider: ContextProvider,
6273
6650
  ) -> None:
6274
6651
  '''Represents a missing piece of context.
@@ -6285,6 +6662,8 @@ class MissingContext:
6285
6662
  # The values are placeholders you should change.
6286
6663
  from aws_cdk import cloud_assembly_schema
6287
6664
 
6665
+ # assume_role_additional_options: Any
6666
+
6288
6667
  missing_context = MissingContext(
6289
6668
  key="key",
6290
6669
  props=AmiContextQuery(
@@ -6295,7 +6674,11 @@ class MissingContext:
6295
6674
  region="region",
6296
6675
 
6297
6676
  # the properties below are optional
6677
+ assume_role_additional_options={
6678
+ "assume_role_additional_options_key": assume_role_additional_options
6679
+ },
6298
6680
  lookup_role_arn="lookupRoleArn",
6681
+ lookup_role_external_id="lookupRoleExternalId",
6299
6682
  owners=["owners"]
6300
6683
  ),
6301
6684
  provider=cloud_assembly_schema.ContextProvider.AMI_PROVIDER
@@ -6322,11 +6705,11 @@ class MissingContext:
6322
6705
  @builtins.property
6323
6706
  def props(
6324
6707
  self,
6325
- ) -> typing.Union[AmiContextQuery, AvailabilityZonesContextQuery, HostedZoneContextQuery, "SSMParameterContextQuery", "VpcContextQuery", EndpointServiceAvailabilityZonesContextQuery, "LoadBalancerContextQuery", LoadBalancerListenerContextQuery, "SecurityGroupContextQuery", KeyContextQuery, "PluginContextQuery"]:
6708
+ ) -> typing.Union["AmiContextQuery", "AvailabilityZonesContextQuery", HostedZoneContextQuery, "SSMParameterContextQuery", "VpcContextQuery", EndpointServiceAvailabilityZonesContextQuery, "LoadBalancerContextQuery", LoadBalancerListenerContextQuery, "SecurityGroupContextQuery", KeyContextQuery, "PluginContextQuery"]:
6326
6709
  '''A set of provider-specific options.'''
6327
6710
  result = self._values.get("props")
6328
6711
  assert result is not None, "Required property 'props' is missing"
6329
- return typing.cast(typing.Union[AmiContextQuery, AvailabilityZonesContextQuery, HostedZoneContextQuery, "SSMParameterContextQuery", "VpcContextQuery", EndpointServiceAvailabilityZonesContextQuery, "LoadBalancerContextQuery", LoadBalancerListenerContextQuery, "SecurityGroupContextQuery", KeyContextQuery, "PluginContextQuery"], result)
6712
+ return typing.cast(typing.Union["AmiContextQuery", "AvailabilityZonesContextQuery", HostedZoneContextQuery, "SSMParameterContextQuery", "VpcContextQuery", EndpointServiceAvailabilityZonesContextQuery, "LoadBalancerContextQuery", LoadBalancerListenerContextQuery, "SecurityGroupContextQuery", KeyContextQuery, "PluginContextQuery"], result)
6330
6713
 
6331
6714
  @builtins.property
6332
6715
  def provider(self) -> ContextProvider:
@@ -6538,29 +6921,35 @@ class RuntimeInfo:
6538
6921
 
6539
6922
  @jsii.data_type(
6540
6923
  jsii_type="aws-cdk-lib.cloud_assembly_schema.SSMParameterContextQuery",
6541
- jsii_struct_bases=[],
6924
+ jsii_struct_bases=[ContextLookupRoleOptions],
6542
6925
  name_mapping={
6543
6926
  "account": "account",
6544
- "parameter_name": "parameterName",
6545
6927
  "region": "region",
6928
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
6546
6929
  "lookup_role_arn": "lookupRoleArn",
6930
+ "lookup_role_external_id": "lookupRoleExternalId",
6931
+ "parameter_name": "parameterName",
6547
6932
  },
6548
6933
  )
6549
- class SSMParameterContextQuery:
6934
+ class SSMParameterContextQuery(ContextLookupRoleOptions):
6550
6935
  def __init__(
6551
6936
  self,
6552
6937
  *,
6553
6938
  account: builtins.str,
6554
- parameter_name: builtins.str,
6555
6939
  region: builtins.str,
6940
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
6556
6941
  lookup_role_arn: typing.Optional[builtins.str] = None,
6942
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
6943
+ parameter_name: builtins.str,
6557
6944
  ) -> None:
6558
6945
  '''Query to SSM Parameter Context Provider.
6559
6946
 
6560
6947
  :param account: Query account.
6561
- :param parameter_name: Parameter name to query.
6562
6948
  :param region: Query region.
6949
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
6563
6950
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
6951
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
6952
+ :param parameter_name: Parameter name to query.
6564
6953
 
6565
6954
  :exampleMetadata: fixture=_generated
6566
6955
 
@@ -6570,28 +6959,40 @@ class SSMParameterContextQuery:
6570
6959
  # The values are placeholders you should change.
6571
6960
  from aws_cdk import cloud_assembly_schema
6572
6961
 
6962
+ # assume_role_additional_options: Any
6963
+
6573
6964
  s_sMParameter_context_query = SSMParameterContextQuery(
6574
6965
  account="account",
6575
6966
  parameter_name="parameterName",
6576
6967
  region="region",
6577
6968
 
6578
6969
  # the properties below are optional
6579
- lookup_role_arn="lookupRoleArn"
6970
+ assume_role_additional_options={
6971
+ "assume_role_additional_options_key": assume_role_additional_options
6972
+ },
6973
+ lookup_role_arn="lookupRoleArn",
6974
+ lookup_role_external_id="lookupRoleExternalId"
6580
6975
  )
6581
6976
  '''
6582
6977
  if __debug__:
6583
6978
  type_hints = typing.get_type_hints(_typecheckingstub__684d2dfddbf9de1c9120fbcee643319c13ff10fa5e3227b4959d94fdac1463d5)
6584
6979
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
6585
- check_type(argname="argument parameter_name", value=parameter_name, expected_type=type_hints["parameter_name"])
6586
6980
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
6981
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
6587
6982
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
6983
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
6984
+ check_type(argname="argument parameter_name", value=parameter_name, expected_type=type_hints["parameter_name"])
6588
6985
  self._values: typing.Dict[builtins.str, typing.Any] = {
6589
6986
  "account": account,
6590
- "parameter_name": parameter_name,
6591
6987
  "region": region,
6988
+ "parameter_name": parameter_name,
6592
6989
  }
6990
+ if assume_role_additional_options is not None:
6991
+ self._values["assume_role_additional_options"] = assume_role_additional_options
6593
6992
  if lookup_role_arn is not None:
6594
6993
  self._values["lookup_role_arn"] = lookup_role_arn
6994
+ if lookup_role_external_id is not None:
6995
+ self._values["lookup_role_external_id"] = lookup_role_external_id
6595
6996
 
6596
6997
  @builtins.property
6597
6998
  def account(self) -> builtins.str:
@@ -6600,13 +7001,6 @@ class SSMParameterContextQuery:
6600
7001
  assert result is not None, "Required property 'account' is missing"
6601
7002
  return typing.cast(builtins.str, result)
6602
7003
 
6603
- @builtins.property
6604
- def parameter_name(self) -> builtins.str:
6605
- '''Parameter name to query.'''
6606
- result = self._values.get("parameter_name")
6607
- assert result is not None, "Required property 'parameter_name' is missing"
6608
- return typing.cast(builtins.str, result)
6609
-
6610
7004
  @builtins.property
6611
7005
  def region(self) -> builtins.str:
6612
7006
  '''Query region.'''
@@ -6614,6 +7008,22 @@ class SSMParameterContextQuery:
6614
7008
  assert result is not None, "Required property 'region' is missing"
6615
7009
  return typing.cast(builtins.str, result)
6616
7010
 
7011
+ @builtins.property
7012
+ def assume_role_additional_options(
7013
+ self,
7014
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
7015
+ '''Additional options to pass to STS when assuming the lookup role.
7016
+
7017
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
7018
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
7019
+
7020
+ :default: - No additional options.
7021
+
7022
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
7023
+ '''
7024
+ result = self._values.get("assume_role_additional_options")
7025
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
7026
+
6617
7027
  @builtins.property
6618
7028
  def lookup_role_arn(self) -> typing.Optional[builtins.str]:
6619
7029
  '''The ARN of the role that should be used to look up the missing values.
@@ -6623,6 +7033,22 @@ class SSMParameterContextQuery:
6623
7033
  result = self._values.get("lookup_role_arn")
6624
7034
  return typing.cast(typing.Optional[builtins.str], result)
6625
7035
 
7036
+ @builtins.property
7037
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
7038
+ '''The ExternalId that needs to be supplied while assuming this role.
7039
+
7040
+ :default: - No ExternalId will be supplied
7041
+ '''
7042
+ result = self._values.get("lookup_role_external_id")
7043
+ return typing.cast(typing.Optional[builtins.str], result)
7044
+
7045
+ @builtins.property
7046
+ def parameter_name(self) -> builtins.str:
7047
+ '''Parameter name to query.'''
7048
+ result = self._values.get("parameter_name")
7049
+ assert result is not None, "Required property 'parameter_name' is missing"
7050
+ return typing.cast(builtins.str, result)
7051
+
6626
7052
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
6627
7053
  return isinstance(rhs, self.__class__) and rhs._values == self._values
6628
7054
 
@@ -6637,23 +7063,27 @@ class SSMParameterContextQuery:
6637
7063
 
6638
7064
  @jsii.data_type(
6639
7065
  jsii_type="aws-cdk-lib.cloud_assembly_schema.SecurityGroupContextQuery",
6640
- jsii_struct_bases=[],
7066
+ jsii_struct_bases=[ContextLookupRoleOptions],
6641
7067
  name_mapping={
6642
7068
  "account": "account",
6643
7069
  "region": "region",
7070
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
6644
7071
  "lookup_role_arn": "lookupRoleArn",
7072
+ "lookup_role_external_id": "lookupRoleExternalId",
6645
7073
  "security_group_id": "securityGroupId",
6646
7074
  "security_group_name": "securityGroupName",
6647
7075
  "vpc_id": "vpcId",
6648
7076
  },
6649
7077
  )
6650
- class SecurityGroupContextQuery:
7078
+ class SecurityGroupContextQuery(ContextLookupRoleOptions):
6651
7079
  def __init__(
6652
7080
  self,
6653
7081
  *,
6654
7082
  account: builtins.str,
6655
7083
  region: builtins.str,
7084
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
6656
7085
  lookup_role_arn: typing.Optional[builtins.str] = None,
7086
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
6657
7087
  security_group_id: typing.Optional[builtins.str] = None,
6658
7088
  security_group_name: typing.Optional[builtins.str] = None,
6659
7089
  vpc_id: typing.Optional[builtins.str] = None,
@@ -6662,7 +7092,9 @@ class SecurityGroupContextQuery:
6662
7092
 
6663
7093
  :param account: Query account.
6664
7094
  :param region: Query region.
7095
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
6665
7096
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
7097
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
6666
7098
  :param security_group_id: Security group id. Default: - None
6667
7099
  :param security_group_name: Security group name. Default: - None
6668
7100
  :param vpc_id: VPC ID. Default: - None
@@ -6675,12 +7107,18 @@ class SecurityGroupContextQuery:
6675
7107
  # The values are placeholders you should change.
6676
7108
  from aws_cdk import cloud_assembly_schema
6677
7109
 
7110
+ # assume_role_additional_options: Any
7111
+
6678
7112
  security_group_context_query = SecurityGroupContextQuery(
6679
7113
  account="account",
6680
7114
  region="region",
6681
7115
 
6682
7116
  # the properties below are optional
7117
+ assume_role_additional_options={
7118
+ "assume_role_additional_options_key": assume_role_additional_options
7119
+ },
6683
7120
  lookup_role_arn="lookupRoleArn",
7121
+ lookup_role_external_id="lookupRoleExternalId",
6684
7122
  security_group_id="securityGroupId",
6685
7123
  security_group_name="securityGroupName",
6686
7124
  vpc_id="vpcId"
@@ -6690,7 +7128,9 @@ class SecurityGroupContextQuery:
6690
7128
  type_hints = typing.get_type_hints(_typecheckingstub__ab27bdfc9deaaa99cc0b29d10214dea6da9d91e77b9d18d5a5f9a2b7f4578cb4)
6691
7129
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
6692
7130
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
7131
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
6693
7132
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
7133
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
6694
7134
  check_type(argname="argument security_group_id", value=security_group_id, expected_type=type_hints["security_group_id"])
6695
7135
  check_type(argname="argument security_group_name", value=security_group_name, expected_type=type_hints["security_group_name"])
6696
7136
  check_type(argname="argument vpc_id", value=vpc_id, expected_type=type_hints["vpc_id"])
@@ -6698,8 +7138,12 @@ class SecurityGroupContextQuery:
6698
7138
  "account": account,
6699
7139
  "region": region,
6700
7140
  }
7141
+ if assume_role_additional_options is not None:
7142
+ self._values["assume_role_additional_options"] = assume_role_additional_options
6701
7143
  if lookup_role_arn is not None:
6702
7144
  self._values["lookup_role_arn"] = lookup_role_arn
7145
+ if lookup_role_external_id is not None:
7146
+ self._values["lookup_role_external_id"] = lookup_role_external_id
6703
7147
  if security_group_id is not None:
6704
7148
  self._values["security_group_id"] = security_group_id
6705
7149
  if security_group_name is not None:
@@ -6721,6 +7165,22 @@ class SecurityGroupContextQuery:
6721
7165
  assert result is not None, "Required property 'region' is missing"
6722
7166
  return typing.cast(builtins.str, result)
6723
7167
 
7168
+ @builtins.property
7169
+ def assume_role_additional_options(
7170
+ self,
7171
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
7172
+ '''Additional options to pass to STS when assuming the lookup role.
7173
+
7174
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
7175
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
7176
+
7177
+ :default: - No additional options.
7178
+
7179
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
7180
+ '''
7181
+ result = self._values.get("assume_role_additional_options")
7182
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
7183
+
6724
7184
  @builtins.property
6725
7185
  def lookup_role_arn(self) -> typing.Optional[builtins.str]:
6726
7186
  '''The ARN of the role that should be used to look up the missing values.
@@ -6730,6 +7190,15 @@ class SecurityGroupContextQuery:
6730
7190
  result = self._values.get("lookup_role_arn")
6731
7191
  return typing.cast(typing.Optional[builtins.str], result)
6732
7192
 
7193
+ @builtins.property
7194
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
7195
+ '''The ExternalId that needs to be supplied while assuming this role.
7196
+
7197
+ :default: - No ExternalId will be supplied
7198
+ '''
7199
+ result = self._values.get("lookup_role_external_id")
7200
+ return typing.cast(typing.Optional[builtins.str], result)
7201
+
6733
7202
  @builtins.property
6734
7203
  def security_group_id(self) -> typing.Optional[builtins.str]:
6735
7204
  '''Security group id.
@@ -7131,25 +7600,29 @@ class TreeArtifactProperties:
7131
7600
 
7132
7601
  @jsii.data_type(
7133
7602
  jsii_type="aws-cdk-lib.cloud_assembly_schema.VpcContextQuery",
7134
- jsii_struct_bases=[],
7603
+ jsii_struct_bases=[ContextLookupRoleOptions],
7135
7604
  name_mapping={
7136
7605
  "account": "account",
7137
- "filter": "filter",
7138
7606
  "region": "region",
7607
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
7139
7608
  "lookup_role_arn": "lookupRoleArn",
7609
+ "lookup_role_external_id": "lookupRoleExternalId",
7610
+ "filter": "filter",
7140
7611
  "return_asymmetric_subnets": "returnAsymmetricSubnets",
7141
7612
  "return_vpn_gateways": "returnVpnGateways",
7142
7613
  "subnet_group_name_tag": "subnetGroupNameTag",
7143
7614
  },
7144
7615
  )
7145
- class VpcContextQuery:
7616
+ class VpcContextQuery(ContextLookupRoleOptions):
7146
7617
  def __init__(
7147
7618
  self,
7148
7619
  *,
7149
7620
  account: builtins.str,
7150
- filter: typing.Mapping[builtins.str, builtins.str],
7151
7621
  region: builtins.str,
7622
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7152
7623
  lookup_role_arn: typing.Optional[builtins.str] = None,
7624
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
7625
+ filter: typing.Mapping[builtins.str, builtins.str],
7153
7626
  return_asymmetric_subnets: typing.Optional[builtins.bool] = None,
7154
7627
  return_vpn_gateways: typing.Optional[builtins.bool] = None,
7155
7628
  subnet_group_name_tag: typing.Optional[builtins.str] = None,
@@ -7157,9 +7630,11 @@ class VpcContextQuery:
7157
7630
  '''Query input for looking up a VPC.
7158
7631
 
7159
7632
  :param account: Query account.
7160
- :param filter: Filters to apply to the VPC. Filter parameters are the same as passed to DescribeVpcs.
7161
7633
  :param region: Query region.
7634
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
7162
7635
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
7636
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
7637
+ :param filter: Filters to apply to the VPC. Filter parameters are the same as passed to DescribeVpcs.
7163
7638
  :param return_asymmetric_subnets: Whether to populate the subnetGroups field of the ``VpcContextResponse``, which contains potentially asymmetric subnet groups. Default: false
7164
7639
  :param return_vpn_gateways: Whether to populate the ``vpnGatewayId`` field of the ``VpcContextResponse``, which contains the VPN Gateway ID, if one exists. You can explicitly disable this in order to avoid the lookup if you know the VPC does not have a VPN Gatway attached. Default: true
7165
7640
  :param subnet_group_name_tag: Optional tag for subnet group name. If not provided, we'll look at the aws-cdk:subnet-name tag. If the subnet does not have the specified tag, we'll use its type as the name. Default: 'aws-cdk:subnet-name'
@@ -7172,6 +7647,8 @@ class VpcContextQuery:
7172
7647
  # The values are placeholders you should change.
7173
7648
  from aws_cdk import cloud_assembly_schema
7174
7649
 
7650
+ # assume_role_additional_options: Any
7651
+
7175
7652
  vpc_context_query = VpcContextQuery(
7176
7653
  account="account",
7177
7654
  filter={
@@ -7180,7 +7657,11 @@ class VpcContextQuery:
7180
7657
  region="region",
7181
7658
 
7182
7659
  # the properties below are optional
7660
+ assume_role_additional_options={
7661
+ "assume_role_additional_options_key": assume_role_additional_options
7662
+ },
7183
7663
  lookup_role_arn="lookupRoleArn",
7664
+ lookup_role_external_id="lookupRoleExternalId",
7184
7665
  return_asymmetric_subnets=False,
7185
7666
  return_vpn_gateways=False,
7186
7667
  subnet_group_name_tag="subnetGroupNameTag"
@@ -7189,19 +7670,25 @@ class VpcContextQuery:
7189
7670
  if __debug__:
7190
7671
  type_hints = typing.get_type_hints(_typecheckingstub__793c311275bf258c4baaae63fe63966f0fd334129e469b7dc83e548f2cbf5318)
7191
7672
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
7192
- check_type(argname="argument filter", value=filter, expected_type=type_hints["filter"])
7193
7673
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
7674
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
7194
7675
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
7676
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
7677
+ check_type(argname="argument filter", value=filter, expected_type=type_hints["filter"])
7195
7678
  check_type(argname="argument return_asymmetric_subnets", value=return_asymmetric_subnets, expected_type=type_hints["return_asymmetric_subnets"])
7196
7679
  check_type(argname="argument return_vpn_gateways", value=return_vpn_gateways, expected_type=type_hints["return_vpn_gateways"])
7197
7680
  check_type(argname="argument subnet_group_name_tag", value=subnet_group_name_tag, expected_type=type_hints["subnet_group_name_tag"])
7198
7681
  self._values: typing.Dict[builtins.str, typing.Any] = {
7199
7682
  "account": account,
7200
- "filter": filter,
7201
7683
  "region": region,
7684
+ "filter": filter,
7202
7685
  }
7686
+ if assume_role_additional_options is not None:
7687
+ self._values["assume_role_additional_options"] = assume_role_additional_options
7203
7688
  if lookup_role_arn is not None:
7204
7689
  self._values["lookup_role_arn"] = lookup_role_arn
7690
+ if lookup_role_external_id is not None:
7691
+ self._values["lookup_role_external_id"] = lookup_role_external_id
7205
7692
  if return_asymmetric_subnets is not None:
7206
7693
  self._values["return_asymmetric_subnets"] = return_asymmetric_subnets
7207
7694
  if return_vpn_gateways is not None:
@@ -7216,18 +7703,6 @@ class VpcContextQuery:
7216
7703
  assert result is not None, "Required property 'account' is missing"
7217
7704
  return typing.cast(builtins.str, result)
7218
7705
 
7219
- @builtins.property
7220
- def filter(self) -> typing.Mapping[builtins.str, builtins.str]:
7221
- '''Filters to apply to the VPC.
7222
-
7223
- Filter parameters are the same as passed to DescribeVpcs.
7224
-
7225
- :see: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html
7226
- '''
7227
- result = self._values.get("filter")
7228
- assert result is not None, "Required property 'filter' is missing"
7229
- return typing.cast(typing.Mapping[builtins.str, builtins.str], result)
7230
-
7231
7706
  @builtins.property
7232
7707
  def region(self) -> builtins.str:
7233
7708
  '''Query region.'''
@@ -7235,6 +7710,22 @@ class VpcContextQuery:
7235
7710
  assert result is not None, "Required property 'region' is missing"
7236
7711
  return typing.cast(builtins.str, result)
7237
7712
 
7713
+ @builtins.property
7714
+ def assume_role_additional_options(
7715
+ self,
7716
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
7717
+ '''Additional options to pass to STS when assuming the lookup role.
7718
+
7719
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
7720
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
7721
+
7722
+ :default: - No additional options.
7723
+
7724
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
7725
+ '''
7726
+ result = self._values.get("assume_role_additional_options")
7727
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
7728
+
7238
7729
  @builtins.property
7239
7730
  def lookup_role_arn(self) -> typing.Optional[builtins.str]:
7240
7731
  '''The ARN of the role that should be used to look up the missing values.
@@ -7245,21 +7736,42 @@ class VpcContextQuery:
7245
7736
  return typing.cast(typing.Optional[builtins.str], result)
7246
7737
 
7247
7738
  @builtins.property
7248
- def return_asymmetric_subnets(self) -> typing.Optional[builtins.bool]:
7249
- '''Whether to populate the subnetGroups field of the ``VpcContextResponse``, which contains potentially asymmetric subnet groups.
7739
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
7740
+ '''The ExternalId that needs to be supplied while assuming this role.
7250
7741
 
7251
- :default: false
7742
+ :default: - No ExternalId will be supplied
7252
7743
  '''
7253
- result = self._values.get("return_asymmetric_subnets")
7254
- return typing.cast(typing.Optional[builtins.bool], result)
7744
+ result = self._values.get("lookup_role_external_id")
7745
+ return typing.cast(typing.Optional[builtins.str], result)
7255
7746
 
7256
7747
  @builtins.property
7257
- def return_vpn_gateways(self) -> typing.Optional[builtins.bool]:
7258
- '''Whether to populate the ``vpnGatewayId`` field of the ``VpcContextResponse``, which contains the VPN Gateway ID, if one exists.
7748
+ def filter(self) -> typing.Mapping[builtins.str, builtins.str]:
7749
+ '''Filters to apply to the VPC.
7259
7750
 
7260
- You can explicitly
7261
- disable this in order to avoid the lookup if you know the VPC does not have
7262
- a VPN Gatway attached.
7751
+ Filter parameters are the same as passed to DescribeVpcs.
7752
+
7753
+ :see: https://docs.aws.amazon.com/AWSEC2/latest/APIReference/API_DescribeVpcs.html
7754
+ '''
7755
+ result = self._values.get("filter")
7756
+ assert result is not None, "Required property 'filter' is missing"
7757
+ return typing.cast(typing.Mapping[builtins.str, builtins.str], result)
7758
+
7759
+ @builtins.property
7760
+ def return_asymmetric_subnets(self) -> typing.Optional[builtins.bool]:
7761
+ '''Whether to populate the subnetGroups field of the ``VpcContextResponse``, which contains potentially asymmetric subnet groups.
7762
+
7763
+ :default: false
7764
+ '''
7765
+ result = self._values.get("return_asymmetric_subnets")
7766
+ return typing.cast(typing.Optional[builtins.bool], result)
7767
+
7768
+ @builtins.property
7769
+ def return_vpn_gateways(self) -> typing.Optional[builtins.bool]:
7770
+ '''Whether to populate the ``vpnGatewayId`` field of the ``VpcContextResponse``, which contains the VPN Gateway ID, if one exists.
7771
+
7772
+ You can explicitly
7773
+ disable this in order to avoid the lookup if you know the VPC does not have
7774
+ a VPN Gatway attached.
7263
7775
 
7264
7776
  :default: true
7265
7777
  '''
@@ -7291,37 +7803,332 @@ class VpcContextQuery:
7291
7803
  )
7292
7804
 
7293
7805
 
7806
+ @jsii.data_type(
7807
+ jsii_type="aws-cdk-lib.cloud_assembly_schema.AmiContextQuery",
7808
+ jsii_struct_bases=[ContextLookupRoleOptions],
7809
+ name_mapping={
7810
+ "account": "account",
7811
+ "region": "region",
7812
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
7813
+ "lookup_role_arn": "lookupRoleArn",
7814
+ "lookup_role_external_id": "lookupRoleExternalId",
7815
+ "filters": "filters",
7816
+ "owners": "owners",
7817
+ },
7818
+ )
7819
+ class AmiContextQuery(ContextLookupRoleOptions):
7820
+ def __init__(
7821
+ self,
7822
+ *,
7823
+ account: builtins.str,
7824
+ region: builtins.str,
7825
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7826
+ lookup_role_arn: typing.Optional[builtins.str] = None,
7827
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
7828
+ filters: typing.Mapping[builtins.str, typing.Sequence[builtins.str]],
7829
+ owners: typing.Optional[typing.Sequence[builtins.str]] = None,
7830
+ ) -> None:
7831
+ '''Query to AMI context provider.
7832
+
7833
+ :param account: Query account.
7834
+ :param region: Query region.
7835
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
7836
+ :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
7837
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
7838
+ :param filters: Filters to DescribeImages call.
7839
+ :param owners: Owners to DescribeImages call. Default: - All owners
7840
+
7841
+ :exampleMetadata: fixture=_generated
7842
+
7843
+ Example::
7844
+
7845
+ # The code below shows an example of how to instantiate this type.
7846
+ # The values are placeholders you should change.
7847
+ from aws_cdk import cloud_assembly_schema
7848
+
7849
+ # assume_role_additional_options: Any
7850
+
7851
+ ami_context_query = AmiContextQuery(
7852
+ account="account",
7853
+ filters={
7854
+ "filters_key": ["filters"]
7855
+ },
7856
+ region="region",
7857
+
7858
+ # the properties below are optional
7859
+ assume_role_additional_options={
7860
+ "assume_role_additional_options_key": assume_role_additional_options
7861
+ },
7862
+ lookup_role_arn="lookupRoleArn",
7863
+ lookup_role_external_id="lookupRoleExternalId",
7864
+ owners=["owners"]
7865
+ )
7866
+ '''
7867
+ if __debug__:
7868
+ type_hints = typing.get_type_hints(_typecheckingstub__9ad6944b308c0d053938a9bf5ce1be77af5b529135dc35a4c245384840501111)
7869
+ check_type(argname="argument account", value=account, expected_type=type_hints["account"])
7870
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
7871
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
7872
+ check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
7873
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
7874
+ check_type(argname="argument filters", value=filters, expected_type=type_hints["filters"])
7875
+ check_type(argname="argument owners", value=owners, expected_type=type_hints["owners"])
7876
+ self._values: typing.Dict[builtins.str, typing.Any] = {
7877
+ "account": account,
7878
+ "region": region,
7879
+ "filters": filters,
7880
+ }
7881
+ if assume_role_additional_options is not None:
7882
+ self._values["assume_role_additional_options"] = assume_role_additional_options
7883
+ if lookup_role_arn is not None:
7884
+ self._values["lookup_role_arn"] = lookup_role_arn
7885
+ if lookup_role_external_id is not None:
7886
+ self._values["lookup_role_external_id"] = lookup_role_external_id
7887
+ if owners is not None:
7888
+ self._values["owners"] = owners
7889
+
7890
+ @builtins.property
7891
+ def account(self) -> builtins.str:
7892
+ '''Query account.'''
7893
+ result = self._values.get("account")
7894
+ assert result is not None, "Required property 'account' is missing"
7895
+ return typing.cast(builtins.str, result)
7896
+
7897
+ @builtins.property
7898
+ def region(self) -> builtins.str:
7899
+ '''Query region.'''
7900
+ result = self._values.get("region")
7901
+ assert result is not None, "Required property 'region' is missing"
7902
+ return typing.cast(builtins.str, result)
7903
+
7904
+ @builtins.property
7905
+ def assume_role_additional_options(
7906
+ self,
7907
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
7908
+ '''Additional options to pass to STS when assuming the lookup role.
7909
+
7910
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
7911
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
7912
+
7913
+ :default: - No additional options.
7914
+
7915
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
7916
+ '''
7917
+ result = self._values.get("assume_role_additional_options")
7918
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
7919
+
7920
+ @builtins.property
7921
+ def lookup_role_arn(self) -> typing.Optional[builtins.str]:
7922
+ '''The ARN of the role that should be used to look up the missing values.
7923
+
7924
+ :default: - None
7925
+ '''
7926
+ result = self._values.get("lookup_role_arn")
7927
+ return typing.cast(typing.Optional[builtins.str], result)
7928
+
7929
+ @builtins.property
7930
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
7931
+ '''The ExternalId that needs to be supplied while assuming this role.
7932
+
7933
+ :default: - No ExternalId will be supplied
7934
+ '''
7935
+ result = self._values.get("lookup_role_external_id")
7936
+ return typing.cast(typing.Optional[builtins.str], result)
7937
+
7938
+ @builtins.property
7939
+ def filters(self) -> typing.Mapping[builtins.str, typing.List[builtins.str]]:
7940
+ '''Filters to DescribeImages call.'''
7941
+ result = self._values.get("filters")
7942
+ assert result is not None, "Required property 'filters' is missing"
7943
+ return typing.cast(typing.Mapping[builtins.str, typing.List[builtins.str]], result)
7944
+
7945
+ @builtins.property
7946
+ def owners(self) -> typing.Optional[typing.List[builtins.str]]:
7947
+ '''Owners to DescribeImages call.
7948
+
7949
+ :default: - All owners
7950
+ '''
7951
+ result = self._values.get("owners")
7952
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
7953
+
7954
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
7955
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
7956
+
7957
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
7958
+ return not (rhs == self)
7959
+
7960
+ def __repr__(self) -> str:
7961
+ return "AmiContextQuery(%s)" % ", ".join(
7962
+ k + "=" + repr(v) for k, v in self._values.items()
7963
+ )
7964
+
7965
+
7966
+ @jsii.data_type(
7967
+ jsii_type="aws-cdk-lib.cloud_assembly_schema.AvailabilityZonesContextQuery",
7968
+ jsii_struct_bases=[ContextLookupRoleOptions],
7969
+ name_mapping={
7970
+ "account": "account",
7971
+ "region": "region",
7972
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
7973
+ "lookup_role_arn": "lookupRoleArn",
7974
+ "lookup_role_external_id": "lookupRoleExternalId",
7975
+ },
7976
+ )
7977
+ class AvailabilityZonesContextQuery(ContextLookupRoleOptions):
7978
+ def __init__(
7979
+ self,
7980
+ *,
7981
+ account: builtins.str,
7982
+ region: builtins.str,
7983
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7984
+ lookup_role_arn: typing.Optional[builtins.str] = None,
7985
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
7986
+ ) -> None:
7987
+ '''Query to availability zone context provider.
7988
+
7989
+ :param account: Query account.
7990
+ :param region: Query region.
7991
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
7992
+ :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
7993
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
7994
+
7995
+ :exampleMetadata: fixture=_generated
7996
+
7997
+ Example::
7998
+
7999
+ # The code below shows an example of how to instantiate this type.
8000
+ # The values are placeholders you should change.
8001
+ from aws_cdk import cloud_assembly_schema
8002
+
8003
+ # assume_role_additional_options: Any
8004
+
8005
+ availability_zones_context_query = AvailabilityZonesContextQuery(
8006
+ account="account",
8007
+ region="region",
8008
+
8009
+ # the properties below are optional
8010
+ assume_role_additional_options={
8011
+ "assume_role_additional_options_key": assume_role_additional_options
8012
+ },
8013
+ lookup_role_arn="lookupRoleArn",
8014
+ lookup_role_external_id="lookupRoleExternalId"
8015
+ )
8016
+ '''
8017
+ if __debug__:
8018
+ type_hints = typing.get_type_hints(_typecheckingstub__e23cb5710241f65fda5e65504911a7340786a62ce9cf7c60c9cfc1d4d4a05753)
8019
+ check_type(argname="argument account", value=account, expected_type=type_hints["account"])
8020
+ check_type(argname="argument region", value=region, expected_type=type_hints["region"])
8021
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
8022
+ check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
8023
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
8024
+ self._values: typing.Dict[builtins.str, typing.Any] = {
8025
+ "account": account,
8026
+ "region": region,
8027
+ }
8028
+ if assume_role_additional_options is not None:
8029
+ self._values["assume_role_additional_options"] = assume_role_additional_options
8030
+ if lookup_role_arn is not None:
8031
+ self._values["lookup_role_arn"] = lookup_role_arn
8032
+ if lookup_role_external_id is not None:
8033
+ self._values["lookup_role_external_id"] = lookup_role_external_id
8034
+
8035
+ @builtins.property
8036
+ def account(self) -> builtins.str:
8037
+ '''Query account.'''
8038
+ result = self._values.get("account")
8039
+ assert result is not None, "Required property 'account' is missing"
8040
+ return typing.cast(builtins.str, result)
8041
+
8042
+ @builtins.property
8043
+ def region(self) -> builtins.str:
8044
+ '''Query region.'''
8045
+ result = self._values.get("region")
8046
+ assert result is not None, "Required property 'region' is missing"
8047
+ return typing.cast(builtins.str, result)
8048
+
8049
+ @builtins.property
8050
+ def assume_role_additional_options(
8051
+ self,
8052
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
8053
+ '''Additional options to pass to STS when assuming the lookup role.
8054
+
8055
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
8056
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
8057
+
8058
+ :default: - No additional options.
8059
+
8060
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
8061
+ '''
8062
+ result = self._values.get("assume_role_additional_options")
8063
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
8064
+
8065
+ @builtins.property
8066
+ def lookup_role_arn(self) -> typing.Optional[builtins.str]:
8067
+ '''The ARN of the role that should be used to look up the missing values.
8068
+
8069
+ :default: - None
8070
+ '''
8071
+ result = self._values.get("lookup_role_arn")
8072
+ return typing.cast(typing.Optional[builtins.str], result)
8073
+
8074
+ @builtins.property
8075
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
8076
+ '''The ExternalId that needs to be supplied while assuming this role.
8077
+
8078
+ :default: - No ExternalId will be supplied
8079
+ '''
8080
+ result = self._values.get("lookup_role_external_id")
8081
+ return typing.cast(typing.Optional[builtins.str], result)
8082
+
8083
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
8084
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
8085
+
8086
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
8087
+ return not (rhs == self)
8088
+
8089
+ def __repr__(self) -> str:
8090
+ return "AvailabilityZonesContextQuery(%s)" % ", ".join(
8091
+ k + "=" + repr(v) for k, v in self._values.items()
8092
+ )
8093
+
8094
+
7294
8095
  @jsii.data_type(
7295
8096
  jsii_type="aws-cdk-lib.cloud_assembly_schema.LoadBalancerContextQuery",
7296
8097
  jsii_struct_bases=[LoadBalancerFilter],
7297
8098
  name_mapping={
7298
- "load_balancer_type": "loadBalancerType",
7299
- "load_balancer_arn": "loadBalancerArn",
7300
- "load_balancer_tags": "loadBalancerTags",
7301
8099
  "account": "account",
7302
8100
  "region": "region",
8101
+ "assume_role_additional_options": "assumeRoleAdditionalOptions",
7303
8102
  "lookup_role_arn": "lookupRoleArn",
8103
+ "lookup_role_external_id": "lookupRoleExternalId",
8104
+ "load_balancer_type": "loadBalancerType",
8105
+ "load_balancer_arn": "loadBalancerArn",
8106
+ "load_balancer_tags": "loadBalancerTags",
7304
8107
  },
7305
8108
  )
7306
8109
  class LoadBalancerContextQuery(LoadBalancerFilter):
7307
8110
  def __init__(
7308
8111
  self,
7309
8112
  *,
7310
- load_balancer_type: LoadBalancerType,
7311
- load_balancer_arn: typing.Optional[builtins.str] = None,
7312
- load_balancer_tags: typing.Optional[typing.Sequence[typing.Union[Tag, typing.Dict[builtins.str, typing.Any]]]] = None,
7313
8113
  account: builtins.str,
7314
8114
  region: builtins.str,
8115
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7315
8116
  lookup_role_arn: typing.Optional[builtins.str] = None,
8117
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
8118
+ load_balancer_type: LoadBalancerType,
8119
+ load_balancer_arn: typing.Optional[builtins.str] = None,
8120
+ load_balancer_tags: typing.Optional[typing.Sequence[typing.Union[Tag, typing.Dict[builtins.str, typing.Any]]]] = None,
7316
8121
  ) -> None:
7317
8122
  '''Query input for looking up a load balancer.
7318
8123
 
7319
- :param load_balancer_type: Filter load balancers by their type.
7320
- :param load_balancer_arn: Find by load balancer's ARN. Default: - does not search by load balancer arn
7321
- :param load_balancer_tags: Match load balancer tags. Default: - does not match load balancers by tags
7322
8124
  :param account: Query account.
7323
8125
  :param region: Query region.
8126
+ :param assume_role_additional_options: Additional options to pass to STS when assuming the lookup role. - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead. - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead. Default: - No additional options.
7324
8127
  :param lookup_role_arn: The ARN of the role that should be used to look up the missing values. Default: - None
8128
+ :param lookup_role_external_id: The ExternalId that needs to be supplied while assuming this role. Default: - No ExternalId will be supplied
8129
+ :param load_balancer_type: Filter load balancers by their type.
8130
+ :param load_balancer_arn: Find by load balancer's ARN. Default: - does not search by load balancer arn
8131
+ :param load_balancer_tags: Match load balancer tags. Default: - does not match load balancers by tags
7325
8132
 
7326
8133
  :exampleMetadata: fixture=_generated
7327
8134
 
@@ -7331,39 +8138,99 @@ class LoadBalancerContextQuery(LoadBalancerFilter):
7331
8138
  # The values are placeholders you should change.
7332
8139
  from aws_cdk import cloud_assembly_schema
7333
8140
 
8141
+ # assume_role_additional_options: Any
8142
+
7334
8143
  load_balancer_context_query = LoadBalancerContextQuery(
7335
8144
  account="account",
7336
8145
  load_balancer_type=cloud_assembly_schema.LoadBalancerType.NETWORK,
7337
8146
  region="region",
7338
8147
 
7339
8148
  # the properties below are optional
8149
+ assume_role_additional_options={
8150
+ "assume_role_additional_options_key": assume_role_additional_options
8151
+ },
7340
8152
  load_balancer_arn="loadBalancerArn",
7341
8153
  load_balancer_tags=[Tag(
7342
8154
  key="key",
7343
8155
  value="value"
7344
8156
  )],
7345
- lookup_role_arn="lookupRoleArn"
8157
+ lookup_role_arn="lookupRoleArn",
8158
+ lookup_role_external_id="lookupRoleExternalId"
7346
8159
  )
7347
8160
  '''
7348
8161
  if __debug__:
7349
8162
  type_hints = typing.get_type_hints(_typecheckingstub__684496ae759db19b352bca3cc225ef7242df94dfd04fc23412be9b315f601e9a)
7350
- check_type(argname="argument load_balancer_type", value=load_balancer_type, expected_type=type_hints["load_balancer_type"])
7351
- check_type(argname="argument load_balancer_arn", value=load_balancer_arn, expected_type=type_hints["load_balancer_arn"])
7352
- check_type(argname="argument load_balancer_tags", value=load_balancer_tags, expected_type=type_hints["load_balancer_tags"])
7353
8163
  check_type(argname="argument account", value=account, expected_type=type_hints["account"])
7354
8164
  check_type(argname="argument region", value=region, expected_type=type_hints["region"])
8165
+ check_type(argname="argument assume_role_additional_options", value=assume_role_additional_options, expected_type=type_hints["assume_role_additional_options"])
7355
8166
  check_type(argname="argument lookup_role_arn", value=lookup_role_arn, expected_type=type_hints["lookup_role_arn"])
8167
+ check_type(argname="argument lookup_role_external_id", value=lookup_role_external_id, expected_type=type_hints["lookup_role_external_id"])
8168
+ check_type(argname="argument load_balancer_type", value=load_balancer_type, expected_type=type_hints["load_balancer_type"])
8169
+ check_type(argname="argument load_balancer_arn", value=load_balancer_arn, expected_type=type_hints["load_balancer_arn"])
8170
+ check_type(argname="argument load_balancer_tags", value=load_balancer_tags, expected_type=type_hints["load_balancer_tags"])
7356
8171
  self._values: typing.Dict[builtins.str, typing.Any] = {
7357
- "load_balancer_type": load_balancer_type,
7358
8172
  "account": account,
7359
8173
  "region": region,
8174
+ "load_balancer_type": load_balancer_type,
7360
8175
  }
8176
+ if assume_role_additional_options is not None:
8177
+ self._values["assume_role_additional_options"] = assume_role_additional_options
8178
+ if lookup_role_arn is not None:
8179
+ self._values["lookup_role_arn"] = lookup_role_arn
8180
+ if lookup_role_external_id is not None:
8181
+ self._values["lookup_role_external_id"] = lookup_role_external_id
7361
8182
  if load_balancer_arn is not None:
7362
8183
  self._values["load_balancer_arn"] = load_balancer_arn
7363
8184
  if load_balancer_tags is not None:
7364
8185
  self._values["load_balancer_tags"] = load_balancer_tags
7365
- if lookup_role_arn is not None:
7366
- self._values["lookup_role_arn"] = lookup_role_arn
8186
+
8187
+ @builtins.property
8188
+ def account(self) -> builtins.str:
8189
+ '''Query account.'''
8190
+ result = self._values.get("account")
8191
+ assert result is not None, "Required property 'account' is missing"
8192
+ return typing.cast(builtins.str, result)
8193
+
8194
+ @builtins.property
8195
+ def region(self) -> builtins.str:
8196
+ '''Query region.'''
8197
+ result = self._values.get("region")
8198
+ assert result is not None, "Required property 'region' is missing"
8199
+ return typing.cast(builtins.str, result)
8200
+
8201
+ @builtins.property
8202
+ def assume_role_additional_options(
8203
+ self,
8204
+ ) -> typing.Optional[typing.Mapping[builtins.str, typing.Any]]:
8205
+ '''Additional options to pass to STS when assuming the lookup role.
8206
+
8207
+ - ``RoleArn`` should not be used. Use the dedicated ``lookupRoleArn`` property instead.
8208
+ - ``ExternalId`` should not be used. Use the dedicated ``lookupRoleExternalId`` instead.
8209
+
8210
+ :default: - No additional options.
8211
+
8212
+ :see: https://docs.aws.amazon.com/AWSJavaScriptSDK/latest/AWS/STS.html#assumeRole-property
8213
+ '''
8214
+ result = self._values.get("assume_role_additional_options")
8215
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, typing.Any]], result)
8216
+
8217
+ @builtins.property
8218
+ def lookup_role_arn(self) -> typing.Optional[builtins.str]:
8219
+ '''The ARN of the role that should be used to look up the missing values.
8220
+
8221
+ :default: - None
8222
+ '''
8223
+ result = self._values.get("lookup_role_arn")
8224
+ return typing.cast(typing.Optional[builtins.str], result)
8225
+
8226
+ @builtins.property
8227
+ def lookup_role_external_id(self) -> typing.Optional[builtins.str]:
8228
+ '''The ExternalId that needs to be supplied while assuming this role.
8229
+
8230
+ :default: - No ExternalId will be supplied
8231
+ '''
8232
+ result = self._values.get("lookup_role_external_id")
8233
+ return typing.cast(typing.Optional[builtins.str], result)
7367
8234
 
7368
8235
  @builtins.property
7369
8236
  def load_balancer_type(self) -> LoadBalancerType:
@@ -7390,29 +8257,6 @@ class LoadBalancerContextQuery(LoadBalancerFilter):
7390
8257
  result = self._values.get("load_balancer_tags")
7391
8258
  return typing.cast(typing.Optional[typing.List[Tag]], result)
7392
8259
 
7393
- @builtins.property
7394
- def account(self) -> builtins.str:
7395
- '''Query account.'''
7396
- result = self._values.get("account")
7397
- assert result is not None, "Required property 'account' is missing"
7398
- return typing.cast(builtins.str, result)
7399
-
7400
- @builtins.property
7401
- def region(self) -> builtins.str:
7402
- '''Query region.'''
7403
- result = self._values.get("region")
7404
- assert result is not None, "Required property 'region' is missing"
7405
- return typing.cast(builtins.str, result)
7406
-
7407
- @builtins.property
7408
- def lookup_role_arn(self) -> typing.Optional[builtins.str]:
7409
- '''The ARN of the role that should be used to look up the missing values.
7410
-
7411
- :default: - None
7412
- '''
7413
- result = self._values.get("lookup_role_arn")
7414
- return typing.cast(typing.Optional[builtins.str], result)
7415
-
7416
8260
  def __eq__(self, rhs: typing.Any) -> builtins.bool:
7417
8261
  return isinstance(rhs, self.__class__) and rhs._values == self._values
7418
8262
 
@@ -7733,6 +8577,7 @@ __all__ = [
7733
8577
  "CdkCommands",
7734
8578
  "ContainerImageAssetCacheOption",
7735
8579
  "ContainerImageAssetMetadataEntry",
8580
+ "ContextLookupRoleOptions",
7736
8581
  "ContextProvider",
7737
8582
  "DefaultCdkOptions",
7738
8583
  "DeployCommand",
@@ -7777,17 +8622,6 @@ __all__ = [
7777
8622
 
7778
8623
  publication.publish()
7779
8624
 
7780
- def _typecheckingstub__9ad6944b308c0d053938a9bf5ce1be77af5b529135dc35a4c245384840501111(
7781
- *,
7782
- account: builtins.str,
7783
- filters: typing.Mapping[builtins.str, typing.Sequence[builtins.str]],
7784
- region: builtins.str,
7785
- lookup_role_arn: typing.Optional[builtins.str] = None,
7786
- owners: typing.Optional[typing.Sequence[builtins.str]] = None,
7787
- ) -> None:
7788
- """Type checking stubs"""
7789
- pass
7790
-
7791
8625
  def _typecheckingstub__c0fe0dea35f8750630dc6eb16d5f979ef40079f01dc4afec1b7ebf62d6958505(
7792
8626
  *,
7793
8627
  type: ArtifactType,
@@ -7836,23 +8670,16 @@ def _typecheckingstub__c5d2e8772dd80ce81405cd98707a3f710c439c66cd9580fecad1be825
7836
8670
  """Type checking stubs"""
7837
8671
  pass
7838
8672
 
7839
- def _typecheckingstub__e23cb5710241f65fda5e65504911a7340786a62ce9cf7c60c9cfc1d4d4a05753(
7840
- *,
7841
- account: builtins.str,
7842
- region: builtins.str,
7843
- lookup_role_arn: typing.Optional[builtins.str] = None,
7844
- ) -> None:
7845
- """Type checking stubs"""
7846
- pass
7847
-
7848
8673
  def _typecheckingstub__662c8e7475bc8ebd11512c676ac10ca4f84539770ce9a2a5d5d96a46956fe50e(
7849
8674
  *,
7850
8675
  template_file: builtins.str,
8676
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7851
8677
  assume_role_arn: typing.Optional[builtins.str] = None,
7852
8678
  assume_role_external_id: typing.Optional[builtins.str] = None,
7853
8679
  bootstrap_stack_version_ssm_parameter: typing.Optional[builtins.str] = None,
7854
8680
  cloud_formation_execution_role_arn: typing.Optional[builtins.str] = None,
7855
8681
  lookup_role: typing.Optional[typing.Union[BootstrapRole, typing.Dict[builtins.str, typing.Any]]] = None,
8682
+ notification_arns: typing.Optional[typing.Sequence[builtins.str]] = None,
7856
8683
  parameters: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
7857
8684
  requires_bootstrap_stack_version: typing.Optional[jsii.Number] = None,
7858
8685
  stack_name: typing.Optional[builtins.str] = None,
@@ -7866,6 +8693,7 @@ def _typecheckingstub__662c8e7475bc8ebd11512c676ac10ca4f84539770ce9a2a5d5d96a469
7866
8693
 
7867
8694
  def _typecheckingstub__e91cfad0a891b03534a612d02721f5d8d6378d9951a8f62fa2272323da013b6c(
7868
8695
  *,
8696
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7869
8697
  assume_role_arn: typing.Optional[builtins.str] = None,
7870
8698
  assume_role_external_id: typing.Optional[builtins.str] = None,
7871
8699
  region: typing.Optional[builtins.str] = None,
@@ -7876,6 +8704,7 @@ def _typecheckingstub__e91cfad0a891b03534a612d02721f5d8d6378d9951a8f62fa2272323d
7876
8704
  def _typecheckingstub__a573afe6fe73a260b78458b7d6ff4d548c9379eb945ffcadd64389efe9b6e65d(
7877
8705
  *,
7878
8706
  arn: builtins.str,
8707
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
7879
8708
  assume_role_external_id: typing.Optional[builtins.str] = None,
7880
8709
  bootstrap_stack_version_ssm_parameter: typing.Optional[builtins.str] = None,
7881
8710
  requires_bootstrap_stack_version: typing.Optional[jsii.Number] = None,
@@ -7931,6 +8760,17 @@ def _typecheckingstub__a5331a5e47b1bb2aafb851bd548f765940424af583650927b525fa39d
7931
8760
  """Type checking stubs"""
7932
8761
  pass
7933
8762
 
8763
+ def _typecheckingstub__426943c947fb44b9deefd019e7f66ce3401c1a856d9f2773d450cd96adae6f59(
8764
+ *,
8765
+ account: builtins.str,
8766
+ region: builtins.str,
8767
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8768
+ lookup_role_arn: typing.Optional[builtins.str] = None,
8769
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
8770
+ ) -> None:
8771
+ """Type checking stubs"""
8772
+ pass
8773
+
7934
8774
  def _typecheckingstub__594ca36867231e310239038fdad0490ae5b2dfc45ce83bd893a483d4e4b5e150(
7935
8775
  *,
7936
8776
  all: typing.Optional[builtins.bool] = None,
@@ -8072,6 +8912,7 @@ def _typecheckingstub__18a2a085c0212f98043b6dccf8c92e1bdc5d9e20c7266a3be7bc908b8
8072
8912
 
8073
8913
  def _typecheckingstub__01e136052f71999035d3e1605dff6c0878e98a56b1d1493de1cc03b20f38345a(
8074
8914
  *,
8915
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8075
8916
  assume_role_arn: typing.Optional[builtins.str] = None,
8076
8917
  assume_role_external_id: typing.Optional[builtins.str] = None,
8077
8918
  region: typing.Optional[builtins.str] = None,
@@ -8104,8 +8945,10 @@ def _typecheckingstub__b028a59a345f6074485bae83f874fa7eca8081fea4616b491a43cfb78
8104
8945
  *,
8105
8946
  account: builtins.str,
8106
8947
  region: builtins.str,
8107
- service_name: builtins.str,
8948
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8108
8949
  lookup_role_arn: typing.Optional[builtins.str] = None,
8950
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
8951
+ service_name: builtins.str,
8109
8952
  ) -> None:
8110
8953
  """Type checking stubs"""
8111
8954
  pass
@@ -8133,6 +8976,7 @@ def _typecheckingstub__7fbb3412647192d09586c63a100c01b6e55569ecafd8e050b7588e9ed
8133
8976
 
8134
8977
  def _typecheckingstub__482362971cab2cc43f5645dc6db216e662ebd818f06c2cdcac27f66423f068f7(
8135
8978
  *,
8979
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8136
8980
  assume_role_arn: typing.Optional[builtins.str] = None,
8137
8981
  assume_role_external_id: typing.Optional[builtins.str] = None,
8138
8982
  region: typing.Optional[builtins.str] = None,
@@ -8164,9 +9008,11 @@ def _typecheckingstub__cbadd14eae9eb3722ca27183992f5c2cf9e9b0bb548e5a3a0ee7ac2d1
8164
9008
  def _typecheckingstub__479c87e6b7f0a4547d04d73de1bad2d396c1e1383975038b6ca8a7ee078e9ab8(
8165
9009
  *,
8166
9010
  account: builtins.str,
8167
- domain_name: builtins.str,
8168
9011
  region: builtins.str,
9012
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8169
9013
  lookup_role_arn: typing.Optional[builtins.str] = None,
9014
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9015
+ domain_name: builtins.str,
8170
9016
  private_zone: typing.Optional[builtins.bool] = None,
8171
9017
  vpc_id: typing.Optional[builtins.str] = None,
8172
9018
  ) -> None:
@@ -8186,15 +9032,22 @@ def _typecheckingstub__5432524b6ab8526a1e8e021ba819e88be44f2dc6f4c9a47990f2c4936
8186
9032
  def _typecheckingstub__b738d31e8937d0dc914b364457cedd3794a0911b61fec9b17eb3f8ad72e53832(
8187
9033
  *,
8188
9034
  account: builtins.str,
8189
- alias_name: builtins.str,
8190
9035
  region: builtins.str,
9036
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8191
9037
  lookup_role_arn: typing.Optional[builtins.str] = None,
9038
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9039
+ alias_name: builtins.str,
8192
9040
  ) -> None:
8193
9041
  """Type checking stubs"""
8194
9042
  pass
8195
9043
 
8196
9044
  def _typecheckingstub__b57ff0c819ed8af3b684900df083604408f77b99e70f2dd2d12b1cc7e4a8e68c(
8197
9045
  *,
9046
+ account: builtins.str,
9047
+ region: builtins.str,
9048
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
9049
+ lookup_role_arn: typing.Optional[builtins.str] = None,
9050
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
8198
9051
  load_balancer_type: LoadBalancerType,
8199
9052
  load_balancer_arn: typing.Optional[builtins.str] = None,
8200
9053
  load_balancer_tags: typing.Optional[typing.Sequence[typing.Union[Tag, typing.Dict[builtins.str, typing.Any]]]] = None,
@@ -8204,15 +9057,17 @@ def _typecheckingstub__b57ff0c819ed8af3b684900df083604408f77b99e70f2dd2d12b1cc7e
8204
9057
 
8205
9058
  def _typecheckingstub__0e0c4bf3a41978c03455699a53b8dc150feef48b4e8d1cb490e0e3cffa75ced7(
8206
9059
  *,
9060
+ account: builtins.str,
9061
+ region: builtins.str,
9062
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
9063
+ lookup_role_arn: typing.Optional[builtins.str] = None,
9064
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
8207
9065
  load_balancer_type: LoadBalancerType,
8208
9066
  load_balancer_arn: typing.Optional[builtins.str] = None,
8209
9067
  load_balancer_tags: typing.Optional[typing.Sequence[typing.Union[Tag, typing.Dict[builtins.str, typing.Any]]]] = None,
8210
- account: builtins.str,
8211
- region: builtins.str,
8212
9068
  listener_arn: typing.Optional[builtins.str] = None,
8213
9069
  listener_port: typing.Optional[jsii.Number] = None,
8214
9070
  listener_protocol: typing.Optional[LoadBalancerListenerProtocol] = None,
8215
- lookup_role_arn: typing.Optional[builtins.str] = None,
8216
9071
  ) -> None:
8217
9072
  """Type checking stubs"""
8218
9073
  pass
@@ -8312,9 +9167,11 @@ def _typecheckingstub__b0d8ff22f74ddaf52e071d67dbc65d3080f622da186b8d675c5b21733
8312
9167
  def _typecheckingstub__684d2dfddbf9de1c9120fbcee643319c13ff10fa5e3227b4959d94fdac1463d5(
8313
9168
  *,
8314
9169
  account: builtins.str,
8315
- parameter_name: builtins.str,
8316
9170
  region: builtins.str,
9171
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8317
9172
  lookup_role_arn: typing.Optional[builtins.str] = None,
9173
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9174
+ parameter_name: builtins.str,
8318
9175
  ) -> None:
8319
9176
  """Type checking stubs"""
8320
9177
  pass
@@ -8323,7 +9180,9 @@ def _typecheckingstub__ab27bdfc9deaaa99cc0b29d10214dea6da9d91e77b9d18d5a5f9a2b7f
8323
9180
  *,
8324
9181
  account: builtins.str,
8325
9182
  region: builtins.str,
9183
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8326
9184
  lookup_role_arn: typing.Optional[builtins.str] = None,
9185
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
8327
9186
  security_group_id: typing.Optional[builtins.str] = None,
8328
9187
  security_group_name: typing.Optional[builtins.str] = None,
8329
9188
  vpc_id: typing.Optional[builtins.str] = None,
@@ -8361,9 +9220,11 @@ def _typecheckingstub__4f49fc9c74b07ac016f6f246ae2bfaa0eea6382d75f9ee62c77e3b244
8361
9220
  def _typecheckingstub__793c311275bf258c4baaae63fe63966f0fd334129e469b7dc83e548f2cbf5318(
8362
9221
  *,
8363
9222
  account: builtins.str,
8364
- filter: typing.Mapping[builtins.str, builtins.str],
8365
9223
  region: builtins.str,
9224
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8366
9225
  lookup_role_arn: typing.Optional[builtins.str] = None,
9226
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9227
+ filter: typing.Mapping[builtins.str, builtins.str],
8367
9228
  return_asymmetric_subnets: typing.Optional[builtins.bool] = None,
8368
9229
  return_vpn_gateways: typing.Optional[builtins.bool] = None,
8369
9230
  subnet_group_name_tag: typing.Optional[builtins.str] = None,
@@ -8371,14 +9232,40 @@ def _typecheckingstub__793c311275bf258c4baaae63fe63966f0fd334129e469b7dc83e548f2
8371
9232
  """Type checking stubs"""
8372
9233
  pass
8373
9234
 
9235
+ def _typecheckingstub__9ad6944b308c0d053938a9bf5ce1be77af5b529135dc35a4c245384840501111(
9236
+ *,
9237
+ account: builtins.str,
9238
+ region: builtins.str,
9239
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
9240
+ lookup_role_arn: typing.Optional[builtins.str] = None,
9241
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9242
+ filters: typing.Mapping[builtins.str, typing.Sequence[builtins.str]],
9243
+ owners: typing.Optional[typing.Sequence[builtins.str]] = None,
9244
+ ) -> None:
9245
+ """Type checking stubs"""
9246
+ pass
9247
+
9248
+ def _typecheckingstub__e23cb5710241f65fda5e65504911a7340786a62ce9cf7c60c9cfc1d4d4a05753(
9249
+ *,
9250
+ account: builtins.str,
9251
+ region: builtins.str,
9252
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
9253
+ lookup_role_arn: typing.Optional[builtins.str] = None,
9254
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9255
+ ) -> None:
9256
+ """Type checking stubs"""
9257
+ pass
9258
+
8374
9259
  def _typecheckingstub__684496ae759db19b352bca3cc225ef7242df94dfd04fc23412be9b315f601e9a(
8375
9260
  *,
8376
- load_balancer_type: LoadBalancerType,
8377
- load_balancer_arn: typing.Optional[builtins.str] = None,
8378
- load_balancer_tags: typing.Optional[typing.Sequence[typing.Union[Tag, typing.Dict[builtins.str, typing.Any]]]] = None,
8379
9261
  account: builtins.str,
8380
9262
  region: builtins.str,
9263
+ assume_role_additional_options: typing.Optional[typing.Mapping[builtins.str, typing.Any]] = None,
8381
9264
  lookup_role_arn: typing.Optional[builtins.str] = None,
9265
+ lookup_role_external_id: typing.Optional[builtins.str] = None,
9266
+ load_balancer_type: LoadBalancerType,
9267
+ load_balancer_arn: typing.Optional[builtins.str] = None,
9268
+ load_balancer_tags: typing.Optional[typing.Sequence[typing.Union[Tag, typing.Dict[builtins.str, typing.Any]]]] = None,
8382
9269
  ) -> None:
8383
9270
  """Type checking stubs"""
8384
9271
  pass