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,3355 @@
1
+ r'''
2
+ # `upcloud_managed_database_valkey`
3
+
4
+ Refer to the Terraform Registry for docs: [`upcloud_managed_database_valkey`](https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey).
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 ManagedDatabaseValkey(
43
+ _cdktf_9a9027ec.TerraformResource,
44
+ metaclass=jsii.JSIIMeta,
45
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkey",
46
+ ):
47
+ '''Represents a {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey upcloud_managed_database_valkey}.'''
48
+
49
+ def __init__(
50
+ self,
51
+ scope: _constructs_77d1e7e8.Construct,
52
+ id_: builtins.str,
53
+ *,
54
+ name: builtins.str,
55
+ plan: builtins.str,
56
+ title: builtins.str,
57
+ zone: builtins.str,
58
+ additional_disk_space_gib: typing.Optional[jsii.Number] = None,
59
+ id: typing.Optional[builtins.str] = None,
60
+ labels: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
61
+ maintenance_window_dow: typing.Optional[builtins.str] = None,
62
+ maintenance_window_time: typing.Optional[builtins.str] = None,
63
+ network: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.Sequence[typing.Union["ManagedDatabaseValkeyNetwork", typing.Dict[builtins.str, typing.Any]]]]] = None,
64
+ powered: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
65
+ properties: typing.Optional[typing.Union["ManagedDatabaseValkeyProperties", typing.Dict[builtins.str, typing.Any]]] = None,
66
+ termination_protection: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
67
+ 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,
68
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
69
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
70
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
71
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
72
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
73
+ 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,
74
+ ) -> None:
75
+ '''Create a new {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey upcloud_managed_database_valkey} Resource.
76
+
77
+ :param scope: The scope in which to define this construct.
78
+ :param id_: The scoped construct ID. Must be unique amongst siblings in the same scope
79
+ :param name: Name of the service. The name is used as a prefix for the logical hostname. Must be unique within an account Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#name ManagedDatabaseValkey#name}
80
+ :param plan: Service plan to use. This determines how much resources the instance will have. You can list available plans with ``upctl database plans valkey``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#plan ManagedDatabaseValkey#plan}
81
+ :param title: Title of a managed database instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#title ManagedDatabaseValkey#title}
82
+ :param zone: Zone where the instance resides, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#zone ManagedDatabaseValkey#zone}
83
+ :param additional_disk_space_gib: Not supported for ``valkey`` databases. Should be left unconfigured. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#additional_disk_space_gib ManagedDatabaseValkey#additional_disk_space_gib}
84
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#id ManagedDatabaseValkey#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.
85
+ :param labels: User defined key-value pairs to classify the managed database. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#labels ManagedDatabaseValkey#labels}
86
+ :param maintenance_window_dow: Maintenance window day of week. Lower case weekday name (monday, tuesday, ...). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#maintenance_window_dow ManagedDatabaseValkey#maintenance_window_dow}
87
+ :param maintenance_window_time: Maintenance window UTC time in hh:mm:ss format. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#maintenance_window_time ManagedDatabaseValkey#maintenance_window_time}
88
+ :param network: network block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#network ManagedDatabaseValkey#network}
89
+ :param powered: The administrative power state of the service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#powered ManagedDatabaseValkey#powered}
90
+ :param properties: properties block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#properties ManagedDatabaseValkey#properties}
91
+ :param termination_protection: If set to true, prevents the managed service from being powered off, or deleted. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#termination_protection ManagedDatabaseValkey#termination_protection}
92
+ :param connection:
93
+ :param count:
94
+ :param depends_on:
95
+ :param for_each:
96
+ :param lifecycle:
97
+ :param provider:
98
+ :param provisioners:
99
+ '''
100
+ if __debug__:
101
+ type_hints = typing.get_type_hints(_typecheckingstub__e9ca96a3d0255aab5bd629d642e8855d0ea99f8657e2d22de939cb10aa9e11a4)
102
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
103
+ check_type(argname="argument id_", value=id_, expected_type=type_hints["id_"])
104
+ config = ManagedDatabaseValkeyConfig(
105
+ name=name,
106
+ plan=plan,
107
+ title=title,
108
+ zone=zone,
109
+ additional_disk_space_gib=additional_disk_space_gib,
110
+ id=id,
111
+ labels=labels,
112
+ maintenance_window_dow=maintenance_window_dow,
113
+ maintenance_window_time=maintenance_window_time,
114
+ network=network,
115
+ powered=powered,
116
+ properties=properties,
117
+ termination_protection=termination_protection,
118
+ connection=connection,
119
+ count=count,
120
+ depends_on=depends_on,
121
+ for_each=for_each,
122
+ lifecycle=lifecycle,
123
+ provider=provider,
124
+ provisioners=provisioners,
125
+ )
126
+
127
+ jsii.create(self.__class__, self, [scope, id_, config])
128
+
129
+ @jsii.member(jsii_name="generateConfigForImport")
130
+ @builtins.classmethod
131
+ def generate_config_for_import(
132
+ cls,
133
+ scope: _constructs_77d1e7e8.Construct,
134
+ import_to_id: builtins.str,
135
+ import_from_id: builtins.str,
136
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
137
+ ) -> _cdktf_9a9027ec.ImportableResource:
138
+ '''Generates CDKTF code for importing a ManagedDatabaseValkey resource upon running "cdktf plan ".
139
+
140
+ :param scope: The scope in which to define this construct.
141
+ :param import_to_id: The construct id used in the generated config for the ManagedDatabaseValkey to import.
142
+ :param import_from_id: The id of the existing ManagedDatabaseValkey that should be imported. Refer to the {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#import import section} in the documentation of this resource for the id to use
143
+ :param provider: ? Optional instance of the provider where the ManagedDatabaseValkey to import is found.
144
+ '''
145
+ if __debug__:
146
+ type_hints = typing.get_type_hints(_typecheckingstub__9aedfd54b5c8b1f9918c7d3df38964719bab01ca5620baa0cdacd432478b79a7)
147
+ check_type(argname="argument scope", value=scope, expected_type=type_hints["scope"])
148
+ check_type(argname="argument import_to_id", value=import_to_id, expected_type=type_hints["import_to_id"])
149
+ check_type(argname="argument import_from_id", value=import_from_id, expected_type=type_hints["import_from_id"])
150
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
151
+ return typing.cast(_cdktf_9a9027ec.ImportableResource, jsii.sinvoke(cls, "generateConfigForImport", [scope, import_to_id, import_from_id, provider]))
152
+
153
+ @jsii.member(jsii_name="putNetwork")
154
+ def put_network(
155
+ self,
156
+ value: typing.Union[_cdktf_9a9027ec.IResolvable, typing.Sequence[typing.Union["ManagedDatabaseValkeyNetwork", typing.Dict[builtins.str, typing.Any]]]],
157
+ ) -> None:
158
+ '''
159
+ :param value: -
160
+ '''
161
+ if __debug__:
162
+ type_hints = typing.get_type_hints(_typecheckingstub__d39301ce9e83b0c46471cc2e091a974add7699ff0499897b02f5890d167025c6)
163
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
164
+ return typing.cast(None, jsii.invoke(self, "putNetwork", [value]))
165
+
166
+ @jsii.member(jsii_name="putProperties")
167
+ def put_properties(
168
+ self,
169
+ *,
170
+ automatic_utility_network_ip_filter: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
171
+ backup_hour: typing.Optional[jsii.Number] = None,
172
+ backup_minute: typing.Optional[jsii.Number] = None,
173
+ frequent_snapshots: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
174
+ ip_filter: typing.Optional[typing.Sequence[builtins.str]] = None,
175
+ migration: typing.Optional[typing.Union["ManagedDatabaseValkeyPropertiesMigration", typing.Dict[builtins.str, typing.Any]]] = None,
176
+ public_access: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
177
+ service_log: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
178
+ valkey_acl_channels_default: typing.Optional[builtins.str] = None,
179
+ valkey_active_expire_effort: typing.Optional[jsii.Number] = None,
180
+ valkey_io_threads: typing.Optional[jsii.Number] = None,
181
+ valkey_lfu_decay_time: typing.Optional[jsii.Number] = None,
182
+ valkey_lfu_log_factor: typing.Optional[jsii.Number] = None,
183
+ valkey_maxmemory_policy: typing.Optional[builtins.str] = None,
184
+ valkey_notify_keyspace_events: typing.Optional[builtins.str] = None,
185
+ valkey_number_of_databases: typing.Optional[jsii.Number] = None,
186
+ valkey_persistence: typing.Optional[builtins.str] = None,
187
+ valkey_pubsub_client_output_buffer_limit: typing.Optional[jsii.Number] = None,
188
+ valkey_ssl: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
189
+ valkey_timeout: typing.Optional[jsii.Number] = None,
190
+ ) -> None:
191
+ '''
192
+ :param automatic_utility_network_ip_filter: Automatic utility network IP Filter. Automatically allow connections from servers in the utility network within the same zone. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#automatic_utility_network_ip_filter ManagedDatabaseValkey#automatic_utility_network_ip_filter}
193
+ :param backup_hour: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#backup_hour ManagedDatabaseValkey#backup_hour}
194
+ :param backup_minute: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#backup_minute ManagedDatabaseValkey#backup_minute}
195
+ :param frequent_snapshots: Frequent RDB snapshots. When enabled, Valkey will create frequent local RDB snapshots. When disabled, Valkey will only take RDB snapshots when a backup is created, based on the backup schedule. This setting is ignored when ``valkey_persistence`` is set to ``off``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#frequent_snapshots ManagedDatabaseValkey#frequent_snapshots}
196
+ :param ip_filter: IP filter. Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ip_filter ManagedDatabaseValkey#ip_filter}
197
+ :param migration: migration block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#migration ManagedDatabaseValkey#migration}
198
+ :param public_access: Public Access. Allow access to the service from the public Internet. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#public_access ManagedDatabaseValkey#public_access}
199
+ :param service_log: Service logging. Store logs for the service so that they are available in the HTTP API and console. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#service_log ManagedDatabaseValkey#service_log}
200
+ :param valkey_acl_channels_default: Default ACL for pub/sub channels used when a Valkey user is created. Determines default pub/sub channels' ACL for new users if ACL is not supplied. When this option is not defined, all_channels is assumed to keep backward compatibility. This option doesn't affect Valkey configuration acl-pubsub-default. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_acl_channels_default ManagedDatabaseValkey#valkey_acl_channels_default}
201
+ :param valkey_active_expire_effort: Active expire effort. Valkey reclaims expired keys both when accessed and in the background. The background process scans for expired keys to free memory. Increasing the active-expire-effort setting (default 1, max 10) uses more CPU to reclaim expired keys faster, reducing memory usage but potentially increasing latency. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_active_expire_effort ManagedDatabaseValkey#valkey_active_expire_effort}
202
+ :param valkey_io_threads: Valkey IO thread count. Set Valkey IO thread count. Changing this will cause a restart of the Valkey service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_io_threads ManagedDatabaseValkey#valkey_io_threads}
203
+ :param valkey_lfu_decay_time: LFU maxmemory-policy counter decay time in minutes. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_lfu_decay_time ManagedDatabaseValkey#valkey_lfu_decay_time}
204
+ :param valkey_lfu_log_factor: Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_lfu_log_factor ManagedDatabaseValkey#valkey_lfu_log_factor}
205
+ :param valkey_maxmemory_policy: Valkey maxmemory-policy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_maxmemory_policy ManagedDatabaseValkey#valkey_maxmemory_policy}
206
+ :param valkey_notify_keyspace_events: Set notify-keyspace-events option. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_notify_keyspace_events ManagedDatabaseValkey#valkey_notify_keyspace_events}
207
+ :param valkey_number_of_databases: Number of Valkey databases. Set number of Valkey databases. Changing this will cause a restart of the Valkey service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_number_of_databases ManagedDatabaseValkey#valkey_number_of_databases}
208
+ :param valkey_persistence: Valkey persistence. When persistence is 'rdb', Valkey does RDB dumps each 10 minutes if any key is changed. Also RDB dumps are done according to backup schedule for backup purposes. When persistence is 'off', no RDB dumps and backups are done, so data can be lost at any moment if service is restarted for any reason, or if service is powered off. Also service can't be forked. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_persistence ManagedDatabaseValkey#valkey_persistence}
209
+ :param valkey_pubsub_client_output_buffer_limit: Pub/sub client output buffer hard limit in MB. Set output buffer limit for pub / sub clients in MB. The value is the hard limit, the soft limit is 1/4 of the hard limit. When setting the limit, be mindful of the available memory in the selected service plan. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_pubsub_client_output_buffer_limit ManagedDatabaseValkey#valkey_pubsub_client_output_buffer_limit}
210
+ :param valkey_ssl: Require SSL to access Valkey. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_ssl ManagedDatabaseValkey#valkey_ssl}
211
+ :param valkey_timeout: Valkey idle connection timeout in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_timeout ManagedDatabaseValkey#valkey_timeout}
212
+ '''
213
+ value = ManagedDatabaseValkeyProperties(
214
+ automatic_utility_network_ip_filter=automatic_utility_network_ip_filter,
215
+ backup_hour=backup_hour,
216
+ backup_minute=backup_minute,
217
+ frequent_snapshots=frequent_snapshots,
218
+ ip_filter=ip_filter,
219
+ migration=migration,
220
+ public_access=public_access,
221
+ service_log=service_log,
222
+ valkey_acl_channels_default=valkey_acl_channels_default,
223
+ valkey_active_expire_effort=valkey_active_expire_effort,
224
+ valkey_io_threads=valkey_io_threads,
225
+ valkey_lfu_decay_time=valkey_lfu_decay_time,
226
+ valkey_lfu_log_factor=valkey_lfu_log_factor,
227
+ valkey_maxmemory_policy=valkey_maxmemory_policy,
228
+ valkey_notify_keyspace_events=valkey_notify_keyspace_events,
229
+ valkey_number_of_databases=valkey_number_of_databases,
230
+ valkey_persistence=valkey_persistence,
231
+ valkey_pubsub_client_output_buffer_limit=valkey_pubsub_client_output_buffer_limit,
232
+ valkey_ssl=valkey_ssl,
233
+ valkey_timeout=valkey_timeout,
234
+ )
235
+
236
+ return typing.cast(None, jsii.invoke(self, "putProperties", [value]))
237
+
238
+ @jsii.member(jsii_name="resetAdditionalDiskSpaceGib")
239
+ def reset_additional_disk_space_gib(self) -> None:
240
+ return typing.cast(None, jsii.invoke(self, "resetAdditionalDiskSpaceGib", []))
241
+
242
+ @jsii.member(jsii_name="resetId")
243
+ def reset_id(self) -> None:
244
+ return typing.cast(None, jsii.invoke(self, "resetId", []))
245
+
246
+ @jsii.member(jsii_name="resetLabels")
247
+ def reset_labels(self) -> None:
248
+ return typing.cast(None, jsii.invoke(self, "resetLabels", []))
249
+
250
+ @jsii.member(jsii_name="resetMaintenanceWindowDow")
251
+ def reset_maintenance_window_dow(self) -> None:
252
+ return typing.cast(None, jsii.invoke(self, "resetMaintenanceWindowDow", []))
253
+
254
+ @jsii.member(jsii_name="resetMaintenanceWindowTime")
255
+ def reset_maintenance_window_time(self) -> None:
256
+ return typing.cast(None, jsii.invoke(self, "resetMaintenanceWindowTime", []))
257
+
258
+ @jsii.member(jsii_name="resetNetwork")
259
+ def reset_network(self) -> None:
260
+ return typing.cast(None, jsii.invoke(self, "resetNetwork", []))
261
+
262
+ @jsii.member(jsii_name="resetPowered")
263
+ def reset_powered(self) -> None:
264
+ return typing.cast(None, jsii.invoke(self, "resetPowered", []))
265
+
266
+ @jsii.member(jsii_name="resetProperties")
267
+ def reset_properties(self) -> None:
268
+ return typing.cast(None, jsii.invoke(self, "resetProperties", []))
269
+
270
+ @jsii.member(jsii_name="resetTerminationProtection")
271
+ def reset_termination_protection(self) -> None:
272
+ return typing.cast(None, jsii.invoke(self, "resetTerminationProtection", []))
273
+
274
+ @jsii.member(jsii_name="synthesizeAttributes")
275
+ def _synthesize_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
276
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeAttributes", []))
277
+
278
+ @jsii.member(jsii_name="synthesizeHclAttributes")
279
+ def _synthesize_hcl_attributes(self) -> typing.Mapping[builtins.str, typing.Any]:
280
+ return typing.cast(typing.Mapping[builtins.str, typing.Any], jsii.invoke(self, "synthesizeHclAttributes", []))
281
+
282
+ @jsii.python.classproperty
283
+ @jsii.member(jsii_name="tfResourceType")
284
+ def TF_RESOURCE_TYPE(cls) -> builtins.str:
285
+ return typing.cast(builtins.str, jsii.sget(cls, "tfResourceType"))
286
+
287
+ @builtins.property
288
+ @jsii.member(jsii_name="components")
289
+ def components(self) -> "ManagedDatabaseValkeyComponentsList":
290
+ return typing.cast("ManagedDatabaseValkeyComponentsList", jsii.get(self, "components"))
291
+
292
+ @builtins.property
293
+ @jsii.member(jsii_name="network")
294
+ def network(self) -> "ManagedDatabaseValkeyNetworkList":
295
+ return typing.cast("ManagedDatabaseValkeyNetworkList", jsii.get(self, "network"))
296
+
297
+ @builtins.property
298
+ @jsii.member(jsii_name="nodeStates")
299
+ def node_states(self) -> "ManagedDatabaseValkeyNodeStatesList":
300
+ return typing.cast("ManagedDatabaseValkeyNodeStatesList", jsii.get(self, "nodeStates"))
301
+
302
+ @builtins.property
303
+ @jsii.member(jsii_name="primaryDatabase")
304
+ def primary_database(self) -> builtins.str:
305
+ return typing.cast(builtins.str, jsii.get(self, "primaryDatabase"))
306
+
307
+ @builtins.property
308
+ @jsii.member(jsii_name="properties")
309
+ def properties(self) -> "ManagedDatabaseValkeyPropertiesOutputReference":
310
+ return typing.cast("ManagedDatabaseValkeyPropertiesOutputReference", jsii.get(self, "properties"))
311
+
312
+ @builtins.property
313
+ @jsii.member(jsii_name="serviceHost")
314
+ def service_host(self) -> builtins.str:
315
+ return typing.cast(builtins.str, jsii.get(self, "serviceHost"))
316
+
317
+ @builtins.property
318
+ @jsii.member(jsii_name="servicePassword")
319
+ def service_password(self) -> builtins.str:
320
+ return typing.cast(builtins.str, jsii.get(self, "servicePassword"))
321
+
322
+ @builtins.property
323
+ @jsii.member(jsii_name="servicePort")
324
+ def service_port(self) -> builtins.str:
325
+ return typing.cast(builtins.str, jsii.get(self, "servicePort"))
326
+
327
+ @builtins.property
328
+ @jsii.member(jsii_name="serviceUri")
329
+ def service_uri(self) -> builtins.str:
330
+ return typing.cast(builtins.str, jsii.get(self, "serviceUri"))
331
+
332
+ @builtins.property
333
+ @jsii.member(jsii_name="serviceUsername")
334
+ def service_username(self) -> builtins.str:
335
+ return typing.cast(builtins.str, jsii.get(self, "serviceUsername"))
336
+
337
+ @builtins.property
338
+ @jsii.member(jsii_name="state")
339
+ def state(self) -> builtins.str:
340
+ return typing.cast(builtins.str, jsii.get(self, "state"))
341
+
342
+ @builtins.property
343
+ @jsii.member(jsii_name="type")
344
+ def type(self) -> builtins.str:
345
+ return typing.cast(builtins.str, jsii.get(self, "type"))
346
+
347
+ @builtins.property
348
+ @jsii.member(jsii_name="additionalDiskSpaceGibInput")
349
+ def additional_disk_space_gib_input(self) -> typing.Optional[jsii.Number]:
350
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "additionalDiskSpaceGibInput"))
351
+
352
+ @builtins.property
353
+ @jsii.member(jsii_name="idInput")
354
+ def id_input(self) -> typing.Optional[builtins.str]:
355
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "idInput"))
356
+
357
+ @builtins.property
358
+ @jsii.member(jsii_name="labelsInput")
359
+ def labels_input(
360
+ self,
361
+ ) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
362
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], jsii.get(self, "labelsInput"))
363
+
364
+ @builtins.property
365
+ @jsii.member(jsii_name="maintenanceWindowDowInput")
366
+ def maintenance_window_dow_input(self) -> typing.Optional[builtins.str]:
367
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "maintenanceWindowDowInput"))
368
+
369
+ @builtins.property
370
+ @jsii.member(jsii_name="maintenanceWindowTimeInput")
371
+ def maintenance_window_time_input(self) -> typing.Optional[builtins.str]:
372
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "maintenanceWindowTimeInput"))
373
+
374
+ @builtins.property
375
+ @jsii.member(jsii_name="nameInput")
376
+ def name_input(self) -> typing.Optional[builtins.str]:
377
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "nameInput"))
378
+
379
+ @builtins.property
380
+ @jsii.member(jsii_name="networkInput")
381
+ def network_input(
382
+ self,
383
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List["ManagedDatabaseValkeyNetwork"]]]:
384
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List["ManagedDatabaseValkeyNetwork"]]], jsii.get(self, "networkInput"))
385
+
386
+ @builtins.property
387
+ @jsii.member(jsii_name="planInput")
388
+ def plan_input(self) -> typing.Optional[builtins.str]:
389
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "planInput"))
390
+
391
+ @builtins.property
392
+ @jsii.member(jsii_name="poweredInput")
393
+ def powered_input(
394
+ self,
395
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
396
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "poweredInput"))
397
+
398
+ @builtins.property
399
+ @jsii.member(jsii_name="propertiesInput")
400
+ def properties_input(self) -> typing.Optional["ManagedDatabaseValkeyProperties"]:
401
+ return typing.cast(typing.Optional["ManagedDatabaseValkeyProperties"], jsii.get(self, "propertiesInput"))
402
+
403
+ @builtins.property
404
+ @jsii.member(jsii_name="terminationProtectionInput")
405
+ def termination_protection_input(
406
+ self,
407
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
408
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "terminationProtectionInput"))
409
+
410
+ @builtins.property
411
+ @jsii.member(jsii_name="titleInput")
412
+ def title_input(self) -> typing.Optional[builtins.str]:
413
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "titleInput"))
414
+
415
+ @builtins.property
416
+ @jsii.member(jsii_name="zoneInput")
417
+ def zone_input(self) -> typing.Optional[builtins.str]:
418
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "zoneInput"))
419
+
420
+ @builtins.property
421
+ @jsii.member(jsii_name="additionalDiskSpaceGib")
422
+ def additional_disk_space_gib(self) -> jsii.Number:
423
+ return typing.cast(jsii.Number, jsii.get(self, "additionalDiskSpaceGib"))
424
+
425
+ @additional_disk_space_gib.setter
426
+ def additional_disk_space_gib(self, value: jsii.Number) -> None:
427
+ if __debug__:
428
+ type_hints = typing.get_type_hints(_typecheckingstub__7be4851e2badff611ae8fe21eb9e9833e2f24be1b9330882d03444656d6b02c2)
429
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
430
+ jsii.set(self, "additionalDiskSpaceGib", value) # pyright: ignore[reportArgumentType]
431
+
432
+ @builtins.property
433
+ @jsii.member(jsii_name="id")
434
+ def id(self) -> builtins.str:
435
+ return typing.cast(builtins.str, jsii.get(self, "id"))
436
+
437
+ @id.setter
438
+ def id(self, value: builtins.str) -> None:
439
+ if __debug__:
440
+ type_hints = typing.get_type_hints(_typecheckingstub__b41fe74abf03b1ee4f0b5f521d5e3e995ded4c72f89438f83df1a19a755cf210)
441
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
442
+ jsii.set(self, "id", value) # pyright: ignore[reportArgumentType]
443
+
444
+ @builtins.property
445
+ @jsii.member(jsii_name="labels")
446
+ def labels(self) -> typing.Mapping[builtins.str, builtins.str]:
447
+ return typing.cast(typing.Mapping[builtins.str, builtins.str], jsii.get(self, "labels"))
448
+
449
+ @labels.setter
450
+ def labels(self, value: typing.Mapping[builtins.str, builtins.str]) -> None:
451
+ if __debug__:
452
+ type_hints = typing.get_type_hints(_typecheckingstub__582e5d19d5e9e322b330c3b5bede9c40c98cc138fef81206fe5627e535dff1bb)
453
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
454
+ jsii.set(self, "labels", value) # pyright: ignore[reportArgumentType]
455
+
456
+ @builtins.property
457
+ @jsii.member(jsii_name="maintenanceWindowDow")
458
+ def maintenance_window_dow(self) -> builtins.str:
459
+ return typing.cast(builtins.str, jsii.get(self, "maintenanceWindowDow"))
460
+
461
+ @maintenance_window_dow.setter
462
+ def maintenance_window_dow(self, value: builtins.str) -> None:
463
+ if __debug__:
464
+ type_hints = typing.get_type_hints(_typecheckingstub__143dbf09447146d1251e1d077d8d015a4d72185c65356c2cbc926407d4a9d66d)
465
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
466
+ jsii.set(self, "maintenanceWindowDow", value) # pyright: ignore[reportArgumentType]
467
+
468
+ @builtins.property
469
+ @jsii.member(jsii_name="maintenanceWindowTime")
470
+ def maintenance_window_time(self) -> builtins.str:
471
+ return typing.cast(builtins.str, jsii.get(self, "maintenanceWindowTime"))
472
+
473
+ @maintenance_window_time.setter
474
+ def maintenance_window_time(self, value: builtins.str) -> None:
475
+ if __debug__:
476
+ type_hints = typing.get_type_hints(_typecheckingstub__94bc5c33c77b831f6591e0bd7fc829f250e2b41e491c36b6e70fba5c7fca15f8)
477
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
478
+ jsii.set(self, "maintenanceWindowTime", value) # pyright: ignore[reportArgumentType]
479
+
480
+ @builtins.property
481
+ @jsii.member(jsii_name="name")
482
+ def name(self) -> builtins.str:
483
+ return typing.cast(builtins.str, jsii.get(self, "name"))
484
+
485
+ @name.setter
486
+ def name(self, value: builtins.str) -> None:
487
+ if __debug__:
488
+ type_hints = typing.get_type_hints(_typecheckingstub__2558e1f521ac9d42f41277e188f9b3916e911b33d98c46eba7b35837f9d5e5aa)
489
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
490
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
491
+
492
+ @builtins.property
493
+ @jsii.member(jsii_name="plan")
494
+ def plan(self) -> builtins.str:
495
+ return typing.cast(builtins.str, jsii.get(self, "plan"))
496
+
497
+ @plan.setter
498
+ def plan(self, value: builtins.str) -> None:
499
+ if __debug__:
500
+ type_hints = typing.get_type_hints(_typecheckingstub__d03add559c3e5c8300d41809a9579ab79a30ac2280a9116b12f9e956f5b176e7)
501
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
502
+ jsii.set(self, "plan", value) # pyright: ignore[reportArgumentType]
503
+
504
+ @builtins.property
505
+ @jsii.member(jsii_name="powered")
506
+ def powered(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
507
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "powered"))
508
+
509
+ @powered.setter
510
+ def powered(
511
+ self,
512
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
513
+ ) -> None:
514
+ if __debug__:
515
+ type_hints = typing.get_type_hints(_typecheckingstub__8bad55e55d8452abe892cea5a4bec66a6ab86e9bc3d56b0a36cfe63e18325c01)
516
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
517
+ jsii.set(self, "powered", value) # pyright: ignore[reportArgumentType]
518
+
519
+ @builtins.property
520
+ @jsii.member(jsii_name="terminationProtection")
521
+ def termination_protection(
522
+ self,
523
+ ) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
524
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "terminationProtection"))
525
+
526
+ @termination_protection.setter
527
+ def termination_protection(
528
+ self,
529
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
530
+ ) -> None:
531
+ if __debug__:
532
+ type_hints = typing.get_type_hints(_typecheckingstub__2e2a35e3062885d4364913bf8f82e9adbc5cf8ee7b9a4712ac632c0c18444667)
533
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
534
+ jsii.set(self, "terminationProtection", value) # pyright: ignore[reportArgumentType]
535
+
536
+ @builtins.property
537
+ @jsii.member(jsii_name="title")
538
+ def title(self) -> builtins.str:
539
+ return typing.cast(builtins.str, jsii.get(self, "title"))
540
+
541
+ @title.setter
542
+ def title(self, value: builtins.str) -> None:
543
+ if __debug__:
544
+ type_hints = typing.get_type_hints(_typecheckingstub__587e4697953225f3226603c43b6632073e29e531cd8559a516447b2f279761f1)
545
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
546
+ jsii.set(self, "title", value) # pyright: ignore[reportArgumentType]
547
+
548
+ @builtins.property
549
+ @jsii.member(jsii_name="zone")
550
+ def zone(self) -> builtins.str:
551
+ return typing.cast(builtins.str, jsii.get(self, "zone"))
552
+
553
+ @zone.setter
554
+ def zone(self, value: builtins.str) -> None:
555
+ if __debug__:
556
+ type_hints = typing.get_type_hints(_typecheckingstub__d784cbad4812d74571ea6bd4f345ded5999d60288344c5b7666a672de8ab4f93)
557
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
558
+ jsii.set(self, "zone", value) # pyright: ignore[reportArgumentType]
559
+
560
+
561
+ @jsii.data_type(
562
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyComponents",
563
+ jsii_struct_bases=[],
564
+ name_mapping={},
565
+ )
566
+ class ManagedDatabaseValkeyComponents:
567
+ def __init__(self) -> None:
568
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
569
+
570
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
571
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
572
+
573
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
574
+ return not (rhs == self)
575
+
576
+ def __repr__(self) -> str:
577
+ return "ManagedDatabaseValkeyComponents(%s)" % ", ".join(
578
+ k + "=" + repr(v) for k, v in self._values.items()
579
+ )
580
+
581
+
582
+ class ManagedDatabaseValkeyComponentsList(
583
+ _cdktf_9a9027ec.ComplexList,
584
+ metaclass=jsii.JSIIMeta,
585
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyComponentsList",
586
+ ):
587
+ def __init__(
588
+ self,
589
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
590
+ terraform_attribute: builtins.str,
591
+ wraps_set: builtins.bool,
592
+ ) -> None:
593
+ '''
594
+ :param terraform_resource: The parent resource.
595
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
596
+ :param wraps_set: whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
597
+ '''
598
+ if __debug__:
599
+ type_hints = typing.get_type_hints(_typecheckingstub__cf4f52898b75a9b0604cb414405e6251854854d6b3965a6524b46da5002b3322)
600
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
601
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
602
+ check_type(argname="argument wraps_set", value=wraps_set, expected_type=type_hints["wraps_set"])
603
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, wraps_set])
604
+
605
+ @jsii.member(jsii_name="get")
606
+ def get(
607
+ self,
608
+ index: jsii.Number,
609
+ ) -> "ManagedDatabaseValkeyComponentsOutputReference":
610
+ '''
611
+ :param index: the index of the item to return.
612
+ '''
613
+ if __debug__:
614
+ type_hints = typing.get_type_hints(_typecheckingstub__f4252d9db585952153c1c7b4ab9959c5e9735acd2eacc7718a173e3af9b63655)
615
+ check_type(argname="argument index", value=index, expected_type=type_hints["index"])
616
+ return typing.cast("ManagedDatabaseValkeyComponentsOutputReference", jsii.invoke(self, "get", [index]))
617
+
618
+ @builtins.property
619
+ @jsii.member(jsii_name="terraformAttribute")
620
+ def _terraform_attribute(self) -> builtins.str:
621
+ '''The attribute on the parent resource this class is referencing.'''
622
+ return typing.cast(builtins.str, jsii.get(self, "terraformAttribute"))
623
+
624
+ @_terraform_attribute.setter
625
+ def _terraform_attribute(self, value: builtins.str) -> None:
626
+ if __debug__:
627
+ type_hints = typing.get_type_hints(_typecheckingstub__8d6e320ee08cff87cf383a49d240e7b08cc1cde188220b5ebbaa1aa01276cd47)
628
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
629
+ jsii.set(self, "terraformAttribute", value) # pyright: ignore[reportArgumentType]
630
+
631
+ @builtins.property
632
+ @jsii.member(jsii_name="terraformResource")
633
+ def _terraform_resource(self) -> _cdktf_9a9027ec.IInterpolatingParent:
634
+ '''The parent resource.'''
635
+ return typing.cast(_cdktf_9a9027ec.IInterpolatingParent, jsii.get(self, "terraformResource"))
636
+
637
+ @_terraform_resource.setter
638
+ def _terraform_resource(self, value: _cdktf_9a9027ec.IInterpolatingParent) -> None:
639
+ if __debug__:
640
+ type_hints = typing.get_type_hints(_typecheckingstub__d01ad4104711108a61bfe60b65ce72760f44f64c48e6d32829e0cd80c705aae2)
641
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
642
+ jsii.set(self, "terraformResource", value) # pyright: ignore[reportArgumentType]
643
+
644
+ @builtins.property
645
+ @jsii.member(jsii_name="wrapsSet")
646
+ def _wraps_set(self) -> builtins.bool:
647
+ '''whether the list is wrapping a set (will add tolist() to be able to access an item via an index).'''
648
+ return typing.cast(builtins.bool, jsii.get(self, "wrapsSet"))
649
+
650
+ @_wraps_set.setter
651
+ def _wraps_set(self, value: builtins.bool) -> None:
652
+ if __debug__:
653
+ type_hints = typing.get_type_hints(_typecheckingstub__9717b3417f02063948e02cb67f4622cbd85be8020fbdec4526701605c0e76db8)
654
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
655
+ jsii.set(self, "wrapsSet", value) # pyright: ignore[reportArgumentType]
656
+
657
+
658
+ class ManagedDatabaseValkeyComponentsOutputReference(
659
+ _cdktf_9a9027ec.ComplexObject,
660
+ metaclass=jsii.JSIIMeta,
661
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyComponentsOutputReference",
662
+ ):
663
+ def __init__(
664
+ self,
665
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
666
+ terraform_attribute: builtins.str,
667
+ complex_object_index: jsii.Number,
668
+ complex_object_is_from_set: builtins.bool,
669
+ ) -> None:
670
+ '''
671
+ :param terraform_resource: The parent resource.
672
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
673
+ :param complex_object_index: the index of this item in the list.
674
+ :param complex_object_is_from_set: whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
675
+ '''
676
+ if __debug__:
677
+ type_hints = typing.get_type_hints(_typecheckingstub__74486c446b4bb4d03113a6716ef1ae8d4f578400c1889d35913c174dcca771eb)
678
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
679
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
680
+ check_type(argname="argument complex_object_index", value=complex_object_index, expected_type=type_hints["complex_object_index"])
681
+ check_type(argname="argument complex_object_is_from_set", value=complex_object_is_from_set, expected_type=type_hints["complex_object_is_from_set"])
682
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, complex_object_index, complex_object_is_from_set])
683
+
684
+ @builtins.property
685
+ @jsii.member(jsii_name="component")
686
+ def component(self) -> builtins.str:
687
+ return typing.cast(builtins.str, jsii.get(self, "component"))
688
+
689
+ @builtins.property
690
+ @jsii.member(jsii_name="host")
691
+ def host(self) -> builtins.str:
692
+ return typing.cast(builtins.str, jsii.get(self, "host"))
693
+
694
+ @builtins.property
695
+ @jsii.member(jsii_name="port")
696
+ def port(self) -> jsii.Number:
697
+ return typing.cast(jsii.Number, jsii.get(self, "port"))
698
+
699
+ @builtins.property
700
+ @jsii.member(jsii_name="route")
701
+ def route(self) -> builtins.str:
702
+ return typing.cast(builtins.str, jsii.get(self, "route"))
703
+
704
+ @builtins.property
705
+ @jsii.member(jsii_name="usage")
706
+ def usage(self) -> builtins.str:
707
+ return typing.cast(builtins.str, jsii.get(self, "usage"))
708
+
709
+ @builtins.property
710
+ @jsii.member(jsii_name="internalValue")
711
+ def internal_value(self) -> typing.Optional[ManagedDatabaseValkeyComponents]:
712
+ return typing.cast(typing.Optional[ManagedDatabaseValkeyComponents], jsii.get(self, "internalValue"))
713
+
714
+ @internal_value.setter
715
+ def internal_value(
716
+ self,
717
+ value: typing.Optional[ManagedDatabaseValkeyComponents],
718
+ ) -> None:
719
+ if __debug__:
720
+ type_hints = typing.get_type_hints(_typecheckingstub__f8aac1a49ad50d49df4e2f2de04bd60a6f054eeff1e57e01b8130b16417b58c3)
721
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
722
+ jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
723
+
724
+
725
+ @jsii.data_type(
726
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyConfig",
727
+ jsii_struct_bases=[_cdktf_9a9027ec.TerraformMetaArguments],
728
+ name_mapping={
729
+ "connection": "connection",
730
+ "count": "count",
731
+ "depends_on": "dependsOn",
732
+ "for_each": "forEach",
733
+ "lifecycle": "lifecycle",
734
+ "provider": "provider",
735
+ "provisioners": "provisioners",
736
+ "name": "name",
737
+ "plan": "plan",
738
+ "title": "title",
739
+ "zone": "zone",
740
+ "additional_disk_space_gib": "additionalDiskSpaceGib",
741
+ "id": "id",
742
+ "labels": "labels",
743
+ "maintenance_window_dow": "maintenanceWindowDow",
744
+ "maintenance_window_time": "maintenanceWindowTime",
745
+ "network": "network",
746
+ "powered": "powered",
747
+ "properties": "properties",
748
+ "termination_protection": "terminationProtection",
749
+ },
750
+ )
751
+ class ManagedDatabaseValkeyConfig(_cdktf_9a9027ec.TerraformMetaArguments):
752
+ def __init__(
753
+ self,
754
+ *,
755
+ 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,
756
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
757
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
758
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
759
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
760
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
761
+ 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,
762
+ name: builtins.str,
763
+ plan: builtins.str,
764
+ title: builtins.str,
765
+ zone: builtins.str,
766
+ additional_disk_space_gib: typing.Optional[jsii.Number] = None,
767
+ id: typing.Optional[builtins.str] = None,
768
+ labels: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
769
+ maintenance_window_dow: typing.Optional[builtins.str] = None,
770
+ maintenance_window_time: typing.Optional[builtins.str] = None,
771
+ network: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.Sequence[typing.Union["ManagedDatabaseValkeyNetwork", typing.Dict[builtins.str, typing.Any]]]]] = None,
772
+ powered: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
773
+ properties: typing.Optional[typing.Union["ManagedDatabaseValkeyProperties", typing.Dict[builtins.str, typing.Any]]] = None,
774
+ termination_protection: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
775
+ ) -> None:
776
+ '''
777
+ :param connection:
778
+ :param count:
779
+ :param depends_on:
780
+ :param for_each:
781
+ :param lifecycle:
782
+ :param provider:
783
+ :param provisioners:
784
+ :param name: Name of the service. The name is used as a prefix for the logical hostname. Must be unique within an account Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#name ManagedDatabaseValkey#name}
785
+ :param plan: Service plan to use. This determines how much resources the instance will have. You can list available plans with ``upctl database plans valkey``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#plan ManagedDatabaseValkey#plan}
786
+ :param title: Title of a managed database instance. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#title ManagedDatabaseValkey#title}
787
+ :param zone: Zone where the instance resides, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#zone ManagedDatabaseValkey#zone}
788
+ :param additional_disk_space_gib: Not supported for ``valkey`` databases. Should be left unconfigured. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#additional_disk_space_gib ManagedDatabaseValkey#additional_disk_space_gib}
789
+ :param id: Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#id ManagedDatabaseValkey#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.
790
+ :param labels: User defined key-value pairs to classify the managed database. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#labels ManagedDatabaseValkey#labels}
791
+ :param maintenance_window_dow: Maintenance window day of week. Lower case weekday name (monday, tuesday, ...). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#maintenance_window_dow ManagedDatabaseValkey#maintenance_window_dow}
792
+ :param maintenance_window_time: Maintenance window UTC time in hh:mm:ss format. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#maintenance_window_time ManagedDatabaseValkey#maintenance_window_time}
793
+ :param network: network block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#network ManagedDatabaseValkey#network}
794
+ :param powered: The administrative power state of the service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#powered ManagedDatabaseValkey#powered}
795
+ :param properties: properties block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#properties ManagedDatabaseValkey#properties}
796
+ :param termination_protection: If set to true, prevents the managed service from being powered off, or deleted. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#termination_protection ManagedDatabaseValkey#termination_protection}
797
+ '''
798
+ if isinstance(lifecycle, dict):
799
+ lifecycle = _cdktf_9a9027ec.TerraformResourceLifecycle(**lifecycle)
800
+ if isinstance(properties, dict):
801
+ properties = ManagedDatabaseValkeyProperties(**properties)
802
+ if __debug__:
803
+ type_hints = typing.get_type_hints(_typecheckingstub__572e81ffbdca76e6a311042e02f5f60989357be28c5c9418094954727f2b5e84)
804
+ check_type(argname="argument connection", value=connection, expected_type=type_hints["connection"])
805
+ check_type(argname="argument count", value=count, expected_type=type_hints["count"])
806
+ check_type(argname="argument depends_on", value=depends_on, expected_type=type_hints["depends_on"])
807
+ check_type(argname="argument for_each", value=for_each, expected_type=type_hints["for_each"])
808
+ check_type(argname="argument lifecycle", value=lifecycle, expected_type=type_hints["lifecycle"])
809
+ check_type(argname="argument provider", value=provider, expected_type=type_hints["provider"])
810
+ check_type(argname="argument provisioners", value=provisioners, expected_type=type_hints["provisioners"])
811
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
812
+ check_type(argname="argument plan", value=plan, expected_type=type_hints["plan"])
813
+ check_type(argname="argument title", value=title, expected_type=type_hints["title"])
814
+ check_type(argname="argument zone", value=zone, expected_type=type_hints["zone"])
815
+ check_type(argname="argument additional_disk_space_gib", value=additional_disk_space_gib, expected_type=type_hints["additional_disk_space_gib"])
816
+ check_type(argname="argument id", value=id, expected_type=type_hints["id"])
817
+ check_type(argname="argument labels", value=labels, expected_type=type_hints["labels"])
818
+ check_type(argname="argument maintenance_window_dow", value=maintenance_window_dow, expected_type=type_hints["maintenance_window_dow"])
819
+ check_type(argname="argument maintenance_window_time", value=maintenance_window_time, expected_type=type_hints["maintenance_window_time"])
820
+ check_type(argname="argument network", value=network, expected_type=type_hints["network"])
821
+ check_type(argname="argument powered", value=powered, expected_type=type_hints["powered"])
822
+ check_type(argname="argument properties", value=properties, expected_type=type_hints["properties"])
823
+ check_type(argname="argument termination_protection", value=termination_protection, expected_type=type_hints["termination_protection"])
824
+ self._values: typing.Dict[builtins.str, typing.Any] = {
825
+ "name": name,
826
+ "plan": plan,
827
+ "title": title,
828
+ "zone": zone,
829
+ }
830
+ if connection is not None:
831
+ self._values["connection"] = connection
832
+ if count is not None:
833
+ self._values["count"] = count
834
+ if depends_on is not None:
835
+ self._values["depends_on"] = depends_on
836
+ if for_each is not None:
837
+ self._values["for_each"] = for_each
838
+ if lifecycle is not None:
839
+ self._values["lifecycle"] = lifecycle
840
+ if provider is not None:
841
+ self._values["provider"] = provider
842
+ if provisioners is not None:
843
+ self._values["provisioners"] = provisioners
844
+ if additional_disk_space_gib is not None:
845
+ self._values["additional_disk_space_gib"] = additional_disk_space_gib
846
+ if id is not None:
847
+ self._values["id"] = id
848
+ if labels is not None:
849
+ self._values["labels"] = labels
850
+ if maintenance_window_dow is not None:
851
+ self._values["maintenance_window_dow"] = maintenance_window_dow
852
+ if maintenance_window_time is not None:
853
+ self._values["maintenance_window_time"] = maintenance_window_time
854
+ if network is not None:
855
+ self._values["network"] = network
856
+ if powered is not None:
857
+ self._values["powered"] = powered
858
+ if properties is not None:
859
+ self._values["properties"] = properties
860
+ if termination_protection is not None:
861
+ self._values["termination_protection"] = termination_protection
862
+
863
+ @builtins.property
864
+ def connection(
865
+ self,
866
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]]:
867
+ '''
868
+ :stability: experimental
869
+ '''
870
+ result = self._values.get("connection")
871
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.SSHProvisionerConnection, _cdktf_9a9027ec.WinrmProvisionerConnection]], result)
872
+
873
+ @builtins.property
874
+ def count(
875
+ self,
876
+ ) -> typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]]:
877
+ '''
878
+ :stability: experimental
879
+ '''
880
+ result = self._values.get("count")
881
+ return typing.cast(typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]], result)
882
+
883
+ @builtins.property
884
+ def depends_on(
885
+ self,
886
+ ) -> typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]]:
887
+ '''
888
+ :stability: experimental
889
+ '''
890
+ result = self._values.get("depends_on")
891
+ return typing.cast(typing.Optional[typing.List[_cdktf_9a9027ec.ITerraformDependable]], result)
892
+
893
+ @builtins.property
894
+ def for_each(self) -> typing.Optional[_cdktf_9a9027ec.ITerraformIterator]:
895
+ '''
896
+ :stability: experimental
897
+ '''
898
+ result = self._values.get("for_each")
899
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.ITerraformIterator], result)
900
+
901
+ @builtins.property
902
+ def lifecycle(self) -> typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle]:
903
+ '''
904
+ :stability: experimental
905
+ '''
906
+ result = self._values.get("lifecycle")
907
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformResourceLifecycle], result)
908
+
909
+ @builtins.property
910
+ def provider(self) -> typing.Optional[_cdktf_9a9027ec.TerraformProvider]:
911
+ '''
912
+ :stability: experimental
913
+ '''
914
+ result = self._values.get("provider")
915
+ return typing.cast(typing.Optional[_cdktf_9a9027ec.TerraformProvider], result)
916
+
917
+ @builtins.property
918
+ def provisioners(
919
+ self,
920
+ ) -> typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]]:
921
+ '''
922
+ :stability: experimental
923
+ '''
924
+ result = self._values.get("provisioners")
925
+ return typing.cast(typing.Optional[typing.List[typing.Union[_cdktf_9a9027ec.FileProvisioner, _cdktf_9a9027ec.LocalExecProvisioner, _cdktf_9a9027ec.RemoteExecProvisioner]]], result)
926
+
927
+ @builtins.property
928
+ def name(self) -> builtins.str:
929
+ '''Name of the service.
930
+
931
+ The name is used as a prefix for the logical hostname. Must be unique within an account
932
+
933
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#name ManagedDatabaseValkey#name}
934
+ '''
935
+ result = self._values.get("name")
936
+ assert result is not None, "Required property 'name' is missing"
937
+ return typing.cast(builtins.str, result)
938
+
939
+ @builtins.property
940
+ def plan(self) -> builtins.str:
941
+ '''Service plan to use.
942
+
943
+ This determines how much resources the instance will have. You can list available plans with ``upctl database plans valkey``.
944
+
945
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#plan ManagedDatabaseValkey#plan}
946
+ '''
947
+ result = self._values.get("plan")
948
+ assert result is not None, "Required property 'plan' is missing"
949
+ return typing.cast(builtins.str, result)
950
+
951
+ @builtins.property
952
+ def title(self) -> builtins.str:
953
+ '''Title of a managed database instance.
954
+
955
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#title ManagedDatabaseValkey#title}
956
+ '''
957
+ result = self._values.get("title")
958
+ assert result is not None, "Required property 'title' is missing"
959
+ return typing.cast(builtins.str, result)
960
+
961
+ @builtins.property
962
+ def zone(self) -> builtins.str:
963
+ '''Zone where the instance resides, e.g. ``de-fra1``. You can list available zones with ``upctl zone list``.
964
+
965
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#zone ManagedDatabaseValkey#zone}
966
+ '''
967
+ result = self._values.get("zone")
968
+ assert result is not None, "Required property 'zone' is missing"
969
+ return typing.cast(builtins.str, result)
970
+
971
+ @builtins.property
972
+ def additional_disk_space_gib(self) -> typing.Optional[jsii.Number]:
973
+ '''Not supported for ``valkey`` databases. Should be left unconfigured.
974
+
975
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#additional_disk_space_gib ManagedDatabaseValkey#additional_disk_space_gib}
976
+ '''
977
+ result = self._values.get("additional_disk_space_gib")
978
+ return typing.cast(typing.Optional[jsii.Number], result)
979
+
980
+ @builtins.property
981
+ def id(self) -> typing.Optional[builtins.str]:
982
+ '''Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#id ManagedDatabaseValkey#id}.
983
+
984
+ Please be aware that the id field is automatically added to all resources in Terraform providers using a Terraform provider SDK version below 2.
985
+ 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.
986
+ '''
987
+ result = self._values.get("id")
988
+ return typing.cast(typing.Optional[builtins.str], result)
989
+
990
+ @builtins.property
991
+ def labels(self) -> typing.Optional[typing.Mapping[builtins.str, builtins.str]]:
992
+ '''User defined key-value pairs to classify the managed database.
993
+
994
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#labels ManagedDatabaseValkey#labels}
995
+ '''
996
+ result = self._values.get("labels")
997
+ return typing.cast(typing.Optional[typing.Mapping[builtins.str, builtins.str]], result)
998
+
999
+ @builtins.property
1000
+ def maintenance_window_dow(self) -> typing.Optional[builtins.str]:
1001
+ '''Maintenance window day of week. Lower case weekday name (monday, tuesday, ...).
1002
+
1003
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#maintenance_window_dow ManagedDatabaseValkey#maintenance_window_dow}
1004
+ '''
1005
+ result = self._values.get("maintenance_window_dow")
1006
+ return typing.cast(typing.Optional[builtins.str], result)
1007
+
1008
+ @builtins.property
1009
+ def maintenance_window_time(self) -> typing.Optional[builtins.str]:
1010
+ '''Maintenance window UTC time in hh:mm:ss format.
1011
+
1012
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#maintenance_window_time ManagedDatabaseValkey#maintenance_window_time}
1013
+ '''
1014
+ result = self._values.get("maintenance_window_time")
1015
+ return typing.cast(typing.Optional[builtins.str], result)
1016
+
1017
+ @builtins.property
1018
+ def network(
1019
+ self,
1020
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List["ManagedDatabaseValkeyNetwork"]]]:
1021
+ '''network block.
1022
+
1023
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#network ManagedDatabaseValkey#network}
1024
+ '''
1025
+ result = self._values.get("network")
1026
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List["ManagedDatabaseValkeyNetwork"]]], result)
1027
+
1028
+ @builtins.property
1029
+ def powered(
1030
+ self,
1031
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1032
+ '''The administrative power state of the service.
1033
+
1034
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#powered ManagedDatabaseValkey#powered}
1035
+ '''
1036
+ result = self._values.get("powered")
1037
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1038
+
1039
+ @builtins.property
1040
+ def properties(self) -> typing.Optional["ManagedDatabaseValkeyProperties"]:
1041
+ '''properties block.
1042
+
1043
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#properties ManagedDatabaseValkey#properties}
1044
+ '''
1045
+ result = self._values.get("properties")
1046
+ return typing.cast(typing.Optional["ManagedDatabaseValkeyProperties"], result)
1047
+
1048
+ @builtins.property
1049
+ def termination_protection(
1050
+ self,
1051
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1052
+ '''If set to true, prevents the managed service from being powered off, or deleted.
1053
+
1054
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#termination_protection ManagedDatabaseValkey#termination_protection}
1055
+ '''
1056
+ result = self._values.get("termination_protection")
1057
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1058
+
1059
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1060
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1061
+
1062
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1063
+ return not (rhs == self)
1064
+
1065
+ def __repr__(self) -> str:
1066
+ return "ManagedDatabaseValkeyConfig(%s)" % ", ".join(
1067
+ k + "=" + repr(v) for k, v in self._values.items()
1068
+ )
1069
+
1070
+
1071
+ @jsii.data_type(
1072
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyNetwork",
1073
+ jsii_struct_bases=[],
1074
+ name_mapping={"family": "family", "name": "name", "type": "type", "uuid": "uuid"},
1075
+ )
1076
+ class ManagedDatabaseValkeyNetwork:
1077
+ def __init__(
1078
+ self,
1079
+ *,
1080
+ family: builtins.str,
1081
+ name: builtins.str,
1082
+ type: builtins.str,
1083
+ uuid: builtins.str,
1084
+ ) -> None:
1085
+ '''
1086
+ :param family: Network family. Currently only ``IPv4`` is supported. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#family ManagedDatabaseValkey#family}
1087
+ :param name: The name of the network. Must be unique within the service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#name ManagedDatabaseValkey#name}
1088
+ :param type: The type of the network. Must be private. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#type ManagedDatabaseValkey#type}
1089
+ :param uuid: Private network UUID. Must reside in the same zone as the database. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#uuid ManagedDatabaseValkey#uuid}
1090
+ '''
1091
+ if __debug__:
1092
+ type_hints = typing.get_type_hints(_typecheckingstub__86bc6cfbeb2b0d724aae3cd0dc476ec5f0060e413bec0604ca6101e019eba72f)
1093
+ check_type(argname="argument family", value=family, expected_type=type_hints["family"])
1094
+ check_type(argname="argument name", value=name, expected_type=type_hints["name"])
1095
+ check_type(argname="argument type", value=type, expected_type=type_hints["type"])
1096
+ check_type(argname="argument uuid", value=uuid, expected_type=type_hints["uuid"])
1097
+ self._values: typing.Dict[builtins.str, typing.Any] = {
1098
+ "family": family,
1099
+ "name": name,
1100
+ "type": type,
1101
+ "uuid": uuid,
1102
+ }
1103
+
1104
+ @builtins.property
1105
+ def family(self) -> builtins.str:
1106
+ '''Network family. Currently only ``IPv4`` is supported.
1107
+
1108
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#family ManagedDatabaseValkey#family}
1109
+ '''
1110
+ result = self._values.get("family")
1111
+ assert result is not None, "Required property 'family' is missing"
1112
+ return typing.cast(builtins.str, result)
1113
+
1114
+ @builtins.property
1115
+ def name(self) -> builtins.str:
1116
+ '''The name of the network. Must be unique within the service.
1117
+
1118
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#name ManagedDatabaseValkey#name}
1119
+ '''
1120
+ result = self._values.get("name")
1121
+ assert result is not None, "Required property 'name' is missing"
1122
+ return typing.cast(builtins.str, result)
1123
+
1124
+ @builtins.property
1125
+ def type(self) -> builtins.str:
1126
+ '''The type of the network. Must be private.
1127
+
1128
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#type ManagedDatabaseValkey#type}
1129
+ '''
1130
+ result = self._values.get("type")
1131
+ assert result is not None, "Required property 'type' is missing"
1132
+ return typing.cast(builtins.str, result)
1133
+
1134
+ @builtins.property
1135
+ def uuid(self) -> builtins.str:
1136
+ '''Private network UUID. Must reside in the same zone as the database.
1137
+
1138
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#uuid ManagedDatabaseValkey#uuid}
1139
+ '''
1140
+ result = self._values.get("uuid")
1141
+ assert result is not None, "Required property 'uuid' is missing"
1142
+ return typing.cast(builtins.str, result)
1143
+
1144
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1145
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1146
+
1147
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1148
+ return not (rhs == self)
1149
+
1150
+ def __repr__(self) -> str:
1151
+ return "ManagedDatabaseValkeyNetwork(%s)" % ", ".join(
1152
+ k + "=" + repr(v) for k, v in self._values.items()
1153
+ )
1154
+
1155
+
1156
+ class ManagedDatabaseValkeyNetworkList(
1157
+ _cdktf_9a9027ec.ComplexList,
1158
+ metaclass=jsii.JSIIMeta,
1159
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyNetworkList",
1160
+ ):
1161
+ def __init__(
1162
+ self,
1163
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
1164
+ terraform_attribute: builtins.str,
1165
+ wraps_set: builtins.bool,
1166
+ ) -> None:
1167
+ '''
1168
+ :param terraform_resource: The parent resource.
1169
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
1170
+ :param wraps_set: whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
1171
+ '''
1172
+ if __debug__:
1173
+ type_hints = typing.get_type_hints(_typecheckingstub__3f387effda8c16fde9966811ccf787b3d56271088a5b593d10bd528d49165c7f)
1174
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
1175
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
1176
+ check_type(argname="argument wraps_set", value=wraps_set, expected_type=type_hints["wraps_set"])
1177
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, wraps_set])
1178
+
1179
+ @jsii.member(jsii_name="get")
1180
+ def get(self, index: jsii.Number) -> "ManagedDatabaseValkeyNetworkOutputReference":
1181
+ '''
1182
+ :param index: the index of the item to return.
1183
+ '''
1184
+ if __debug__:
1185
+ type_hints = typing.get_type_hints(_typecheckingstub__b2cc2c3d970c95aa4a181f20ece6cae2da769925316379879259191e890fc425)
1186
+ check_type(argname="argument index", value=index, expected_type=type_hints["index"])
1187
+ return typing.cast("ManagedDatabaseValkeyNetworkOutputReference", jsii.invoke(self, "get", [index]))
1188
+
1189
+ @builtins.property
1190
+ @jsii.member(jsii_name="terraformAttribute")
1191
+ def _terraform_attribute(self) -> builtins.str:
1192
+ '''The attribute on the parent resource this class is referencing.'''
1193
+ return typing.cast(builtins.str, jsii.get(self, "terraformAttribute"))
1194
+
1195
+ @_terraform_attribute.setter
1196
+ def _terraform_attribute(self, value: builtins.str) -> None:
1197
+ if __debug__:
1198
+ type_hints = typing.get_type_hints(_typecheckingstub__b1f288935f98f823df0793a078e8de29a92298eeac83e277d79e6f5b6e9c6819)
1199
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1200
+ jsii.set(self, "terraformAttribute", value) # pyright: ignore[reportArgumentType]
1201
+
1202
+ @builtins.property
1203
+ @jsii.member(jsii_name="terraformResource")
1204
+ def _terraform_resource(self) -> _cdktf_9a9027ec.IInterpolatingParent:
1205
+ '''The parent resource.'''
1206
+ return typing.cast(_cdktf_9a9027ec.IInterpolatingParent, jsii.get(self, "terraformResource"))
1207
+
1208
+ @_terraform_resource.setter
1209
+ def _terraform_resource(self, value: _cdktf_9a9027ec.IInterpolatingParent) -> None:
1210
+ if __debug__:
1211
+ type_hints = typing.get_type_hints(_typecheckingstub__1ce318a3e6e190673efb3cff247a30d8c50c2a72993e57587a0a7bbac9667ca3)
1212
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1213
+ jsii.set(self, "terraformResource", value) # pyright: ignore[reportArgumentType]
1214
+
1215
+ @builtins.property
1216
+ @jsii.member(jsii_name="wrapsSet")
1217
+ def _wraps_set(self) -> builtins.bool:
1218
+ '''whether the list is wrapping a set (will add tolist() to be able to access an item via an index).'''
1219
+ return typing.cast(builtins.bool, jsii.get(self, "wrapsSet"))
1220
+
1221
+ @_wraps_set.setter
1222
+ def _wraps_set(self, value: builtins.bool) -> None:
1223
+ if __debug__:
1224
+ type_hints = typing.get_type_hints(_typecheckingstub__481786a55a2dc14dc3f4da44e7f8873f8427ecce80d885eb17eeee0c53c32a87)
1225
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1226
+ jsii.set(self, "wrapsSet", value) # pyright: ignore[reportArgumentType]
1227
+
1228
+ @builtins.property
1229
+ @jsii.member(jsii_name="internalValue")
1230
+ def internal_value(
1231
+ self,
1232
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List[ManagedDatabaseValkeyNetwork]]]:
1233
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List[ManagedDatabaseValkeyNetwork]]], jsii.get(self, "internalValue"))
1234
+
1235
+ @internal_value.setter
1236
+ def internal_value(
1237
+ self,
1238
+ value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List[ManagedDatabaseValkeyNetwork]]],
1239
+ ) -> None:
1240
+ if __debug__:
1241
+ type_hints = typing.get_type_hints(_typecheckingstub__b13648ea5908387b35158d29883e52641c749981675ab65432e63968b8ef75a5)
1242
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1243
+ jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
1244
+
1245
+
1246
+ class ManagedDatabaseValkeyNetworkOutputReference(
1247
+ _cdktf_9a9027ec.ComplexObject,
1248
+ metaclass=jsii.JSIIMeta,
1249
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyNetworkOutputReference",
1250
+ ):
1251
+ def __init__(
1252
+ self,
1253
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
1254
+ terraform_attribute: builtins.str,
1255
+ complex_object_index: jsii.Number,
1256
+ complex_object_is_from_set: builtins.bool,
1257
+ ) -> None:
1258
+ '''
1259
+ :param terraform_resource: The parent resource.
1260
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
1261
+ :param complex_object_index: the index of this item in the list.
1262
+ :param complex_object_is_from_set: whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
1263
+ '''
1264
+ if __debug__:
1265
+ type_hints = typing.get_type_hints(_typecheckingstub__2824d1ded7fae4598e64b29704860b7e65e1f60cc8c2ba18af6f88b9c393faff)
1266
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
1267
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
1268
+ check_type(argname="argument complex_object_index", value=complex_object_index, expected_type=type_hints["complex_object_index"])
1269
+ check_type(argname="argument complex_object_is_from_set", value=complex_object_is_from_set, expected_type=type_hints["complex_object_is_from_set"])
1270
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, complex_object_index, complex_object_is_from_set])
1271
+
1272
+ @builtins.property
1273
+ @jsii.member(jsii_name="familyInput")
1274
+ def family_input(self) -> typing.Optional[builtins.str]:
1275
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "familyInput"))
1276
+
1277
+ @builtins.property
1278
+ @jsii.member(jsii_name="nameInput")
1279
+ def name_input(self) -> typing.Optional[builtins.str]:
1280
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "nameInput"))
1281
+
1282
+ @builtins.property
1283
+ @jsii.member(jsii_name="typeInput")
1284
+ def type_input(self) -> typing.Optional[builtins.str]:
1285
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "typeInput"))
1286
+
1287
+ @builtins.property
1288
+ @jsii.member(jsii_name="uuidInput")
1289
+ def uuid_input(self) -> typing.Optional[builtins.str]:
1290
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "uuidInput"))
1291
+
1292
+ @builtins.property
1293
+ @jsii.member(jsii_name="family")
1294
+ def family(self) -> builtins.str:
1295
+ return typing.cast(builtins.str, jsii.get(self, "family"))
1296
+
1297
+ @family.setter
1298
+ def family(self, value: builtins.str) -> None:
1299
+ if __debug__:
1300
+ type_hints = typing.get_type_hints(_typecheckingstub__4fa688fb44a82433ca388090b8249ad71a4bc831cce3794d229093b4b56293f6)
1301
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1302
+ jsii.set(self, "family", value) # pyright: ignore[reportArgumentType]
1303
+
1304
+ @builtins.property
1305
+ @jsii.member(jsii_name="name")
1306
+ def name(self) -> builtins.str:
1307
+ return typing.cast(builtins.str, jsii.get(self, "name"))
1308
+
1309
+ @name.setter
1310
+ def name(self, value: builtins.str) -> None:
1311
+ if __debug__:
1312
+ type_hints = typing.get_type_hints(_typecheckingstub__5b54ca25e12af584a57e78a38206ab3436c3e1bac4eee6604e90f51def133755)
1313
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1314
+ jsii.set(self, "name", value) # pyright: ignore[reportArgumentType]
1315
+
1316
+ @builtins.property
1317
+ @jsii.member(jsii_name="type")
1318
+ def type(self) -> builtins.str:
1319
+ return typing.cast(builtins.str, jsii.get(self, "type"))
1320
+
1321
+ @type.setter
1322
+ def type(self, value: builtins.str) -> None:
1323
+ if __debug__:
1324
+ type_hints = typing.get_type_hints(_typecheckingstub__1226f980d40c87f8397fe48cb9cc06bf941eea21e26fac7b5530ae632e3503b4)
1325
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1326
+ jsii.set(self, "type", value) # pyright: ignore[reportArgumentType]
1327
+
1328
+ @builtins.property
1329
+ @jsii.member(jsii_name="uuid")
1330
+ def uuid(self) -> builtins.str:
1331
+ return typing.cast(builtins.str, jsii.get(self, "uuid"))
1332
+
1333
+ @uuid.setter
1334
+ def uuid(self, value: builtins.str) -> None:
1335
+ if __debug__:
1336
+ type_hints = typing.get_type_hints(_typecheckingstub__12fdc41f27c6b4f2b911ddd6aba5ce7018770875b804e05212b99416e015528d)
1337
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1338
+ jsii.set(self, "uuid", value) # pyright: ignore[reportArgumentType]
1339
+
1340
+ @builtins.property
1341
+ @jsii.member(jsii_name="internalValue")
1342
+ def internal_value(
1343
+ self,
1344
+ ) -> typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, ManagedDatabaseValkeyNetwork]]:
1345
+ return typing.cast(typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, ManagedDatabaseValkeyNetwork]], jsii.get(self, "internalValue"))
1346
+
1347
+ @internal_value.setter
1348
+ def internal_value(
1349
+ self,
1350
+ value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, ManagedDatabaseValkeyNetwork]],
1351
+ ) -> None:
1352
+ if __debug__:
1353
+ type_hints = typing.get_type_hints(_typecheckingstub__1bf6882d93a48e5aa568b7df8ec4368202184ba0e5546a39a063fbf8b69e0628)
1354
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1355
+ jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
1356
+
1357
+
1358
+ @jsii.data_type(
1359
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyNodeStates",
1360
+ jsii_struct_bases=[],
1361
+ name_mapping={},
1362
+ )
1363
+ class ManagedDatabaseValkeyNodeStates:
1364
+ def __init__(self) -> None:
1365
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1366
+
1367
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1368
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1369
+
1370
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1371
+ return not (rhs == self)
1372
+
1373
+ def __repr__(self) -> str:
1374
+ return "ManagedDatabaseValkeyNodeStates(%s)" % ", ".join(
1375
+ k + "=" + repr(v) for k, v in self._values.items()
1376
+ )
1377
+
1378
+
1379
+ class ManagedDatabaseValkeyNodeStatesList(
1380
+ _cdktf_9a9027ec.ComplexList,
1381
+ metaclass=jsii.JSIIMeta,
1382
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyNodeStatesList",
1383
+ ):
1384
+ def __init__(
1385
+ self,
1386
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
1387
+ terraform_attribute: builtins.str,
1388
+ wraps_set: builtins.bool,
1389
+ ) -> None:
1390
+ '''
1391
+ :param terraform_resource: The parent resource.
1392
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
1393
+ :param wraps_set: whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
1394
+ '''
1395
+ if __debug__:
1396
+ type_hints = typing.get_type_hints(_typecheckingstub__b36a07f4f6613a569fb00669f4dff53d81c6ac0bf2755480fb4e80a1743c29ef)
1397
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
1398
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
1399
+ check_type(argname="argument wraps_set", value=wraps_set, expected_type=type_hints["wraps_set"])
1400
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, wraps_set])
1401
+
1402
+ @jsii.member(jsii_name="get")
1403
+ def get(
1404
+ self,
1405
+ index: jsii.Number,
1406
+ ) -> "ManagedDatabaseValkeyNodeStatesOutputReference":
1407
+ '''
1408
+ :param index: the index of the item to return.
1409
+ '''
1410
+ if __debug__:
1411
+ type_hints = typing.get_type_hints(_typecheckingstub__d7c171b3c8fbf5cf7cde17ad2a04170148cb54b6d4df2b7940c311e02710b1f9)
1412
+ check_type(argname="argument index", value=index, expected_type=type_hints["index"])
1413
+ return typing.cast("ManagedDatabaseValkeyNodeStatesOutputReference", jsii.invoke(self, "get", [index]))
1414
+
1415
+ @builtins.property
1416
+ @jsii.member(jsii_name="terraformAttribute")
1417
+ def _terraform_attribute(self) -> builtins.str:
1418
+ '''The attribute on the parent resource this class is referencing.'''
1419
+ return typing.cast(builtins.str, jsii.get(self, "terraformAttribute"))
1420
+
1421
+ @_terraform_attribute.setter
1422
+ def _terraform_attribute(self, value: builtins.str) -> None:
1423
+ if __debug__:
1424
+ type_hints = typing.get_type_hints(_typecheckingstub__a84231c9993c80153c365716c8c01dab8e9bea7cb1687ec9ffe5a59e4b2a6324)
1425
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1426
+ jsii.set(self, "terraformAttribute", value) # pyright: ignore[reportArgumentType]
1427
+
1428
+ @builtins.property
1429
+ @jsii.member(jsii_name="terraformResource")
1430
+ def _terraform_resource(self) -> _cdktf_9a9027ec.IInterpolatingParent:
1431
+ '''The parent resource.'''
1432
+ return typing.cast(_cdktf_9a9027ec.IInterpolatingParent, jsii.get(self, "terraformResource"))
1433
+
1434
+ @_terraform_resource.setter
1435
+ def _terraform_resource(self, value: _cdktf_9a9027ec.IInterpolatingParent) -> None:
1436
+ if __debug__:
1437
+ type_hints = typing.get_type_hints(_typecheckingstub__33024060d747d6f3e2c9b75456197397a7aef2d57295c92716c794d24de628a0)
1438
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1439
+ jsii.set(self, "terraformResource", value) # pyright: ignore[reportArgumentType]
1440
+
1441
+ @builtins.property
1442
+ @jsii.member(jsii_name="wrapsSet")
1443
+ def _wraps_set(self) -> builtins.bool:
1444
+ '''whether the list is wrapping a set (will add tolist() to be able to access an item via an index).'''
1445
+ return typing.cast(builtins.bool, jsii.get(self, "wrapsSet"))
1446
+
1447
+ @_wraps_set.setter
1448
+ def _wraps_set(self, value: builtins.bool) -> None:
1449
+ if __debug__:
1450
+ type_hints = typing.get_type_hints(_typecheckingstub__5b4b326613b451e91b53641f7d027967e6b69bfef13702d5adde4da4e2e83459)
1451
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1452
+ jsii.set(self, "wrapsSet", value) # pyright: ignore[reportArgumentType]
1453
+
1454
+
1455
+ class ManagedDatabaseValkeyNodeStatesOutputReference(
1456
+ _cdktf_9a9027ec.ComplexObject,
1457
+ metaclass=jsii.JSIIMeta,
1458
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyNodeStatesOutputReference",
1459
+ ):
1460
+ def __init__(
1461
+ self,
1462
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
1463
+ terraform_attribute: builtins.str,
1464
+ complex_object_index: jsii.Number,
1465
+ complex_object_is_from_set: builtins.bool,
1466
+ ) -> None:
1467
+ '''
1468
+ :param terraform_resource: The parent resource.
1469
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
1470
+ :param complex_object_index: the index of this item in the list.
1471
+ :param complex_object_is_from_set: whether the list is wrapping a set (will add tolist() to be able to access an item via an index).
1472
+ '''
1473
+ if __debug__:
1474
+ type_hints = typing.get_type_hints(_typecheckingstub__3584d0fded5a72760262405f68d64086374d1b0be18591d1e84bb4af5db5c06f)
1475
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
1476
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
1477
+ check_type(argname="argument complex_object_index", value=complex_object_index, expected_type=type_hints["complex_object_index"])
1478
+ check_type(argname="argument complex_object_is_from_set", value=complex_object_is_from_set, expected_type=type_hints["complex_object_is_from_set"])
1479
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute, complex_object_index, complex_object_is_from_set])
1480
+
1481
+ @builtins.property
1482
+ @jsii.member(jsii_name="name")
1483
+ def name(self) -> builtins.str:
1484
+ return typing.cast(builtins.str, jsii.get(self, "name"))
1485
+
1486
+ @builtins.property
1487
+ @jsii.member(jsii_name="role")
1488
+ def role(self) -> builtins.str:
1489
+ return typing.cast(builtins.str, jsii.get(self, "role"))
1490
+
1491
+ @builtins.property
1492
+ @jsii.member(jsii_name="state")
1493
+ def state(self) -> builtins.str:
1494
+ return typing.cast(builtins.str, jsii.get(self, "state"))
1495
+
1496
+ @builtins.property
1497
+ @jsii.member(jsii_name="internalValue")
1498
+ def internal_value(self) -> typing.Optional[ManagedDatabaseValkeyNodeStates]:
1499
+ return typing.cast(typing.Optional[ManagedDatabaseValkeyNodeStates], jsii.get(self, "internalValue"))
1500
+
1501
+ @internal_value.setter
1502
+ def internal_value(
1503
+ self,
1504
+ value: typing.Optional[ManagedDatabaseValkeyNodeStates],
1505
+ ) -> None:
1506
+ if __debug__:
1507
+ type_hints = typing.get_type_hints(_typecheckingstub__23d6fd61468e82793403951f52c6440df44471673eda077d3768f80950de87be)
1508
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
1509
+ jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
1510
+
1511
+
1512
+ @jsii.data_type(
1513
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyProperties",
1514
+ jsii_struct_bases=[],
1515
+ name_mapping={
1516
+ "automatic_utility_network_ip_filter": "automaticUtilityNetworkIpFilter",
1517
+ "backup_hour": "backupHour",
1518
+ "backup_minute": "backupMinute",
1519
+ "frequent_snapshots": "frequentSnapshots",
1520
+ "ip_filter": "ipFilter",
1521
+ "migration": "migration",
1522
+ "public_access": "publicAccess",
1523
+ "service_log": "serviceLog",
1524
+ "valkey_acl_channels_default": "valkeyAclChannelsDefault",
1525
+ "valkey_active_expire_effort": "valkeyActiveExpireEffort",
1526
+ "valkey_io_threads": "valkeyIoThreads",
1527
+ "valkey_lfu_decay_time": "valkeyLfuDecayTime",
1528
+ "valkey_lfu_log_factor": "valkeyLfuLogFactor",
1529
+ "valkey_maxmemory_policy": "valkeyMaxmemoryPolicy",
1530
+ "valkey_notify_keyspace_events": "valkeyNotifyKeyspaceEvents",
1531
+ "valkey_number_of_databases": "valkeyNumberOfDatabases",
1532
+ "valkey_persistence": "valkeyPersistence",
1533
+ "valkey_pubsub_client_output_buffer_limit": "valkeyPubsubClientOutputBufferLimit",
1534
+ "valkey_ssl": "valkeySsl",
1535
+ "valkey_timeout": "valkeyTimeout",
1536
+ },
1537
+ )
1538
+ class ManagedDatabaseValkeyProperties:
1539
+ def __init__(
1540
+ self,
1541
+ *,
1542
+ automatic_utility_network_ip_filter: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1543
+ backup_hour: typing.Optional[jsii.Number] = None,
1544
+ backup_minute: typing.Optional[jsii.Number] = None,
1545
+ frequent_snapshots: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1546
+ ip_filter: typing.Optional[typing.Sequence[builtins.str]] = None,
1547
+ migration: typing.Optional[typing.Union["ManagedDatabaseValkeyPropertiesMigration", typing.Dict[builtins.str, typing.Any]]] = None,
1548
+ public_access: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1549
+ service_log: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1550
+ valkey_acl_channels_default: typing.Optional[builtins.str] = None,
1551
+ valkey_active_expire_effort: typing.Optional[jsii.Number] = None,
1552
+ valkey_io_threads: typing.Optional[jsii.Number] = None,
1553
+ valkey_lfu_decay_time: typing.Optional[jsii.Number] = None,
1554
+ valkey_lfu_log_factor: typing.Optional[jsii.Number] = None,
1555
+ valkey_maxmemory_policy: typing.Optional[builtins.str] = None,
1556
+ valkey_notify_keyspace_events: typing.Optional[builtins.str] = None,
1557
+ valkey_number_of_databases: typing.Optional[jsii.Number] = None,
1558
+ valkey_persistence: typing.Optional[builtins.str] = None,
1559
+ valkey_pubsub_client_output_buffer_limit: typing.Optional[jsii.Number] = None,
1560
+ valkey_ssl: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1561
+ valkey_timeout: typing.Optional[jsii.Number] = None,
1562
+ ) -> None:
1563
+ '''
1564
+ :param automatic_utility_network_ip_filter: Automatic utility network IP Filter. Automatically allow connections from servers in the utility network within the same zone. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#automatic_utility_network_ip_filter ManagedDatabaseValkey#automatic_utility_network_ip_filter}
1565
+ :param backup_hour: The hour of day (in UTC) when backup for the service is started. New backup is only started if previous backup has already completed. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#backup_hour ManagedDatabaseValkey#backup_hour}
1566
+ :param backup_minute: The minute of an hour when backup for the service is started. New backup is only started if previous backup has already completed. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#backup_minute ManagedDatabaseValkey#backup_minute}
1567
+ :param frequent_snapshots: Frequent RDB snapshots. When enabled, Valkey will create frequent local RDB snapshots. When disabled, Valkey will only take RDB snapshots when a backup is created, based on the backup schedule. This setting is ignored when ``valkey_persistence`` is set to ``off``. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#frequent_snapshots ManagedDatabaseValkey#frequent_snapshots}
1568
+ :param ip_filter: IP filter. Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16'. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ip_filter ManagedDatabaseValkey#ip_filter}
1569
+ :param migration: migration block. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#migration ManagedDatabaseValkey#migration}
1570
+ :param public_access: Public Access. Allow access to the service from the public Internet. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#public_access ManagedDatabaseValkey#public_access}
1571
+ :param service_log: Service logging. Store logs for the service so that they are available in the HTTP API and console. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#service_log ManagedDatabaseValkey#service_log}
1572
+ :param valkey_acl_channels_default: Default ACL for pub/sub channels used when a Valkey user is created. Determines default pub/sub channels' ACL for new users if ACL is not supplied. When this option is not defined, all_channels is assumed to keep backward compatibility. This option doesn't affect Valkey configuration acl-pubsub-default. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_acl_channels_default ManagedDatabaseValkey#valkey_acl_channels_default}
1573
+ :param valkey_active_expire_effort: Active expire effort. Valkey reclaims expired keys both when accessed and in the background. The background process scans for expired keys to free memory. Increasing the active-expire-effort setting (default 1, max 10) uses more CPU to reclaim expired keys faster, reducing memory usage but potentially increasing latency. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_active_expire_effort ManagedDatabaseValkey#valkey_active_expire_effort}
1574
+ :param valkey_io_threads: Valkey IO thread count. Set Valkey IO thread count. Changing this will cause a restart of the Valkey service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_io_threads ManagedDatabaseValkey#valkey_io_threads}
1575
+ :param valkey_lfu_decay_time: LFU maxmemory-policy counter decay time in minutes. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_lfu_decay_time ManagedDatabaseValkey#valkey_lfu_decay_time}
1576
+ :param valkey_lfu_log_factor: Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_lfu_log_factor ManagedDatabaseValkey#valkey_lfu_log_factor}
1577
+ :param valkey_maxmemory_policy: Valkey maxmemory-policy. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_maxmemory_policy ManagedDatabaseValkey#valkey_maxmemory_policy}
1578
+ :param valkey_notify_keyspace_events: Set notify-keyspace-events option. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_notify_keyspace_events ManagedDatabaseValkey#valkey_notify_keyspace_events}
1579
+ :param valkey_number_of_databases: Number of Valkey databases. Set number of Valkey databases. Changing this will cause a restart of the Valkey service. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_number_of_databases ManagedDatabaseValkey#valkey_number_of_databases}
1580
+ :param valkey_persistence: Valkey persistence. When persistence is 'rdb', Valkey does RDB dumps each 10 minutes if any key is changed. Also RDB dumps are done according to backup schedule for backup purposes. When persistence is 'off', no RDB dumps and backups are done, so data can be lost at any moment if service is restarted for any reason, or if service is powered off. Also service can't be forked. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_persistence ManagedDatabaseValkey#valkey_persistence}
1581
+ :param valkey_pubsub_client_output_buffer_limit: Pub/sub client output buffer hard limit in MB. Set output buffer limit for pub / sub clients in MB. The value is the hard limit, the soft limit is 1/4 of the hard limit. When setting the limit, be mindful of the available memory in the selected service plan. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_pubsub_client_output_buffer_limit ManagedDatabaseValkey#valkey_pubsub_client_output_buffer_limit}
1582
+ :param valkey_ssl: Require SSL to access Valkey. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_ssl ManagedDatabaseValkey#valkey_ssl}
1583
+ :param valkey_timeout: Valkey idle connection timeout in seconds. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_timeout ManagedDatabaseValkey#valkey_timeout}
1584
+ '''
1585
+ if isinstance(migration, dict):
1586
+ migration = ManagedDatabaseValkeyPropertiesMigration(**migration)
1587
+ if __debug__:
1588
+ type_hints = typing.get_type_hints(_typecheckingstub__130504794befd55a7bc90ab03ca53c94a25f9b733cdd13efed4a51695da4b995)
1589
+ check_type(argname="argument automatic_utility_network_ip_filter", value=automatic_utility_network_ip_filter, expected_type=type_hints["automatic_utility_network_ip_filter"])
1590
+ check_type(argname="argument backup_hour", value=backup_hour, expected_type=type_hints["backup_hour"])
1591
+ check_type(argname="argument backup_minute", value=backup_minute, expected_type=type_hints["backup_minute"])
1592
+ check_type(argname="argument frequent_snapshots", value=frequent_snapshots, expected_type=type_hints["frequent_snapshots"])
1593
+ check_type(argname="argument ip_filter", value=ip_filter, expected_type=type_hints["ip_filter"])
1594
+ check_type(argname="argument migration", value=migration, expected_type=type_hints["migration"])
1595
+ check_type(argname="argument public_access", value=public_access, expected_type=type_hints["public_access"])
1596
+ check_type(argname="argument service_log", value=service_log, expected_type=type_hints["service_log"])
1597
+ check_type(argname="argument valkey_acl_channels_default", value=valkey_acl_channels_default, expected_type=type_hints["valkey_acl_channels_default"])
1598
+ check_type(argname="argument valkey_active_expire_effort", value=valkey_active_expire_effort, expected_type=type_hints["valkey_active_expire_effort"])
1599
+ check_type(argname="argument valkey_io_threads", value=valkey_io_threads, expected_type=type_hints["valkey_io_threads"])
1600
+ check_type(argname="argument valkey_lfu_decay_time", value=valkey_lfu_decay_time, expected_type=type_hints["valkey_lfu_decay_time"])
1601
+ check_type(argname="argument valkey_lfu_log_factor", value=valkey_lfu_log_factor, expected_type=type_hints["valkey_lfu_log_factor"])
1602
+ check_type(argname="argument valkey_maxmemory_policy", value=valkey_maxmemory_policy, expected_type=type_hints["valkey_maxmemory_policy"])
1603
+ check_type(argname="argument valkey_notify_keyspace_events", value=valkey_notify_keyspace_events, expected_type=type_hints["valkey_notify_keyspace_events"])
1604
+ check_type(argname="argument valkey_number_of_databases", value=valkey_number_of_databases, expected_type=type_hints["valkey_number_of_databases"])
1605
+ check_type(argname="argument valkey_persistence", value=valkey_persistence, expected_type=type_hints["valkey_persistence"])
1606
+ check_type(argname="argument valkey_pubsub_client_output_buffer_limit", value=valkey_pubsub_client_output_buffer_limit, expected_type=type_hints["valkey_pubsub_client_output_buffer_limit"])
1607
+ check_type(argname="argument valkey_ssl", value=valkey_ssl, expected_type=type_hints["valkey_ssl"])
1608
+ check_type(argname="argument valkey_timeout", value=valkey_timeout, expected_type=type_hints["valkey_timeout"])
1609
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1610
+ if automatic_utility_network_ip_filter is not None:
1611
+ self._values["automatic_utility_network_ip_filter"] = automatic_utility_network_ip_filter
1612
+ if backup_hour is not None:
1613
+ self._values["backup_hour"] = backup_hour
1614
+ if backup_minute is not None:
1615
+ self._values["backup_minute"] = backup_minute
1616
+ if frequent_snapshots is not None:
1617
+ self._values["frequent_snapshots"] = frequent_snapshots
1618
+ if ip_filter is not None:
1619
+ self._values["ip_filter"] = ip_filter
1620
+ if migration is not None:
1621
+ self._values["migration"] = migration
1622
+ if public_access is not None:
1623
+ self._values["public_access"] = public_access
1624
+ if service_log is not None:
1625
+ self._values["service_log"] = service_log
1626
+ if valkey_acl_channels_default is not None:
1627
+ self._values["valkey_acl_channels_default"] = valkey_acl_channels_default
1628
+ if valkey_active_expire_effort is not None:
1629
+ self._values["valkey_active_expire_effort"] = valkey_active_expire_effort
1630
+ if valkey_io_threads is not None:
1631
+ self._values["valkey_io_threads"] = valkey_io_threads
1632
+ if valkey_lfu_decay_time is not None:
1633
+ self._values["valkey_lfu_decay_time"] = valkey_lfu_decay_time
1634
+ if valkey_lfu_log_factor is not None:
1635
+ self._values["valkey_lfu_log_factor"] = valkey_lfu_log_factor
1636
+ if valkey_maxmemory_policy is not None:
1637
+ self._values["valkey_maxmemory_policy"] = valkey_maxmemory_policy
1638
+ if valkey_notify_keyspace_events is not None:
1639
+ self._values["valkey_notify_keyspace_events"] = valkey_notify_keyspace_events
1640
+ if valkey_number_of_databases is not None:
1641
+ self._values["valkey_number_of_databases"] = valkey_number_of_databases
1642
+ if valkey_persistence is not None:
1643
+ self._values["valkey_persistence"] = valkey_persistence
1644
+ if valkey_pubsub_client_output_buffer_limit is not None:
1645
+ self._values["valkey_pubsub_client_output_buffer_limit"] = valkey_pubsub_client_output_buffer_limit
1646
+ if valkey_ssl is not None:
1647
+ self._values["valkey_ssl"] = valkey_ssl
1648
+ if valkey_timeout is not None:
1649
+ self._values["valkey_timeout"] = valkey_timeout
1650
+
1651
+ @builtins.property
1652
+ def automatic_utility_network_ip_filter(
1653
+ self,
1654
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1655
+ '''Automatic utility network IP Filter. Automatically allow connections from servers in the utility network within the same zone.
1656
+
1657
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#automatic_utility_network_ip_filter ManagedDatabaseValkey#automatic_utility_network_ip_filter}
1658
+ '''
1659
+ result = self._values.get("automatic_utility_network_ip_filter")
1660
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1661
+
1662
+ @builtins.property
1663
+ def backup_hour(self) -> typing.Optional[jsii.Number]:
1664
+ '''The hour of day (in UTC) when backup for the service is started.
1665
+
1666
+ New backup is only started if previous backup has already completed.
1667
+
1668
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#backup_hour ManagedDatabaseValkey#backup_hour}
1669
+ '''
1670
+ result = self._values.get("backup_hour")
1671
+ return typing.cast(typing.Optional[jsii.Number], result)
1672
+
1673
+ @builtins.property
1674
+ def backup_minute(self) -> typing.Optional[jsii.Number]:
1675
+ '''The minute of an hour when backup for the service is started.
1676
+
1677
+ New backup is only started if previous backup has already completed.
1678
+
1679
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#backup_minute ManagedDatabaseValkey#backup_minute}
1680
+ '''
1681
+ result = self._values.get("backup_minute")
1682
+ return typing.cast(typing.Optional[jsii.Number], result)
1683
+
1684
+ @builtins.property
1685
+ def frequent_snapshots(
1686
+ self,
1687
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1688
+ '''Frequent RDB snapshots.
1689
+
1690
+ When enabled, Valkey will create frequent local RDB snapshots. When disabled, Valkey will only take RDB snapshots when a backup is created, based on the backup schedule. This setting is ignored when ``valkey_persistence`` is set to ``off``.
1691
+
1692
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#frequent_snapshots ManagedDatabaseValkey#frequent_snapshots}
1693
+ '''
1694
+ result = self._values.get("frequent_snapshots")
1695
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1696
+
1697
+ @builtins.property
1698
+ def ip_filter(self) -> typing.Optional[typing.List[builtins.str]]:
1699
+ '''IP filter. Allow incoming connections from CIDR address block, e.g. '10.20.0.0/16'.
1700
+
1701
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ip_filter ManagedDatabaseValkey#ip_filter}
1702
+ '''
1703
+ result = self._values.get("ip_filter")
1704
+ return typing.cast(typing.Optional[typing.List[builtins.str]], result)
1705
+
1706
+ @builtins.property
1707
+ def migration(self) -> typing.Optional["ManagedDatabaseValkeyPropertiesMigration"]:
1708
+ '''migration block.
1709
+
1710
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#migration ManagedDatabaseValkey#migration}
1711
+ '''
1712
+ result = self._values.get("migration")
1713
+ return typing.cast(typing.Optional["ManagedDatabaseValkeyPropertiesMigration"], result)
1714
+
1715
+ @builtins.property
1716
+ def public_access(
1717
+ self,
1718
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1719
+ '''Public Access. Allow access to the service from the public Internet.
1720
+
1721
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#public_access ManagedDatabaseValkey#public_access}
1722
+ '''
1723
+ result = self._values.get("public_access")
1724
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1725
+
1726
+ @builtins.property
1727
+ def service_log(
1728
+ self,
1729
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1730
+ '''Service logging. Store logs for the service so that they are available in the HTTP API and console.
1731
+
1732
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#service_log ManagedDatabaseValkey#service_log}
1733
+ '''
1734
+ result = self._values.get("service_log")
1735
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1736
+
1737
+ @builtins.property
1738
+ def valkey_acl_channels_default(self) -> typing.Optional[builtins.str]:
1739
+ '''Default ACL for pub/sub channels used when a Valkey user is created.
1740
+
1741
+ Determines default pub/sub channels' ACL for new users if ACL is not supplied. When this option is not defined, all_channels is assumed to keep backward compatibility. This option doesn't affect Valkey configuration acl-pubsub-default.
1742
+
1743
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_acl_channels_default ManagedDatabaseValkey#valkey_acl_channels_default}
1744
+ '''
1745
+ result = self._values.get("valkey_acl_channels_default")
1746
+ return typing.cast(typing.Optional[builtins.str], result)
1747
+
1748
+ @builtins.property
1749
+ def valkey_active_expire_effort(self) -> typing.Optional[jsii.Number]:
1750
+ '''Active expire effort.
1751
+
1752
+ Valkey reclaims expired keys both when accessed and in the background. The background process scans for expired keys to free memory. Increasing the active-expire-effort setting (default 1, max 10) uses more CPU to reclaim expired keys faster, reducing memory usage but potentially increasing latency.
1753
+
1754
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_active_expire_effort ManagedDatabaseValkey#valkey_active_expire_effort}
1755
+ '''
1756
+ result = self._values.get("valkey_active_expire_effort")
1757
+ return typing.cast(typing.Optional[jsii.Number], result)
1758
+
1759
+ @builtins.property
1760
+ def valkey_io_threads(self) -> typing.Optional[jsii.Number]:
1761
+ '''Valkey IO thread count. Set Valkey IO thread count. Changing this will cause a restart of the Valkey service.
1762
+
1763
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_io_threads ManagedDatabaseValkey#valkey_io_threads}
1764
+ '''
1765
+ result = self._values.get("valkey_io_threads")
1766
+ return typing.cast(typing.Optional[jsii.Number], result)
1767
+
1768
+ @builtins.property
1769
+ def valkey_lfu_decay_time(self) -> typing.Optional[jsii.Number]:
1770
+ '''LFU maxmemory-policy counter decay time in minutes.
1771
+
1772
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_lfu_decay_time ManagedDatabaseValkey#valkey_lfu_decay_time}
1773
+ '''
1774
+ result = self._values.get("valkey_lfu_decay_time")
1775
+ return typing.cast(typing.Optional[jsii.Number], result)
1776
+
1777
+ @builtins.property
1778
+ def valkey_lfu_log_factor(self) -> typing.Optional[jsii.Number]:
1779
+ '''Counter logarithm factor for volatile-lfu and allkeys-lfu maxmemory-policies.
1780
+
1781
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_lfu_log_factor ManagedDatabaseValkey#valkey_lfu_log_factor}
1782
+ '''
1783
+ result = self._values.get("valkey_lfu_log_factor")
1784
+ return typing.cast(typing.Optional[jsii.Number], result)
1785
+
1786
+ @builtins.property
1787
+ def valkey_maxmemory_policy(self) -> typing.Optional[builtins.str]:
1788
+ '''Valkey maxmemory-policy.
1789
+
1790
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_maxmemory_policy ManagedDatabaseValkey#valkey_maxmemory_policy}
1791
+ '''
1792
+ result = self._values.get("valkey_maxmemory_policy")
1793
+ return typing.cast(typing.Optional[builtins.str], result)
1794
+
1795
+ @builtins.property
1796
+ def valkey_notify_keyspace_events(self) -> typing.Optional[builtins.str]:
1797
+ '''Set notify-keyspace-events option.
1798
+
1799
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_notify_keyspace_events ManagedDatabaseValkey#valkey_notify_keyspace_events}
1800
+ '''
1801
+ result = self._values.get("valkey_notify_keyspace_events")
1802
+ return typing.cast(typing.Optional[builtins.str], result)
1803
+
1804
+ @builtins.property
1805
+ def valkey_number_of_databases(self) -> typing.Optional[jsii.Number]:
1806
+ '''Number of Valkey databases. Set number of Valkey databases. Changing this will cause a restart of the Valkey service.
1807
+
1808
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_number_of_databases ManagedDatabaseValkey#valkey_number_of_databases}
1809
+ '''
1810
+ result = self._values.get("valkey_number_of_databases")
1811
+ return typing.cast(typing.Optional[jsii.Number], result)
1812
+
1813
+ @builtins.property
1814
+ def valkey_persistence(self) -> typing.Optional[builtins.str]:
1815
+ '''Valkey persistence.
1816
+
1817
+ When persistence is 'rdb', Valkey does RDB dumps each 10 minutes if any key is changed. Also RDB dumps are done according to backup schedule for backup purposes. When persistence is 'off', no RDB dumps and backups are done, so data can be lost at any moment if service is restarted for any reason, or if service is powered off. Also service can't be forked.
1818
+
1819
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_persistence ManagedDatabaseValkey#valkey_persistence}
1820
+ '''
1821
+ result = self._values.get("valkey_persistence")
1822
+ return typing.cast(typing.Optional[builtins.str], result)
1823
+
1824
+ @builtins.property
1825
+ def valkey_pubsub_client_output_buffer_limit(self) -> typing.Optional[jsii.Number]:
1826
+ '''Pub/sub client output buffer hard limit in MB.
1827
+
1828
+ Set output buffer limit for pub / sub clients in MB. The value is the hard limit, the soft limit is 1/4 of the hard limit. When setting the limit, be mindful of the available memory in the selected service plan.
1829
+
1830
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_pubsub_client_output_buffer_limit ManagedDatabaseValkey#valkey_pubsub_client_output_buffer_limit}
1831
+ '''
1832
+ result = self._values.get("valkey_pubsub_client_output_buffer_limit")
1833
+ return typing.cast(typing.Optional[jsii.Number], result)
1834
+
1835
+ @builtins.property
1836
+ def valkey_ssl(
1837
+ self,
1838
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
1839
+ '''Require SSL to access Valkey.
1840
+
1841
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_ssl ManagedDatabaseValkey#valkey_ssl}
1842
+ '''
1843
+ result = self._values.get("valkey_ssl")
1844
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
1845
+
1846
+ @builtins.property
1847
+ def valkey_timeout(self) -> typing.Optional[jsii.Number]:
1848
+ '''Valkey idle connection timeout in seconds.
1849
+
1850
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#valkey_timeout ManagedDatabaseValkey#valkey_timeout}
1851
+ '''
1852
+ result = self._values.get("valkey_timeout")
1853
+ return typing.cast(typing.Optional[jsii.Number], result)
1854
+
1855
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
1856
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
1857
+
1858
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
1859
+ return not (rhs == self)
1860
+
1861
+ def __repr__(self) -> str:
1862
+ return "ManagedDatabaseValkeyProperties(%s)" % ", ".join(
1863
+ k + "=" + repr(v) for k, v in self._values.items()
1864
+ )
1865
+
1866
+
1867
+ @jsii.data_type(
1868
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyPropertiesMigration",
1869
+ jsii_struct_bases=[],
1870
+ name_mapping={
1871
+ "dbname": "dbname",
1872
+ "host": "host",
1873
+ "ignore_dbs": "ignoreDbs",
1874
+ "ignore_roles": "ignoreRoles",
1875
+ "method": "method",
1876
+ "password": "password",
1877
+ "port": "port",
1878
+ "ssl": "ssl",
1879
+ "username": "username",
1880
+ },
1881
+ )
1882
+ class ManagedDatabaseValkeyPropertiesMigration:
1883
+ def __init__(
1884
+ self,
1885
+ *,
1886
+ dbname: typing.Optional[builtins.str] = None,
1887
+ host: typing.Optional[builtins.str] = None,
1888
+ ignore_dbs: typing.Optional[builtins.str] = None,
1889
+ ignore_roles: typing.Optional[builtins.str] = None,
1890
+ method: typing.Optional[builtins.str] = None,
1891
+ password: typing.Optional[builtins.str] = None,
1892
+ port: typing.Optional[jsii.Number] = None,
1893
+ ssl: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
1894
+ username: typing.Optional[builtins.str] = None,
1895
+ ) -> None:
1896
+ '''
1897
+ :param dbname: Database name for bootstrapping the initial connection. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#dbname ManagedDatabaseValkey#dbname}
1898
+ :param host: Hostname or IP address of the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#host ManagedDatabaseValkey#host}
1899
+ :param ignore_dbs: Comma-separated list of databases, which should be ignored during migration (supported by MySQL and PostgreSQL only at the moment). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ignore_dbs ManagedDatabaseValkey#ignore_dbs}
1900
+ :param ignore_roles: Comma-separated list of database roles, which should be ignored during migration (supported by PostgreSQL only at the moment). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ignore_roles ManagedDatabaseValkey#ignore_roles}
1901
+ :param method: The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#method ManagedDatabaseValkey#method}
1902
+ :param password: Password for authentication with the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#password ManagedDatabaseValkey#password}
1903
+ :param port: Port number of the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#port ManagedDatabaseValkey#port}
1904
+ :param ssl: The server where to migrate data from is secured with SSL. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ssl ManagedDatabaseValkey#ssl}
1905
+ :param username: User name for authentication with the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#username ManagedDatabaseValkey#username}
1906
+ '''
1907
+ if __debug__:
1908
+ type_hints = typing.get_type_hints(_typecheckingstub__79d93789bda00eb59095ff4b93fc8d576f547960656fc2c2b20cdd46b3842774)
1909
+ check_type(argname="argument dbname", value=dbname, expected_type=type_hints["dbname"])
1910
+ check_type(argname="argument host", value=host, expected_type=type_hints["host"])
1911
+ check_type(argname="argument ignore_dbs", value=ignore_dbs, expected_type=type_hints["ignore_dbs"])
1912
+ check_type(argname="argument ignore_roles", value=ignore_roles, expected_type=type_hints["ignore_roles"])
1913
+ check_type(argname="argument method", value=method, expected_type=type_hints["method"])
1914
+ check_type(argname="argument password", value=password, expected_type=type_hints["password"])
1915
+ check_type(argname="argument port", value=port, expected_type=type_hints["port"])
1916
+ check_type(argname="argument ssl", value=ssl, expected_type=type_hints["ssl"])
1917
+ check_type(argname="argument username", value=username, expected_type=type_hints["username"])
1918
+ self._values: typing.Dict[builtins.str, typing.Any] = {}
1919
+ if dbname is not None:
1920
+ self._values["dbname"] = dbname
1921
+ if host is not None:
1922
+ self._values["host"] = host
1923
+ if ignore_dbs is not None:
1924
+ self._values["ignore_dbs"] = ignore_dbs
1925
+ if ignore_roles is not None:
1926
+ self._values["ignore_roles"] = ignore_roles
1927
+ if method is not None:
1928
+ self._values["method"] = method
1929
+ if password is not None:
1930
+ self._values["password"] = password
1931
+ if port is not None:
1932
+ self._values["port"] = port
1933
+ if ssl is not None:
1934
+ self._values["ssl"] = ssl
1935
+ if username is not None:
1936
+ self._values["username"] = username
1937
+
1938
+ @builtins.property
1939
+ def dbname(self) -> typing.Optional[builtins.str]:
1940
+ '''Database name for bootstrapping the initial connection.
1941
+
1942
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#dbname ManagedDatabaseValkey#dbname}
1943
+ '''
1944
+ result = self._values.get("dbname")
1945
+ return typing.cast(typing.Optional[builtins.str], result)
1946
+
1947
+ @builtins.property
1948
+ def host(self) -> typing.Optional[builtins.str]:
1949
+ '''Hostname or IP address of the server where to migrate data from.
1950
+
1951
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#host ManagedDatabaseValkey#host}
1952
+ '''
1953
+ result = self._values.get("host")
1954
+ return typing.cast(typing.Optional[builtins.str], result)
1955
+
1956
+ @builtins.property
1957
+ def ignore_dbs(self) -> typing.Optional[builtins.str]:
1958
+ '''Comma-separated list of databases, which should be ignored during migration (supported by MySQL and PostgreSQL only at the moment).
1959
+
1960
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ignore_dbs ManagedDatabaseValkey#ignore_dbs}
1961
+ '''
1962
+ result = self._values.get("ignore_dbs")
1963
+ return typing.cast(typing.Optional[builtins.str], result)
1964
+
1965
+ @builtins.property
1966
+ def ignore_roles(self) -> typing.Optional[builtins.str]:
1967
+ '''Comma-separated list of database roles, which should be ignored during migration (supported by PostgreSQL only at the moment).
1968
+
1969
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ignore_roles ManagedDatabaseValkey#ignore_roles}
1970
+ '''
1971
+ result = self._values.get("ignore_roles")
1972
+ return typing.cast(typing.Optional[builtins.str], result)
1973
+
1974
+ @builtins.property
1975
+ def method(self) -> typing.Optional[builtins.str]:
1976
+ '''The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types).
1977
+
1978
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#method ManagedDatabaseValkey#method}
1979
+ '''
1980
+ result = self._values.get("method")
1981
+ return typing.cast(typing.Optional[builtins.str], result)
1982
+
1983
+ @builtins.property
1984
+ def password(self) -> typing.Optional[builtins.str]:
1985
+ '''Password for authentication with the server where to migrate data from.
1986
+
1987
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#password ManagedDatabaseValkey#password}
1988
+ '''
1989
+ result = self._values.get("password")
1990
+ return typing.cast(typing.Optional[builtins.str], result)
1991
+
1992
+ @builtins.property
1993
+ def port(self) -> typing.Optional[jsii.Number]:
1994
+ '''Port number of the server where to migrate data from.
1995
+
1996
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#port ManagedDatabaseValkey#port}
1997
+ '''
1998
+ result = self._values.get("port")
1999
+ return typing.cast(typing.Optional[jsii.Number], result)
2000
+
2001
+ @builtins.property
2002
+ def ssl(
2003
+ self,
2004
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2005
+ '''The server where to migrate data from is secured with SSL.
2006
+
2007
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ssl ManagedDatabaseValkey#ssl}
2008
+ '''
2009
+ result = self._values.get("ssl")
2010
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], result)
2011
+
2012
+ @builtins.property
2013
+ def username(self) -> typing.Optional[builtins.str]:
2014
+ '''User name for authentication with the server where to migrate data from.
2015
+
2016
+ Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#username ManagedDatabaseValkey#username}
2017
+ '''
2018
+ result = self._values.get("username")
2019
+ return typing.cast(typing.Optional[builtins.str], result)
2020
+
2021
+ def __eq__(self, rhs: typing.Any) -> builtins.bool:
2022
+ return isinstance(rhs, self.__class__) and rhs._values == self._values
2023
+
2024
+ def __ne__(self, rhs: typing.Any) -> builtins.bool:
2025
+ return not (rhs == self)
2026
+
2027
+ def __repr__(self) -> str:
2028
+ return "ManagedDatabaseValkeyPropertiesMigration(%s)" % ", ".join(
2029
+ k + "=" + repr(v) for k, v in self._values.items()
2030
+ )
2031
+
2032
+
2033
+ class ManagedDatabaseValkeyPropertiesMigrationOutputReference(
2034
+ _cdktf_9a9027ec.ComplexObject,
2035
+ metaclass=jsii.JSIIMeta,
2036
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyPropertiesMigrationOutputReference",
2037
+ ):
2038
+ def __init__(
2039
+ self,
2040
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
2041
+ terraform_attribute: builtins.str,
2042
+ ) -> None:
2043
+ '''
2044
+ :param terraform_resource: The parent resource.
2045
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
2046
+ '''
2047
+ if __debug__:
2048
+ type_hints = typing.get_type_hints(_typecheckingstub__653b9500142dcaaa00ba3451c2ff31751e33552cb8092bcd3c7cdc2da14e47cd)
2049
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
2050
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
2051
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute])
2052
+
2053
+ @jsii.member(jsii_name="resetDbname")
2054
+ def reset_dbname(self) -> None:
2055
+ return typing.cast(None, jsii.invoke(self, "resetDbname", []))
2056
+
2057
+ @jsii.member(jsii_name="resetHost")
2058
+ def reset_host(self) -> None:
2059
+ return typing.cast(None, jsii.invoke(self, "resetHost", []))
2060
+
2061
+ @jsii.member(jsii_name="resetIgnoreDbs")
2062
+ def reset_ignore_dbs(self) -> None:
2063
+ return typing.cast(None, jsii.invoke(self, "resetIgnoreDbs", []))
2064
+
2065
+ @jsii.member(jsii_name="resetIgnoreRoles")
2066
+ def reset_ignore_roles(self) -> None:
2067
+ return typing.cast(None, jsii.invoke(self, "resetIgnoreRoles", []))
2068
+
2069
+ @jsii.member(jsii_name="resetMethod")
2070
+ def reset_method(self) -> None:
2071
+ return typing.cast(None, jsii.invoke(self, "resetMethod", []))
2072
+
2073
+ @jsii.member(jsii_name="resetPassword")
2074
+ def reset_password(self) -> None:
2075
+ return typing.cast(None, jsii.invoke(self, "resetPassword", []))
2076
+
2077
+ @jsii.member(jsii_name="resetPort")
2078
+ def reset_port(self) -> None:
2079
+ return typing.cast(None, jsii.invoke(self, "resetPort", []))
2080
+
2081
+ @jsii.member(jsii_name="resetSsl")
2082
+ def reset_ssl(self) -> None:
2083
+ return typing.cast(None, jsii.invoke(self, "resetSsl", []))
2084
+
2085
+ @jsii.member(jsii_name="resetUsername")
2086
+ def reset_username(self) -> None:
2087
+ return typing.cast(None, jsii.invoke(self, "resetUsername", []))
2088
+
2089
+ @builtins.property
2090
+ @jsii.member(jsii_name="dbnameInput")
2091
+ def dbname_input(self) -> typing.Optional[builtins.str]:
2092
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "dbnameInput"))
2093
+
2094
+ @builtins.property
2095
+ @jsii.member(jsii_name="hostInput")
2096
+ def host_input(self) -> typing.Optional[builtins.str]:
2097
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "hostInput"))
2098
+
2099
+ @builtins.property
2100
+ @jsii.member(jsii_name="ignoreDbsInput")
2101
+ def ignore_dbs_input(self) -> typing.Optional[builtins.str]:
2102
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "ignoreDbsInput"))
2103
+
2104
+ @builtins.property
2105
+ @jsii.member(jsii_name="ignoreRolesInput")
2106
+ def ignore_roles_input(self) -> typing.Optional[builtins.str]:
2107
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "ignoreRolesInput"))
2108
+
2109
+ @builtins.property
2110
+ @jsii.member(jsii_name="methodInput")
2111
+ def method_input(self) -> typing.Optional[builtins.str]:
2112
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "methodInput"))
2113
+
2114
+ @builtins.property
2115
+ @jsii.member(jsii_name="passwordInput")
2116
+ def password_input(self) -> typing.Optional[builtins.str]:
2117
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "passwordInput"))
2118
+
2119
+ @builtins.property
2120
+ @jsii.member(jsii_name="portInput")
2121
+ def port_input(self) -> typing.Optional[jsii.Number]:
2122
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "portInput"))
2123
+
2124
+ @builtins.property
2125
+ @jsii.member(jsii_name="sslInput")
2126
+ def ssl_input(
2127
+ self,
2128
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2129
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "sslInput"))
2130
+
2131
+ @builtins.property
2132
+ @jsii.member(jsii_name="usernameInput")
2133
+ def username_input(self) -> typing.Optional[builtins.str]:
2134
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "usernameInput"))
2135
+
2136
+ @builtins.property
2137
+ @jsii.member(jsii_name="dbname")
2138
+ def dbname(self) -> builtins.str:
2139
+ return typing.cast(builtins.str, jsii.get(self, "dbname"))
2140
+
2141
+ @dbname.setter
2142
+ def dbname(self, value: builtins.str) -> None:
2143
+ if __debug__:
2144
+ type_hints = typing.get_type_hints(_typecheckingstub__1314b6cb90839f64d1e6b134d07633136410e75b81032064900446b8247729d5)
2145
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2146
+ jsii.set(self, "dbname", value) # pyright: ignore[reportArgumentType]
2147
+
2148
+ @builtins.property
2149
+ @jsii.member(jsii_name="host")
2150
+ def host(self) -> builtins.str:
2151
+ return typing.cast(builtins.str, jsii.get(self, "host"))
2152
+
2153
+ @host.setter
2154
+ def host(self, value: builtins.str) -> None:
2155
+ if __debug__:
2156
+ type_hints = typing.get_type_hints(_typecheckingstub__76243e98f6cb500875bf56e8d226c15068248549c3ecd1b38c8ae49ffcdd0c65)
2157
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2158
+ jsii.set(self, "host", value) # pyright: ignore[reportArgumentType]
2159
+
2160
+ @builtins.property
2161
+ @jsii.member(jsii_name="ignoreDbs")
2162
+ def ignore_dbs(self) -> builtins.str:
2163
+ return typing.cast(builtins.str, jsii.get(self, "ignoreDbs"))
2164
+
2165
+ @ignore_dbs.setter
2166
+ def ignore_dbs(self, value: builtins.str) -> None:
2167
+ if __debug__:
2168
+ type_hints = typing.get_type_hints(_typecheckingstub__162cd0275fe93ffc0222678a946ecd079acd01731fd60103ce60dd5b536809be)
2169
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2170
+ jsii.set(self, "ignoreDbs", value) # pyright: ignore[reportArgumentType]
2171
+
2172
+ @builtins.property
2173
+ @jsii.member(jsii_name="ignoreRoles")
2174
+ def ignore_roles(self) -> builtins.str:
2175
+ return typing.cast(builtins.str, jsii.get(self, "ignoreRoles"))
2176
+
2177
+ @ignore_roles.setter
2178
+ def ignore_roles(self, value: builtins.str) -> None:
2179
+ if __debug__:
2180
+ type_hints = typing.get_type_hints(_typecheckingstub__a6fdf035c2bfaaf78851ed75b4776ecfc0280916d034d8d88e5c518b4d31606e)
2181
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2182
+ jsii.set(self, "ignoreRoles", value) # pyright: ignore[reportArgumentType]
2183
+
2184
+ @builtins.property
2185
+ @jsii.member(jsii_name="method")
2186
+ def method(self) -> builtins.str:
2187
+ return typing.cast(builtins.str, jsii.get(self, "method"))
2188
+
2189
+ @method.setter
2190
+ def method(self, value: builtins.str) -> None:
2191
+ if __debug__:
2192
+ type_hints = typing.get_type_hints(_typecheckingstub__e35e85c39397173d3e45859019af030a0c6b4ceaa3a4e544f90652fddaec8daf)
2193
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2194
+ jsii.set(self, "method", value) # pyright: ignore[reportArgumentType]
2195
+
2196
+ @builtins.property
2197
+ @jsii.member(jsii_name="password")
2198
+ def password(self) -> builtins.str:
2199
+ return typing.cast(builtins.str, jsii.get(self, "password"))
2200
+
2201
+ @password.setter
2202
+ def password(self, value: builtins.str) -> None:
2203
+ if __debug__:
2204
+ type_hints = typing.get_type_hints(_typecheckingstub__662e37d640a89c81978ab1bc6760bef1547ed14b8359ccf76d5f8c5ba2c1ca85)
2205
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2206
+ jsii.set(self, "password", value) # pyright: ignore[reportArgumentType]
2207
+
2208
+ @builtins.property
2209
+ @jsii.member(jsii_name="port")
2210
+ def port(self) -> jsii.Number:
2211
+ return typing.cast(jsii.Number, jsii.get(self, "port"))
2212
+
2213
+ @port.setter
2214
+ def port(self, value: jsii.Number) -> None:
2215
+ if __debug__:
2216
+ type_hints = typing.get_type_hints(_typecheckingstub__af55c31711e4f7afee55e9eb3357116e63b64c1178aa20a3b34caff9e7d36c63)
2217
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2218
+ jsii.set(self, "port", value) # pyright: ignore[reportArgumentType]
2219
+
2220
+ @builtins.property
2221
+ @jsii.member(jsii_name="ssl")
2222
+ def ssl(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
2223
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "ssl"))
2224
+
2225
+ @ssl.setter
2226
+ def ssl(
2227
+ self,
2228
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2229
+ ) -> None:
2230
+ if __debug__:
2231
+ type_hints = typing.get_type_hints(_typecheckingstub__f483e3934be4c35439acb518122bb176bb613a0bb411d2384a025b2fe6dbaa40)
2232
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2233
+ jsii.set(self, "ssl", value) # pyright: ignore[reportArgumentType]
2234
+
2235
+ @builtins.property
2236
+ @jsii.member(jsii_name="username")
2237
+ def username(self) -> builtins.str:
2238
+ return typing.cast(builtins.str, jsii.get(self, "username"))
2239
+
2240
+ @username.setter
2241
+ def username(self, value: builtins.str) -> None:
2242
+ if __debug__:
2243
+ type_hints = typing.get_type_hints(_typecheckingstub__6a34f9da5159916189640a32002175c4e592ba0b30620af992ca26e34a7aa9aa)
2244
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2245
+ jsii.set(self, "username", value) # pyright: ignore[reportArgumentType]
2246
+
2247
+ @builtins.property
2248
+ @jsii.member(jsii_name="internalValue")
2249
+ def internal_value(
2250
+ self,
2251
+ ) -> typing.Optional[ManagedDatabaseValkeyPropertiesMigration]:
2252
+ return typing.cast(typing.Optional[ManagedDatabaseValkeyPropertiesMigration], jsii.get(self, "internalValue"))
2253
+
2254
+ @internal_value.setter
2255
+ def internal_value(
2256
+ self,
2257
+ value: typing.Optional[ManagedDatabaseValkeyPropertiesMigration],
2258
+ ) -> None:
2259
+ if __debug__:
2260
+ type_hints = typing.get_type_hints(_typecheckingstub__1793c40b292b55abd22e900135f7fb7177ba88955948317e0f8e1140a8fd6bb9)
2261
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2262
+ jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
2263
+
2264
+
2265
+ class ManagedDatabaseValkeyPropertiesOutputReference(
2266
+ _cdktf_9a9027ec.ComplexObject,
2267
+ metaclass=jsii.JSIIMeta,
2268
+ jsii_type="@cdktf/provider-upcloud.managedDatabaseValkey.ManagedDatabaseValkeyPropertiesOutputReference",
2269
+ ):
2270
+ def __init__(
2271
+ self,
2272
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
2273
+ terraform_attribute: builtins.str,
2274
+ ) -> None:
2275
+ '''
2276
+ :param terraform_resource: The parent resource.
2277
+ :param terraform_attribute: The attribute on the parent resource this class is referencing.
2278
+ '''
2279
+ if __debug__:
2280
+ type_hints = typing.get_type_hints(_typecheckingstub__55792d3e90a4aee66c1699f91bdcfb7f0f4fdd7ccf76213d91486a87ffeb6e7f)
2281
+ check_type(argname="argument terraform_resource", value=terraform_resource, expected_type=type_hints["terraform_resource"])
2282
+ check_type(argname="argument terraform_attribute", value=terraform_attribute, expected_type=type_hints["terraform_attribute"])
2283
+ jsii.create(self.__class__, self, [terraform_resource, terraform_attribute])
2284
+
2285
+ @jsii.member(jsii_name="putMigration")
2286
+ def put_migration(
2287
+ self,
2288
+ *,
2289
+ dbname: typing.Optional[builtins.str] = None,
2290
+ host: typing.Optional[builtins.str] = None,
2291
+ ignore_dbs: typing.Optional[builtins.str] = None,
2292
+ ignore_roles: typing.Optional[builtins.str] = None,
2293
+ method: typing.Optional[builtins.str] = None,
2294
+ password: typing.Optional[builtins.str] = None,
2295
+ port: typing.Optional[jsii.Number] = None,
2296
+ ssl: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
2297
+ username: typing.Optional[builtins.str] = None,
2298
+ ) -> None:
2299
+ '''
2300
+ :param dbname: Database name for bootstrapping the initial connection. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#dbname ManagedDatabaseValkey#dbname}
2301
+ :param host: Hostname or IP address of the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#host ManagedDatabaseValkey#host}
2302
+ :param ignore_dbs: Comma-separated list of databases, which should be ignored during migration (supported by MySQL and PostgreSQL only at the moment). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ignore_dbs ManagedDatabaseValkey#ignore_dbs}
2303
+ :param ignore_roles: Comma-separated list of database roles, which should be ignored during migration (supported by PostgreSQL only at the moment). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ignore_roles ManagedDatabaseValkey#ignore_roles}
2304
+ :param method: The migration method to be used (currently supported only by Redis, Dragonfly, MySQL and PostgreSQL service types). Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#method ManagedDatabaseValkey#method}
2305
+ :param password: Password for authentication with the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#password ManagedDatabaseValkey#password}
2306
+ :param port: Port number of the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#port ManagedDatabaseValkey#port}
2307
+ :param ssl: The server where to migrate data from is secured with SSL. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#ssl ManagedDatabaseValkey#ssl}
2308
+ :param username: User name for authentication with the server where to migrate data from. Docs at Terraform Registry: {@link https://registry.terraform.io/providers/upcloudltd/upcloud/5.31.0/docs/resources/managed_database_valkey#username ManagedDatabaseValkey#username}
2309
+ '''
2310
+ value = ManagedDatabaseValkeyPropertiesMigration(
2311
+ dbname=dbname,
2312
+ host=host,
2313
+ ignore_dbs=ignore_dbs,
2314
+ ignore_roles=ignore_roles,
2315
+ method=method,
2316
+ password=password,
2317
+ port=port,
2318
+ ssl=ssl,
2319
+ username=username,
2320
+ )
2321
+
2322
+ return typing.cast(None, jsii.invoke(self, "putMigration", [value]))
2323
+
2324
+ @jsii.member(jsii_name="resetAutomaticUtilityNetworkIpFilter")
2325
+ def reset_automatic_utility_network_ip_filter(self) -> None:
2326
+ return typing.cast(None, jsii.invoke(self, "resetAutomaticUtilityNetworkIpFilter", []))
2327
+
2328
+ @jsii.member(jsii_name="resetBackupHour")
2329
+ def reset_backup_hour(self) -> None:
2330
+ return typing.cast(None, jsii.invoke(self, "resetBackupHour", []))
2331
+
2332
+ @jsii.member(jsii_name="resetBackupMinute")
2333
+ def reset_backup_minute(self) -> None:
2334
+ return typing.cast(None, jsii.invoke(self, "resetBackupMinute", []))
2335
+
2336
+ @jsii.member(jsii_name="resetFrequentSnapshots")
2337
+ def reset_frequent_snapshots(self) -> None:
2338
+ return typing.cast(None, jsii.invoke(self, "resetFrequentSnapshots", []))
2339
+
2340
+ @jsii.member(jsii_name="resetIpFilter")
2341
+ def reset_ip_filter(self) -> None:
2342
+ return typing.cast(None, jsii.invoke(self, "resetIpFilter", []))
2343
+
2344
+ @jsii.member(jsii_name="resetMigration")
2345
+ def reset_migration(self) -> None:
2346
+ return typing.cast(None, jsii.invoke(self, "resetMigration", []))
2347
+
2348
+ @jsii.member(jsii_name="resetPublicAccess")
2349
+ def reset_public_access(self) -> None:
2350
+ return typing.cast(None, jsii.invoke(self, "resetPublicAccess", []))
2351
+
2352
+ @jsii.member(jsii_name="resetServiceLog")
2353
+ def reset_service_log(self) -> None:
2354
+ return typing.cast(None, jsii.invoke(self, "resetServiceLog", []))
2355
+
2356
+ @jsii.member(jsii_name="resetValkeyAclChannelsDefault")
2357
+ def reset_valkey_acl_channels_default(self) -> None:
2358
+ return typing.cast(None, jsii.invoke(self, "resetValkeyAclChannelsDefault", []))
2359
+
2360
+ @jsii.member(jsii_name="resetValkeyActiveExpireEffort")
2361
+ def reset_valkey_active_expire_effort(self) -> None:
2362
+ return typing.cast(None, jsii.invoke(self, "resetValkeyActiveExpireEffort", []))
2363
+
2364
+ @jsii.member(jsii_name="resetValkeyIoThreads")
2365
+ def reset_valkey_io_threads(self) -> None:
2366
+ return typing.cast(None, jsii.invoke(self, "resetValkeyIoThreads", []))
2367
+
2368
+ @jsii.member(jsii_name="resetValkeyLfuDecayTime")
2369
+ def reset_valkey_lfu_decay_time(self) -> None:
2370
+ return typing.cast(None, jsii.invoke(self, "resetValkeyLfuDecayTime", []))
2371
+
2372
+ @jsii.member(jsii_name="resetValkeyLfuLogFactor")
2373
+ def reset_valkey_lfu_log_factor(self) -> None:
2374
+ return typing.cast(None, jsii.invoke(self, "resetValkeyLfuLogFactor", []))
2375
+
2376
+ @jsii.member(jsii_name="resetValkeyMaxmemoryPolicy")
2377
+ def reset_valkey_maxmemory_policy(self) -> None:
2378
+ return typing.cast(None, jsii.invoke(self, "resetValkeyMaxmemoryPolicy", []))
2379
+
2380
+ @jsii.member(jsii_name="resetValkeyNotifyKeyspaceEvents")
2381
+ def reset_valkey_notify_keyspace_events(self) -> None:
2382
+ return typing.cast(None, jsii.invoke(self, "resetValkeyNotifyKeyspaceEvents", []))
2383
+
2384
+ @jsii.member(jsii_name="resetValkeyNumberOfDatabases")
2385
+ def reset_valkey_number_of_databases(self) -> None:
2386
+ return typing.cast(None, jsii.invoke(self, "resetValkeyNumberOfDatabases", []))
2387
+
2388
+ @jsii.member(jsii_name="resetValkeyPersistence")
2389
+ def reset_valkey_persistence(self) -> None:
2390
+ return typing.cast(None, jsii.invoke(self, "resetValkeyPersistence", []))
2391
+
2392
+ @jsii.member(jsii_name="resetValkeyPubsubClientOutputBufferLimit")
2393
+ def reset_valkey_pubsub_client_output_buffer_limit(self) -> None:
2394
+ return typing.cast(None, jsii.invoke(self, "resetValkeyPubsubClientOutputBufferLimit", []))
2395
+
2396
+ @jsii.member(jsii_name="resetValkeySsl")
2397
+ def reset_valkey_ssl(self) -> None:
2398
+ return typing.cast(None, jsii.invoke(self, "resetValkeySsl", []))
2399
+
2400
+ @jsii.member(jsii_name="resetValkeyTimeout")
2401
+ def reset_valkey_timeout(self) -> None:
2402
+ return typing.cast(None, jsii.invoke(self, "resetValkeyTimeout", []))
2403
+
2404
+ @builtins.property
2405
+ @jsii.member(jsii_name="migration")
2406
+ def migration(self) -> ManagedDatabaseValkeyPropertiesMigrationOutputReference:
2407
+ return typing.cast(ManagedDatabaseValkeyPropertiesMigrationOutputReference, jsii.get(self, "migration"))
2408
+
2409
+ @builtins.property
2410
+ @jsii.member(jsii_name="automaticUtilityNetworkIpFilterInput")
2411
+ def automatic_utility_network_ip_filter_input(
2412
+ self,
2413
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2414
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "automaticUtilityNetworkIpFilterInput"))
2415
+
2416
+ @builtins.property
2417
+ @jsii.member(jsii_name="backupHourInput")
2418
+ def backup_hour_input(self) -> typing.Optional[jsii.Number]:
2419
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "backupHourInput"))
2420
+
2421
+ @builtins.property
2422
+ @jsii.member(jsii_name="backupMinuteInput")
2423
+ def backup_minute_input(self) -> typing.Optional[jsii.Number]:
2424
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "backupMinuteInput"))
2425
+
2426
+ @builtins.property
2427
+ @jsii.member(jsii_name="frequentSnapshotsInput")
2428
+ def frequent_snapshots_input(
2429
+ self,
2430
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2431
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "frequentSnapshotsInput"))
2432
+
2433
+ @builtins.property
2434
+ @jsii.member(jsii_name="ipFilterInput")
2435
+ def ip_filter_input(self) -> typing.Optional[typing.List[builtins.str]]:
2436
+ return typing.cast(typing.Optional[typing.List[builtins.str]], jsii.get(self, "ipFilterInput"))
2437
+
2438
+ @builtins.property
2439
+ @jsii.member(jsii_name="migrationInput")
2440
+ def migration_input(
2441
+ self,
2442
+ ) -> typing.Optional[ManagedDatabaseValkeyPropertiesMigration]:
2443
+ return typing.cast(typing.Optional[ManagedDatabaseValkeyPropertiesMigration], jsii.get(self, "migrationInput"))
2444
+
2445
+ @builtins.property
2446
+ @jsii.member(jsii_name="publicAccessInput")
2447
+ def public_access_input(
2448
+ self,
2449
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2450
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "publicAccessInput"))
2451
+
2452
+ @builtins.property
2453
+ @jsii.member(jsii_name="serviceLogInput")
2454
+ def service_log_input(
2455
+ self,
2456
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2457
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "serviceLogInput"))
2458
+
2459
+ @builtins.property
2460
+ @jsii.member(jsii_name="valkeyAclChannelsDefaultInput")
2461
+ def valkey_acl_channels_default_input(self) -> typing.Optional[builtins.str]:
2462
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "valkeyAclChannelsDefaultInput"))
2463
+
2464
+ @builtins.property
2465
+ @jsii.member(jsii_name="valkeyActiveExpireEffortInput")
2466
+ def valkey_active_expire_effort_input(self) -> typing.Optional[jsii.Number]:
2467
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyActiveExpireEffortInput"))
2468
+
2469
+ @builtins.property
2470
+ @jsii.member(jsii_name="valkeyIoThreadsInput")
2471
+ def valkey_io_threads_input(self) -> typing.Optional[jsii.Number]:
2472
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyIoThreadsInput"))
2473
+
2474
+ @builtins.property
2475
+ @jsii.member(jsii_name="valkeyLfuDecayTimeInput")
2476
+ def valkey_lfu_decay_time_input(self) -> typing.Optional[jsii.Number]:
2477
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyLfuDecayTimeInput"))
2478
+
2479
+ @builtins.property
2480
+ @jsii.member(jsii_name="valkeyLfuLogFactorInput")
2481
+ def valkey_lfu_log_factor_input(self) -> typing.Optional[jsii.Number]:
2482
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyLfuLogFactorInput"))
2483
+
2484
+ @builtins.property
2485
+ @jsii.member(jsii_name="valkeyMaxmemoryPolicyInput")
2486
+ def valkey_maxmemory_policy_input(self) -> typing.Optional[builtins.str]:
2487
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "valkeyMaxmemoryPolicyInput"))
2488
+
2489
+ @builtins.property
2490
+ @jsii.member(jsii_name="valkeyNotifyKeyspaceEventsInput")
2491
+ def valkey_notify_keyspace_events_input(self) -> typing.Optional[builtins.str]:
2492
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "valkeyNotifyKeyspaceEventsInput"))
2493
+
2494
+ @builtins.property
2495
+ @jsii.member(jsii_name="valkeyNumberOfDatabasesInput")
2496
+ def valkey_number_of_databases_input(self) -> typing.Optional[jsii.Number]:
2497
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyNumberOfDatabasesInput"))
2498
+
2499
+ @builtins.property
2500
+ @jsii.member(jsii_name="valkeyPersistenceInput")
2501
+ def valkey_persistence_input(self) -> typing.Optional[builtins.str]:
2502
+ return typing.cast(typing.Optional[builtins.str], jsii.get(self, "valkeyPersistenceInput"))
2503
+
2504
+ @builtins.property
2505
+ @jsii.member(jsii_name="valkeyPubsubClientOutputBufferLimitInput")
2506
+ def valkey_pubsub_client_output_buffer_limit_input(
2507
+ self,
2508
+ ) -> typing.Optional[jsii.Number]:
2509
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyPubsubClientOutputBufferLimitInput"))
2510
+
2511
+ @builtins.property
2512
+ @jsii.member(jsii_name="valkeySslInput")
2513
+ def valkey_ssl_input(
2514
+ self,
2515
+ ) -> typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]]:
2516
+ return typing.cast(typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]], jsii.get(self, "valkeySslInput"))
2517
+
2518
+ @builtins.property
2519
+ @jsii.member(jsii_name="valkeyTimeoutInput")
2520
+ def valkey_timeout_input(self) -> typing.Optional[jsii.Number]:
2521
+ return typing.cast(typing.Optional[jsii.Number], jsii.get(self, "valkeyTimeoutInput"))
2522
+
2523
+ @builtins.property
2524
+ @jsii.member(jsii_name="automaticUtilityNetworkIpFilter")
2525
+ def automatic_utility_network_ip_filter(
2526
+ self,
2527
+ ) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
2528
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "automaticUtilityNetworkIpFilter"))
2529
+
2530
+ @automatic_utility_network_ip_filter.setter
2531
+ def automatic_utility_network_ip_filter(
2532
+ self,
2533
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2534
+ ) -> None:
2535
+ if __debug__:
2536
+ type_hints = typing.get_type_hints(_typecheckingstub__9c44d89cc2ed32723b08157526a381420fa119892c564fdedde7987c627d199b)
2537
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2538
+ jsii.set(self, "automaticUtilityNetworkIpFilter", value) # pyright: ignore[reportArgumentType]
2539
+
2540
+ @builtins.property
2541
+ @jsii.member(jsii_name="backupHour")
2542
+ def backup_hour(self) -> jsii.Number:
2543
+ return typing.cast(jsii.Number, jsii.get(self, "backupHour"))
2544
+
2545
+ @backup_hour.setter
2546
+ def backup_hour(self, value: jsii.Number) -> None:
2547
+ if __debug__:
2548
+ type_hints = typing.get_type_hints(_typecheckingstub__97fa6c9348419174573baa4a126b6a8e3f160ce4b9144a878e9c0157547f9cc1)
2549
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2550
+ jsii.set(self, "backupHour", value) # pyright: ignore[reportArgumentType]
2551
+
2552
+ @builtins.property
2553
+ @jsii.member(jsii_name="backupMinute")
2554
+ def backup_minute(self) -> jsii.Number:
2555
+ return typing.cast(jsii.Number, jsii.get(self, "backupMinute"))
2556
+
2557
+ @backup_minute.setter
2558
+ def backup_minute(self, value: jsii.Number) -> None:
2559
+ if __debug__:
2560
+ type_hints = typing.get_type_hints(_typecheckingstub__811ddadc48f4551492d04783df1afbc040352a53ea4bee82d0508e3280c3c005)
2561
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2562
+ jsii.set(self, "backupMinute", value) # pyright: ignore[reportArgumentType]
2563
+
2564
+ @builtins.property
2565
+ @jsii.member(jsii_name="frequentSnapshots")
2566
+ def frequent_snapshots(
2567
+ self,
2568
+ ) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
2569
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "frequentSnapshots"))
2570
+
2571
+ @frequent_snapshots.setter
2572
+ def frequent_snapshots(
2573
+ self,
2574
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2575
+ ) -> None:
2576
+ if __debug__:
2577
+ type_hints = typing.get_type_hints(_typecheckingstub__646598e86ca197e938b0074e26a843906c102c1f767561d419d4b508b6dd8ebc)
2578
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2579
+ jsii.set(self, "frequentSnapshots", value) # pyright: ignore[reportArgumentType]
2580
+
2581
+ @builtins.property
2582
+ @jsii.member(jsii_name="ipFilter")
2583
+ def ip_filter(self) -> typing.List[builtins.str]:
2584
+ return typing.cast(typing.List[builtins.str], jsii.get(self, "ipFilter"))
2585
+
2586
+ @ip_filter.setter
2587
+ def ip_filter(self, value: typing.List[builtins.str]) -> None:
2588
+ if __debug__:
2589
+ type_hints = typing.get_type_hints(_typecheckingstub__ef2b45dbaf8564a5828368af43f39e9e9b46f8662d13ce44cef40b45ec56f7db)
2590
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2591
+ jsii.set(self, "ipFilter", value) # pyright: ignore[reportArgumentType]
2592
+
2593
+ @builtins.property
2594
+ @jsii.member(jsii_name="publicAccess")
2595
+ def public_access(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
2596
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "publicAccess"))
2597
+
2598
+ @public_access.setter
2599
+ def public_access(
2600
+ self,
2601
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2602
+ ) -> None:
2603
+ if __debug__:
2604
+ type_hints = typing.get_type_hints(_typecheckingstub__61f81631eb5f8dd781126f6a71849383ca6cb5c401a058533d0c001fdd87e963)
2605
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2606
+ jsii.set(self, "publicAccess", value) # pyright: ignore[reportArgumentType]
2607
+
2608
+ @builtins.property
2609
+ @jsii.member(jsii_name="serviceLog")
2610
+ def service_log(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
2611
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "serviceLog"))
2612
+
2613
+ @service_log.setter
2614
+ def service_log(
2615
+ self,
2616
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2617
+ ) -> None:
2618
+ if __debug__:
2619
+ type_hints = typing.get_type_hints(_typecheckingstub__f875fc8095f055f0ecdfe6f2ab3f46d09111243c7ea6f03961499925bb56f00f)
2620
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2621
+ jsii.set(self, "serviceLog", value) # pyright: ignore[reportArgumentType]
2622
+
2623
+ @builtins.property
2624
+ @jsii.member(jsii_name="valkeyAclChannelsDefault")
2625
+ def valkey_acl_channels_default(self) -> builtins.str:
2626
+ return typing.cast(builtins.str, jsii.get(self, "valkeyAclChannelsDefault"))
2627
+
2628
+ @valkey_acl_channels_default.setter
2629
+ def valkey_acl_channels_default(self, value: builtins.str) -> None:
2630
+ if __debug__:
2631
+ type_hints = typing.get_type_hints(_typecheckingstub__2fe20994370fab9130ba3ce108940f96e8805127e4d82f5b2696c1c8ed479423)
2632
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2633
+ jsii.set(self, "valkeyAclChannelsDefault", value) # pyright: ignore[reportArgumentType]
2634
+
2635
+ @builtins.property
2636
+ @jsii.member(jsii_name="valkeyActiveExpireEffort")
2637
+ def valkey_active_expire_effort(self) -> jsii.Number:
2638
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyActiveExpireEffort"))
2639
+
2640
+ @valkey_active_expire_effort.setter
2641
+ def valkey_active_expire_effort(self, value: jsii.Number) -> None:
2642
+ if __debug__:
2643
+ type_hints = typing.get_type_hints(_typecheckingstub__a26a8daa6315829cda61d30808c33733bd97f50727f9bf40cee814b3c2987089)
2644
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2645
+ jsii.set(self, "valkeyActiveExpireEffort", value) # pyright: ignore[reportArgumentType]
2646
+
2647
+ @builtins.property
2648
+ @jsii.member(jsii_name="valkeyIoThreads")
2649
+ def valkey_io_threads(self) -> jsii.Number:
2650
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyIoThreads"))
2651
+
2652
+ @valkey_io_threads.setter
2653
+ def valkey_io_threads(self, value: jsii.Number) -> None:
2654
+ if __debug__:
2655
+ type_hints = typing.get_type_hints(_typecheckingstub__36712e3e7fe0a856cf4cdb0e99d545b70df6ff8cb75d1732956a23af8faec9e8)
2656
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2657
+ jsii.set(self, "valkeyIoThreads", value) # pyright: ignore[reportArgumentType]
2658
+
2659
+ @builtins.property
2660
+ @jsii.member(jsii_name="valkeyLfuDecayTime")
2661
+ def valkey_lfu_decay_time(self) -> jsii.Number:
2662
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyLfuDecayTime"))
2663
+
2664
+ @valkey_lfu_decay_time.setter
2665
+ def valkey_lfu_decay_time(self, value: jsii.Number) -> None:
2666
+ if __debug__:
2667
+ type_hints = typing.get_type_hints(_typecheckingstub__15b6c8ce90519918204fdd1183efa1a627bb95b3268a6503b277d9da7d723c8b)
2668
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2669
+ jsii.set(self, "valkeyLfuDecayTime", value) # pyright: ignore[reportArgumentType]
2670
+
2671
+ @builtins.property
2672
+ @jsii.member(jsii_name="valkeyLfuLogFactor")
2673
+ def valkey_lfu_log_factor(self) -> jsii.Number:
2674
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyLfuLogFactor"))
2675
+
2676
+ @valkey_lfu_log_factor.setter
2677
+ def valkey_lfu_log_factor(self, value: jsii.Number) -> None:
2678
+ if __debug__:
2679
+ type_hints = typing.get_type_hints(_typecheckingstub__3e243578f8d78eab75cc755766a8e4f4fcb788de8b816bb45a1718db182b8ec4)
2680
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2681
+ jsii.set(self, "valkeyLfuLogFactor", value) # pyright: ignore[reportArgumentType]
2682
+
2683
+ @builtins.property
2684
+ @jsii.member(jsii_name="valkeyMaxmemoryPolicy")
2685
+ def valkey_maxmemory_policy(self) -> builtins.str:
2686
+ return typing.cast(builtins.str, jsii.get(self, "valkeyMaxmemoryPolicy"))
2687
+
2688
+ @valkey_maxmemory_policy.setter
2689
+ def valkey_maxmemory_policy(self, value: builtins.str) -> None:
2690
+ if __debug__:
2691
+ type_hints = typing.get_type_hints(_typecheckingstub__58d2a600744f7ded9d19d6d64758106e5dd26bf9bdefb7de08c43c6d281af215)
2692
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2693
+ jsii.set(self, "valkeyMaxmemoryPolicy", value) # pyright: ignore[reportArgumentType]
2694
+
2695
+ @builtins.property
2696
+ @jsii.member(jsii_name="valkeyNotifyKeyspaceEvents")
2697
+ def valkey_notify_keyspace_events(self) -> builtins.str:
2698
+ return typing.cast(builtins.str, jsii.get(self, "valkeyNotifyKeyspaceEvents"))
2699
+
2700
+ @valkey_notify_keyspace_events.setter
2701
+ def valkey_notify_keyspace_events(self, value: builtins.str) -> None:
2702
+ if __debug__:
2703
+ type_hints = typing.get_type_hints(_typecheckingstub__c11e8e05f6c742e65ebab02abf104aef2a997d1558d32e6d01bbe3f4af5ea10c)
2704
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2705
+ jsii.set(self, "valkeyNotifyKeyspaceEvents", value) # pyright: ignore[reportArgumentType]
2706
+
2707
+ @builtins.property
2708
+ @jsii.member(jsii_name="valkeyNumberOfDatabases")
2709
+ def valkey_number_of_databases(self) -> jsii.Number:
2710
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyNumberOfDatabases"))
2711
+
2712
+ @valkey_number_of_databases.setter
2713
+ def valkey_number_of_databases(self, value: jsii.Number) -> None:
2714
+ if __debug__:
2715
+ type_hints = typing.get_type_hints(_typecheckingstub__10762b45ffd584091d6e5c546b00dc514e09029433109616a18715a1f850ad7d)
2716
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2717
+ jsii.set(self, "valkeyNumberOfDatabases", value) # pyright: ignore[reportArgumentType]
2718
+
2719
+ @builtins.property
2720
+ @jsii.member(jsii_name="valkeyPersistence")
2721
+ def valkey_persistence(self) -> builtins.str:
2722
+ return typing.cast(builtins.str, jsii.get(self, "valkeyPersistence"))
2723
+
2724
+ @valkey_persistence.setter
2725
+ def valkey_persistence(self, value: builtins.str) -> None:
2726
+ if __debug__:
2727
+ type_hints = typing.get_type_hints(_typecheckingstub__3df38d43378b5c11dc6050c05dde117eecd487d129fac6402013aeed9ae8cd65)
2728
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2729
+ jsii.set(self, "valkeyPersistence", value) # pyright: ignore[reportArgumentType]
2730
+
2731
+ @builtins.property
2732
+ @jsii.member(jsii_name="valkeyPubsubClientOutputBufferLimit")
2733
+ def valkey_pubsub_client_output_buffer_limit(self) -> jsii.Number:
2734
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyPubsubClientOutputBufferLimit"))
2735
+
2736
+ @valkey_pubsub_client_output_buffer_limit.setter
2737
+ def valkey_pubsub_client_output_buffer_limit(self, value: jsii.Number) -> None:
2738
+ if __debug__:
2739
+ type_hints = typing.get_type_hints(_typecheckingstub__0dbcafcb27e6d3915244903e1e717c58586f72ad8034de91b6484a17f6a8b7a5)
2740
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2741
+ jsii.set(self, "valkeyPubsubClientOutputBufferLimit", value) # pyright: ignore[reportArgumentType]
2742
+
2743
+ @builtins.property
2744
+ @jsii.member(jsii_name="valkeySsl")
2745
+ def valkey_ssl(self) -> typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]:
2746
+ return typing.cast(typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable], jsii.get(self, "valkeySsl"))
2747
+
2748
+ @valkey_ssl.setter
2749
+ def valkey_ssl(
2750
+ self,
2751
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2752
+ ) -> None:
2753
+ if __debug__:
2754
+ type_hints = typing.get_type_hints(_typecheckingstub__2de1b44225297c589501a1169672e24a61f63a2250c403c2043fac2c3d51453b)
2755
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2756
+ jsii.set(self, "valkeySsl", value) # pyright: ignore[reportArgumentType]
2757
+
2758
+ @builtins.property
2759
+ @jsii.member(jsii_name="valkeyTimeout")
2760
+ def valkey_timeout(self) -> jsii.Number:
2761
+ return typing.cast(jsii.Number, jsii.get(self, "valkeyTimeout"))
2762
+
2763
+ @valkey_timeout.setter
2764
+ def valkey_timeout(self, value: jsii.Number) -> None:
2765
+ if __debug__:
2766
+ type_hints = typing.get_type_hints(_typecheckingstub__eb3af04522bbfd913260c5a68eacc426646fd40c2d829645b45ec90d5496c7d0)
2767
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2768
+ jsii.set(self, "valkeyTimeout", value) # pyright: ignore[reportArgumentType]
2769
+
2770
+ @builtins.property
2771
+ @jsii.member(jsii_name="internalValue")
2772
+ def internal_value(self) -> typing.Optional[ManagedDatabaseValkeyProperties]:
2773
+ return typing.cast(typing.Optional[ManagedDatabaseValkeyProperties], jsii.get(self, "internalValue"))
2774
+
2775
+ @internal_value.setter
2776
+ def internal_value(
2777
+ self,
2778
+ value: typing.Optional[ManagedDatabaseValkeyProperties],
2779
+ ) -> None:
2780
+ if __debug__:
2781
+ type_hints = typing.get_type_hints(_typecheckingstub__8e856dbf1220e8ba94728c6777bc94aa3e02eb3316a2fe713db6fc687015a748)
2782
+ check_type(argname="argument value", value=value, expected_type=type_hints["value"])
2783
+ jsii.set(self, "internalValue", value) # pyright: ignore[reportArgumentType]
2784
+
2785
+
2786
+ __all__ = [
2787
+ "ManagedDatabaseValkey",
2788
+ "ManagedDatabaseValkeyComponents",
2789
+ "ManagedDatabaseValkeyComponentsList",
2790
+ "ManagedDatabaseValkeyComponentsOutputReference",
2791
+ "ManagedDatabaseValkeyConfig",
2792
+ "ManagedDatabaseValkeyNetwork",
2793
+ "ManagedDatabaseValkeyNetworkList",
2794
+ "ManagedDatabaseValkeyNetworkOutputReference",
2795
+ "ManagedDatabaseValkeyNodeStates",
2796
+ "ManagedDatabaseValkeyNodeStatesList",
2797
+ "ManagedDatabaseValkeyNodeStatesOutputReference",
2798
+ "ManagedDatabaseValkeyProperties",
2799
+ "ManagedDatabaseValkeyPropertiesMigration",
2800
+ "ManagedDatabaseValkeyPropertiesMigrationOutputReference",
2801
+ "ManagedDatabaseValkeyPropertiesOutputReference",
2802
+ ]
2803
+
2804
+ publication.publish()
2805
+
2806
+ def _typecheckingstub__e9ca96a3d0255aab5bd629d642e8855d0ea99f8657e2d22de939cb10aa9e11a4(
2807
+ scope: _constructs_77d1e7e8.Construct,
2808
+ id_: builtins.str,
2809
+ *,
2810
+ name: builtins.str,
2811
+ plan: builtins.str,
2812
+ title: builtins.str,
2813
+ zone: builtins.str,
2814
+ additional_disk_space_gib: typing.Optional[jsii.Number] = None,
2815
+ id: typing.Optional[builtins.str] = None,
2816
+ labels: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
2817
+ maintenance_window_dow: typing.Optional[builtins.str] = None,
2818
+ maintenance_window_time: typing.Optional[builtins.str] = None,
2819
+ network: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.Sequence[typing.Union[ManagedDatabaseValkeyNetwork, typing.Dict[builtins.str, typing.Any]]]]] = None,
2820
+ powered: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
2821
+ properties: typing.Optional[typing.Union[ManagedDatabaseValkeyProperties, typing.Dict[builtins.str, typing.Any]]] = None,
2822
+ termination_protection: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
2823
+ 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,
2824
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
2825
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
2826
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
2827
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
2828
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
2829
+ 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,
2830
+ ) -> None:
2831
+ """Type checking stubs"""
2832
+ pass
2833
+
2834
+ def _typecheckingstub__9aedfd54b5c8b1f9918c7d3df38964719bab01ca5620baa0cdacd432478b79a7(
2835
+ scope: _constructs_77d1e7e8.Construct,
2836
+ import_to_id: builtins.str,
2837
+ import_from_id: builtins.str,
2838
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
2839
+ ) -> None:
2840
+ """Type checking stubs"""
2841
+ pass
2842
+
2843
+ def _typecheckingstub__d39301ce9e83b0c46471cc2e091a974add7699ff0499897b02f5890d167025c6(
2844
+ value: typing.Union[_cdktf_9a9027ec.IResolvable, typing.Sequence[typing.Union[ManagedDatabaseValkeyNetwork, typing.Dict[builtins.str, typing.Any]]]],
2845
+ ) -> None:
2846
+ """Type checking stubs"""
2847
+ pass
2848
+
2849
+ def _typecheckingstub__7be4851e2badff611ae8fe21eb9e9833e2f24be1b9330882d03444656d6b02c2(
2850
+ value: jsii.Number,
2851
+ ) -> None:
2852
+ """Type checking stubs"""
2853
+ pass
2854
+
2855
+ def _typecheckingstub__b41fe74abf03b1ee4f0b5f521d5e3e995ded4c72f89438f83df1a19a755cf210(
2856
+ value: builtins.str,
2857
+ ) -> None:
2858
+ """Type checking stubs"""
2859
+ pass
2860
+
2861
+ def _typecheckingstub__582e5d19d5e9e322b330c3b5bede9c40c98cc138fef81206fe5627e535dff1bb(
2862
+ value: typing.Mapping[builtins.str, builtins.str],
2863
+ ) -> None:
2864
+ """Type checking stubs"""
2865
+ pass
2866
+
2867
+ def _typecheckingstub__143dbf09447146d1251e1d077d8d015a4d72185c65356c2cbc926407d4a9d66d(
2868
+ value: builtins.str,
2869
+ ) -> None:
2870
+ """Type checking stubs"""
2871
+ pass
2872
+
2873
+ def _typecheckingstub__94bc5c33c77b831f6591e0bd7fc829f250e2b41e491c36b6e70fba5c7fca15f8(
2874
+ value: builtins.str,
2875
+ ) -> None:
2876
+ """Type checking stubs"""
2877
+ pass
2878
+
2879
+ def _typecheckingstub__2558e1f521ac9d42f41277e188f9b3916e911b33d98c46eba7b35837f9d5e5aa(
2880
+ value: builtins.str,
2881
+ ) -> None:
2882
+ """Type checking stubs"""
2883
+ pass
2884
+
2885
+ def _typecheckingstub__d03add559c3e5c8300d41809a9579ab79a30ac2280a9116b12f9e956f5b176e7(
2886
+ value: builtins.str,
2887
+ ) -> None:
2888
+ """Type checking stubs"""
2889
+ pass
2890
+
2891
+ def _typecheckingstub__8bad55e55d8452abe892cea5a4bec66a6ab86e9bc3d56b0a36cfe63e18325c01(
2892
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2893
+ ) -> None:
2894
+ """Type checking stubs"""
2895
+ pass
2896
+
2897
+ def _typecheckingstub__2e2a35e3062885d4364913bf8f82e9adbc5cf8ee7b9a4712ac632c0c18444667(
2898
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
2899
+ ) -> None:
2900
+ """Type checking stubs"""
2901
+ pass
2902
+
2903
+ def _typecheckingstub__587e4697953225f3226603c43b6632073e29e531cd8559a516447b2f279761f1(
2904
+ value: builtins.str,
2905
+ ) -> None:
2906
+ """Type checking stubs"""
2907
+ pass
2908
+
2909
+ def _typecheckingstub__d784cbad4812d74571ea6bd4f345ded5999d60288344c5b7666a672de8ab4f93(
2910
+ value: builtins.str,
2911
+ ) -> None:
2912
+ """Type checking stubs"""
2913
+ pass
2914
+
2915
+ def _typecheckingstub__cf4f52898b75a9b0604cb414405e6251854854d6b3965a6524b46da5002b3322(
2916
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
2917
+ terraform_attribute: builtins.str,
2918
+ wraps_set: builtins.bool,
2919
+ ) -> None:
2920
+ """Type checking stubs"""
2921
+ pass
2922
+
2923
+ def _typecheckingstub__f4252d9db585952153c1c7b4ab9959c5e9735acd2eacc7718a173e3af9b63655(
2924
+ index: jsii.Number,
2925
+ ) -> None:
2926
+ """Type checking stubs"""
2927
+ pass
2928
+
2929
+ def _typecheckingstub__8d6e320ee08cff87cf383a49d240e7b08cc1cde188220b5ebbaa1aa01276cd47(
2930
+ value: builtins.str,
2931
+ ) -> None:
2932
+ """Type checking stubs"""
2933
+ pass
2934
+
2935
+ def _typecheckingstub__d01ad4104711108a61bfe60b65ce72760f44f64c48e6d32829e0cd80c705aae2(
2936
+ value: _cdktf_9a9027ec.IInterpolatingParent,
2937
+ ) -> None:
2938
+ """Type checking stubs"""
2939
+ pass
2940
+
2941
+ def _typecheckingstub__9717b3417f02063948e02cb67f4622cbd85be8020fbdec4526701605c0e76db8(
2942
+ value: builtins.bool,
2943
+ ) -> None:
2944
+ """Type checking stubs"""
2945
+ pass
2946
+
2947
+ def _typecheckingstub__74486c446b4bb4d03113a6716ef1ae8d4f578400c1889d35913c174dcca771eb(
2948
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
2949
+ terraform_attribute: builtins.str,
2950
+ complex_object_index: jsii.Number,
2951
+ complex_object_is_from_set: builtins.bool,
2952
+ ) -> None:
2953
+ """Type checking stubs"""
2954
+ pass
2955
+
2956
+ def _typecheckingstub__f8aac1a49ad50d49df4e2f2de04bd60a6f054eeff1e57e01b8130b16417b58c3(
2957
+ value: typing.Optional[ManagedDatabaseValkeyComponents],
2958
+ ) -> None:
2959
+ """Type checking stubs"""
2960
+ pass
2961
+
2962
+ def _typecheckingstub__572e81ffbdca76e6a311042e02f5f60989357be28c5c9418094954727f2b5e84(
2963
+ *,
2964
+ 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,
2965
+ count: typing.Optional[typing.Union[jsii.Number, _cdktf_9a9027ec.TerraformCount]] = None,
2966
+ depends_on: typing.Optional[typing.Sequence[_cdktf_9a9027ec.ITerraformDependable]] = None,
2967
+ for_each: typing.Optional[_cdktf_9a9027ec.ITerraformIterator] = None,
2968
+ lifecycle: typing.Optional[typing.Union[_cdktf_9a9027ec.TerraformResourceLifecycle, typing.Dict[builtins.str, typing.Any]]] = None,
2969
+ provider: typing.Optional[_cdktf_9a9027ec.TerraformProvider] = None,
2970
+ 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,
2971
+ name: builtins.str,
2972
+ plan: builtins.str,
2973
+ title: builtins.str,
2974
+ zone: builtins.str,
2975
+ additional_disk_space_gib: typing.Optional[jsii.Number] = None,
2976
+ id: typing.Optional[builtins.str] = None,
2977
+ labels: typing.Optional[typing.Mapping[builtins.str, builtins.str]] = None,
2978
+ maintenance_window_dow: typing.Optional[builtins.str] = None,
2979
+ maintenance_window_time: typing.Optional[builtins.str] = None,
2980
+ network: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.Sequence[typing.Union[ManagedDatabaseValkeyNetwork, typing.Dict[builtins.str, typing.Any]]]]] = None,
2981
+ powered: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
2982
+ properties: typing.Optional[typing.Union[ManagedDatabaseValkeyProperties, typing.Dict[builtins.str, typing.Any]]] = None,
2983
+ termination_protection: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
2984
+ ) -> None:
2985
+ """Type checking stubs"""
2986
+ pass
2987
+
2988
+ def _typecheckingstub__86bc6cfbeb2b0d724aae3cd0dc476ec5f0060e413bec0604ca6101e019eba72f(
2989
+ *,
2990
+ family: builtins.str,
2991
+ name: builtins.str,
2992
+ type: builtins.str,
2993
+ uuid: builtins.str,
2994
+ ) -> None:
2995
+ """Type checking stubs"""
2996
+ pass
2997
+
2998
+ def _typecheckingstub__3f387effda8c16fde9966811ccf787b3d56271088a5b593d10bd528d49165c7f(
2999
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
3000
+ terraform_attribute: builtins.str,
3001
+ wraps_set: builtins.bool,
3002
+ ) -> None:
3003
+ """Type checking stubs"""
3004
+ pass
3005
+
3006
+ def _typecheckingstub__b2cc2c3d970c95aa4a181f20ece6cae2da769925316379879259191e890fc425(
3007
+ index: jsii.Number,
3008
+ ) -> None:
3009
+ """Type checking stubs"""
3010
+ pass
3011
+
3012
+ def _typecheckingstub__b1f288935f98f823df0793a078e8de29a92298eeac83e277d79e6f5b6e9c6819(
3013
+ value: builtins.str,
3014
+ ) -> None:
3015
+ """Type checking stubs"""
3016
+ pass
3017
+
3018
+ def _typecheckingstub__1ce318a3e6e190673efb3cff247a30d8c50c2a72993e57587a0a7bbac9667ca3(
3019
+ value: _cdktf_9a9027ec.IInterpolatingParent,
3020
+ ) -> None:
3021
+ """Type checking stubs"""
3022
+ pass
3023
+
3024
+ def _typecheckingstub__481786a55a2dc14dc3f4da44e7f8873f8427ecce80d885eb17eeee0c53c32a87(
3025
+ value: builtins.bool,
3026
+ ) -> None:
3027
+ """Type checking stubs"""
3028
+ pass
3029
+
3030
+ def _typecheckingstub__b13648ea5908387b35158d29883e52641c749981675ab65432e63968b8ef75a5(
3031
+ value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, typing.List[ManagedDatabaseValkeyNetwork]]],
3032
+ ) -> None:
3033
+ """Type checking stubs"""
3034
+ pass
3035
+
3036
+ def _typecheckingstub__2824d1ded7fae4598e64b29704860b7e65e1f60cc8c2ba18af6f88b9c393faff(
3037
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
3038
+ terraform_attribute: builtins.str,
3039
+ complex_object_index: jsii.Number,
3040
+ complex_object_is_from_set: builtins.bool,
3041
+ ) -> None:
3042
+ """Type checking stubs"""
3043
+ pass
3044
+
3045
+ def _typecheckingstub__4fa688fb44a82433ca388090b8249ad71a4bc831cce3794d229093b4b56293f6(
3046
+ value: builtins.str,
3047
+ ) -> None:
3048
+ """Type checking stubs"""
3049
+ pass
3050
+
3051
+ def _typecheckingstub__5b54ca25e12af584a57e78a38206ab3436c3e1bac4eee6604e90f51def133755(
3052
+ value: builtins.str,
3053
+ ) -> None:
3054
+ """Type checking stubs"""
3055
+ pass
3056
+
3057
+ def _typecheckingstub__1226f980d40c87f8397fe48cb9cc06bf941eea21e26fac7b5530ae632e3503b4(
3058
+ value: builtins.str,
3059
+ ) -> None:
3060
+ """Type checking stubs"""
3061
+ pass
3062
+
3063
+ def _typecheckingstub__12fdc41f27c6b4f2b911ddd6aba5ce7018770875b804e05212b99416e015528d(
3064
+ value: builtins.str,
3065
+ ) -> None:
3066
+ """Type checking stubs"""
3067
+ pass
3068
+
3069
+ def _typecheckingstub__1bf6882d93a48e5aa568b7df8ec4368202184ba0e5546a39a063fbf8b69e0628(
3070
+ value: typing.Optional[typing.Union[_cdktf_9a9027ec.IResolvable, ManagedDatabaseValkeyNetwork]],
3071
+ ) -> None:
3072
+ """Type checking stubs"""
3073
+ pass
3074
+
3075
+ def _typecheckingstub__b36a07f4f6613a569fb00669f4dff53d81c6ac0bf2755480fb4e80a1743c29ef(
3076
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
3077
+ terraform_attribute: builtins.str,
3078
+ wraps_set: builtins.bool,
3079
+ ) -> None:
3080
+ """Type checking stubs"""
3081
+ pass
3082
+
3083
+ def _typecheckingstub__d7c171b3c8fbf5cf7cde17ad2a04170148cb54b6d4df2b7940c311e02710b1f9(
3084
+ index: jsii.Number,
3085
+ ) -> None:
3086
+ """Type checking stubs"""
3087
+ pass
3088
+
3089
+ def _typecheckingstub__a84231c9993c80153c365716c8c01dab8e9bea7cb1687ec9ffe5a59e4b2a6324(
3090
+ value: builtins.str,
3091
+ ) -> None:
3092
+ """Type checking stubs"""
3093
+ pass
3094
+
3095
+ def _typecheckingstub__33024060d747d6f3e2c9b75456197397a7aef2d57295c92716c794d24de628a0(
3096
+ value: _cdktf_9a9027ec.IInterpolatingParent,
3097
+ ) -> None:
3098
+ """Type checking stubs"""
3099
+ pass
3100
+
3101
+ def _typecheckingstub__5b4b326613b451e91b53641f7d027967e6b69bfef13702d5adde4da4e2e83459(
3102
+ value: builtins.bool,
3103
+ ) -> None:
3104
+ """Type checking stubs"""
3105
+ pass
3106
+
3107
+ def _typecheckingstub__3584d0fded5a72760262405f68d64086374d1b0be18591d1e84bb4af5db5c06f(
3108
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
3109
+ terraform_attribute: builtins.str,
3110
+ complex_object_index: jsii.Number,
3111
+ complex_object_is_from_set: builtins.bool,
3112
+ ) -> None:
3113
+ """Type checking stubs"""
3114
+ pass
3115
+
3116
+ def _typecheckingstub__23d6fd61468e82793403951f52c6440df44471673eda077d3768f80950de87be(
3117
+ value: typing.Optional[ManagedDatabaseValkeyNodeStates],
3118
+ ) -> None:
3119
+ """Type checking stubs"""
3120
+ pass
3121
+
3122
+ def _typecheckingstub__130504794befd55a7bc90ab03ca53c94a25f9b733cdd13efed4a51695da4b995(
3123
+ *,
3124
+ automatic_utility_network_ip_filter: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
3125
+ backup_hour: typing.Optional[jsii.Number] = None,
3126
+ backup_minute: typing.Optional[jsii.Number] = None,
3127
+ frequent_snapshots: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
3128
+ ip_filter: typing.Optional[typing.Sequence[builtins.str]] = None,
3129
+ migration: typing.Optional[typing.Union[ManagedDatabaseValkeyPropertiesMigration, typing.Dict[builtins.str, typing.Any]]] = None,
3130
+ public_access: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
3131
+ service_log: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
3132
+ valkey_acl_channels_default: typing.Optional[builtins.str] = None,
3133
+ valkey_active_expire_effort: typing.Optional[jsii.Number] = None,
3134
+ valkey_io_threads: typing.Optional[jsii.Number] = None,
3135
+ valkey_lfu_decay_time: typing.Optional[jsii.Number] = None,
3136
+ valkey_lfu_log_factor: typing.Optional[jsii.Number] = None,
3137
+ valkey_maxmemory_policy: typing.Optional[builtins.str] = None,
3138
+ valkey_notify_keyspace_events: typing.Optional[builtins.str] = None,
3139
+ valkey_number_of_databases: typing.Optional[jsii.Number] = None,
3140
+ valkey_persistence: typing.Optional[builtins.str] = None,
3141
+ valkey_pubsub_client_output_buffer_limit: typing.Optional[jsii.Number] = None,
3142
+ valkey_ssl: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
3143
+ valkey_timeout: typing.Optional[jsii.Number] = None,
3144
+ ) -> None:
3145
+ """Type checking stubs"""
3146
+ pass
3147
+
3148
+ def _typecheckingstub__79d93789bda00eb59095ff4b93fc8d576f547960656fc2c2b20cdd46b3842774(
3149
+ *,
3150
+ dbname: typing.Optional[builtins.str] = None,
3151
+ host: typing.Optional[builtins.str] = None,
3152
+ ignore_dbs: typing.Optional[builtins.str] = None,
3153
+ ignore_roles: typing.Optional[builtins.str] = None,
3154
+ method: typing.Optional[builtins.str] = None,
3155
+ password: typing.Optional[builtins.str] = None,
3156
+ port: typing.Optional[jsii.Number] = None,
3157
+ ssl: typing.Optional[typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable]] = None,
3158
+ username: typing.Optional[builtins.str] = None,
3159
+ ) -> None:
3160
+ """Type checking stubs"""
3161
+ pass
3162
+
3163
+ def _typecheckingstub__653b9500142dcaaa00ba3451c2ff31751e33552cb8092bcd3c7cdc2da14e47cd(
3164
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
3165
+ terraform_attribute: builtins.str,
3166
+ ) -> None:
3167
+ """Type checking stubs"""
3168
+ pass
3169
+
3170
+ def _typecheckingstub__1314b6cb90839f64d1e6b134d07633136410e75b81032064900446b8247729d5(
3171
+ value: builtins.str,
3172
+ ) -> None:
3173
+ """Type checking stubs"""
3174
+ pass
3175
+
3176
+ def _typecheckingstub__76243e98f6cb500875bf56e8d226c15068248549c3ecd1b38c8ae49ffcdd0c65(
3177
+ value: builtins.str,
3178
+ ) -> None:
3179
+ """Type checking stubs"""
3180
+ pass
3181
+
3182
+ def _typecheckingstub__162cd0275fe93ffc0222678a946ecd079acd01731fd60103ce60dd5b536809be(
3183
+ value: builtins.str,
3184
+ ) -> None:
3185
+ """Type checking stubs"""
3186
+ pass
3187
+
3188
+ def _typecheckingstub__a6fdf035c2bfaaf78851ed75b4776ecfc0280916d034d8d88e5c518b4d31606e(
3189
+ value: builtins.str,
3190
+ ) -> None:
3191
+ """Type checking stubs"""
3192
+ pass
3193
+
3194
+ def _typecheckingstub__e35e85c39397173d3e45859019af030a0c6b4ceaa3a4e544f90652fddaec8daf(
3195
+ value: builtins.str,
3196
+ ) -> None:
3197
+ """Type checking stubs"""
3198
+ pass
3199
+
3200
+ def _typecheckingstub__662e37d640a89c81978ab1bc6760bef1547ed14b8359ccf76d5f8c5ba2c1ca85(
3201
+ value: builtins.str,
3202
+ ) -> None:
3203
+ """Type checking stubs"""
3204
+ pass
3205
+
3206
+ def _typecheckingstub__af55c31711e4f7afee55e9eb3357116e63b64c1178aa20a3b34caff9e7d36c63(
3207
+ value: jsii.Number,
3208
+ ) -> None:
3209
+ """Type checking stubs"""
3210
+ pass
3211
+
3212
+ def _typecheckingstub__f483e3934be4c35439acb518122bb176bb613a0bb411d2384a025b2fe6dbaa40(
3213
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
3214
+ ) -> None:
3215
+ """Type checking stubs"""
3216
+ pass
3217
+
3218
+ def _typecheckingstub__6a34f9da5159916189640a32002175c4e592ba0b30620af992ca26e34a7aa9aa(
3219
+ value: builtins.str,
3220
+ ) -> None:
3221
+ """Type checking stubs"""
3222
+ pass
3223
+
3224
+ def _typecheckingstub__1793c40b292b55abd22e900135f7fb7177ba88955948317e0f8e1140a8fd6bb9(
3225
+ value: typing.Optional[ManagedDatabaseValkeyPropertiesMigration],
3226
+ ) -> None:
3227
+ """Type checking stubs"""
3228
+ pass
3229
+
3230
+ def _typecheckingstub__55792d3e90a4aee66c1699f91bdcfb7f0f4fdd7ccf76213d91486a87ffeb6e7f(
3231
+ terraform_resource: _cdktf_9a9027ec.IInterpolatingParent,
3232
+ terraform_attribute: builtins.str,
3233
+ ) -> None:
3234
+ """Type checking stubs"""
3235
+ pass
3236
+
3237
+ def _typecheckingstub__9c44d89cc2ed32723b08157526a381420fa119892c564fdedde7987c627d199b(
3238
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
3239
+ ) -> None:
3240
+ """Type checking stubs"""
3241
+ pass
3242
+
3243
+ def _typecheckingstub__97fa6c9348419174573baa4a126b6a8e3f160ce4b9144a878e9c0157547f9cc1(
3244
+ value: jsii.Number,
3245
+ ) -> None:
3246
+ """Type checking stubs"""
3247
+ pass
3248
+
3249
+ def _typecheckingstub__811ddadc48f4551492d04783df1afbc040352a53ea4bee82d0508e3280c3c005(
3250
+ value: jsii.Number,
3251
+ ) -> None:
3252
+ """Type checking stubs"""
3253
+ pass
3254
+
3255
+ def _typecheckingstub__646598e86ca197e938b0074e26a843906c102c1f767561d419d4b508b6dd8ebc(
3256
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
3257
+ ) -> None:
3258
+ """Type checking stubs"""
3259
+ pass
3260
+
3261
+ def _typecheckingstub__ef2b45dbaf8564a5828368af43f39e9e9b46f8662d13ce44cef40b45ec56f7db(
3262
+ value: typing.List[builtins.str],
3263
+ ) -> None:
3264
+ """Type checking stubs"""
3265
+ pass
3266
+
3267
+ def _typecheckingstub__61f81631eb5f8dd781126f6a71849383ca6cb5c401a058533d0c001fdd87e963(
3268
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
3269
+ ) -> None:
3270
+ """Type checking stubs"""
3271
+ pass
3272
+
3273
+ def _typecheckingstub__f875fc8095f055f0ecdfe6f2ab3f46d09111243c7ea6f03961499925bb56f00f(
3274
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
3275
+ ) -> None:
3276
+ """Type checking stubs"""
3277
+ pass
3278
+
3279
+ def _typecheckingstub__2fe20994370fab9130ba3ce108940f96e8805127e4d82f5b2696c1c8ed479423(
3280
+ value: builtins.str,
3281
+ ) -> None:
3282
+ """Type checking stubs"""
3283
+ pass
3284
+
3285
+ def _typecheckingstub__a26a8daa6315829cda61d30808c33733bd97f50727f9bf40cee814b3c2987089(
3286
+ value: jsii.Number,
3287
+ ) -> None:
3288
+ """Type checking stubs"""
3289
+ pass
3290
+
3291
+ def _typecheckingstub__36712e3e7fe0a856cf4cdb0e99d545b70df6ff8cb75d1732956a23af8faec9e8(
3292
+ value: jsii.Number,
3293
+ ) -> None:
3294
+ """Type checking stubs"""
3295
+ pass
3296
+
3297
+ def _typecheckingstub__15b6c8ce90519918204fdd1183efa1a627bb95b3268a6503b277d9da7d723c8b(
3298
+ value: jsii.Number,
3299
+ ) -> None:
3300
+ """Type checking stubs"""
3301
+ pass
3302
+
3303
+ def _typecheckingstub__3e243578f8d78eab75cc755766a8e4f4fcb788de8b816bb45a1718db182b8ec4(
3304
+ value: jsii.Number,
3305
+ ) -> None:
3306
+ """Type checking stubs"""
3307
+ pass
3308
+
3309
+ def _typecheckingstub__58d2a600744f7ded9d19d6d64758106e5dd26bf9bdefb7de08c43c6d281af215(
3310
+ value: builtins.str,
3311
+ ) -> None:
3312
+ """Type checking stubs"""
3313
+ pass
3314
+
3315
+ def _typecheckingstub__c11e8e05f6c742e65ebab02abf104aef2a997d1558d32e6d01bbe3f4af5ea10c(
3316
+ value: builtins.str,
3317
+ ) -> None:
3318
+ """Type checking stubs"""
3319
+ pass
3320
+
3321
+ def _typecheckingstub__10762b45ffd584091d6e5c546b00dc514e09029433109616a18715a1f850ad7d(
3322
+ value: jsii.Number,
3323
+ ) -> None:
3324
+ """Type checking stubs"""
3325
+ pass
3326
+
3327
+ def _typecheckingstub__3df38d43378b5c11dc6050c05dde117eecd487d129fac6402013aeed9ae8cd65(
3328
+ value: builtins.str,
3329
+ ) -> None:
3330
+ """Type checking stubs"""
3331
+ pass
3332
+
3333
+ def _typecheckingstub__0dbcafcb27e6d3915244903e1e717c58586f72ad8034de91b6484a17f6a8b7a5(
3334
+ value: jsii.Number,
3335
+ ) -> None:
3336
+ """Type checking stubs"""
3337
+ pass
3338
+
3339
+ def _typecheckingstub__2de1b44225297c589501a1169672e24a61f63a2250c403c2043fac2c3d51453b(
3340
+ value: typing.Union[builtins.bool, _cdktf_9a9027ec.IResolvable],
3341
+ ) -> None:
3342
+ """Type checking stubs"""
3343
+ pass
3344
+
3345
+ def _typecheckingstub__eb3af04522bbfd913260c5a68eacc426646fd40c2d829645b45ec90d5496c7d0(
3346
+ value: jsii.Number,
3347
+ ) -> None:
3348
+ """Type checking stubs"""
3349
+ pass
3350
+
3351
+ def _typecheckingstub__8e856dbf1220e8ba94728c6777bc94aa3e02eb3316a2fe713db6fc687015a748(
3352
+ value: typing.Optional[ManagedDatabaseValkeyProperties],
3353
+ ) -> None:
3354
+ """Type checking stubs"""
3355
+ pass