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