pulumi-aws-native 1.39.0a1762385303__py3-none-any.whl → 1.39.0a1762580459__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.
Files changed (65) hide show
  1. pulumi_aws_native/__init__.py +2 -0
  2. pulumi_aws_native/backup/get_logically_air_gapped_backup_vault.py +12 -1
  3. pulumi_aws_native/backup/logically_air_gapped_backup_vault.py +21 -0
  4. pulumi_aws_native/cassandra/_enums.py +3 -0
  5. pulumi_aws_native/cleanrooms/_enums.py +98 -0
  6. pulumi_aws_native/cleanrooms/_inputs.py +138 -12
  7. pulumi_aws_native/cleanrooms/collaboration.py +30 -1
  8. pulumi_aws_native/cleanrooms/get_privacy_budget_template.py +1 -0
  9. pulumi_aws_native/cleanrooms/outputs.py +106 -9
  10. pulumi_aws_native/cloudfront/_inputs.py +7 -0
  11. pulumi_aws_native/cloudfront/get_vpc_origin.py +3 -0
  12. pulumi_aws_native/cloudfront/outputs.py +4 -0
  13. pulumi_aws_native/cloudfront/vpc_origin.py +3 -0
  14. pulumi_aws_native/connect/_enums.py +9 -0
  15. pulumi_aws_native/connect/_inputs.py +168 -0
  16. pulumi_aws_native/connect/get_security_profile.py +13 -1
  17. pulumi_aws_native/connect/outputs.py +172 -0
  18. pulumi_aws_native/connect/security_profile.py +22 -0
  19. pulumi_aws_native/datazone/_enums.py +10 -0
  20. pulumi_aws_native/datazone/_inputs.py +99 -4
  21. pulumi_aws_native/datazone/connection.py +37 -8
  22. pulumi_aws_native/datazone/outputs.py +101 -6
  23. pulumi_aws_native/dynamodb/_inputs.py +6 -5
  24. pulumi_aws_native/dynamodb/outputs.py +4 -3
  25. pulumi_aws_native/ecr/_inputs.py +2 -2
  26. pulumi_aws_native/ecr/get_repository_creation_template.py +1 -1
  27. pulumi_aws_native/ecr/outputs.py +2 -2
  28. pulumi_aws_native/ecr/repository_creation_template.py +4 -4
  29. pulumi_aws_native/ecs/_inputs.py +6 -6
  30. pulumi_aws_native/ecs/outputs.py +4 -4
  31. pulumi_aws_native/ecs/task_definition.py +8 -8
  32. pulumi_aws_native/elasticloadbalancingv2/_inputs.py +23 -3
  33. pulumi_aws_native/elasticloadbalancingv2/outputs.py +16 -2
  34. pulumi_aws_native/gamelift/_enums.py +1 -0
  35. pulumi_aws_native/kinesis/get_stream.py +15 -1
  36. pulumi_aws_native/kinesis/stream.py +29 -0
  37. pulumi_aws_native/kms/_enums.py +1 -0
  38. pulumi_aws_native/lambda_/permission.py +4 -4
  39. pulumi_aws_native/location/_inputs.py +86 -0
  40. pulumi_aws_native/location/outputs.py +88 -0
  41. pulumi_aws_native/opensearchserverless/collection.py +11 -1
  42. pulumi_aws_native/opensearchserverless/get_collection.py +11 -12
  43. pulumi_aws_native/pulumi-plugin.json +1 -1
  44. pulumi_aws_native/quicksight/_enums.py +62 -0
  45. pulumi_aws_native/quicksight/_inputs.py +2571 -260
  46. pulumi_aws_native/quicksight/data_set.py +42 -24
  47. pulumi_aws_native/quicksight/get_data_set.py +23 -10
  48. pulumi_aws_native/quicksight/outputs.py +2247 -94
  49. pulumi_aws_native/servicecatalog/__init__.py +2 -0
  50. pulumi_aws_native/servicecatalog/_enums.py +28 -0
  51. pulumi_aws_native/servicecatalog/_inputs.py +364 -0
  52. pulumi_aws_native/servicecatalog/cloud_formation_product.py +519 -0
  53. pulumi_aws_native/servicecatalog/get_cloud_formation_product.py +276 -0
  54. pulumi_aws_native/servicecatalog/outputs.py +311 -0
  55. pulumi_aws_native/ses/__init__.py +2 -0
  56. pulumi_aws_native/ses/_inputs.py +54 -0
  57. pulumi_aws_native/ses/get_multi_region_endpoint.py +78 -0
  58. pulumi_aws_native/ses/multi_region_endpoint.py +190 -0
  59. pulumi_aws_native/ses/outputs.py +49 -0
  60. pulumi_aws_native/wafv2/_inputs.py +7 -0
  61. pulumi_aws_native/wafv2/outputs.py +4 -0
  62. {pulumi_aws_native-1.39.0a1762385303.dist-info → pulumi_aws_native-1.39.0a1762580459.dist-info}/METADATA +1 -1
  63. {pulumi_aws_native-1.39.0a1762385303.dist-info → pulumi_aws_native-1.39.0a1762580459.dist-info}/RECORD +65 -61
  64. {pulumi_aws_native-1.39.0a1762385303.dist-info → pulumi_aws_native-1.39.0a1762580459.dist-info}/WHEEL +0 -0
  65. {pulumi_aws_native-1.39.0a1762385303.dist-info → pulumi_aws_native-1.39.0a1762580459.dist-info}/top_level.txt +0 -0
@@ -3277,6 +3277,7 @@ _utilities.register(
3277
3277
  "mod": "servicecatalog",
3278
3278
  "fqn": "pulumi_aws_native.servicecatalog",
3279
3279
  "classes": {
3280
+ "aws-native:servicecatalog:CloudFormationProduct": "CloudFormationProduct",
3280
3281
  "aws-native:servicecatalog:CloudFormationProvisionedProduct": "CloudFormationProvisionedProduct",
3281
3282
  "aws-native:servicecatalog:LaunchNotificationConstraint": "LaunchNotificationConstraint",
3282
3283
  "aws-native:servicecatalog:LaunchTemplateConstraint": "LaunchTemplateConstraint",
@@ -3319,6 +3320,7 @@ _utilities.register(
3319
3320
  "aws-native:ses:MailManagerRelay": "MailManagerRelay",
3320
3321
  "aws-native:ses:MailManagerRuleSet": "MailManagerRuleSet",
3321
3322
  "aws-native:ses:MailManagerTrafficPolicy": "MailManagerTrafficPolicy",
3323
+ "aws-native:ses:MultiRegionEndpoint": "MultiRegionEndpoint",
3322
3324
  "aws-native:ses:Template": "Template",
3323
3325
  "aws-native:ses:VdmAttributes": "VdmAttributes"
3324
3326
  }
@@ -24,7 +24,7 @@ __all__ = [
24
24
 
25
25
  @pulumi.output_type
26
26
  class GetLogicallyAirGappedBackupVaultResult:
27
- def __init__(__self__, access_policy=None, backup_vault_arn=None, backup_vault_tags=None, encryption_key_arn=None, notifications=None, vault_state=None, vault_type=None):
27
+ def __init__(__self__, access_policy=None, backup_vault_arn=None, backup_vault_tags=None, encryption_key_arn=None, mpa_approval_team_arn=None, notifications=None, vault_state=None, vault_type=None):
28
28
  if access_policy and not isinstance(access_policy, dict):
29
29
  raise TypeError("Expected argument 'access_policy' to be a dict")
30
30
  pulumi.set(__self__, "access_policy", access_policy)
@@ -37,6 +37,9 @@ class GetLogicallyAirGappedBackupVaultResult:
37
37
  if encryption_key_arn and not isinstance(encryption_key_arn, str):
38
38
  raise TypeError("Expected argument 'encryption_key_arn' to be a str")
39
39
  pulumi.set(__self__, "encryption_key_arn", encryption_key_arn)
40
+ if mpa_approval_team_arn and not isinstance(mpa_approval_team_arn, str):
41
+ raise TypeError("Expected argument 'mpa_approval_team_arn' to be a str")
42
+ pulumi.set(__self__, "mpa_approval_team_arn", mpa_approval_team_arn)
40
43
  if notifications and not isinstance(notifications, dict):
41
44
  raise TypeError("Expected argument 'notifications' to be a dict")
42
45
  pulumi.set(__self__, "notifications", notifications)
@@ -81,6 +84,11 @@ class GetLogicallyAirGappedBackupVaultResult:
81
84
  """
82
85
  return pulumi.get(self, "encryption_key_arn")
83
86
 
87
+ @_builtins.property
88
+ @pulumi.getter(name="mpaApprovalTeamArn")
89
+ def mpa_approval_team_arn(self) -> Optional[_builtins.str]:
90
+ return pulumi.get(self, "mpa_approval_team_arn")
91
+
84
92
  @_builtins.property
85
93
  @pulumi.getter
86
94
  def notifications(self) -> Optional['outputs.LogicallyAirGappedBackupVaultNotificationObjectType']:
@@ -116,6 +124,7 @@ class AwaitableGetLogicallyAirGappedBackupVaultResult(GetLogicallyAirGappedBacku
116
124
  backup_vault_arn=self.backup_vault_arn,
117
125
  backup_vault_tags=self.backup_vault_tags,
118
126
  encryption_key_arn=self.encryption_key_arn,
127
+ mpa_approval_team_arn=self.mpa_approval_team_arn,
119
128
  notifications=self.notifications,
120
129
  vault_state=self.vault_state,
121
130
  vault_type=self.vault_type)
@@ -139,6 +148,7 @@ def get_logically_air_gapped_backup_vault(backup_vault_name: Optional[_builtins.
139
148
  backup_vault_arn=pulumi.get(__ret__, 'backup_vault_arn'),
140
149
  backup_vault_tags=pulumi.get(__ret__, 'backup_vault_tags'),
141
150
  encryption_key_arn=pulumi.get(__ret__, 'encryption_key_arn'),
151
+ mpa_approval_team_arn=pulumi.get(__ret__, 'mpa_approval_team_arn'),
142
152
  notifications=pulumi.get(__ret__, 'notifications'),
143
153
  vault_state=pulumi.get(__ret__, 'vault_state'),
144
154
  vault_type=pulumi.get(__ret__, 'vault_type'))
@@ -159,6 +169,7 @@ def get_logically_air_gapped_backup_vault_output(backup_vault_name: Optional[pul
159
169
  backup_vault_arn=pulumi.get(__response__, 'backup_vault_arn'),
160
170
  backup_vault_tags=pulumi.get(__response__, 'backup_vault_tags'),
161
171
  encryption_key_arn=pulumi.get(__response__, 'encryption_key_arn'),
172
+ mpa_approval_team_arn=pulumi.get(__response__, 'mpa_approval_team_arn'),
162
173
  notifications=pulumi.get(__response__, 'notifications'),
163
174
  vault_state=pulumi.get(__response__, 'vault_state'),
164
175
  vault_type=pulumi.get(__response__, 'vault_type')))
@@ -26,6 +26,7 @@ class LogicallyAirGappedBackupVaultArgs:
26
26
  access_policy: Optional[Any] = None,
27
27
  backup_vault_name: Optional[pulumi.Input[_builtins.str]] = None,
28
28
  backup_vault_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
29
+ mpa_approval_team_arn: Optional[pulumi.Input[_builtins.str]] = None,
29
30
  notifications: Optional[pulumi.Input['LogicallyAirGappedBackupVaultNotificationObjectTypeArgs']] = None):
30
31
  """
31
32
  The set of arguments for constructing a LogicallyAirGappedBackupVault resource.
@@ -48,6 +49,8 @@ class LogicallyAirGappedBackupVaultArgs:
48
49
  pulumi.set(__self__, "backup_vault_name", backup_vault_name)
49
50
  if backup_vault_tags is not None:
50
51
  pulumi.set(__self__, "backup_vault_tags", backup_vault_tags)
52
+ if mpa_approval_team_arn is not None:
53
+ pulumi.set(__self__, "mpa_approval_team_arn", mpa_approval_team_arn)
51
54
  if notifications is not None:
52
55
  pulumi.set(__self__, "notifications", notifications)
53
56
 
@@ -115,6 +118,15 @@ class LogicallyAirGappedBackupVaultArgs:
115
118
  def backup_vault_tags(self, value: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]]):
116
119
  pulumi.set(self, "backup_vault_tags", value)
117
120
 
121
+ @_builtins.property
122
+ @pulumi.getter(name="mpaApprovalTeamArn")
123
+ def mpa_approval_team_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
124
+ return pulumi.get(self, "mpa_approval_team_arn")
125
+
126
+ @mpa_approval_team_arn.setter
127
+ def mpa_approval_team_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
128
+ pulumi.set(self, "mpa_approval_team_arn", value)
129
+
118
130
  @_builtins.property
119
131
  @pulumi.getter
120
132
  def notifications(self) -> Optional[pulumi.Input['LogicallyAirGappedBackupVaultNotificationObjectTypeArgs']]:
@@ -139,6 +151,7 @@ class LogicallyAirGappedBackupVault(pulumi.CustomResource):
139
151
  backup_vault_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
140
152
  max_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
141
153
  min_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
154
+ mpa_approval_team_arn: Optional[pulumi.Input[_builtins.str]] = None,
142
155
  notifications: Optional[pulumi.Input[Union['LogicallyAirGappedBackupVaultNotificationObjectTypeArgs', 'LogicallyAirGappedBackupVaultNotificationObjectTypeArgsDict']]] = None,
143
156
  __props__=None):
144
157
  """
@@ -186,6 +199,7 @@ class LogicallyAirGappedBackupVault(pulumi.CustomResource):
186
199
  backup_vault_tags: Optional[pulumi.Input[Mapping[str, pulumi.Input[_builtins.str]]]] = None,
187
200
  max_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
188
201
  min_retention_days: Optional[pulumi.Input[_builtins.int]] = None,
202
+ mpa_approval_team_arn: Optional[pulumi.Input[_builtins.str]] = None,
189
203
  notifications: Optional[pulumi.Input[Union['LogicallyAirGappedBackupVaultNotificationObjectTypeArgs', 'LogicallyAirGappedBackupVaultNotificationObjectTypeArgsDict']]] = None,
190
204
  __props__=None):
191
205
  opts = pulumi.ResourceOptions.merge(_utilities.get_resource_opts_defaults(), opts)
@@ -205,6 +219,7 @@ class LogicallyAirGappedBackupVault(pulumi.CustomResource):
205
219
  if min_retention_days is None and not opts.urn:
206
220
  raise TypeError("Missing required property 'min_retention_days'")
207
221
  __props__.__dict__["min_retention_days"] = min_retention_days
222
+ __props__.__dict__["mpa_approval_team_arn"] = mpa_approval_team_arn
208
223
  __props__.__dict__["notifications"] = notifications
209
224
  __props__.__dict__["backup_vault_arn"] = None
210
225
  __props__.__dict__["encryption_key_arn"] = None
@@ -241,6 +256,7 @@ class LogicallyAirGappedBackupVault(pulumi.CustomResource):
241
256
  __props__.__dict__["encryption_key_arn"] = None
242
257
  __props__.__dict__["max_retention_days"] = None
243
258
  __props__.__dict__["min_retention_days"] = None
259
+ __props__.__dict__["mpa_approval_team_arn"] = None
244
260
  __props__.__dict__["notifications"] = None
245
261
  __props__.__dict__["vault_state"] = None
246
262
  __props__.__dict__["vault_type"] = None
@@ -306,6 +322,11 @@ class LogicallyAirGappedBackupVault(pulumi.CustomResource):
306
322
  """
307
323
  return pulumi.get(self, "min_retention_days")
308
324
 
325
+ @_builtins.property
326
+ @pulumi.getter(name="mpaApprovalTeamArn")
327
+ def mpa_approval_team_arn(self) -> pulumi.Output[Optional[_builtins.str]]:
328
+ return pulumi.get(self, "mpa_approval_team_arn")
329
+
309
330
  @_builtins.property
310
331
  @pulumi.getter
311
332
  def notifications(self) -> pulumi.Output[Optional['outputs.LogicallyAirGappedBackupVaultNotificationObjectType']]:
@@ -20,6 +20,7 @@ __all__ = [
20
20
  @pulumi.type_token("aws-native:cassandra:KeyspaceRegionListItem")
21
21
  class KeyspaceRegionListItem(_builtins.str, Enum):
22
22
  AF_SOUTH1 = "af-south-1"
23
+ AP_EAST1 = "ap-east-1"
23
24
  AP_NORTHEAST1 = "ap-northeast-1"
24
25
  AP_NORTHEAST2 = "ap-northeast-2"
25
26
  AP_SOUTH1 = "ap-south-1"
@@ -31,6 +32,8 @@ class KeyspaceRegionListItem(_builtins.str, Enum):
31
32
  EU_WEST1 = "eu-west-1"
32
33
  EU_WEST2 = "eu-west-2"
33
34
  EU_WEST3 = "eu-west-3"
35
+ ME_CENTRAL1 = "me-central-1"
36
+ ME_SOUTH1 = "me-south-1"
34
37
  SA_EAST1 = "sa-east-1"
35
38
  US_EAST1 = "us-east-1"
36
39
  US_EAST2 = "us-east-2"
@@ -16,12 +16,14 @@ __all__ = [
16
16
  'CollaborationJobLogStatus',
17
17
  'CollaborationMemberAbility',
18
18
  'CollaborationQueryLogStatus',
19
+ 'CollaborationSupportedS3Region',
19
20
  'ConfiguredTableAdditionalAnalyses',
20
21
  'ConfiguredTableAggregateFunctionName',
21
22
  'ConfiguredTableAggregationType',
22
23
  'ConfiguredTableAnalysisMethod',
23
24
  'ConfiguredTableAnalysisRuleType',
24
25
  'ConfiguredTableAssociationAnalysisRuleType',
26
+ 'ConfiguredTableCommercialRegion',
25
27
  'ConfiguredTableJoinOperator',
26
28
  'ConfiguredTableJoinRequiredOption',
27
29
  'ConfiguredTableScalarFunctions',
@@ -32,6 +34,8 @@ __all__ = [
32
34
  'MembershipQueryLogStatus',
33
35
  'MembershipResultFormat',
34
36
  'PrivacyBudgetTemplateAutoRefresh',
37
+ 'PrivacyBudgetTemplateBudgetParameterAutoRefresh',
38
+ 'PrivacyBudgetTemplateBudgetParameterType',
35
39
  'PrivacyBudgetTemplatePrivacyBudgetType',
36
40
  ]
37
41
 
@@ -126,6 +130,43 @@ class CollaborationQueryLogStatus(_builtins.str, Enum):
126
130
  DISABLED = "DISABLED"
127
131
 
128
132
 
133
+ @pulumi.type_token("aws-native:cleanrooms:CollaborationSupportedS3Region")
134
+ class CollaborationSupportedS3Region(_builtins.str, Enum):
135
+ US_WEST1 = "us-west-1"
136
+ US_WEST2 = "us-west-2"
137
+ US_EAST1 = "us-east-1"
138
+ US_EAST2 = "us-east-2"
139
+ AF_SOUTH1 = "af-south-1"
140
+ AP_EAST1 = "ap-east-1"
141
+ AP_EAST2 = "ap-east-2"
142
+ AP_SOUTH2 = "ap-south-2"
143
+ AP_SOUTHEAST1 = "ap-southeast-1"
144
+ AP_SOUTHEAST2 = "ap-southeast-2"
145
+ AP_SOUTHEAST3 = "ap-southeast-3"
146
+ AP_SOUTHEAST5 = "ap-southeast-5"
147
+ AP_SOUTHEAST4 = "ap-southeast-4"
148
+ AP_SOUTHEAST7 = "ap-southeast-7"
149
+ AP_SOUTH1 = "ap-south-1"
150
+ AP_NORTHEAST3 = "ap-northeast-3"
151
+ AP_NORTHEAST1 = "ap-northeast-1"
152
+ AP_NORTHEAST2 = "ap-northeast-2"
153
+ CA_CENTRAL1 = "ca-central-1"
154
+ CA_WEST1 = "ca-west-1"
155
+ EU_SOUTH1 = "eu-south-1"
156
+ EU_WEST3 = "eu-west-3"
157
+ EU_SOUTH2 = "eu-south-2"
158
+ EU_CENTRAL2 = "eu-central-2"
159
+ EU_CENTRAL1 = "eu-central-1"
160
+ EU_NORTH1 = "eu-north-1"
161
+ EU_WEST1 = "eu-west-1"
162
+ EU_WEST2 = "eu-west-2"
163
+ ME_SOUTH1 = "me-south-1"
164
+ ME_CENTRAL1 = "me-central-1"
165
+ IL_CENTRAL1 = "il-central-1"
166
+ SA_EAST1 = "sa-east-1"
167
+ MX_CENTRAL1 = "mx-central-1"
168
+
169
+
129
170
  @pulumi.type_token("aws-native:cleanrooms:ConfiguredTableAdditionalAnalyses")
130
171
  class ConfiguredTableAdditionalAnalyses(_builtins.str, Enum):
131
172
  ALLOWED = "ALLOWED"
@@ -168,6 +209,42 @@ class ConfiguredTableAssociationAnalysisRuleType(_builtins.str, Enum):
168
209
  CUSTOM = "CUSTOM"
169
210
 
170
211
 
212
+ @pulumi.type_token("aws-native:cleanrooms:ConfiguredTableCommercialRegion")
213
+ class ConfiguredTableCommercialRegion(_builtins.str, Enum):
214
+ US_WEST1 = "us-west-1"
215
+ US_WEST2 = "us-west-2"
216
+ US_EAST1 = "us-east-1"
217
+ US_EAST2 = "us-east-2"
218
+ AF_SOUTH1 = "af-south-1"
219
+ AP_EAST1 = "ap-east-1"
220
+ AP_SOUTH2 = "ap-south-2"
221
+ AP_SOUTHEAST1 = "ap-southeast-1"
222
+ AP_SOUTHEAST2 = "ap-southeast-2"
223
+ AP_SOUTHEAST5 = "ap-southeast-5"
224
+ AP_SOUTHEAST4 = "ap-southeast-4"
225
+ AP_SOUTHEAST7 = "ap-southeast-7"
226
+ AP_SOUTH1 = "ap-south-1"
227
+ AP_NORTHEAST3 = "ap-northeast-3"
228
+ AP_NORTHEAST1 = "ap-northeast-1"
229
+ AP_NORTHEAST2 = "ap-northeast-2"
230
+ CA_CENTRAL1 = "ca-central-1"
231
+ CA_WEST1 = "ca-west-1"
232
+ EU_SOUTH1 = "eu-south-1"
233
+ EU_WEST3 = "eu-west-3"
234
+ EU_SOUTH2 = "eu-south-2"
235
+ EU_CENTRAL2 = "eu-central-2"
236
+ EU_CENTRAL1 = "eu-central-1"
237
+ EU_NORTH1 = "eu-north-1"
238
+ EU_WEST1 = "eu-west-1"
239
+ EU_WEST2 = "eu-west-2"
240
+ ME_SOUTH1 = "me-south-1"
241
+ ME_CENTRAL1 = "me-central-1"
242
+ IL_CENTRAL1 = "il-central-1"
243
+ SA_EAST1 = "sa-east-1"
244
+ MX_CENTRAL1 = "mx-central-1"
245
+ AP_EAST2 = "ap-east-2"
246
+
247
+
171
248
  @pulumi.type_token("aws-native:cleanrooms:ConfiguredTableJoinOperator")
172
249
  class ConfiguredTableJoinOperator(_builtins.str, Enum):
173
250
  OR_ = "OR"
@@ -260,9 +337,30 @@ class PrivacyBudgetTemplateAutoRefresh(_builtins.str, Enum):
260
337
  NONE = "NONE"
261
338
 
262
339
 
340
+ @pulumi.type_token("aws-native:cleanrooms:PrivacyBudgetTemplateBudgetParameterAutoRefresh")
341
+ class PrivacyBudgetTemplateBudgetParameterAutoRefresh(_builtins.str, Enum):
342
+ """
343
+ Whether this individual budget parameter automatically refreshes when the budget period resets.
344
+ """
345
+ ENABLED = "ENABLED"
346
+ DISABLED = "DISABLED"
347
+
348
+
349
+ @pulumi.type_token("aws-native:cleanrooms:PrivacyBudgetTemplateBudgetParameterType")
350
+ class PrivacyBudgetTemplateBudgetParameterType(_builtins.str, Enum):
351
+ """
352
+ The type of budget parameter being configured.
353
+ """
354
+ CALENDAR_DAY = "CALENDAR_DAY"
355
+ CALENDAR_MONTH = "CALENDAR_MONTH"
356
+ CALENDAR_WEEK = "CALENDAR_WEEK"
357
+ LIFETIME = "LIFETIME"
358
+
359
+
263
360
  @pulumi.type_token("aws-native:cleanrooms:PrivacyBudgetTemplatePrivacyBudgetType")
264
361
  class PrivacyBudgetTemplatePrivacyBudgetType(_builtins.str, Enum):
265
362
  """
266
363
  Specifies the type of the privacy budget template.
267
364
  """
268
365
  DIFFERENTIAL_PRIVACY = "DIFFERENTIAL_PRIVACY"
366
+ ACCESS_BUDGET = "ACCESS_BUDGET"
@@ -144,6 +144,8 @@ __all__ = [
144
144
  'MembershipQueryComputePaymentConfigArgsDict',
145
145
  'ParametersPropertiesArgs',
146
146
  'ParametersPropertiesArgsDict',
147
+ 'PrivacyBudgetTemplateBudgetParameterArgs',
148
+ 'PrivacyBudgetTemplateBudgetParameterArgsDict',
147
149
  ]
148
150
 
149
151
  MYPY = False
@@ -1780,6 +1782,7 @@ if not MYPY:
1780
1782
  table_name: pulumi.Input[_builtins.str]
1781
1783
  work_group: pulumi.Input[_builtins.str]
1782
1784
  output_location: NotRequired[pulumi.Input[_builtins.str]]
1785
+ region: NotRequired[pulumi.Input['ConfiguredTableCommercialRegion']]
1783
1786
  elif False:
1784
1787
  ConfiguredTableAthenaTableReferenceArgsDict: TypeAlias = Mapping[str, Any]
1785
1788
 
@@ -1789,12 +1792,15 @@ class ConfiguredTableAthenaTableReferenceArgs:
1789
1792
  database_name: pulumi.Input[_builtins.str],
1790
1793
  table_name: pulumi.Input[_builtins.str],
1791
1794
  work_group: pulumi.Input[_builtins.str],
1792
- output_location: Optional[pulumi.Input[_builtins.str]] = None):
1795
+ output_location: Optional[pulumi.Input[_builtins.str]] = None,
1796
+ region: Optional[pulumi.Input['ConfiguredTableCommercialRegion']] = None):
1793
1797
  pulumi.set(__self__, "database_name", database_name)
1794
1798
  pulumi.set(__self__, "table_name", table_name)
1795
1799
  pulumi.set(__self__, "work_group", work_group)
1796
1800
  if output_location is not None:
1797
1801
  pulumi.set(__self__, "output_location", output_location)
1802
+ if region is not None:
1803
+ pulumi.set(__self__, "region", region)
1798
1804
 
1799
1805
  @_builtins.property
1800
1806
  @pulumi.getter(name="databaseName")
@@ -1832,6 +1838,15 @@ class ConfiguredTableAthenaTableReferenceArgs:
1832
1838
  def output_location(self, value: Optional[pulumi.Input[_builtins.str]]):
1833
1839
  pulumi.set(self, "output_location", value)
1834
1840
 
1841
+ @_builtins.property
1842
+ @pulumi.getter
1843
+ def region(self) -> Optional[pulumi.Input['ConfiguredTableCommercialRegion']]:
1844
+ return pulumi.get(self, "region")
1845
+
1846
+ @region.setter
1847
+ def region(self, value: Optional[pulumi.Input['ConfiguredTableCommercialRegion']]):
1848
+ pulumi.set(self, "region", value)
1849
+
1835
1850
 
1836
1851
  if not MYPY:
1837
1852
  class ConfiguredTableDifferentialPrivacyColumnArgsDict(TypedDict):
@@ -1881,6 +1896,7 @@ if not MYPY:
1881
1896
  class ConfiguredTableGlueTableReferenceArgsDict(TypedDict):
1882
1897
  database_name: pulumi.Input[_builtins.str]
1883
1898
  table_name: pulumi.Input[_builtins.str]
1899
+ region: NotRequired[pulumi.Input['ConfiguredTableCommercialRegion']]
1884
1900
  elif False:
1885
1901
  ConfiguredTableGlueTableReferenceArgsDict: TypeAlias = Mapping[str, Any]
1886
1902
 
@@ -1888,9 +1904,12 @@ elif False:
1888
1904
  class ConfiguredTableGlueTableReferenceArgs:
1889
1905
  def __init__(__self__, *,
1890
1906
  database_name: pulumi.Input[_builtins.str],
1891
- table_name: pulumi.Input[_builtins.str]):
1907
+ table_name: pulumi.Input[_builtins.str],
1908
+ region: Optional[pulumi.Input['ConfiguredTableCommercialRegion']] = None):
1892
1909
  pulumi.set(__self__, "database_name", database_name)
1893
1910
  pulumi.set(__self__, "table_name", table_name)
1911
+ if region is not None:
1912
+ pulumi.set(__self__, "region", region)
1894
1913
 
1895
1914
  @_builtins.property
1896
1915
  @pulumi.getter(name="databaseName")
@@ -1910,6 +1929,15 @@ class ConfiguredTableGlueTableReferenceArgs:
1910
1929
  def table_name(self, value: pulumi.Input[_builtins.str]):
1911
1930
  pulumi.set(self, "table_name", value)
1912
1931
 
1932
+ @_builtins.property
1933
+ @pulumi.getter
1934
+ def region(self) -> Optional[pulumi.Input['ConfiguredTableCommercialRegion']]:
1935
+ return pulumi.get(self, "region")
1936
+
1937
+ @region.setter
1938
+ def region(self, value: Optional[pulumi.Input['ConfiguredTableCommercialRegion']]):
1939
+ pulumi.set(self, "region", value)
1940
+
1913
1941
 
1914
1942
  if not MYPY:
1915
1943
  class ConfiguredTableSnowflakeTableReferenceArgsDict(TypedDict):
@@ -2904,11 +2932,13 @@ if not MYPY:
2904
2932
  """
2905
2933
  Specifies the epsilon and noise parameters for the privacy budget template.
2906
2934
  """
2907
- epsilon: pulumi.Input[_builtins.int]
2935
+ budget_parameters: NotRequired[pulumi.Input[Sequence[pulumi.Input['PrivacyBudgetTemplateBudgetParameterArgsDict']]]]
2936
+ epsilon: NotRequired[pulumi.Input[_builtins.int]]
2908
2937
  """
2909
2938
  The epsilon value that you want to use.
2910
2939
  """
2911
- users_noise_per_query: pulumi.Input[_builtins.int]
2940
+ resource_arn: NotRequired[pulumi.Input[_builtins.str]]
2941
+ users_noise_per_query: NotRequired[pulumi.Input[_builtins.int]]
2912
2942
  """
2913
2943
  Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.
2914
2944
  """
@@ -2918,38 +2948,134 @@ elif False:
2918
2948
  @pulumi.input_type
2919
2949
  class ParametersPropertiesArgs:
2920
2950
  def __init__(__self__, *,
2921
- epsilon: pulumi.Input[_builtins.int],
2922
- users_noise_per_query: pulumi.Input[_builtins.int]):
2951
+ budget_parameters: Optional[pulumi.Input[Sequence[pulumi.Input['PrivacyBudgetTemplateBudgetParameterArgs']]]] = None,
2952
+ epsilon: Optional[pulumi.Input[_builtins.int]] = None,
2953
+ resource_arn: Optional[pulumi.Input[_builtins.str]] = None,
2954
+ users_noise_per_query: Optional[pulumi.Input[_builtins.int]] = None):
2923
2955
  """
2924
2956
  Specifies the epsilon and noise parameters for the privacy budget template.
2925
2957
  :param pulumi.Input[_builtins.int] epsilon: The epsilon value that you want to use.
2926
2958
  :param pulumi.Input[_builtins.int] users_noise_per_query: Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.
2927
2959
  """
2928
- pulumi.set(__self__, "epsilon", epsilon)
2929
- pulumi.set(__self__, "users_noise_per_query", users_noise_per_query)
2960
+ if budget_parameters is not None:
2961
+ pulumi.set(__self__, "budget_parameters", budget_parameters)
2962
+ if epsilon is not None:
2963
+ pulumi.set(__self__, "epsilon", epsilon)
2964
+ if resource_arn is not None:
2965
+ pulumi.set(__self__, "resource_arn", resource_arn)
2966
+ if users_noise_per_query is not None:
2967
+ pulumi.set(__self__, "users_noise_per_query", users_noise_per_query)
2968
+
2969
+ @_builtins.property
2970
+ @pulumi.getter(name="budgetParameters")
2971
+ def budget_parameters(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['PrivacyBudgetTemplateBudgetParameterArgs']]]]:
2972
+ return pulumi.get(self, "budget_parameters")
2973
+
2974
+ @budget_parameters.setter
2975
+ def budget_parameters(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['PrivacyBudgetTemplateBudgetParameterArgs']]]]):
2976
+ pulumi.set(self, "budget_parameters", value)
2930
2977
 
2931
2978
  @_builtins.property
2932
2979
  @pulumi.getter
2933
- def epsilon(self) -> pulumi.Input[_builtins.int]:
2980
+ def epsilon(self) -> Optional[pulumi.Input[_builtins.int]]:
2934
2981
  """
2935
2982
  The epsilon value that you want to use.
2936
2983
  """
2937
2984
  return pulumi.get(self, "epsilon")
2938
2985
 
2939
2986
  @epsilon.setter
2940
- def epsilon(self, value: pulumi.Input[_builtins.int]):
2987
+ def epsilon(self, value: Optional[pulumi.Input[_builtins.int]]):
2941
2988
  pulumi.set(self, "epsilon", value)
2942
2989
 
2990
+ @_builtins.property
2991
+ @pulumi.getter(name="resourceArn")
2992
+ def resource_arn(self) -> Optional[pulumi.Input[_builtins.str]]:
2993
+ return pulumi.get(self, "resource_arn")
2994
+
2995
+ @resource_arn.setter
2996
+ def resource_arn(self, value: Optional[pulumi.Input[_builtins.str]]):
2997
+ pulumi.set(self, "resource_arn", value)
2998
+
2943
2999
  @_builtins.property
2944
3000
  @pulumi.getter(name="usersNoisePerQuery")
2945
- def users_noise_per_query(self) -> pulumi.Input[_builtins.int]:
3001
+ def users_noise_per_query(self) -> Optional[pulumi.Input[_builtins.int]]:
2946
3002
  """
2947
3003
  Noise added per query is measured in terms of the number of users whose contributions you want to obscure. This value governs the rate at which the privacy budget is depleted.
2948
3004
  """
2949
3005
  return pulumi.get(self, "users_noise_per_query")
2950
3006
 
2951
3007
  @users_noise_per_query.setter
2952
- def users_noise_per_query(self, value: pulumi.Input[_builtins.int]):
3008
+ def users_noise_per_query(self, value: Optional[pulumi.Input[_builtins.int]]):
2953
3009
  pulumi.set(self, "users_noise_per_query", value)
2954
3010
 
2955
3011
 
3012
+ if not MYPY:
3013
+ class PrivacyBudgetTemplateBudgetParameterArgsDict(TypedDict):
3014
+ budget: pulumi.Input[_builtins.int]
3015
+ """
3016
+ The budget allocation amount for this specific parameter.
3017
+ """
3018
+ type: pulumi.Input['PrivacyBudgetTemplateBudgetParameterType']
3019
+ """
3020
+ The type of budget parameter being configured.
3021
+ """
3022
+ auto_refresh: NotRequired[pulumi.Input['PrivacyBudgetTemplateBudgetParameterAutoRefresh']]
3023
+ """
3024
+ Whether this individual budget parameter automatically refreshes when the budget period resets.
3025
+ """
3026
+ elif False:
3027
+ PrivacyBudgetTemplateBudgetParameterArgsDict: TypeAlias = Mapping[str, Any]
3028
+
3029
+ @pulumi.input_type
3030
+ class PrivacyBudgetTemplateBudgetParameterArgs:
3031
+ def __init__(__self__, *,
3032
+ budget: pulumi.Input[_builtins.int],
3033
+ type: pulumi.Input['PrivacyBudgetTemplateBudgetParameterType'],
3034
+ auto_refresh: Optional[pulumi.Input['PrivacyBudgetTemplateBudgetParameterAutoRefresh']] = None):
3035
+ """
3036
+ :param pulumi.Input[_builtins.int] budget: The budget allocation amount for this specific parameter.
3037
+ :param pulumi.Input['PrivacyBudgetTemplateBudgetParameterType'] type: The type of budget parameter being configured.
3038
+ :param pulumi.Input['PrivacyBudgetTemplateBudgetParameterAutoRefresh'] auto_refresh: Whether this individual budget parameter automatically refreshes when the budget period resets.
3039
+ """
3040
+ pulumi.set(__self__, "budget", budget)
3041
+ pulumi.set(__self__, "type", type)
3042
+ if auto_refresh is not None:
3043
+ pulumi.set(__self__, "auto_refresh", auto_refresh)
3044
+
3045
+ @_builtins.property
3046
+ @pulumi.getter
3047
+ def budget(self) -> pulumi.Input[_builtins.int]:
3048
+ """
3049
+ The budget allocation amount for this specific parameter.
3050
+ """
3051
+ return pulumi.get(self, "budget")
3052
+
3053
+ @budget.setter
3054
+ def budget(self, value: pulumi.Input[_builtins.int]):
3055
+ pulumi.set(self, "budget", value)
3056
+
3057
+ @_builtins.property
3058
+ @pulumi.getter
3059
+ def type(self) -> pulumi.Input['PrivacyBudgetTemplateBudgetParameterType']:
3060
+ """
3061
+ The type of budget parameter being configured.
3062
+ """
3063
+ return pulumi.get(self, "type")
3064
+
3065
+ @type.setter
3066
+ def type(self, value: pulumi.Input['PrivacyBudgetTemplateBudgetParameterType']):
3067
+ pulumi.set(self, "type", value)
3068
+
3069
+ @_builtins.property
3070
+ @pulumi.getter(name="autoRefresh")
3071
+ def auto_refresh(self) -> Optional[pulumi.Input['PrivacyBudgetTemplateBudgetParameterAutoRefresh']]:
3072
+ """
3073
+ Whether this individual budget parameter automatically refreshes when the budget period resets.
3074
+ """
3075
+ return pulumi.get(self, "auto_refresh")
3076
+
3077
+ @auto_refresh.setter
3078
+ def auto_refresh(self, value: Optional[pulumi.Input['PrivacyBudgetTemplateBudgetParameterAutoRefresh']]):
3079
+ pulumi.set(self, "auto_refresh", value)
3080
+
3081
+
@@ -27,6 +27,7 @@ class CollaborationArgs:
27
27
  creator_display_name: pulumi.Input[_builtins.str],
28
28
  description: pulumi.Input[_builtins.str],
29
29
  query_log_status: pulumi.Input['CollaborationQueryLogStatus'],
30
+ allowed_result_regions: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]]] = None,
30
31
  analytics_engine: Optional[pulumi.Input['CollaborationAnalyticsEngine']] = None,
31
32
  auto_approved_change_types: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationAutoApprovedChangeType']]]] = None,
32
33
  creator_member_abilities: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationMemberAbility']]]] = None,
@@ -44,6 +45,7 @@ class CollaborationArgs:
44
45
  :param pulumi.Input['CollaborationQueryLogStatus'] query_log_status: An indicator as to whether query logging has been enabled or disabled for the collaboration.
45
46
 
46
47
  When `ENABLED` , AWS Clean Rooms logs details about queries run within this collaboration and those logs can be viewed in Amazon CloudWatch Logs. The default value is `DISABLED` .
48
+ :param pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]] allowed_result_regions: The AWS Regions where collaboration query results can be stored. Returns the list of Region identifiers that were specified when the collaboration was created. This list is used to enforce regional storage policies and compliance requirements.
47
49
  :param pulumi.Input['CollaborationAnalyticsEngine'] analytics_engine: The analytics engine for the collaboration.
48
50
 
49
51
  > After July 16, 2025, the `CLEAN_ROOMS_SQL` parameter will no longer be available.
@@ -64,6 +66,8 @@ class CollaborationArgs:
64
66
  pulumi.set(__self__, "creator_display_name", creator_display_name)
65
67
  pulumi.set(__self__, "description", description)
66
68
  pulumi.set(__self__, "query_log_status", query_log_status)
69
+ if allowed_result_regions is not None:
70
+ pulumi.set(__self__, "allowed_result_regions", allowed_result_regions)
67
71
  if analytics_engine is not None:
68
72
  pulumi.set(__self__, "analytics_engine", analytics_engine)
69
73
  if auto_approved_change_types is not None:
@@ -123,6 +127,18 @@ class CollaborationArgs:
123
127
  def query_log_status(self, value: pulumi.Input['CollaborationQueryLogStatus']):
124
128
  pulumi.set(self, "query_log_status", value)
125
129
 
130
+ @_builtins.property
131
+ @pulumi.getter(name="allowedResultRegions")
132
+ def allowed_result_regions(self) -> Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]]]:
133
+ """
134
+ The AWS Regions where collaboration query results can be stored. Returns the list of Region identifiers that were specified when the collaboration was created. This list is used to enforce regional storage policies and compliance requirements.
135
+ """
136
+ return pulumi.get(self, "allowed_result_regions")
137
+
138
+ @allowed_result_regions.setter
139
+ def allowed_result_regions(self, value: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]]]):
140
+ pulumi.set(self, "allowed_result_regions", value)
141
+
126
142
  @_builtins.property
127
143
  @pulumi.getter(name="analyticsEngine")
128
144
  def analytics_engine(self) -> Optional[pulumi.Input['CollaborationAnalyticsEngine']]:
@@ -256,6 +272,7 @@ class Collaboration(pulumi.CustomResource):
256
272
  def __init__(__self__,
257
273
  resource_name: str,
258
274
  opts: Optional[pulumi.ResourceOptions] = None,
275
+ allowed_result_regions: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]]] = None,
259
276
  analytics_engine: Optional[pulumi.Input['CollaborationAnalyticsEngine']] = None,
260
277
  auto_approved_change_types: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationAutoApprovedChangeType']]]] = None,
261
278
  creator_display_name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -275,6 +292,7 @@ class Collaboration(pulumi.CustomResource):
275
292
 
276
293
  :param str resource_name: The name of the resource.
277
294
  :param pulumi.ResourceOptions opts: Options for the resource.
295
+ :param pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]] allowed_result_regions: The AWS Regions where collaboration query results can be stored. Returns the list of Region identifiers that were specified when the collaboration was created. This list is used to enforce regional storage policies and compliance requirements.
278
296
  :param pulumi.Input['CollaborationAnalyticsEngine'] analytics_engine: The analytics engine for the collaboration.
279
297
 
280
298
  > After July 16, 2025, the `CLEAN_ROOMS_SQL` parameter will no longer be available.
@@ -321,6 +339,7 @@ class Collaboration(pulumi.CustomResource):
321
339
  def _internal_init(__self__,
322
340
  resource_name: str,
323
341
  opts: Optional[pulumi.ResourceOptions] = None,
342
+ allowed_result_regions: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationSupportedS3Region']]]] = None,
324
343
  analytics_engine: Optional[pulumi.Input['CollaborationAnalyticsEngine']] = None,
325
344
  auto_approved_change_types: Optional[pulumi.Input[Sequence[pulumi.Input['CollaborationAutoApprovedChangeType']]]] = None,
326
345
  creator_display_name: Optional[pulumi.Input[_builtins.str]] = None,
@@ -343,6 +362,7 @@ class Collaboration(pulumi.CustomResource):
343
362
  raise TypeError('__props__ is only valid when passed in combination with a valid opts.id to get an existing resource')
344
363
  __props__ = CollaborationArgs.__new__(CollaborationArgs)
345
364
 
365
+ __props__.__dict__["allowed_result_regions"] = allowed_result_regions
346
366
  __props__.__dict__["analytics_engine"] = analytics_engine
347
367
  __props__.__dict__["auto_approved_change_types"] = auto_approved_change_types
348
368
  if creator_display_name is None and not opts.urn:
@@ -364,7 +384,7 @@ class Collaboration(pulumi.CustomResource):
364
384
  __props__.__dict__["tags"] = tags
365
385
  __props__.__dict__["arn"] = None
366
386
  __props__.__dict__["collaboration_identifier"] = None
367
- replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["autoApprovedChangeTypes[*]", "creatorDisplayName", "creatorMemberAbilities[*]", "creatorMlMemberAbilities", "creatorPaymentConfiguration", "dataEncryptionMetadata", "jobLogStatus", "members[*]", "queryLogStatus"])
387
+ replace_on_changes = pulumi.ResourceOptions(replace_on_changes=["allowedResultRegions[*]", "autoApprovedChangeTypes[*]", "creatorDisplayName", "creatorMemberAbilities[*]", "creatorMlMemberAbilities", "creatorPaymentConfiguration", "dataEncryptionMetadata", "jobLogStatus", "members[*]", "queryLogStatus"])
368
388
  opts = pulumi.ResourceOptions.merge(opts, replace_on_changes)
369
389
  super(Collaboration, __self__).__init__(
370
390
  'aws-native:cleanrooms:Collaboration',
@@ -388,6 +408,7 @@ class Collaboration(pulumi.CustomResource):
388
408
 
389
409
  __props__ = CollaborationArgs.__new__(CollaborationArgs)
390
410
 
411
+ __props__.__dict__["allowed_result_regions"] = None
391
412
  __props__.__dict__["analytics_engine"] = None
392
413
  __props__.__dict__["arn"] = None
393
414
  __props__.__dict__["auto_approved_change_types"] = None
@@ -405,6 +426,14 @@ class Collaboration(pulumi.CustomResource):
405
426
  __props__.__dict__["tags"] = None
406
427
  return Collaboration(resource_name, opts=opts, __props__=__props__)
407
428
 
429
+ @_builtins.property
430
+ @pulumi.getter(name="allowedResultRegions")
431
+ def allowed_result_regions(self) -> pulumi.Output[Optional[Sequence['CollaborationSupportedS3Region']]]:
432
+ """
433
+ The AWS Regions where collaboration query results can be stored. Returns the list of Region identifiers that were specified when the collaboration was created. This list is used to enforce regional storage policies and compliance requirements.
434
+ """
435
+ return pulumi.get(self, "allowed_result_regions")
436
+
408
437
  @_builtins.property
409
438
  @pulumi.getter(name="analyticsEngine")
410
439
  def analytics_engine(self) -> pulumi.Output[Optional['CollaborationAnalyticsEngine']]:
@@ -15,6 +15,7 @@ else:
15
15
  from .. import _utilities
16
16
  from . import outputs
17
17
  from .. import outputs as _root_outputs
18
+ from ._enums import *
18
19
 
19
20
  __all__ = [
20
21
  'GetPrivacyBudgetTemplateResult',