cdktf-cdktf-provider-upcloud 15.8.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.
Files changed (66) hide show
  1. cdktf_cdktf_provider_upcloud/__init__.py +247 -0
  2. cdktf_cdktf_provider_upcloud/_jsii/__init__.py +45 -0
  3. cdktf_cdktf_provider_upcloud/_jsii/provider-upcloud@15.8.0.jsii.tgz +0 -0
  4. cdktf_cdktf_provider_upcloud/data_upcloud_hosts/__init__.py +894 -0
  5. cdktf_cdktf_provider_upcloud/data_upcloud_ip_addresses/__init__.py +633 -0
  6. cdktf_cdktf_provider_upcloud/data_upcloud_kubernetes_cluster/__init__.py +384 -0
  7. cdktf_cdktf_provider_upcloud/data_upcloud_load_balancer_dns_challenge_domain/__init__.py +319 -0
  8. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_mysql_sessions/__init__.py +853 -0
  9. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_opensearch_indices/__init__.py +717 -0
  10. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_postgresql_sessions/__init__.py +1084 -0
  11. cdktf_cdktf_provider_upcloud/data_upcloud_managed_database_valkey_sessions/__init__.py +898 -0
  12. cdktf_cdktf_provider_upcloud/data_upcloud_managed_object_storage_policies/__init__.py +647 -0
  13. cdktf_cdktf_provider_upcloud/data_upcloud_managed_object_storage_regions/__init__.py +600 -0
  14. cdktf_cdktf_provider_upcloud/data_upcloud_networks/__init__.py +1093 -0
  15. cdktf_cdktf_provider_upcloud/data_upcloud_storage/__init__.py +725 -0
  16. cdktf_cdktf_provider_upcloud/data_upcloud_tags/__init__.py +558 -0
  17. cdktf_cdktf_provider_upcloud/data_upcloud_zone/__init__.py +421 -0
  18. cdktf_cdktf_provider_upcloud/data_upcloud_zones/__init__.py +364 -0
  19. cdktf_cdktf_provider_upcloud/file_storage/__init__.py +1683 -0
  20. cdktf_cdktf_provider_upcloud/firewall_rules/__init__.py +1233 -0
  21. cdktf_cdktf_provider_upcloud/floating_ip_address/__init__.py +552 -0
  22. cdktf_cdktf_provider_upcloud/gateway/__init__.py +1167 -0
  23. cdktf_cdktf_provider_upcloud/gateway_connection/__init__.py +1299 -0
  24. cdktf_cdktf_provider_upcloud/gateway_connection_tunnel/__init__.py +1357 -0
  25. cdktf_cdktf_provider_upcloud/kubernetes_cluster/__init__.py +801 -0
  26. cdktf_cdktf_provider_upcloud/kubernetes_node_group/__init__.py +2674 -0
  27. cdktf_cdktf_provider_upcloud/loadbalancer/__init__.py +2113 -0
  28. cdktf_cdktf_provider_upcloud/loadbalancer_backend/__init__.py +1426 -0
  29. cdktf_cdktf_provider_upcloud/loadbalancer_backend_tls_config/__init__.py +442 -0
  30. cdktf_cdktf_provider_upcloud/loadbalancer_dynamic_backend_member/__init__.py +633 -0
  31. cdktf_cdktf_provider_upcloud/loadbalancer_dynamic_certificate_bundle/__init__.py +459 -0
  32. cdktf_cdktf_provider_upcloud/loadbalancer_frontend/__init__.py +1290 -0
  33. cdktf_cdktf_provider_upcloud/loadbalancer_frontend_rule/__init__.py +11486 -0
  34. cdktf_cdktf_provider_upcloud/loadbalancer_frontend_tls_config/__init__.py +442 -0
  35. cdktf_cdktf_provider_upcloud/loadbalancer_manual_certificate_bundle/__init__.py +504 -0
  36. cdktf_cdktf_provider_upcloud/loadbalancer_resolver/__init__.py +659 -0
  37. cdktf_cdktf_provider_upcloud/loadbalancer_static_backend_member/__init__.py +633 -0
  38. cdktf_cdktf_provider_upcloud/managed_database_logical_database/__init__.py +536 -0
  39. cdktf_cdktf_provider_upcloud/managed_database_mysql/__init__.py +4644 -0
  40. cdktf_cdktf_provider_upcloud/managed_database_opensearch/__init__.py +13812 -0
  41. cdktf_cdktf_provider_upcloud/managed_database_postgresql/__init__.py +7734 -0
  42. cdktf_cdktf_provider_upcloud/managed_database_user/__init__.py +1541 -0
  43. cdktf_cdktf_provider_upcloud/managed_database_valkey/__init__.py +3355 -0
  44. cdktf_cdktf_provider_upcloud/managed_object_storage/__init__.py +1198 -0
  45. cdktf_cdktf_provider_upcloud/managed_object_storage_bucket/__init__.py +409 -0
  46. cdktf_cdktf_provider_upcloud/managed_object_storage_custom_domain/__init__.py +446 -0
  47. cdktf_cdktf_provider_upcloud/managed_object_storage_policy/__init__.py +521 -0
  48. cdktf_cdktf_provider_upcloud/managed_object_storage_user/__init__.py +454 -0
  49. cdktf_cdktf_provider_upcloud/managed_object_storage_user_access_key/__init__.py +505 -0
  50. cdktf_cdktf_provider_upcloud/managed_object_storage_user_policy/__init__.py +485 -0
  51. cdktf_cdktf_provider_upcloud/network/__init__.py +1554 -0
  52. cdktf_cdktf_provider_upcloud/network_peering/__init__.py +1084 -0
  53. cdktf_cdktf_provider_upcloud/provider/__init__.py +544 -0
  54. cdktf_cdktf_provider_upcloud/py.typed +1 -0
  55. cdktf_cdktf_provider_upcloud/router/__init__.py +1030 -0
  56. cdktf_cdktf_provider_upcloud/server/__init__.py +4542 -0
  57. cdktf_cdktf_provider_upcloud/server_group/__init__.py +571 -0
  58. cdktf_cdktf_provider_upcloud/storage/__init__.py +1850 -0
  59. cdktf_cdktf_provider_upcloud/storage_backup/__init__.py +483 -0
  60. cdktf_cdktf_provider_upcloud/storage_template/__init__.py +478 -0
  61. cdktf_cdktf_provider_upcloud/tag/__init__.py +493 -0
  62. cdktf_cdktf_provider_upcloud-15.8.0.dist-info/LICENSE +355 -0
  63. cdktf_cdktf_provider_upcloud-15.8.0.dist-info/METADATA +120 -0
  64. cdktf_cdktf_provider_upcloud-15.8.0.dist-info/RECORD +66 -0
  65. cdktf_cdktf_provider_upcloud-15.8.0.dist-info/WHEEL +5 -0
  66. cdktf_cdktf_provider_upcloud-15.8.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,446 @@
1
+ r'''
2
+ # `upcloud_managed_object_storage_custom_domain`
3
+
4
+ Refer to the Terraform Registry for docs: [`upcloud_managed_object_storage_custom_domain`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain).
5
+ '''
6
+ from pkgutil import extend_path
7
+ __path__ = extend_path(__path__, __name__)
8
+
9
+ import abc
10
+ import builtins
11
+ import datetime
12
+ import enum
13
+ import typing
14
+
15
+ import jsii
16
+ import publication
17
+ import typing_extensions
18
+
19
+ import typeguard
20
+ from importlib.metadata import version as _metadata_package_version
21
+ TYPEGUARD_MAJOR_VERSION = int(_metadata_package_version('typeguard').split('.')[0])
22
+
23
+ def check_type(argname: str, value: object, expected_type: typing.Any) -> typing.Any:
24
+ if TYPEGUARD_MAJOR_VERSION <= 2:
25
+ return typeguard.check_type(argname=argname, value=value, expected_type=expected_type) # type:ignore
26
+ else:
27
+ if isinstance(value, jsii._reference_map.InterfaceDynamicProxy): # pyright: ignore [reportAttributeAccessIssue]
28
+ pass
29
+ else:
30
+ if TYPEGUARD_MAJOR_VERSION == 3:
31
+ typeguard.config.collection_check_strategy = typeguard.CollectionCheckStrategy.ALL_ITEMS # type:ignore
32
+ typeguard.check_type(value=value, expected_type=expected_type) # type:ignore
33
+ else:
34
+ typeguard.check_type(value=value, expected_type=expected_type, collection_check_strategy=typeguard.CollectionCheckStrategy.ALL_ITEMS) # type:ignore
35
+
36
+ from .._jsii import *
37
+
38
+ import cdktf as _cdktf_9a9027ec
39
+ import constructs as _constructs_77d1e7e8
40
+
41
+
42
+ class ManagedObjectStorageCustomDomain(
43
+ _cdktf_9a9027ec.TerraformResource,
44
+ metaclass=jsii.JSIIMeta,
45
+ jsii_type="@cdktf/provider-upcloud.managedObjectStorageCustomDomain.ManagedObjectStorageCustomDomain",
46
+ ):
47
+ '''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain upcloud_managed_object_storage_custom_domain}.'''
48
+
49
+ def __init__(
50
+ self,
51
+ scope: _constructs_77d1e7e8.Construct,
52
+ id: builtins.str,
53
+ *,
54
+ domain_name: builtins.str,
55
+ service_uuid: builtins.str,
56
+ type: typing.Optional[builtins.str] = None,
57
+ connection: typing.Optional[typing.Union[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.WinrmProvisionerConnection, typing.Dict[builtins.str, typing.Any]]]] = None,
58
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
59
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
60
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
61
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
62
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
63
+ provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[_cdktf_9a9027ec.FileProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.LocalExecProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.RemoteExecProvisioner, typing.Dict[builtins.str, typing.Any]]]]] = None,
64
+ ) -> None:
65
+ '''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain upcloud_managed_object_storage_custom_domain} Resource.
66
+
67
+ :param scope: The scope in which to define this construct.
68
+ :param id: The scoped construct ID. Must be unique amongst siblings in the same scope
69
+ :param domain_name: Must be a subdomain and consist of 3 to 5 parts such as objects.example.com. Cannot be root-level domain e.g. example.com. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#domain_name ManagedObjectStorageCustomDomain#domain_name}
70
+ :param service_uuid: Managed Object Storage service UUID. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#service_uuid ManagedObjectStorageCustomDomain#service_uuid}
71
+ :param type: At the moment only ``public`` is accepted. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#type ManagedObjectStorageCustomDomain#type}
72
+ :param connection:
73
+ :param count:
74
+ :param depends_on:
75
+ :param for_each:
76
+ :param lifecycle:
77
+ :param provider:
78
+ :param provisioners:
79
+ '''
80
+ if __debug__:
81
+ type_hints = typing.get_type_hints(_typecheckingstub__6e130350bd0491e7f5939dbbdda640d8bb508b4bff6877a975e3a7899c068e5d)
82
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
83
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
84
+ config = ManagedObjectStorageCustomDomainConfig(
85
+ domain_name=domain_name,
86
+ service_uuid=service_uuid,
87
+ type=type,
88
+ connection=connection,
89
+ count=count,
90
+ depends_on=depends_on,
91
+ for_each=for_each,
92
+ lifecycle=lifecycle,
93
+ provider=provider,
94
+ provisioners=provisioners,
95
+ )
96
+
97
+ jsii.create(self.__class__, self, [scope, id, config])
98
+
99
+ @jsii.member(jsii_name="generateConfigForImport")
100
+ @builtins.classmethod
101
+ def generate_config_for_import(
102
+ cls,
103
+ scope: _constructs_77d1e7e8.Construct,
104
+ import_to_id: builtins.str,
105
+ import_from_id: builtins.str,
106
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
107
+ ) -> _cdktf_9a9027ec.ImportableResource:
108
+ '''Generates CDKTF code for importing a ManagedObjectStorageCustomDomain resource upon running "cdktf plan ".
109
+
110
+ :param scope: The scope in which to define this construct.
111
+ :param import_to_id: The construct id used in the generated config for the ManagedObjectStorageCustomDomain to import.
112
+ :param import_from_id: The id of the existing ManagedObjectStorageCustomDomain that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#import import section} in the documentation of this resource for the id to use
113
+ :param provider: ? Optional instance of the provider where the ManagedObjectStorageCustomDomain to import is found.
114
+ '''
115
+ if __debug__:
116
+ type_hints = typing.get_type_hints(_typecheckingstub__78c9c53acfc9d2299c868e28e6e880e249ffa2fa8392f99b1503ef93fa3e8827)
117
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
118
+ check_type(argname="argument import_to_id", value=import_to_id, expected_type=type_hints["import_to_id"])
119
+ check_type(argname="argument import_from_id", value=import_from_id, expected_type=type_hints["import_from_id"])
120
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
121
+ return typing.cast(_cdktf_9a9027ec.ImportableResource, jsii.sinvoke(cls, "generateConfigForImport", [scope, import_to_id, import_from_id, provider]))
122
+
123
+ @jsii.member(jsii_name="resetType")
124
+ def reset_type(self) -> None:
125
+ return typing.cast(None, jsii.invoke(self, "resetType", []))
126
+
127
+ @jsii.member(jsii_name="synthesizeAttributes")
128
+ def _synthesize_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
129
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeAttributes", []))
130
+
131
+ @jsii.member(jsii_name="synthesizeHclAttributes")
132
+ def _synthesize_hcl_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
133
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeHclAttributes", []))
134
+
135
+ @jsii.python.classproperty
136
+ @jsii.member(jsii_name="tfResourceType")
137
+ def TF_RESOURCE_TYPE(cls) -> builtins.str:
138
+ return typing.cast(builtins.str, jsii.sget(cls, "tfResourceType"))
139
+
140
+ @builtins.property
141
+ @jsii.member(jsii_name="id")
142
+ def id(self) -> builtins.str:
143
+ return typing.cast(builtins.str, jsii.get(self, "id"))
144
+
145
+ @builtins.property
146
+ @jsii.member(jsii_name="domainNameInput")
147
+ def domain_name_input(self) -> typing.Optional[builtins.str]:
148
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "domainNameInput"))
149
+
150
+ @builtins.property
151
+ @jsii.member(jsii_name="serviceUuidInput")
152
+ def service_uuid_input(self) -> typing.Optional[builtins.str]:
153
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "serviceUuidInput"))
154
+
155
+ @builtins.property
156
+ @jsii.member(jsii_name="typeInput")
157
+ def type_input(self) -> typing.Optional[builtins.str]:
158
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "typeInput"))
159
+
160
+ @builtins.property
161
+ @jsii.member(jsii_name="domainName")
162
+ def domain_name(self) -> builtins.str:
163
+ return typing.cast(builtins.str, jsii.get(self, "domainName"))
164
+
165
+ @domain_name.setter
166
+ def domain_name(self, value: builtins.str) -> None:
167
+ if __debug__:
168
+ type_hints = typing.get_type_hints(_typecheckingstub__f391a742f56d13fc712da27bd3c133405cea5b583c093a2590bae37fc64558e0)
169
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
170
+ jsii.set(self, "domainName", value) # pyright: ignore[reportArgumentType]
171
+
172
+ @builtins.property
173
+ @jsii.member(jsii_name="serviceUuid")
174
+ def service_uuid(self) -> builtins.str:
175
+ return typing.cast(builtins.str, jsii.get(self, "serviceUuid"))
176
+
177
+ @service_uuid.setter
178
+ def service_uuid(self, value: builtins.str) -> None:
179
+ if __debug__:
180
+ type_hints = typing.get_type_hints(_typecheckingstub__605ba1752874caf50cc256be7dc42c6e5987a4ee0d0ca32feed60d0a7fbf85b7)
181
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
182
+ jsii.set(self, "serviceUuid", value) # pyright: ignore[reportArgumentType]
183
+
184
+ @builtins.property
185
+ @jsii.member(jsii_name="type")
186
+ def type(self) -> builtins.str:
187
+ return typing.cast(builtins.str, jsii.get(self, "type"))
188
+
189
+ @type.setter
190
+ def type(self, value: builtins.str) -> None:
191
+ if __debug__:
192
+ type_hints = typing.get_type_hints(_typecheckingstub__8cc2767e7c8be08aad92701b1b73520fa7ff1edb2ac2bd6f516c9379fb4fc566)
193
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
194
+ jsii.set(self, "type", value) # pyright: ignore[reportArgumentType]
195
+
196
+
197
+ @jsii.data_type(
198
+ jsii_type="@cdktf/provider-upcloud.managedObjectStorageCustomDomain.ManagedObjectStorageCustomDomainConfig",
199
+ jsii_struct_bases=[_cdktf_9a9027ec.TerraformMetaArguments],
200
+ name_mapping={
201
+ "connection": "connection",
202
+ "count": "count",
203
+ "depends_on": "dependsOn",
204
+ "for_each": "forEach",
205
+ "lifecycle": "lifecycle",
206
+ "provider": "provider",
207
+ "provisioners": "provisioners",
208
+ "domain_name": "domainName",
209
+ "service_uuid": "serviceUuid",
210
+ "type": "type",
211
+ },
212
+ )
213
+ class ManagedObjectStorageCustomDomainConfig(_cdktf_9a9027ec.TerraformMetaArguments):
214
+ def __init__(
215
+ self,
216
+ *,
217
+ connection: typing.Optional[typing.Union[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.WinrmProvisionerConnection, typing.Dict[builtins.str, typing.Any]]]] = None,
218
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
219
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
220
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
221
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
222
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
223
+ provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[_cdktf_9a9027ec.FileProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.LocalExecProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.RemoteExecProvisioner, typing.Dict[builtins.str, typing.Any]]]]] = None,
224
+ domain_name: builtins.str,
225
+ service_uuid: builtins.str,
226
+ type: typing.Optional[builtins.str] = None,
227
+ ) -> None:
228
+ '''
229
+ :param connection:
230
+ :param count:
231
+ :param depends_on:
232
+ :param for_each:
233
+ :param lifecycle:
234
+ :param provider:
235
+ :param provisioners:
236
+ :param domain_name: Must be a subdomain and consist of 3 to 5 parts such as objects.example.com. Cannot be root-level domain e.g. example.com. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#domain_name ManagedObjectStorageCustomDomain#domain_name}
237
+ :param service_uuid: Managed Object Storage service UUID. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#service_uuid ManagedObjectStorageCustomDomain#service_uuid}
238
+ :param type: At the moment only ``public`` is accepted. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#type ManagedObjectStorageCustomDomain#type}
239
+ '''
240
+ if isinstance(lifecycle, dict):
241
+ lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
242
+ if __debug__:
243
+ type_hints = typing.get_type_hints(_typecheckingstub__ab54090367d2dedf82c487d132257d05f4494e9f7c4133c7ccebdf1f368ccf14)
244
+ check_type(argname="argument connection", value=connection, expected_type=type_hints["connection"])
245
+ check_type(argname="argument count", value=count, expected_type=type_hints["count"])
246
+ check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
247
+ check_type(argname="argument for_each", value=for_each, expected_type=type_hints["for_each"])
248
+ check_type(argname="argument lifecycle", value=lifecycle, expected_type=type_hints["lifecycle"])
249
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
250
+ check_type(argname="argument provisioners", value=provisioners, expected_type=type_hints["provisioners"])
251
+ check_type(argname="argument domain_name", value=domain_name, expected_type=type_hints["domain_name"])
252
+ check_type(argname="argument service_uuid", value=service_uuid, expected_type=type_hints["service_uuid"])
253
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
254
+ self._values: typing.Dict[builtins.str, typing.Any] = {
255
+ "domain_name": domain_name,
256
+ "service_uuid": service_uuid,
257
+ }
258
+ if connection is not None:
259
+ self._values["connection"] = connection
260
+ if count is not None:
261
+ self._values["count"] = count
262
+ if depends_on is not None:
263
+ self._values["depends_on"] = depends_on
264
+ if for_each is not None:
265
+ self._values["for_each"] = for_each
266
+ if lifecycle is not None:
267
+ self._values["lifecycle"] = lifecycle
268
+ if provider is not None:
269
+ self._values["provider"] = provider
270
+ if provisioners is not None:
271
+ self._values["provisioners"] = provisioners
272
+ if type is not None:
273
+ self._values["type"] = type
274
+
275
+ @builtins.property
276
+ def connection(
277
+ self,
278
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]]:
279
+ '''
280
+ :stability: experimental
281
+ '''
282
+ result = self._values.get("connection")
283
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]], result)
284
+
285
+ @builtins.property
286
+ def count(
287
+ self,
288
+ ) -> typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]]:
289
+ '''
290
+ :stability: experimental
291
+ '''
292
+ result = self._values.get("count")
293
+ return typing.cast(typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]], result)
294
+
295
+ @builtins.property
296
+ def depends_on(
297
+ self,
298
+ ) -> typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]]:
299
+ '''
300
+ :stability: experimental
301
+ '''
302
+ result = self._values.get("depends_on")
303
+ return typing.cast(typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]], result)
304
+
305
+ @builtins.property
306
+ def for_each(self) -> typing.Optional[_cdktf_9a9027ec.ITerraformIterator]:
307
+ '''
308
+ :stability: experimental
309
+ '''
310
+ result = self._values.get("for_each")
311
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.ITerraformIterator], result)
312
+
313
+ @builtins.property
314
+ def lifecycle(self) -> typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle]:
315
+ '''
316
+ :stability: experimental
317
+ '''
318
+ result = self._values.get("lifecycle")
319
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle], result)
320
+
321
+ @builtins.property
322
+ def provider(self) -> typing.Optional[_cdktf_9a9027ec.TerraformProvider]:
323
+ '''
324
+ :stability: experimental
325
+ '''
326
+ result = self._values.get("provider")
327
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformProvider], result)
328
+
329
+ @builtins.property
330
+ def provisioners(
331
+ self,
332
+ ) -> typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]]:
333
+ '''
334
+ :stability: experimental
335
+ '''
336
+ result = self._values.get("provisioners")
337
+ return typing.cast(typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]], result)
338
+
339
+ @builtins.property
340
+ def domain_name(self) -> builtins.str:
341
+ '''Must be a subdomain and consist of 3 to 5 parts such as objects.example.com. Cannot be root-level domain e.g. example.com.
342
+
343
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#domain_name ManagedObjectStorageCustomDomain#domain_name}
344
+ '''
345
+ result = self._values.get("domain_name")
346
+ assert result is not None, "Required property 'domain_name' is missing"
347
+ return typing.cast(builtins.str, result)
348
+
349
+ @builtins.property
350
+ def service_uuid(self) -> builtins.str:
351
+ '''Managed Object Storage service UUID.
352
+
353
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#service_uuid ManagedObjectStorageCustomDomain#service_uuid}
354
+ '''
355
+ result = self._values.get("service_uuid")
356
+ assert result is not None, "Required property 'service_uuid' is missing"
357
+ return typing.cast(builtins.str, result)
358
+
359
+ @builtins.property
360
+ def type(self) -> typing.Optional[builtins.str]:
361
+ '''At the moment only ``public`` is accepted.
362
+
363
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_custom_domain#type ManagedObjectStorageCustomDomain#type}
364
+ '''
365
+ result = self._values.get("type")
366
+ return typing.cast(typing.Optional[builtins.str], result)
367
+
368
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
369
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
370
+
371
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
372
+ return not (rhs == self)
373
+
374
+ def __repr__(self) -> str:
375
+ return "ManagedObjectStorageCustomDomainConfig(%s)" % ", ".join(
376
+ k + "=" + repr(v) for k, v in self._values.items()
377
+ )
378
+
379
+
380
+ __all__ = [
381
+ "ManagedObjectStorageCustomDomain",
382
+ "ManagedObjectStorageCustomDomainConfig",
383
+ ]
384
+
385
+ publication.publish()
386
+
387
+ def _typecheckingstub__6e130350bd0491e7f5939dbbdda640d8bb508b4bff6877a975e3a7899c068e5d(
388
+ scope: _constructs_77d1e7e8.Construct,
389
+ id: builtins.str,
390
+ *,
391
+ domain_name: builtins.str,
392
+ service_uuid: builtins.str,
393
+ type: typing.Optional[builtins.str] = None,
394
+ connection: typing.Optional[typing.Union[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.WinrmProvisionerConnection, typing.Dict[builtins.str, typing.Any]]]] = None,
395
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
396
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
397
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
398
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
399
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
400
+ provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[_cdktf_9a9027ec.FileProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.LocalExecProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.RemoteExecProvisioner, typing.Dict[builtins.str, typing.Any]]]]] = None,
401
+ ) -> None:
402
+ """Type checking stubs"""
403
+ pass
404
+
405
+ def _typecheckingstub__78c9c53acfc9d2299c868e28e6e880e249ffa2fa8392f99b1503ef93fa3e8827(
406
+ scope: _constructs_77d1e7e8.Construct,
407
+ import_to_id: builtins.str,
408
+ import_from_id: builtins.str,
409
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
410
+ ) -> None:
411
+ """Type checking stubs"""
412
+ pass
413
+
414
+ def _typecheckingstub__f391a742f56d13fc712da27bd3c133405cea5b583c093a2590bae37fc64558e0(
415
+ value: builtins.str,
416
+ ) -> None:
417
+ """Type checking stubs"""
418
+ pass
419
+
420
+ def _typecheckingstub__605ba1752874caf50cc256be7dc42c6e5987a4ee0d0ca32feed60d0a7fbf85b7(
421
+ value: builtins.str,
422
+ ) -> None:
423
+ """Type checking stubs"""
424
+ pass
425
+
426
+ def _typecheckingstub__8cc2767e7c8be08aad92701b1b73520fa7ff1edb2ac2bd6f516c9379fb4fc566(
427
+ value: builtins.str,
428
+ ) -> None:
429
+ """Type checking stubs"""
430
+ pass
431
+
432
+ def _typecheckingstub__ab54090367d2dedf82c487d132257d05f4494e9f7c4133c7ccebdf1f368ccf14(
433
+ *,
434
+ connection: typing.Optional[typing.Union[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.WinrmProvisionerConnection, typing.Dict[builtins.str, typing.Any]]]] = None,
435
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
436
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
437
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
438
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
439
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
440
+ provisioners: typing.Optional[typing.Sequence[typing.Union[typing.Union[_cdktf_9a9027ec.FileProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.LocalExecProvisioner, typing.Dict[builtins.str, typing.Any]], typing.Union[_cdktf_9a9027ec.RemoteExecProvisioner, typing.Dict[builtins.str, typing.Any]]]]] = None,
441
+ domain_name: builtins.str,
442
+ service_uuid: builtins.str,
443
+ type: typing.Optional[builtins.str] = None,
444
+ ) -> None:
445
+ """Type checking stubs"""
446
+ pass