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,454 @@
1
+ r'''
2
+ # `upcloud_managed_object_storage_user`
3
+
4
+ Refer to the Terraform Registry for docs: [`upcloud_managed_object_storage_user`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user).
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 ManagedObjectStorageUser(
43
+ _cdktf_9a9027ec.TerraformResource,
44
+ metaclass=jsii.JSIIMeta,
45
+ jsii_type="@cdktf/provider-upcloud.managedObjectStorageUser.ManagedObjectStorageUser",
46
+ ):
47
+ '''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user upcloud_managed_object_storage_user}.'''
48
+
49
+ def __init__(
50
+ self,
51
+ scope: _constructs_77d1e7e8.Construct,
52
+ id_: builtins.str,
53
+ *,
54
+ service_uuid: builtins.str,
55
+ username: builtins.str,
56
+ id: 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_user upcloud_managed_object_storage_user} 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 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_user#service_uuid ManagedObjectStorageUser#service_uuid}
70
+ :param username: Custom usernames for accessing the object storage. No relation to UpCloud API accounts. See ``upcloud_managed_object_storage_user_access_key`` for managing access keys and ``upcloud_managed_object_storage_user_policy`` for managing policies. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#username ManagedObjectStorageUser#username}
71
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#id ManagedObjectStorageUser#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
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__dc36e4c59a54946bb60223733d5e68322f091e5fbb517c9af40c7627cd35e56c)
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 = ManagedObjectStorageUserConfig(
85
+ service_uuid=service_uuid,
86
+ username=username,
87
+ id=id,
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 ManagedObjectStorageUser 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 ManagedObjectStorageUser to import.
112
+ :param import_from_id: The id of the existing ManagedObjectStorageUser that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#import import section} in the documentation of this resource for the id to use
113
+ :param provider: ? Optional instance of the provider where the ManagedObjectStorageUser to import is found.
114
+ '''
115
+ if __debug__:
116
+ type_hints = typing.get_type_hints(_typecheckingstub__fb5de46a2cb1684a09b50d692fedf3d184b80d795c3a2efa649e248f12b2984c)
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="resetId")
124
+ def reset_id(self) -> None:
125
+ return typing.cast(None, jsii.invoke(self, "resetId", []))
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="arn")
142
+ def arn(self) -> builtins.str:
143
+ return typing.cast(builtins.str, jsii.get(self, "arn"))
144
+
145
+ @builtins.property
146
+ @jsii.member(jsii_name="createdAt")
147
+ def created_at(self) -> builtins.str:
148
+ return typing.cast(builtins.str, jsii.get(self, "createdAt"))
149
+
150
+ @builtins.property
151
+ @jsii.member(jsii_name="idInput")
152
+ def id_input(self) -> typing.Optional[builtins.str]:
153
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "idInput"))
154
+
155
+ @builtins.property
156
+ @jsii.member(jsii_name="serviceUuidInput")
157
+ def service_uuid_input(self) -> typing.Optional[builtins.str]:
158
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "serviceUuidInput"))
159
+
160
+ @builtins.property
161
+ @jsii.member(jsii_name="usernameInput")
162
+ def username_input(self) -> typing.Optional[builtins.str]:
163
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "usernameInput"))
164
+
165
+ @builtins.property
166
+ @jsii.member(jsii_name="id")
167
+ def id(self) -> builtins.str:
168
+ return typing.cast(builtins.str, jsii.get(self, "id"))
169
+
170
+ @id.setter
171
+ def id(self, value: builtins.str) -> None:
172
+ if __debug__:
173
+ type_hints = typing.get_type_hints(_typecheckingstub__a64868a3a9916db5325bef71d27da8d80400dcab4371001a80398e82606eace2)
174
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
175
+ jsii.set(self, "id", value) # pyright: ignore[reportArgumentType]
176
+
177
+ @builtins.property
178
+ @jsii.member(jsii_name="serviceUuid")
179
+ def service_uuid(self) -> builtins.str:
180
+ return typing.cast(builtins.str, jsii.get(self, "serviceUuid"))
181
+
182
+ @service_uuid.setter
183
+ def service_uuid(self, value: builtins.str) -> None:
184
+ if __debug__:
185
+ type_hints = typing.get_type_hints(_typecheckingstub__b906f17f810d6c27086a79fcb1740f0bbe1a0e31a5b253f4163bf382e80b4cad)
186
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
187
+ jsii.set(self, "serviceUuid", value) # pyright: ignore[reportArgumentType]
188
+
189
+ @builtins.property
190
+ @jsii.member(jsii_name="username")
191
+ def username(self) -> builtins.str:
192
+ return typing.cast(builtins.str, jsii.get(self, "username"))
193
+
194
+ @username.setter
195
+ def username(self, value: builtins.str) -> None:
196
+ if __debug__:
197
+ type_hints = typing.get_type_hints(_typecheckingstub__a80c3612cca7985765971f261f46a6f8a60fba5b6a5ceb1537a33a7d4915b574)
198
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
199
+ jsii.set(self, "username", value) # pyright: ignore[reportArgumentType]
200
+
201
+
202
+ @jsii.data_type(
203
+ jsii_type="@cdktf/provider-upcloud.managedObjectStorageUser.ManagedObjectStorageUserConfig",
204
+ jsii_struct_bases=[_cdktf_9a9027ec.TerraformMetaArguments],
205
+ name_mapping={
206
+ "connection": "connection",
207
+ "count": "count",
208
+ "depends_on": "dependsOn",
209
+ "for_each": "forEach",
210
+ "lifecycle": "lifecycle",
211
+ "provider": "provider",
212
+ "provisioners": "provisioners",
213
+ "service_uuid": "serviceUuid",
214
+ "username": "username",
215
+ "id": "id",
216
+ },
217
+ )
218
+ class ManagedObjectStorageUserConfig(_cdktf_9a9027ec.TerraformMetaArguments):
219
+ def __init__(
220
+ self,
221
+ *,
222
+ 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,
223
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
224
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
225
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
226
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
227
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
228
+ 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,
229
+ service_uuid: builtins.str,
230
+ username: builtins.str,
231
+ id: typing.Optional[builtins.str] = None,
232
+ ) -> None:
233
+ '''
234
+ :param connection:
235
+ :param count:
236
+ :param depends_on:
237
+ :param for_each:
238
+ :param lifecycle:
239
+ :param provider:
240
+ :param provisioners:
241
+ :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_user#service_uuid ManagedObjectStorageUser#service_uuid}
242
+ :param username: Custom usernames for accessing the object storage. No relation to UpCloud API accounts. See ``upcloud_managed_object_storage_user_access_key`` for managing access keys and ``upcloud_managed_object_storage_user_policy`` for managing policies. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#username ManagedObjectStorageUser#username}
243
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#id ManagedObjectStorageUser#id}. Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2. If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
244
+ '''
245
+ if isinstance(lifecycle, dict):
246
+ lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
247
+ if __debug__:
248
+ type_hints = typing.get_type_hints(_typecheckingstub__cd365359d5f360b2d3682ace2aa0b106954a4cd0ae25e72443a315942b30e36f)
249
+ check_type(argname="argument connection", value=connection, expected_type=type_hints["connection"])
250
+ check_type(argname="argument count", value=count, expected_type=type_hints["count"])
251
+ check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
252
+ check_type(argname="argument for_each", value=for_each, expected_type=type_hints["for_each"])
253
+ check_type(argname="argument lifecycle", value=lifecycle, expected_type=type_hints["lifecycle"])
254
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
255
+ check_type(argname="argument provisioners", value=provisioners, expected_type=type_hints["provisioners"])
256
+ check_type(argname="argument service_uuid", value=service_uuid, expected_type=type_hints["service_uuid"])
257
+ check_type(argname="argument username", value=username, expected_type=type_hints["username"])
258
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
259
+ self._values: typing.Dict[builtins.str, typing.Any] = {
260
+ "service_uuid": service_uuid,
261
+ "username": username,
262
+ }
263
+ if connection is not None:
264
+ self._values["connection"] = connection
265
+ if count is not None:
266
+ self._values["count"] = count
267
+ if depends_on is not None:
268
+ self._values["depends_on"] = depends_on
269
+ if for_each is not None:
270
+ self._values["for_each"] = for_each
271
+ if lifecycle is not None:
272
+ self._values["lifecycle"] = lifecycle
273
+ if provider is not None:
274
+ self._values["provider"] = provider
275
+ if provisioners is not None:
276
+ self._values["provisioners"] = provisioners
277
+ if id is not None:
278
+ self._values["id"] = id
279
+
280
+ @builtins.property
281
+ def connection(
282
+ self,
283
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]]:
284
+ '''
285
+ :stability: experimental
286
+ '''
287
+ result = self._values.get("connection")
288
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]], result)
289
+
290
+ @builtins.property
291
+ def count(
292
+ self,
293
+ ) -> typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]]:
294
+ '''
295
+ :stability: experimental
296
+ '''
297
+ result = self._values.get("count")
298
+ return typing.cast(typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]], result)
299
+
300
+ @builtins.property
301
+ def depends_on(
302
+ self,
303
+ ) -> typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]]:
304
+ '''
305
+ :stability: experimental
306
+ '''
307
+ result = self._values.get("depends_on")
308
+ return typing.cast(typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]], result)
309
+
310
+ @builtins.property
311
+ def for_each(self) -> typing.Optional[_cdktf_9a9027ec.ITerraformIterator]:
312
+ '''
313
+ :stability: experimental
314
+ '''
315
+ result = self._values.get("for_each")
316
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.ITerraformIterator], result)
317
+
318
+ @builtins.property
319
+ def lifecycle(self) -> typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle]:
320
+ '''
321
+ :stability: experimental
322
+ '''
323
+ result = self._values.get("lifecycle")
324
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle], result)
325
+
326
+ @builtins.property
327
+ def provider(self) -> typing.Optional[_cdktf_9a9027ec.TerraformProvider]:
328
+ '''
329
+ :stability: experimental
330
+ '''
331
+ result = self._values.get("provider")
332
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformProvider], result)
333
+
334
+ @builtins.property
335
+ def provisioners(
336
+ self,
337
+ ) -> typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]]:
338
+ '''
339
+ :stability: experimental
340
+ '''
341
+ result = self._values.get("provisioners")
342
+ return typing.cast(typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]], result)
343
+
344
+ @builtins.property
345
+ def service_uuid(self) -> builtins.str:
346
+ '''Managed Object Storage service UUID.
347
+
348
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#service_uuid ManagedObjectStorageUser#service_uuid}
349
+ '''
350
+ result = self._values.get("service_uuid")
351
+ assert result is not None, "Required property 'service_uuid' is missing"
352
+ return typing.cast(builtins.str, result)
353
+
354
+ @builtins.property
355
+ def username(self) -> builtins.str:
356
+ '''Custom usernames for accessing the object storage.
357
+
358
+ No relation to UpCloud API accounts. See ``upcloud_managed_object_storage_user_access_key`` for managing access keys and ``upcloud_managed_object_storage_user_policy`` for managing policies.
359
+
360
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#username ManagedObjectStorageUser#username}
361
+ '''
362
+ result = self._values.get("username")
363
+ assert result is not None, "Required property 'username' is missing"
364
+ return typing.cast(builtins.str, result)
365
+
366
+ @builtins.property
367
+ def id(self) -> typing.Optional[builtins.str]:
368
+ '''Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_object_storage_user#id ManagedObjectStorageUser#id}.
369
+
370
+ Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
371
+ If you experience problems setting this value it might not be settable. Please take a look at the provider documentation to ensure it should be settable.
372
+ '''
373
+ result = self._values.get("id")
374
+ return typing.cast(typing.Optional[builtins.str], result)
375
+
376
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
377
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
378
+
379
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
380
+ return not (rhs == self)
381
+
382
+ def __repr__(self) -> str:
383
+ return "ManagedObjectStorageUserConfig(%s)" % ", ".join(
384
+ k + "=" + repr(v) for k, v in self._values.items()
385
+ )
386
+
387
+
388
+ __all__ = [
389
+ "ManagedObjectStorageUser",
390
+ "ManagedObjectStorageUserConfig",
391
+ ]
392
+
393
+ publication.publish()
394
+
395
+ def _typecheckingstub__dc36e4c59a54946bb60223733d5e68322f091e5fbb517c9af40c7627cd35e56c(
396
+ scope: _constructs_77d1e7e8.Construct,
397
+ id_: builtins.str,
398
+ *,
399
+ service_uuid: builtins.str,
400
+ username: builtins.str,
401
+ id: typing.Optional[builtins.str] = None,
402
+ 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,
403
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
404
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
405
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
406
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
407
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
408
+ 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,
409
+ ) -> None:
410
+ """Type checking stubs"""
411
+ pass
412
+
413
+ def _typecheckingstub__fb5de46a2cb1684a09b50d692fedf3d184b80d795c3a2efa649e248f12b2984c(
414
+ scope: _constructs_77d1e7e8.Construct,
415
+ import_to_id: builtins.str,
416
+ import_from_id: builtins.str,
417
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
418
+ ) -> None:
419
+ """Type checking stubs"""
420
+ pass
421
+
422
+ def _typecheckingstub__a64868a3a9916db5325bef71d27da8d80400dcab4371001a80398e82606eace2(
423
+ value: builtins.str,
424
+ ) -> None:
425
+ """Type checking stubs"""
426
+ pass
427
+
428
+ def _typecheckingstub__b906f17f810d6c27086a79fcb1740f0bbe1a0e31a5b253f4163bf382e80b4cad(
429
+ value: builtins.str,
430
+ ) -> None:
431
+ """Type checking stubs"""
432
+ pass
433
+
434
+ def _typecheckingstub__a80c3612cca7985765971f261f46a6f8a60fba5b6a5ceb1537a33a7d4915b574(
435
+ value: builtins.str,
436
+ ) -> None:
437
+ """Type checking stubs"""
438
+ pass
439
+
440
+ def _typecheckingstub__cd365359d5f360b2d3682ace2aa0b106954a4cd0ae25e72443a315942b30e36f(
441
+ *,
442
+ 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,
443
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
444
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
445
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
446
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
447
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
448
+ 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,
449
+ service_uuid: builtins.str,
450
+ username: builtins.str,
451
+ id: typing.Optional[builtins.str] = None,
452
+ ) -> None:
453
+ """Type checking stubs"""
454
+ pass