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,536 @@
1
+ r'''
2
+ # `upcloud_managed_database_logical_database`
3
+
4
+ Refer to the Terraform Registry for docs: [`upcloud_managed_database_logical_database`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database).
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 ManagedDatabaseLogicalDatabase(
43
+ _cdktf_9a9027ec.TerraformResource,
44
+ metaclass=jsii.JSIIMeta,
45
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseLogicalDatabase.ManagedDatabaseLogicalDatabase",
46
+ ):
47
+ '''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database upcloud_managed_database_logical_database}.'''
48
+
49
+ def __init__(
50
+ self,
51
+ scope: _constructs_77d1e7e8.Construct,
52
+ id_: builtins.str,
53
+ *,
54
+ name: builtins.str,
55
+ service: builtins.str,
56
+ character_set: typing.Optional[builtins.str] = None,
57
+ collation: typing.Optional[builtins.str] = None,
58
+ id: typing.Optional[builtins.str] = None,
59
+ 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,
60
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
61
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
62
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
63
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
64
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
65
+ 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,
66
+ ) -> None:
67
+ '''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database upcloud_managed_database_logical_database} Resource.
68
+
69
+ :param scope: The scope in which to define this construct.
70
+ :param id_: The scoped construct ID. Must be unique amongst siblings in the same scope
71
+ :param name: Name of the logical database. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#name ManagedDatabaseLogicalDatabase#name}
72
+ :param service: Service's UUID for which this user belongs to. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#service ManagedDatabaseLogicalDatabase#service}
73
+ :param character_set: Default character set for the database (LC_CTYPE). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#character_set ManagedDatabaseLogicalDatabase#character_set}
74
+ :param collation: Default collation for the database (LC_COLLATE). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#collation ManagedDatabaseLogicalDatabase#collation}
75
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#id ManagedDatabaseLogicalDatabase#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.
76
+ :param connection:
77
+ :param count:
78
+ :param depends_on:
79
+ :param for_each:
80
+ :param lifecycle:
81
+ :param provider:
82
+ :param provisioners:
83
+ '''
84
+ if __debug__:
85
+ type_hints = typing.get_type_hints(_typecheckingstub__a992e117ca391207d30a3c9eb03c8bb159060044e7fe873bb44a1ffa51d2338c)
86
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
87
+ check_type(argname="argument id_", value=id_, expected_type=type_hints["id_"])
88
+ config = ManagedDatabaseLogicalDatabaseConfig(
89
+ name=name,
90
+ service=service,
91
+ character_set=character_set,
92
+ collation=collation,
93
+ id=id,
94
+ connection=connection,
95
+ count=count,
96
+ depends_on=depends_on,
97
+ for_each=for_each,
98
+ lifecycle=lifecycle,
99
+ provider=provider,
100
+ provisioners=provisioners,
101
+ )
102
+
103
+ jsii.create(self.__class__, self, [scope, id_, config])
104
+
105
+ @jsii.member(jsii_name="generateConfigForImport")
106
+ @builtins.classmethod
107
+ def generate_config_for_import(
108
+ cls,
109
+ scope: _constructs_77d1e7e8.Construct,
110
+ import_to_id: builtins.str,
111
+ import_from_id: builtins.str,
112
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
113
+ ) -> _cdktf_9a9027ec.ImportableResource:
114
+ '''Generates CDKTF code for importing a ManagedDatabaseLogicalDatabase resource upon running "cdktf plan ".
115
+
116
+ :param scope: The scope in which to define this construct.
117
+ :param import_to_id: The construct id used in the generated config for the ManagedDatabaseLogicalDatabase to import.
118
+ :param import_from_id: The id of the existing ManagedDatabaseLogicalDatabase that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#import import section} in the documentation of this resource for the id to use
119
+ :param provider: ? Optional instance of the provider where the ManagedDatabaseLogicalDatabase to import is found.
120
+ '''
121
+ if __debug__:
122
+ type_hints = typing.get_type_hints(_typecheckingstub__ca787d4dd745cd849dc03ede052e8d0fed17b480fe62864b8b24f2c02de078cf)
123
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
124
+ check_type(argname="argument import_to_id", value=import_to_id, expected_type=type_hints["import_to_id"])
125
+ check_type(argname="argument import_from_id", value=import_from_id, expected_type=type_hints["import_from_id"])
126
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
127
+ return typing.cast(_cdktf_9a9027ec.ImportableResource, jsii.sinvoke(cls, "generateConfigForImport", [scope, import_to_id, import_from_id, provider]))
128
+
129
+ @jsii.member(jsii_name="resetCharacterSet")
130
+ def reset_character_set(self) -> None:
131
+ return typing.cast(None, jsii.invoke(self, "resetCharacterSet", []))
132
+
133
+ @jsii.member(jsii_name="resetCollation")
134
+ def reset_collation(self) -> None:
135
+ return typing.cast(None, jsii.invoke(self, "resetCollation", []))
136
+
137
+ @jsii.member(jsii_name="resetId")
138
+ def reset_id(self) -> None:
139
+ return typing.cast(None, jsii.invoke(self, "resetId", []))
140
+
141
+ @jsii.member(jsii_name="synthesizeAttributes")
142
+ def _synthesize_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
143
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeAttributes", []))
144
+
145
+ @jsii.member(jsii_name="synthesizeHclAttributes")
146
+ def _synthesize_hcl_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
147
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeHclAttributes", []))
148
+
149
+ @jsii.python.classproperty
150
+ @jsii.member(jsii_name="tfResourceType")
151
+ def TF_RESOURCE_TYPE(cls) -> builtins.str:
152
+ return typing.cast(builtins.str, jsii.sget(cls, "tfResourceType"))
153
+
154
+ @builtins.property
155
+ @jsii.member(jsii_name="characterSetInput")
156
+ def character_set_input(self) -> typing.Optional[builtins.str]:
157
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "characterSetInput"))
158
+
159
+ @builtins.property
160
+ @jsii.member(jsii_name="collationInput")
161
+ def collation_input(self) -> typing.Optional[builtins.str]:
162
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "collationInput"))
163
+
164
+ @builtins.property
165
+ @jsii.member(jsii_name="idInput")
166
+ def id_input(self) -> typing.Optional[builtins.str]:
167
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "idInput"))
168
+
169
+ @builtins.property
170
+ @jsii.member(jsii_name="nameInput")
171
+ def name_input(self) -> typing.Optional[builtins.str]:
172
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "nameInput"))
173
+
174
+ @builtins.property
175
+ @jsii.member(jsii_name="serviceInput")
176
+ def service_input(self) -> typing.Optional[builtins.str]:
177
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "serviceInput"))
178
+
179
+ @builtins.property
180
+ @jsii.member(jsii_name="characterSet")
181
+ def character_set(self) -> builtins.str:
182
+ return typing.cast(builtins.str, jsii.get(self, "characterSet"))
183
+
184
+ @character_set.setter
185
+ def character_set(self, value: builtins.str) -> None:
186
+ if __debug__:
187
+ type_hints = typing.get_type_hints(_typecheckingstub__55271f6a4e05428b1c2188b12bff54d2f7232d2d07e89b13f5002721e5f822a7)
188
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
189
+ jsii.set(self, "characterSet", value) # pyright: ignore[reportArgumentType]
190
+
191
+ @builtins.property
192
+ @jsii.member(jsii_name="collation")
193
+ def collation(self) -> builtins.str:
194
+ return typing.cast(builtins.str, jsii.get(self, "collation"))
195
+
196
+ @collation.setter
197
+ def collation(self, value: builtins.str) -> None:
198
+ if __debug__:
199
+ type_hints = typing.get_type_hints(_typecheckingstub__67d2281e1e3be907c19fd4cdeadc13c9e78a178b197ff4325990742c6554396c)
200
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
201
+ jsii.set(self, "collation", value) # pyright: ignore[reportArgumentType]
202
+
203
+ @builtins.property
204
+ @jsii.member(jsii_name="id")
205
+ def id(self) -> builtins.str:
206
+ return typing.cast(builtins.str, jsii.get(self, "id"))
207
+
208
+ @id.setter
209
+ def id(self, value: builtins.str) -> None:
210
+ if __debug__:
211
+ type_hints = typing.get_type_hints(_typecheckingstub__e4fc4db47cb61611ed63749ba06b6701dadf724c85b927af3fc1b5969e55b7c8)
212
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
213
+ jsii.set(self, "id", value) # pyright: ignore[reportArgumentType]
214
+
215
+ @builtins.property
216
+ @jsii.member(jsii_name="name")
217
+ def name(self) -> builtins.str:
218
+ return typing.cast(builtins.str, jsii.get(self, "name"))
219
+
220
+ @name.setter
221
+ def name(self, value: builtins.str) -> None:
222
+ if __debug__:
223
+ type_hints = typing.get_type_hints(_typecheckingstub__92e11647048409a9577c78b9337601ded0d9488532342453f2ab23af8f691dc8)
224
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
225
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
226
+
227
+ @builtins.property
228
+ @jsii.member(jsii_name="service")
229
+ def service(self) -> builtins.str:
230
+ return typing.cast(builtins.str, jsii.get(self, "service"))
231
+
232
+ @service.setter
233
+ def service(self, value: builtins.str) -> None:
234
+ if __debug__:
235
+ type_hints = typing.get_type_hints(_typecheckingstub__1c4af8692b0d5f623e672d976a116bb25e1aba4914f0f0bf6e1202fa2f6bf0bc)
236
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
237
+ jsii.set(self, "service", value) # pyright: ignore[reportArgumentType]
238
+
239
+
240
+ @jsii.data_type(
241
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseLogicalDatabase.ManagedDatabaseLogicalDatabaseConfig",
242
+ jsii_struct_bases=[_cdktf_9a9027ec.TerraformMetaArguments],
243
+ name_mapping={
244
+ "connection": "connection",
245
+ "count": "count",
246
+ "depends_on": "dependsOn",
247
+ "for_each": "forEach",
248
+ "lifecycle": "lifecycle",
249
+ "provider": "provider",
250
+ "provisioners": "provisioners",
251
+ "name": "name",
252
+ "service": "service",
253
+ "character_set": "characterSet",
254
+ "collation": "collation",
255
+ "id": "id",
256
+ },
257
+ )
258
+ class ManagedDatabaseLogicalDatabaseConfig(_cdktf_9a9027ec.TerraformMetaArguments):
259
+ def __init__(
260
+ self,
261
+ *,
262
+ 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,
263
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
264
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
265
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
266
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
267
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
268
+ 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,
269
+ name: builtins.str,
270
+ service: builtins.str,
271
+ character_set: typing.Optional[builtins.str] = None,
272
+ collation: typing.Optional[builtins.str] = None,
273
+ id: typing.Optional[builtins.str] = None,
274
+ ) -> None:
275
+ '''
276
+ :param connection:
277
+ :param count:
278
+ :param depends_on:
279
+ :param for_each:
280
+ :param lifecycle:
281
+ :param provider:
282
+ :param provisioners:
283
+ :param name: Name of the logical database. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#name ManagedDatabaseLogicalDatabase#name}
284
+ :param service: Service's UUID for which this user belongs to. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#service ManagedDatabaseLogicalDatabase#service}
285
+ :param character_set: Default character set for the database (LC_CTYPE). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#character_set ManagedDatabaseLogicalDatabase#character_set}
286
+ :param collation: Default collation for the database (LC_COLLATE). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#collation ManagedDatabaseLogicalDatabase#collation}
287
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#id ManagedDatabaseLogicalDatabase#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.
288
+ '''
289
+ if isinstance(lifecycle, dict):
290
+ lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
291
+ if __debug__:
292
+ type_hints = typing.get_type_hints(_typecheckingstub__2ca3a79aeed8aef7d9f5f2894cee8ac432bbcc8b674db82dcb93ac31191a0880)
293
+ check_type(argname="argument connection", value=connection, expected_type=type_hints["connection"])
294
+ check_type(argname="argument count", value=count, expected_type=type_hints["count"])
295
+ check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
296
+ check_type(argname="argument for_each", value=for_each, expected_type=type_hints["for_each"])
297
+ check_type(argname="argument lifecycle", value=lifecycle, expected_type=type_hints["lifecycle"])
298
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
299
+ check_type(argname="argument provisioners", value=provisioners, expected_type=type_hints["provisioners"])
300
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
301
+ check_type(argname="argument service", value=service, expected_type=type_hints["service"])
302
+ check_type(argname="argument character_set", value=character_set, expected_type=type_hints["character_set"])
303
+ check_type(argname="argument collation", value=collation, expected_type=type_hints["collation"])
304
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
305
+ self._values: typing.Dict[builtins.str, typing.Any] = {
306
+ "name": name,
307
+ "service": service,
308
+ }
309
+ if connection is not None:
310
+ self._values["connection"] = connection
311
+ if count is not None:
312
+ self._values["count"] = count
313
+ if depends_on is not None:
314
+ self._values["depends_on"] = depends_on
315
+ if for_each is not None:
316
+ self._values["for_each"] = for_each
317
+ if lifecycle is not None:
318
+ self._values["lifecycle"] = lifecycle
319
+ if provider is not None:
320
+ self._values["provider"] = provider
321
+ if provisioners is not None:
322
+ self._values["provisioners"] = provisioners
323
+ if character_set is not None:
324
+ self._values["character_set"] = character_set
325
+ if collation is not None:
326
+ self._values["collation"] = collation
327
+ if id is not None:
328
+ self._values["id"] = id
329
+
330
+ @builtins.property
331
+ def connection(
332
+ self,
333
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]]:
334
+ '''
335
+ :stability: experimental
336
+ '''
337
+ result = self._values.get("connection")
338
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]], result)
339
+
340
+ @builtins.property
341
+ def count(
342
+ self,
343
+ ) -> typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]]:
344
+ '''
345
+ :stability: experimental
346
+ '''
347
+ result = self._values.get("count")
348
+ return typing.cast(typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]], result)
349
+
350
+ @builtins.property
351
+ def depends_on(
352
+ self,
353
+ ) -> typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]]:
354
+ '''
355
+ :stability: experimental
356
+ '''
357
+ result = self._values.get("depends_on")
358
+ return typing.cast(typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]], result)
359
+
360
+ @builtins.property
361
+ def for_each(self) -> typing.Optional[_cdktf_9a9027ec.ITerraformIterator]:
362
+ '''
363
+ :stability: experimental
364
+ '''
365
+ result = self._values.get("for_each")
366
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.ITerraformIterator], result)
367
+
368
+ @builtins.property
369
+ def lifecycle(self) -> typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle]:
370
+ '''
371
+ :stability: experimental
372
+ '''
373
+ result = self._values.get("lifecycle")
374
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle], result)
375
+
376
+ @builtins.property
377
+ def provider(self) -> typing.Optional[_cdktf_9a9027ec.TerraformProvider]:
378
+ '''
379
+ :stability: experimental
380
+ '''
381
+ result = self._values.get("provider")
382
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformProvider], result)
383
+
384
+ @builtins.property
385
+ def provisioners(
386
+ self,
387
+ ) -> typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]]:
388
+ '''
389
+ :stability: experimental
390
+ '''
391
+ result = self._values.get("provisioners")
392
+ return typing.cast(typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]], result)
393
+
394
+ @builtins.property
395
+ def name(self) -> builtins.str:
396
+ '''Name of the logical database.
397
+
398
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#name ManagedDatabaseLogicalDatabase#name}
399
+ '''
400
+ result = self._values.get("name")
401
+ assert result is not None, "Required property 'name' is missing"
402
+ return typing.cast(builtins.str, result)
403
+
404
+ @builtins.property
405
+ def service(self) -> builtins.str:
406
+ '''Service's UUID for which this user belongs to.
407
+
408
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#service ManagedDatabaseLogicalDatabase#service}
409
+ '''
410
+ result = self._values.get("service")
411
+ assert result is not None, "Required property 'service' is missing"
412
+ return typing.cast(builtins.str, result)
413
+
414
+ @builtins.property
415
+ def character_set(self) -> typing.Optional[builtins.str]:
416
+ '''Default character set for the database (LC_CTYPE).
417
+
418
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#character_set ManagedDatabaseLogicalDatabase#character_set}
419
+ '''
420
+ result = self._values.get("character_set")
421
+ return typing.cast(typing.Optional[builtins.str], result)
422
+
423
+ @builtins.property
424
+ def collation(self) -> typing.Optional[builtins.str]:
425
+ '''Default collation for the database (LC_COLLATE).
426
+
427
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#collation ManagedDatabaseLogicalDatabase#collation}
428
+ '''
429
+ result = self._values.get("collation")
430
+ return typing.cast(typing.Optional[builtins.str], result)
431
+
432
+ @builtins.property
433
+ def id(self) -> typing.Optional[builtins.str]:
434
+ '''Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_logical_database#id ManagedDatabaseLogicalDatabase#id}.
435
+
436
+ Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
437
+ 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.
438
+ '''
439
+ result = self._values.get("id")
440
+ return typing.cast(typing.Optional[builtins.str], result)
441
+
442
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
443
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
444
+
445
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
446
+ return not (rhs == self)
447
+
448
+ def __repr__(self) -> str:
449
+ return "ManagedDatabaseLogicalDatabaseConfig(%s)" % ", ".join(
450
+ k + "=" + repr(v) for k, v in self._values.items()
451
+ )
452
+
453
+
454
+ __all__ = [
455
+ "ManagedDatabaseLogicalDatabase",
456
+ "ManagedDatabaseLogicalDatabaseConfig",
457
+ ]
458
+
459
+ publication.publish()
460
+
461
+ def _typecheckingstub__a992e117ca391207d30a3c9eb03c8bb159060044e7fe873bb44a1ffa51d2338c(
462
+ scope: _constructs_77d1e7e8.Construct,
463
+ id_: builtins.str,
464
+ *,
465
+ name: builtins.str,
466
+ service: builtins.str,
467
+ character_set: typing.Optional[builtins.str] = None,
468
+ collation: typing.Optional[builtins.str] = None,
469
+ id: typing.Optional[builtins.str] = None,
470
+ 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,
471
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
472
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
473
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
474
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
475
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
476
+ 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,
477
+ ) -> None:
478
+ """Type checking stubs"""
479
+ pass
480
+
481
+ def _typecheckingstub__ca787d4dd745cd849dc03ede052e8d0fed17b480fe62864b8b24f2c02de078cf(
482
+ scope: _constructs_77d1e7e8.Construct,
483
+ import_to_id: builtins.str,
484
+ import_from_id: builtins.str,
485
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
486
+ ) -> None:
487
+ """Type checking stubs"""
488
+ pass
489
+
490
+ def _typecheckingstub__55271f6a4e05428b1c2188b12bff54d2f7232d2d07e89b13f5002721e5f822a7(
491
+ value: builtins.str,
492
+ ) -> None:
493
+ """Type checking stubs"""
494
+ pass
495
+
496
+ def _typecheckingstub__67d2281e1e3be907c19fd4cdeadc13c9e78a178b197ff4325990742c6554396c(
497
+ value: builtins.str,
498
+ ) -> None:
499
+ """Type checking stubs"""
500
+ pass
501
+
502
+ def _typecheckingstub__e4fc4db47cb61611ed63749ba06b6701dadf724c85b927af3fc1b5969e55b7c8(
503
+ value: builtins.str,
504
+ ) -> None:
505
+ """Type checking stubs"""
506
+ pass
507
+
508
+ def _typecheckingstub__92e11647048409a9577c78b9337601ded0d9488532342453f2ab23af8f691dc8(
509
+ value: builtins.str,
510
+ ) -> None:
511
+ """Type checking stubs"""
512
+ pass
513
+
514
+ def _typecheckingstub__1c4af8692b0d5f623e672d976a116bb25e1aba4914f0f0bf6e1202fa2f6bf0bc(
515
+ value: builtins.str,
516
+ ) -> None:
517
+ """Type checking stubs"""
518
+ pass
519
+
520
+ def _typecheckingstub__2ca3a79aeed8aef7d9f5f2894cee8ac432bbcc8b674db82dcb93ac31191a0880(
521
+ *,
522
+ 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,
523
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
524
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
525
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
526
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
527
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
528
+ 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,
529
+ name: builtins.str,
530
+ service: builtins.str,
531
+ character_set: typing.Optional[builtins.str] = None,
532
+ collation: typing.Optional[builtins.str] = None,
533
+ id: typing.Optional[builtins.str] = None,
534
+ ) -> None:
535
+ """Type checking stubs"""
536
+ pass