pulumiverse-scaleway 1.16.0a1730114875__py3-none-any.whl → 1.16.0a1730122985__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.

Potentially problematic release.


This version of pulumiverse-scaleway might be problematic. Click here for more details.

Files changed (203) hide show
  1. pulumiverse_scaleway/_inputs.py +2119 -50
  2. pulumiverse_scaleway/_utilities.py +1 -1
  3. pulumiverse_scaleway/account_project.py +5 -0
  4. pulumiverse_scaleway/account_ssh_key.py +5 -0
  5. pulumiverse_scaleway/apple_silicon_server.py +5 -0
  6. pulumiverse_scaleway/baremetal_server.py +5 -0
  7. pulumiverse_scaleway/block_snapshot.py +5 -0
  8. pulumiverse_scaleway/block_volume.py +5 -0
  9. pulumiverse_scaleway/cockpit.py +5 -0
  10. pulumiverse_scaleway/cockpit_alert_manager.py +5 -0
  11. pulumiverse_scaleway/cockpit_grafana_user.py +5 -0
  12. pulumiverse_scaleway/cockpit_source.py +5 -0
  13. pulumiverse_scaleway/cockpit_token.py +5 -0
  14. pulumiverse_scaleway/config/__init__.pyi +5 -0
  15. pulumiverse_scaleway/config/vars.py +5 -0
  16. pulumiverse_scaleway/container.py +5 -0
  17. pulumiverse_scaleway/container_cron.py +5 -0
  18. pulumiverse_scaleway/container_domain.py +5 -0
  19. pulumiverse_scaleway/container_namespace.py +5 -0
  20. pulumiverse_scaleway/container_token.py +5 -0
  21. pulumiverse_scaleway/container_trigger.py +5 -0
  22. pulumiverse_scaleway/database.py +5 -0
  23. pulumiverse_scaleway/database_acl.py +5 -0
  24. pulumiverse_scaleway/database_backup.py +5 -0
  25. pulumiverse_scaleway/database_instance.py +56 -2
  26. pulumiverse_scaleway/database_privilege.py +5 -0
  27. pulumiverse_scaleway/database_read_replica.py +5 -0
  28. pulumiverse_scaleway/database_user.py +5 -0
  29. pulumiverse_scaleway/documentdb_database.py +5 -0
  30. pulumiverse_scaleway/documentdb_instance.py +5 -0
  31. pulumiverse_scaleway/documentdb_private_network_endpoint.py +5 -0
  32. pulumiverse_scaleway/documentdb_privilege.py +5 -0
  33. pulumiverse_scaleway/documentdb_read_replica.py +5 -0
  34. pulumiverse_scaleway/documentdb_user.py +5 -0
  35. pulumiverse_scaleway/domain_record.py +5 -0
  36. pulumiverse_scaleway/domain_zone.py +5 -0
  37. pulumiverse_scaleway/flexible_ip.py +5 -0
  38. pulumiverse_scaleway/flexible_ip_mac_address.py +5 -0
  39. pulumiverse_scaleway/function.py +5 -0
  40. pulumiverse_scaleway/function_cron.py +5 -0
  41. pulumiverse_scaleway/function_domain.py +5 -0
  42. pulumiverse_scaleway/function_namespace.py +5 -0
  43. pulumiverse_scaleway/function_token.py +5 -0
  44. pulumiverse_scaleway/function_trigger.py +5 -0
  45. pulumiverse_scaleway/get_account_project.py +19 -4
  46. pulumiverse_scaleway/get_account_ssh_key.py +22 -4
  47. pulumiverse_scaleway/get_availability_zones.py +13 -4
  48. pulumiverse_scaleway/get_baremetal_offer.py +26 -4
  49. pulumiverse_scaleway/get_baremetal_option.py +17 -4
  50. pulumiverse_scaleway/get_baremetal_os.py +18 -4
  51. pulumiverse_scaleway/get_baremetal_server.py +40 -4
  52. pulumiverse_scaleway/get_billing_consumptions.py +15 -4
  53. pulumiverse_scaleway/get_billing_invoices.py +18 -4
  54. pulumiverse_scaleway/get_block_snapshot.py +21 -4
  55. pulumiverse_scaleway/get_block_volume.py +22 -4
  56. pulumiverse_scaleway/get_cockpit.py +15 -4
  57. pulumiverse_scaleway/get_cockpit_plan.py +12 -4
  58. pulumiverse_scaleway/get_config.py +20 -4
  59. pulumiverse_scaleway/get_container.py +41 -4
  60. pulumiverse_scaleway/get_container_namespace.py +25 -4
  61. pulumiverse_scaleway/get_database.py +19 -4
  62. pulumiverse_scaleway/get_database_acl.py +15 -4
  63. pulumiverse_scaleway/get_database_backup.py +26 -4
  64. pulumiverse_scaleway/get_database_instance.py +52 -5
  65. pulumiverse_scaleway/get_database_privilege.py +19 -4
  66. pulumiverse_scaleway/get_documentdb_database.py +20 -4
  67. pulumiverse_scaleway/get_documentdb_instance.py +27 -4
  68. pulumiverse_scaleway/get_documentdb_load_balancer_endpoint.py +22 -4
  69. pulumiverse_scaleway/get_domain_record.py +31 -4
  70. pulumiverse_scaleway/get_domain_zone.py +21 -4
  71. pulumiverse_scaleway/get_flexible_ip.py +26 -4
  72. pulumiverse_scaleway/get_flexible_ips.py +20 -4
  73. pulumiverse_scaleway/get_function.py +38 -4
  74. pulumiverse_scaleway/get_function_namespace.py +24 -4
  75. pulumiverse_scaleway/get_iam_api_key.py +21 -4
  76. pulumiverse_scaleway/get_iam_application.py +21 -4
  77. pulumiverse_scaleway/get_iam_group.py +23 -4
  78. pulumiverse_scaleway/get_iam_ssh_key.py +22 -4
  79. pulumiverse_scaleway/get_iam_user.py +16 -4
  80. pulumiverse_scaleway/get_instance_image.py +31 -4
  81. pulumiverse_scaleway/get_instance_ip.py +21 -4
  82. pulumiverse_scaleway/get_instance_placement_group.py +23 -4
  83. pulumiverse_scaleway/get_instance_private_nic.py +22 -4
  84. pulumiverse_scaleway/get_instance_security_group.py +28 -4
  85. pulumiverse_scaleway/get_instance_server.py +45 -4
  86. pulumiverse_scaleway/get_instance_servers.py +20 -4
  87. pulumiverse_scaleway/get_instance_snapshot.py +25 -4
  88. pulumiverse_scaleway/get_instance_volume.py +24 -4
  89. pulumiverse_scaleway/get_iot_device.py +28 -4
  90. pulumiverse_scaleway/get_iot_hub.py +34 -4
  91. pulumiverse_scaleway/get_ipam_ip.py +33 -4
  92. pulumiverse_scaleway/get_ipam_ips.py +30 -4
  93. pulumiverse_scaleway/get_k8s_version.py +17 -4
  94. pulumiverse_scaleway/get_kubernetes_cluster.py +38 -4
  95. pulumiverse_scaleway/get_kubernetes_node_pool.py +41 -4
  96. pulumiverse_scaleway/get_lb_acls.py +20 -4
  97. pulumiverse_scaleway/get_lb_backend.py +44 -4
  98. pulumiverse_scaleway/get_lb_backends.py +20 -4
  99. pulumiverse_scaleway/get_lb_frontend.py +24 -4
  100. pulumiverse_scaleway/get_lb_frontends.py +20 -4
  101. pulumiverse_scaleway/get_lb_ips.py +22 -4
  102. pulumiverse_scaleway/get_lb_route.py +18 -4
  103. pulumiverse_scaleway/get_lb_routes.py +18 -4
  104. pulumiverse_scaleway/get_lbs.py +20 -4
  105. pulumiverse_scaleway/get_loadbalancer.py +33 -4
  106. pulumiverse_scaleway/get_loadbalancer_certificate.py +24 -4
  107. pulumiverse_scaleway/get_loadbalancer_ip.py +23 -4
  108. pulumiverse_scaleway/get_marketplace_image.py +16 -4
  109. pulumiverse_scaleway/get_mnq_sqs.py +15 -4
  110. pulumiverse_scaleway/get_object_bucket.py +25 -4
  111. pulumiverse_scaleway/get_object_bucket_policy.py +17 -4
  112. pulumiverse_scaleway/get_redis_cluster.py +32 -4
  113. pulumiverse_scaleway/get_registry_image.py +26 -4
  114. pulumiverse_scaleway/get_registry_namespace.py +22 -4
  115. pulumiverse_scaleway/get_secret.py +28 -4
  116. pulumiverse_scaleway/get_secret_version.py +25 -4
  117. pulumiverse_scaleway/get_tem_domain.py +38 -4
  118. pulumiverse_scaleway/get_vpc.py +26 -4
  119. pulumiverse_scaleway/get_vpc_gateway_network.py +29 -4
  120. pulumiverse_scaleway/get_vpc_private_network.py +28 -4
  121. pulumiverse_scaleway/get_vpc_public_gateway.py +30 -4
  122. pulumiverse_scaleway/get_vpc_public_gateway_dhcp.py +30 -4
  123. pulumiverse_scaleway/get_vpc_public_gateway_dhcp_reservation.py +25 -4
  124. pulumiverse_scaleway/get_vpc_public_gateway_ip.py +20 -4
  125. pulumiverse_scaleway/get_vpc_public_pat_rule.py +22 -4
  126. pulumiverse_scaleway/get_vpc_routes.py +25 -4
  127. pulumiverse_scaleway/get_vpcs.py +20 -4
  128. pulumiverse_scaleway/get_web_host_offer.py +19 -4
  129. pulumiverse_scaleway/get_webhosting.py +33 -4
  130. pulumiverse_scaleway/iam_api_key.py +31 -0
  131. pulumiverse_scaleway/iam_application.py +5 -0
  132. pulumiverse_scaleway/iam_group.py +5 -0
  133. pulumiverse_scaleway/iam_group_membership.py +5 -0
  134. pulumiverse_scaleway/iam_policy.py +5 -0
  135. pulumiverse_scaleway/iam_ssh_key.py +5 -0
  136. pulumiverse_scaleway/iam_user.py +5 -0
  137. pulumiverse_scaleway/instance_image.py +5 -0
  138. pulumiverse_scaleway/instance_ip.py +5 -0
  139. pulumiverse_scaleway/instance_ip_reverse_dns.py +5 -0
  140. pulumiverse_scaleway/instance_placement_group.py +5 -0
  141. pulumiverse_scaleway/instance_private_nic.py +5 -0
  142. pulumiverse_scaleway/instance_security_group.py +5 -0
  143. pulumiverse_scaleway/instance_security_group_rules.py +5 -0
  144. pulumiverse_scaleway/instance_server.py +5 -0
  145. pulumiverse_scaleway/instance_snapshot.py +5 -0
  146. pulumiverse_scaleway/instance_user_data.py +5 -0
  147. pulumiverse_scaleway/instance_volume.py +5 -0
  148. pulumiverse_scaleway/iot_device.py +5 -0
  149. pulumiverse_scaleway/iot_hub.py +5 -0
  150. pulumiverse_scaleway/iot_network.py +5 -0
  151. pulumiverse_scaleway/iot_route.py +5 -0
  152. pulumiverse_scaleway/ipam_ip.py +5 -0
  153. pulumiverse_scaleway/ipam_ip_reverse_dns.py +5 -0
  154. pulumiverse_scaleway/job_definition.py +5 -0
  155. pulumiverse_scaleway/kubernetes_cluster.py +5 -0
  156. pulumiverse_scaleway/kubernetes_node_pool.py +5 -0
  157. pulumiverse_scaleway/loadbalancer.py +5 -0
  158. pulumiverse_scaleway/loadbalancer_acl.py +5 -0
  159. pulumiverse_scaleway/loadbalancer_backend.py +5 -0
  160. pulumiverse_scaleway/loadbalancer_certificate.py +5 -0
  161. pulumiverse_scaleway/loadbalancer_frontend.py +5 -0
  162. pulumiverse_scaleway/loadbalancer_ip.py +5 -0
  163. pulumiverse_scaleway/loadbalancer_route.py +5 -0
  164. pulumiverse_scaleway/mnq_nats_account.py +5 -0
  165. pulumiverse_scaleway/mnq_nats_credentials.py +5 -0
  166. pulumiverse_scaleway/mnq_sns.py +5 -0
  167. pulumiverse_scaleway/mnq_sns_credentials.py +5 -0
  168. pulumiverse_scaleway/mnq_sns_topic.py +5 -0
  169. pulumiverse_scaleway/mnq_sns_topic_subscription.py +5 -0
  170. pulumiverse_scaleway/mnq_sqs.py +5 -0
  171. pulumiverse_scaleway/mnq_sqs_credentials.py +5 -0
  172. pulumiverse_scaleway/mnq_sqs_queue.py +5 -0
  173. pulumiverse_scaleway/object_bucket.py +5 -0
  174. pulumiverse_scaleway/object_bucket_acl.py +5 -0
  175. pulumiverse_scaleway/object_bucket_lock_configuration.py +5 -0
  176. pulumiverse_scaleway/object_bucket_policy.py +5 -0
  177. pulumiverse_scaleway/object_bucket_website_configuration.py +5 -0
  178. pulumiverse_scaleway/object_item.py +5 -0
  179. pulumiverse_scaleway/outputs.py +5 -0
  180. pulumiverse_scaleway/provider.py +5 -0
  181. pulumiverse_scaleway/pulumi-plugin.json +1 -1
  182. pulumiverse_scaleway/redis_cluster.py +5 -0
  183. pulumiverse_scaleway/registry_namespace.py +5 -0
  184. pulumiverse_scaleway/sdb_database.py +5 -0
  185. pulumiverse_scaleway/secret.py +5 -0
  186. pulumiverse_scaleway/secret_version.py +5 -0
  187. pulumiverse_scaleway/tem_domain.py +5 -0
  188. pulumiverse_scaleway/tem_domain_validation.py +5 -0
  189. pulumiverse_scaleway/vpc.py +5 -0
  190. pulumiverse_scaleway/vpc_gateway_network.py +5 -0
  191. pulumiverse_scaleway/vpc_private_network.py +5 -0
  192. pulumiverse_scaleway/vpc_public_gateway.py +5 -0
  193. pulumiverse_scaleway/vpc_public_gateway_dhcp.py +5 -0
  194. pulumiverse_scaleway/vpc_public_gateway_dhcp_reservation.py +5 -0
  195. pulumiverse_scaleway/vpc_public_gateway_ip.py +5 -0
  196. pulumiverse_scaleway/vpc_public_gateway_ip_reverse_dns.py +5 -0
  197. pulumiverse_scaleway/vpc_public_gateway_pat_rule.py +5 -0
  198. pulumiverse_scaleway/webhosting.py +5 -0
  199. {pulumiverse_scaleway-1.16.0a1730114875.dist-info → pulumiverse_scaleway-1.16.0a1730122985.dist-info}/METADATA +2 -1
  200. pulumiverse_scaleway-1.16.0a1730122985.dist-info/RECORD +205 -0
  201. pulumiverse_scaleway-1.16.0a1730114875.dist-info/RECORD +0 -205
  202. {pulumiverse_scaleway-1.16.0a1730114875.dist-info → pulumiverse_scaleway-1.16.0a1730122985.dist-info}/WHEEL +0 -0
  203. {pulumiverse_scaleway-1.16.0a1730114875.dist-info → pulumiverse_scaleway-1.16.0a1730122985.dist-info}/top_level.txt +0 -0
@@ -4,108 +4,230 @@
4
4
 
5
5
  import copy
6
6
  import warnings
7
+ import sys
7
8
  import pulumi
8
9
  import pulumi.runtime
9
10
  from typing import Any, Mapping, Optional, Sequence, Union, overload
11
+ if sys.version_info >= (3, 11):
12
+ from typing import NotRequired, TypedDict, TypeAlias
13
+ else:
14
+ from typing_extensions import NotRequired, TypedDict, TypeAlias
10
15
  from . import _utilities
11
16
 
12
17
  __all__ = [
13
18
  'BaremetalServerIpArgs',
19
+ 'BaremetalServerIpArgsDict',
14
20
  'BaremetalServerIpv4Args',
21
+ 'BaremetalServerIpv4ArgsDict',
15
22
  'BaremetalServerIpv6Args',
23
+ 'BaremetalServerIpv6ArgsDict',
16
24
  'BaremetalServerOptionArgs',
25
+ 'BaremetalServerOptionArgsDict',
17
26
  'BaremetalServerPrivateNetworkArgs',
27
+ 'BaremetalServerPrivateNetworkArgsDict',
18
28
  'CockpitAlertManagerContactPointArgs',
29
+ 'CockpitAlertManagerContactPointArgsDict',
19
30
  'CockpitEndpointArgs',
31
+ 'CockpitEndpointArgsDict',
20
32
  'CockpitPushUrlArgs',
33
+ 'CockpitPushUrlArgsDict',
21
34
  'CockpitTokenScopesArgs',
35
+ 'CockpitTokenScopesArgsDict',
22
36
  'ContainerTriggerNatsArgs',
37
+ 'ContainerTriggerNatsArgsDict',
23
38
  'ContainerTriggerSqsArgs',
39
+ 'ContainerTriggerSqsArgsDict',
24
40
  'DatabaseAclAclRuleArgs',
41
+ 'DatabaseAclAclRuleArgsDict',
25
42
  'DatabaseInstanceLoadBalancerArgs',
43
+ 'DatabaseInstanceLoadBalancerArgsDict',
26
44
  'DatabaseInstanceLogsPolicyArgs',
45
+ 'DatabaseInstanceLogsPolicyArgsDict',
27
46
  'DatabaseInstancePrivateNetworkArgs',
47
+ 'DatabaseInstancePrivateNetworkArgsDict',
28
48
  'DatabaseInstanceReadReplicaArgs',
49
+ 'DatabaseInstanceReadReplicaArgsDict',
29
50
  'DatabaseReadReplicaDirectAccessArgs',
51
+ 'DatabaseReadReplicaDirectAccessArgsDict',
30
52
  'DatabaseReadReplicaPrivateNetworkArgs',
53
+ 'DatabaseReadReplicaPrivateNetworkArgsDict',
31
54
  'DocumentdbPrivateNetworkEndpointPrivateNetworkArgs',
55
+ 'DocumentdbPrivateNetworkEndpointPrivateNetworkArgsDict',
32
56
  'DocumentdbReadReplicaDirectAccessArgs',
57
+ 'DocumentdbReadReplicaDirectAccessArgsDict',
33
58
  'DocumentdbReadReplicaPrivateNetworkArgs',
59
+ 'DocumentdbReadReplicaPrivateNetworkArgsDict',
34
60
  'DomainRecordGeoIpArgs',
61
+ 'DomainRecordGeoIpArgsDict',
35
62
  'DomainRecordGeoIpMatchArgs',
63
+ 'DomainRecordGeoIpMatchArgsDict',
36
64
  'DomainRecordHttpServiceArgs',
65
+ 'DomainRecordHttpServiceArgsDict',
37
66
  'DomainRecordViewArgs',
67
+ 'DomainRecordViewArgsDict',
38
68
  'DomainRecordWeightedArgs',
69
+ 'DomainRecordWeightedArgsDict',
39
70
  'FunctionTriggerNatsArgs',
71
+ 'FunctionTriggerNatsArgsDict',
40
72
  'FunctionTriggerSqsArgs',
73
+ 'FunctionTriggerSqsArgsDict',
41
74
  'IamPolicyRuleArgs',
75
+ 'IamPolicyRuleArgsDict',
42
76
  'InstanceImageAdditionalVolumeArgs',
77
+ 'InstanceImageAdditionalVolumeArgsDict',
43
78
  'InstanceSecurityGroupInboundRuleArgs',
79
+ 'InstanceSecurityGroupInboundRuleArgsDict',
44
80
  'InstanceSecurityGroupOutboundRuleArgs',
81
+ 'InstanceSecurityGroupOutboundRuleArgsDict',
45
82
  'InstanceSecurityGroupRulesInboundRuleArgs',
83
+ 'InstanceSecurityGroupRulesInboundRuleArgsDict',
46
84
  'InstanceSecurityGroupRulesOutboundRuleArgs',
85
+ 'InstanceSecurityGroupRulesOutboundRuleArgsDict',
47
86
  'InstanceServerPrivateNetworkArgs',
87
+ 'InstanceServerPrivateNetworkArgsDict',
48
88
  'InstanceServerPublicIpArgs',
89
+ 'InstanceServerPublicIpArgsDict',
49
90
  'InstanceServerRootVolumeArgs',
91
+ 'InstanceServerRootVolumeArgsDict',
50
92
  'InstanceSnapshotImportArgs',
93
+ 'InstanceSnapshotImportArgsDict',
51
94
  'IotDeviceCertificateArgs',
95
+ 'IotDeviceCertificateArgsDict',
52
96
  'IotDeviceMessageFiltersArgs',
97
+ 'IotDeviceMessageFiltersArgsDict',
53
98
  'IotDeviceMessageFiltersPublishArgs',
99
+ 'IotDeviceMessageFiltersPublishArgsDict',
54
100
  'IotDeviceMessageFiltersSubscribeArgs',
101
+ 'IotDeviceMessageFiltersSubscribeArgsDict',
55
102
  'IotRouteDatabaseArgs',
103
+ 'IotRouteDatabaseArgsDict',
56
104
  'IotRouteRestArgs',
105
+ 'IotRouteRestArgsDict',
57
106
  'IotRouteS3Args',
107
+ 'IotRouteS3ArgsDict',
58
108
  'IpamIpResourceArgs',
109
+ 'IpamIpResourceArgsDict',
59
110
  'IpamIpReverseArgs',
111
+ 'IpamIpReverseArgsDict',
60
112
  'IpamIpSourceArgs',
113
+ 'IpamIpSourceArgsDict',
61
114
  'JobDefinitionCronArgs',
115
+ 'JobDefinitionCronArgsDict',
62
116
  'KubernetesClusterAutoUpgradeArgs',
117
+ 'KubernetesClusterAutoUpgradeArgsDict',
63
118
  'KubernetesClusterAutoscalerConfigArgs',
119
+ 'KubernetesClusterAutoscalerConfigArgsDict',
64
120
  'KubernetesClusterKubeconfigArgs',
121
+ 'KubernetesClusterKubeconfigArgsDict',
65
122
  'KubernetesClusterOpenIdConnectConfigArgs',
123
+ 'KubernetesClusterOpenIdConnectConfigArgsDict',
66
124
  'KubernetesNodePoolNodeArgs',
125
+ 'KubernetesNodePoolNodeArgsDict',
67
126
  'KubernetesNodePoolUpgradePolicyArgs',
127
+ 'KubernetesNodePoolUpgradePolicyArgsDict',
68
128
  'LoadbalancerAclActionArgs',
129
+ 'LoadbalancerAclActionArgsDict',
69
130
  'LoadbalancerAclActionRedirectArgs',
131
+ 'LoadbalancerAclActionRedirectArgsDict',
70
132
  'LoadbalancerAclMatchArgs',
133
+ 'LoadbalancerAclMatchArgsDict',
71
134
  'LoadbalancerBackendHealthCheckHttpArgs',
135
+ 'LoadbalancerBackendHealthCheckHttpArgsDict',
72
136
  'LoadbalancerBackendHealthCheckHttpsArgs',
137
+ 'LoadbalancerBackendHealthCheckHttpsArgsDict',
73
138
  'LoadbalancerBackendHealthCheckTcpArgs',
139
+ 'LoadbalancerBackendHealthCheckTcpArgsDict',
74
140
  'LoadbalancerCertificateCustomCertificateArgs',
141
+ 'LoadbalancerCertificateCustomCertificateArgsDict',
75
142
  'LoadbalancerCertificateLetsencryptArgs',
143
+ 'LoadbalancerCertificateLetsencryptArgsDict',
76
144
  'LoadbalancerFrontendAclArgs',
145
+ 'LoadbalancerFrontendAclArgsDict',
77
146
  'LoadbalancerFrontendAclActionArgs',
147
+ 'LoadbalancerFrontendAclActionArgsDict',
78
148
  'LoadbalancerFrontendAclActionRedirectArgs',
149
+ 'LoadbalancerFrontendAclActionRedirectArgsDict',
79
150
  'LoadbalancerFrontendAclMatchArgs',
151
+ 'LoadbalancerFrontendAclMatchArgsDict',
80
152
  'LoadbalancerPrivateNetworkArgs',
153
+ 'LoadbalancerPrivateNetworkArgsDict',
81
154
  'MnqSnsCredentialsPermissionsArgs',
155
+ 'MnqSnsCredentialsPermissionsArgsDict',
82
156
  'MnqSqsCredentialsPermissionsArgs',
157
+ 'MnqSqsCredentialsPermissionsArgsDict',
83
158
  'ObjectBucketAclAccessControlPolicyArgs',
159
+ 'ObjectBucketAclAccessControlPolicyArgsDict',
84
160
  'ObjectBucketAclAccessControlPolicyGrantArgs',
161
+ 'ObjectBucketAclAccessControlPolicyGrantArgsDict',
85
162
  'ObjectBucketAclAccessControlPolicyGrantGranteeArgs',
163
+ 'ObjectBucketAclAccessControlPolicyGrantGranteeArgsDict',
86
164
  'ObjectBucketAclAccessControlPolicyOwnerArgs',
165
+ 'ObjectBucketAclAccessControlPolicyOwnerArgsDict',
87
166
  'ObjectBucketCorsRuleArgs',
167
+ 'ObjectBucketCorsRuleArgsDict',
88
168
  'ObjectBucketLifecycleRuleArgs',
169
+ 'ObjectBucketLifecycleRuleArgsDict',
89
170
  'ObjectBucketLifecycleRuleExpirationArgs',
171
+ 'ObjectBucketLifecycleRuleExpirationArgsDict',
90
172
  'ObjectBucketLifecycleRuleTransitionArgs',
173
+ 'ObjectBucketLifecycleRuleTransitionArgsDict',
91
174
  'ObjectBucketLockConfigurationRuleArgs',
175
+ 'ObjectBucketLockConfigurationRuleArgsDict',
92
176
  'ObjectBucketLockConfigurationRuleDefaultRetentionArgs',
177
+ 'ObjectBucketLockConfigurationRuleDefaultRetentionArgsDict',
93
178
  'ObjectBucketVersioningArgs',
179
+ 'ObjectBucketVersioningArgsDict',
94
180
  'ObjectBucketWebsiteConfigurationErrorDocumentArgs',
181
+ 'ObjectBucketWebsiteConfigurationErrorDocumentArgsDict',
95
182
  'ObjectBucketWebsiteConfigurationIndexDocumentArgs',
183
+ 'ObjectBucketWebsiteConfigurationIndexDocumentArgsDict',
96
184
  'RedisClusterAclArgs',
185
+ 'RedisClusterAclArgsDict',
97
186
  'RedisClusterPrivateNetworkArgs',
187
+ 'RedisClusterPrivateNetworkArgsDict',
98
188
  'RedisClusterPublicNetworkArgs',
189
+ 'RedisClusterPublicNetworkArgsDict',
99
190
  'TemDomainReputationArgs',
191
+ 'TemDomainReputationArgsDict',
100
192
  'VpcGatewayNetworkIpamConfigArgs',
193
+ 'VpcGatewayNetworkIpamConfigArgsDict',
101
194
  'VpcPrivateNetworkIpv4SubnetArgs',
195
+ 'VpcPrivateNetworkIpv4SubnetArgsDict',
102
196
  'VpcPrivateNetworkIpv6SubnetArgs',
197
+ 'VpcPrivateNetworkIpv6SubnetArgsDict',
103
198
  'WebhostingCpanelUrlArgs',
199
+ 'WebhostingCpanelUrlArgsDict',
104
200
  'WebhostingOptionArgs',
201
+ 'WebhostingOptionArgsDict',
105
202
  'GetIpamIpResourceArgs',
203
+ 'GetIpamIpResourceArgsDict',
106
204
  'GetIpamIpsResourceArgs',
205
+ 'GetIpamIpsResourceArgsDict',
107
206
  ]
108
207
 
208
+ MYPY = False
209
+
210
+ if not MYPY:
211
+ class BaremetalServerIpArgsDict(TypedDict):
212
+ address: NotRequired[pulumi.Input[str]]
213
+ """
214
+ The address of the IPv6.
215
+ """
216
+ id: NotRequired[pulumi.Input[str]]
217
+ """
218
+ The ID of the IPv6.
219
+ """
220
+ reverse: NotRequired[pulumi.Input[str]]
221
+ """
222
+ The reverse of the IPv6.
223
+ """
224
+ version: NotRequired[pulumi.Input[str]]
225
+ """
226
+ The type of the IPv6.
227
+ """
228
+ elif False:
229
+ BaremetalServerIpArgsDict: TypeAlias = Mapping[str, Any]
230
+
109
231
  @pulumi.input_type
110
232
  class BaremetalServerIpArgs:
111
233
  def __init__(__self__, *,
@@ -177,6 +299,27 @@ class BaremetalServerIpArgs:
177
299
  pulumi.set(self, "version", value)
178
300
 
179
301
 
302
+ if not MYPY:
303
+ class BaremetalServerIpv4ArgsDict(TypedDict):
304
+ address: NotRequired[pulumi.Input[str]]
305
+ """
306
+ The address of the IPv6.
307
+ """
308
+ id: NotRequired[pulumi.Input[str]]
309
+ """
310
+ The ID of the IPv6.
311
+ """
312
+ reverse: NotRequired[pulumi.Input[str]]
313
+ """
314
+ The reverse of the IPv6.
315
+ """
316
+ version: NotRequired[pulumi.Input[str]]
317
+ """
318
+ The type of the IPv6.
319
+ """
320
+ elif False:
321
+ BaremetalServerIpv4ArgsDict: TypeAlias = Mapping[str, Any]
322
+
180
323
  @pulumi.input_type
181
324
  class BaremetalServerIpv4Args:
182
325
  def __init__(__self__, *,
@@ -248,6 +391,27 @@ class BaremetalServerIpv4Args:
248
391
  pulumi.set(self, "version", value)
249
392
 
250
393
 
394
+ if not MYPY:
395
+ class BaremetalServerIpv6ArgsDict(TypedDict):
396
+ address: NotRequired[pulumi.Input[str]]
397
+ """
398
+ The address of the IPv6.
399
+ """
400
+ id: NotRequired[pulumi.Input[str]]
401
+ """
402
+ The ID of the IPv6.
403
+ """
404
+ reverse: NotRequired[pulumi.Input[str]]
405
+ """
406
+ The reverse of the IPv6.
407
+ """
408
+ version: NotRequired[pulumi.Input[str]]
409
+ """
410
+ The type of the IPv6.
411
+ """
412
+ elif False:
413
+ BaremetalServerIpv6ArgsDict: TypeAlias = Mapping[str, Any]
414
+
251
415
  @pulumi.input_type
252
416
  class BaremetalServerIpv6Args:
253
417
  def __init__(__self__, *,
@@ -319,6 +483,23 @@ class BaremetalServerIpv6Args:
319
483
  pulumi.set(self, "version", value)
320
484
 
321
485
 
486
+ if not MYPY:
487
+ class BaremetalServerOptionArgsDict(TypedDict):
488
+ id: pulumi.Input[str]
489
+ """
490
+ The id of the option to enable. Use [this endpoint](https://www.scaleway.com/en/developers/api/elastic-metal/#path-options-list-options) to find the available options IDs.
491
+ """
492
+ expires_at: NotRequired[pulumi.Input[str]]
493
+ """
494
+ The auto expiration date for compatible options
495
+ """
496
+ name: NotRequired[pulumi.Input[str]]
497
+ """
498
+ The name of the server.
499
+ """
500
+ elif False:
501
+ BaremetalServerOptionArgsDict: TypeAlias = Mapping[str, Any]
502
+
322
503
  @pulumi.input_type
323
504
  class BaremetalServerOptionArgs:
324
505
  def __init__(__self__, *,
@@ -373,6 +554,31 @@ class BaremetalServerOptionArgs:
373
554
  pulumi.set(self, "name", value)
374
555
 
375
556
 
557
+ if not MYPY:
558
+ class BaremetalServerPrivateNetworkArgsDict(TypedDict):
559
+ id: pulumi.Input[str]
560
+ """
561
+ The id of the private network to attach.
562
+ """
563
+ created_at: NotRequired[pulumi.Input[str]]
564
+ """
565
+ The date and time of the creation of the private network.
566
+ """
567
+ status: NotRequired[pulumi.Input[str]]
568
+ """
569
+ The private network status.
570
+ """
571
+ updated_at: NotRequired[pulumi.Input[str]]
572
+ """
573
+ The date and time of the last update of the private network.
574
+ """
575
+ vlan: NotRequired[pulumi.Input[int]]
576
+ """
577
+ The VLAN ID associated to the private network.
578
+ """
579
+ elif False:
580
+ BaremetalServerPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
581
+
376
582
  @pulumi.input_type
377
583
  class BaremetalServerPrivateNetworkArgs:
378
584
  def __init__(__self__, *,
@@ -459,6 +665,15 @@ class BaremetalServerPrivateNetworkArgs:
459
665
  pulumi.set(self, "vlan", value)
460
666
 
461
667
 
668
+ if not MYPY:
669
+ class CockpitAlertManagerContactPointArgsDict(TypedDict):
670
+ email: NotRequired[pulumi.Input[str]]
671
+ """
672
+ Email addresses for the alert receivers
673
+ """
674
+ elif False:
675
+ CockpitAlertManagerContactPointArgsDict: TypeAlias = Mapping[str, Any]
676
+
462
677
  @pulumi.input_type
463
678
  class CockpitAlertManagerContactPointArgs:
464
679
  def __init__(__self__, *,
@@ -482,6 +697,31 @@ class CockpitAlertManagerContactPointArgs:
482
697
  pulumi.set(self, "email", value)
483
698
 
484
699
 
700
+ if not MYPY:
701
+ class CockpitEndpointArgsDict(TypedDict):
702
+ alertmanager_url: NotRequired[pulumi.Input[str]]
703
+ """
704
+ The alertmanager URL.
705
+ """
706
+ grafana_url: NotRequired[pulumi.Input[str]]
707
+ """
708
+ The grafana URL.
709
+ """
710
+ logs_url: NotRequired[pulumi.Input[str]]
711
+ """
712
+ The logs URL.
713
+ """
714
+ metrics_url: NotRequired[pulumi.Input[str]]
715
+ """
716
+ The metrics URL.
717
+ """
718
+ traces_url: NotRequired[pulumi.Input[str]]
719
+ """
720
+ The traces URL.
721
+ """
722
+ elif False:
723
+ CockpitEndpointArgsDict: TypeAlias = Mapping[str, Any]
724
+
485
725
  @pulumi.input_type
486
726
  class CockpitEndpointArgs:
487
727
  def __init__(__self__, *,
@@ -569,6 +809,19 @@ class CockpitEndpointArgs:
569
809
  pulumi.set(self, "traces_url", value)
570
810
 
571
811
 
812
+ if not MYPY:
813
+ class CockpitPushUrlArgsDict(TypedDict):
814
+ push_logs_url: NotRequired[pulumi.Input[str]]
815
+ """
816
+ Push URL for logs (Grafana Loki)
817
+ """
818
+ push_metrics_url: NotRequired[pulumi.Input[str]]
819
+ """
820
+ Push URL for metrics (Grafana Mimir)
821
+ """
822
+ elif False:
823
+ CockpitPushUrlArgsDict: TypeAlias = Mapping[str, Any]
824
+
572
825
  @pulumi.input_type
573
826
  class CockpitPushUrlArgs:
574
827
  def __init__(__self__, *,
@@ -608,6 +861,47 @@ class CockpitPushUrlArgs:
608
861
  pulumi.set(self, "push_metrics_url", value)
609
862
 
610
863
 
864
+ if not MYPY:
865
+ class CockpitTokenScopesArgsDict(TypedDict):
866
+ query_logs: NotRequired[pulumi.Input[bool]]
867
+ """
868
+ Query logs.
869
+ """
870
+ query_metrics: NotRequired[pulumi.Input[bool]]
871
+ """
872
+ Query metrics.
873
+ """
874
+ query_traces: NotRequired[pulumi.Input[bool]]
875
+ """
876
+ Query traces.
877
+ """
878
+ setup_alerts: NotRequired[pulumi.Input[bool]]
879
+ """
880
+ Setup alerts.
881
+ """
882
+ setup_logs_rules: NotRequired[pulumi.Input[bool]]
883
+ """
884
+ Setup logs rules.
885
+ """
886
+ setup_metrics_rules: NotRequired[pulumi.Input[bool]]
887
+ """
888
+ Setup metrics rules.
889
+ """
890
+ write_logs: NotRequired[pulumi.Input[bool]]
891
+ """
892
+ Write logs.
893
+ """
894
+ write_metrics: NotRequired[pulumi.Input[bool]]
895
+ """
896
+ Write metrics.
897
+ """
898
+ write_traces: NotRequired[pulumi.Input[bool]]
899
+ """
900
+ Write traces.
901
+ """
902
+ elif False:
903
+ CockpitTokenScopesArgsDict: TypeAlias = Mapping[str, Any]
904
+
611
905
  @pulumi.input_type
612
906
  class CockpitTokenScopesArgs:
613
907
  def __init__(__self__, *,
@@ -759,6 +1053,27 @@ class CockpitTokenScopesArgs:
759
1053
  pulumi.set(self, "write_traces", value)
760
1054
 
761
1055
 
1056
+ if not MYPY:
1057
+ class ContainerTriggerNatsArgsDict(TypedDict):
1058
+ subject: pulumi.Input[str]
1059
+ """
1060
+ The subject to listen to
1061
+ """
1062
+ account_id: NotRequired[pulumi.Input[str]]
1063
+ """
1064
+ ID of the mnq nats account.
1065
+ """
1066
+ project_id: NotRequired[pulumi.Input[str]]
1067
+ """
1068
+ ID of the project that contain the mnq nats account, defaults to provider's project
1069
+ """
1070
+ region: NotRequired[pulumi.Input[str]]
1071
+ """
1072
+ Region where the mnq nats account is, defaults to provider's region
1073
+ """
1074
+ elif False:
1075
+ ContainerTriggerNatsArgsDict: TypeAlias = Mapping[str, Any]
1076
+
762
1077
  @pulumi.input_type
763
1078
  class ContainerTriggerNatsArgs:
764
1079
  def __init__(__self__, *,
@@ -829,6 +1144,27 @@ class ContainerTriggerNatsArgs:
829
1144
  pulumi.set(self, "region", value)
830
1145
 
831
1146
 
1147
+ if not MYPY:
1148
+ class ContainerTriggerSqsArgsDict(TypedDict):
1149
+ queue: pulumi.Input[str]
1150
+ """
1151
+ Name of the queue
1152
+ """
1153
+ namespace_id: NotRequired[pulumi.Input[str]]
1154
+ """
1155
+ ID of the mnq namespace. Deprecated.
1156
+ """
1157
+ project_id: NotRequired[pulumi.Input[str]]
1158
+ """
1159
+ ID of the project where sqs is enabled, defaults to provider's project
1160
+ """
1161
+ region: NotRequired[pulumi.Input[str]]
1162
+ """
1163
+ Region where sqs is enabled, defaults to provider's region
1164
+ """
1165
+ elif False:
1166
+ ContainerTriggerSqsArgsDict: TypeAlias = Mapping[str, Any]
1167
+
832
1168
  @pulumi.input_type
833
1169
  class ContainerTriggerSqsArgs:
834
1170
  def __init__(__self__, *,
@@ -903,6 +1239,19 @@ class ContainerTriggerSqsArgs:
903
1239
  pulumi.set(self, "region", value)
904
1240
 
905
1241
 
1242
+ if not MYPY:
1243
+ class DatabaseAclAclRuleArgsDict(TypedDict):
1244
+ ip: pulumi.Input[str]
1245
+ """
1246
+ The IP range to whitelist in [CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation)
1247
+ """
1248
+ description: NotRequired[pulumi.Input[str]]
1249
+ """
1250
+ A text describing this rule. Default description: `IP allowed`
1251
+ """
1252
+ elif False:
1253
+ DatabaseAclAclRuleArgsDict: TypeAlias = Mapping[str, Any]
1254
+
906
1255
  @pulumi.input_type
907
1256
  class DatabaseAclAclRuleArgs:
908
1257
  def __init__(__self__, *,
@@ -941,6 +1290,31 @@ class DatabaseAclAclRuleArgs:
941
1290
  pulumi.set(self, "description", value)
942
1291
 
943
1292
 
1293
+ if not MYPY:
1294
+ class DatabaseInstanceLoadBalancerArgsDict(TypedDict):
1295
+ endpoint_id: NotRequired[pulumi.Input[str]]
1296
+ """
1297
+ The ID of the endpoint.
1298
+ """
1299
+ hostname: NotRequired[pulumi.Input[str]]
1300
+ """
1301
+ Hostname of the endpoint.
1302
+ """
1303
+ ip: NotRequired[pulumi.Input[str]]
1304
+ """
1305
+ IPv4 address on the network.
1306
+ """
1307
+ name: NotRequired[pulumi.Input[str]]
1308
+ """
1309
+ The name of the Database Instance.
1310
+ """
1311
+ port: NotRequired[pulumi.Input[int]]
1312
+ """
1313
+ Port in the Private Network.
1314
+ """
1315
+ elif False:
1316
+ DatabaseInstanceLoadBalancerArgsDict: TypeAlias = Mapping[str, Any]
1317
+
944
1318
  @pulumi.input_type
945
1319
  class DatabaseInstanceLoadBalancerArgs:
946
1320
  def __init__(__self__, *,
@@ -1028,6 +1402,19 @@ class DatabaseInstanceLoadBalancerArgs:
1028
1402
  pulumi.set(self, "port", value)
1029
1403
 
1030
1404
 
1405
+ if not MYPY:
1406
+ class DatabaseInstanceLogsPolicyArgsDict(TypedDict):
1407
+ max_age_retention: NotRequired[pulumi.Input[int]]
1408
+ """
1409
+ The max age (in days) of remote logs to keep on the Database Instance
1410
+ """
1411
+ total_disk_retention: NotRequired[pulumi.Input[int]]
1412
+ """
1413
+ The max disk size of remote logs to keep on the Database Instance.
1414
+ """
1415
+ elif False:
1416
+ DatabaseInstanceLogsPolicyArgsDict: TypeAlias = Mapping[str, Any]
1417
+
1031
1418
  @pulumi.input_type
1032
1419
  class DatabaseInstanceLogsPolicyArgs:
1033
1420
  def __init__(__self__, *,
@@ -1067,6 +1454,47 @@ class DatabaseInstanceLogsPolicyArgs:
1067
1454
  pulumi.set(self, "total_disk_retention", value)
1068
1455
 
1069
1456
 
1457
+ if not MYPY:
1458
+ class DatabaseInstancePrivateNetworkArgsDict(TypedDict):
1459
+ pn_id: pulumi.Input[str]
1460
+ """
1461
+ The private network ID
1462
+ """
1463
+ enable_ipam: NotRequired[pulumi.Input[bool]]
1464
+ """
1465
+ Whether or not the private network endpoint should be configured with IPAM
1466
+ """
1467
+ endpoint_id: NotRequired[pulumi.Input[str]]
1468
+ """
1469
+ The ID of the endpoint.
1470
+ """
1471
+ hostname: NotRequired[pulumi.Input[str]]
1472
+ """
1473
+ Hostname of the endpoint.
1474
+ """
1475
+ ip: NotRequired[pulumi.Input[str]]
1476
+ """
1477
+ IPv4 address on the network.
1478
+ """
1479
+ ip_net: NotRequired[pulumi.Input[str]]
1480
+ """
1481
+ The IP with the given mask within the private subnet
1482
+ """
1483
+ name: NotRequired[pulumi.Input[str]]
1484
+ """
1485
+ The name of the Database Instance.
1486
+ """
1487
+ port: NotRequired[pulumi.Input[int]]
1488
+ """
1489
+ Port in the Private Network.
1490
+ """
1491
+ zone: NotRequired[pulumi.Input[str]]
1492
+ """
1493
+ The zone you want to attach the resource to
1494
+ """
1495
+ elif False:
1496
+ DatabaseInstancePrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
1497
+
1070
1498
  @pulumi.input_type
1071
1499
  class DatabaseInstancePrivateNetworkArgs:
1072
1500
  def __init__(__self__, *,
@@ -1217,6 +1645,23 @@ class DatabaseInstancePrivateNetworkArgs:
1217
1645
  pulumi.set(self, "zone", value)
1218
1646
 
1219
1647
 
1648
+ if not MYPY:
1649
+ class DatabaseInstanceReadReplicaArgsDict(TypedDict):
1650
+ ip: NotRequired[pulumi.Input[str]]
1651
+ """
1652
+ IPv4 address on the network.
1653
+ """
1654
+ name: NotRequired[pulumi.Input[str]]
1655
+ """
1656
+ The name of the Database Instance.
1657
+ """
1658
+ port: NotRequired[pulumi.Input[int]]
1659
+ """
1660
+ Port in the Private Network.
1661
+ """
1662
+ elif False:
1663
+ DatabaseInstanceReadReplicaArgsDict: TypeAlias = Mapping[str, Any]
1664
+
1220
1665
  @pulumi.input_type
1221
1666
  class DatabaseInstanceReadReplicaArgs:
1222
1667
  def __init__(__self__, *,
@@ -1272,6 +1717,31 @@ class DatabaseInstanceReadReplicaArgs:
1272
1717
  pulumi.set(self, "port", value)
1273
1718
 
1274
1719
 
1720
+ if not MYPY:
1721
+ class DatabaseReadReplicaDirectAccessArgsDict(TypedDict):
1722
+ endpoint_id: NotRequired[pulumi.Input[str]]
1723
+ """
1724
+ The ID of the endpoint of the Read Replica.
1725
+ """
1726
+ hostname: NotRequired[pulumi.Input[str]]
1727
+ """
1728
+ Hostname of the endpoint. Only one of IP and hostname may be set.
1729
+ """
1730
+ ip: NotRequired[pulumi.Input[str]]
1731
+ """
1732
+ IPv4 address of the endpoint (IP address). Only one of IP and hostname may be set.
1733
+ """
1734
+ name: NotRequired[pulumi.Input[str]]
1735
+ """
1736
+ Name of the endpoint.
1737
+ """
1738
+ port: NotRequired[pulumi.Input[int]]
1739
+ """
1740
+ TCP port of the endpoint.
1741
+ """
1742
+ elif False:
1743
+ DatabaseReadReplicaDirectAccessArgsDict: TypeAlias = Mapping[str, Any]
1744
+
1275
1745
  @pulumi.input_type
1276
1746
  class DatabaseReadReplicaDirectAccessArgs:
1277
1747
  def __init__(__self__, *,
@@ -1359,32 +1829,75 @@ class DatabaseReadReplicaDirectAccessArgs:
1359
1829
  pulumi.set(self, "port", value)
1360
1830
 
1361
1831
 
1362
- @pulumi.input_type
1363
- class DatabaseReadReplicaPrivateNetworkArgs:
1364
- def __init__(__self__, *,
1365
- private_network_id: pulumi.Input[str],
1366
- enable_ipam: Optional[pulumi.Input[bool]] = None,
1367
- endpoint_id: Optional[pulumi.Input[str]] = None,
1368
- hostname: Optional[pulumi.Input[str]] = None,
1369
- ip: Optional[pulumi.Input[str]] = None,
1370
- name: Optional[pulumi.Input[str]] = None,
1371
- port: Optional[pulumi.Input[int]] = None,
1372
- service_ip: Optional[pulumi.Input[str]] = None,
1373
- zone: Optional[pulumi.Input[str]] = None):
1832
+ if not MYPY:
1833
+ class DatabaseReadReplicaPrivateNetworkArgsDict(TypedDict):
1834
+ private_network_id: pulumi.Input[str]
1374
1835
  """
1375
- :param pulumi.Input[str] private_network_id: UUID of the Private Netork to be connected to the Read Replica.
1376
- :param pulumi.Input[bool] enable_ipam: If true, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
1377
-
1378
- > **Important:** One of `service_ip` or `enable_ipam=true` must be set.
1379
- :param pulumi.Input[str] endpoint_id: The ID of the endpoint of the Read Replica.
1380
- :param pulumi.Input[str] hostname: Hostname of the endpoint. Only one of IP and hostname may be set.
1381
- :param pulumi.Input[str] ip: IPv4 address of the endpoint (IP address). Only one of IP and hostname may be set.
1382
- :param pulumi.Input[str] name: Name of the endpoint.
1383
- :param pulumi.Input[int] port: TCP port of the endpoint.
1384
- :param pulumi.Input[str] service_ip: The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. If not set, The IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
1385
- :param pulumi.Input[str] zone: Private network zone
1836
+ UUID of the Private Netork to be connected to the Read Replica.
1386
1837
  """
1387
- pulumi.set(__self__, "private_network_id", private_network_id)
1838
+ enable_ipam: NotRequired[pulumi.Input[bool]]
1839
+ """
1840
+ If true, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
1841
+
1842
+ > **Important:** One of `service_ip` or `enable_ipam=true` must be set.
1843
+ """
1844
+ endpoint_id: NotRequired[pulumi.Input[str]]
1845
+ """
1846
+ The ID of the endpoint of the Read Replica.
1847
+ """
1848
+ hostname: NotRequired[pulumi.Input[str]]
1849
+ """
1850
+ Hostname of the endpoint. Only one of IP and hostname may be set.
1851
+ """
1852
+ ip: NotRequired[pulumi.Input[str]]
1853
+ """
1854
+ IPv4 address of the endpoint (IP address). Only one of IP and hostname may be set.
1855
+ """
1856
+ name: NotRequired[pulumi.Input[str]]
1857
+ """
1858
+ Name of the endpoint.
1859
+ """
1860
+ port: NotRequired[pulumi.Input[int]]
1861
+ """
1862
+ TCP port of the endpoint.
1863
+ """
1864
+ service_ip: NotRequired[pulumi.Input[str]]
1865
+ """
1866
+ The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. If not set, The IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
1867
+ """
1868
+ zone: NotRequired[pulumi.Input[str]]
1869
+ """
1870
+ Private network zone
1871
+ """
1872
+ elif False:
1873
+ DatabaseReadReplicaPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
1874
+
1875
+ @pulumi.input_type
1876
+ class DatabaseReadReplicaPrivateNetworkArgs:
1877
+ def __init__(__self__, *,
1878
+ private_network_id: pulumi.Input[str],
1879
+ enable_ipam: Optional[pulumi.Input[bool]] = None,
1880
+ endpoint_id: Optional[pulumi.Input[str]] = None,
1881
+ hostname: Optional[pulumi.Input[str]] = None,
1882
+ ip: Optional[pulumi.Input[str]] = None,
1883
+ name: Optional[pulumi.Input[str]] = None,
1884
+ port: Optional[pulumi.Input[int]] = None,
1885
+ service_ip: Optional[pulumi.Input[str]] = None,
1886
+ zone: Optional[pulumi.Input[str]] = None):
1887
+ """
1888
+ :param pulumi.Input[str] private_network_id: UUID of the Private Netork to be connected to the Read Replica.
1889
+ :param pulumi.Input[bool] enable_ipam: If true, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
1890
+
1891
+ > **Important:** One of `service_ip` or `enable_ipam=true` must be set.
1892
+ :param pulumi.Input[str] endpoint_id: The ID of the endpoint of the Read Replica.
1893
+ :param pulumi.Input[str] hostname: Hostname of the endpoint. Only one of IP and hostname may be set.
1894
+ :param pulumi.Input[str] ip: IPv4 address of the endpoint (IP address). Only one of IP and hostname may be set.
1895
+ :param pulumi.Input[str] name: Name of the endpoint.
1896
+ :param pulumi.Input[int] port: TCP port of the endpoint.
1897
+ :param pulumi.Input[str] service_ip: The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. If not set, The IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
1898
+ :param pulumi.Input[str] zone: Private network zone
1899
+ """
1900
+ pulumi.set(__self__, "private_network_id", private_network_id)
1388
1901
  if enable_ipam is not None:
1389
1902
  pulumi.set(__self__, "enable_ipam", enable_ipam)
1390
1903
  if endpoint_id is not None:
@@ -1513,6 +2026,39 @@ class DatabaseReadReplicaPrivateNetworkArgs:
1513
2026
  pulumi.set(self, "zone", value)
1514
2027
 
1515
2028
 
2029
+ if not MYPY:
2030
+ class DocumentdbPrivateNetworkEndpointPrivateNetworkArgsDict(TypedDict):
2031
+ id: pulumi.Input[str]
2032
+ """
2033
+ The private network ID.
2034
+ """
2035
+ hostname: NotRequired[pulumi.Input[str]]
2036
+ """
2037
+ The hostname of your endpoint.
2038
+ """
2039
+ ip: NotRequired[pulumi.Input[str]]
2040
+ """
2041
+ The IP of your private network service.
2042
+ """
2043
+ ip_net: NotRequired[pulumi.Input[str]]
2044
+ """
2045
+ The IP network address within the private subnet. This must be an IPv4 address with a CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM) service if not set.
2046
+ """
2047
+ name: NotRequired[pulumi.Input[str]]
2048
+ """
2049
+ The name of your private service.
2050
+ """
2051
+ port: NotRequired[pulumi.Input[int]]
2052
+ """
2053
+ The port of your private service.
2054
+ """
2055
+ zone: NotRequired[pulumi.Input[str]]
2056
+ """
2057
+ The zone of your endpoint.
2058
+ """
2059
+ elif False:
2060
+ DocumentdbPrivateNetworkEndpointPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
2061
+
1516
2062
  @pulumi.input_type
1517
2063
  class DocumentdbPrivateNetworkEndpointPrivateNetworkArgs:
1518
2064
  def __init__(__self__, *,
@@ -1631,6 +2177,31 @@ class DocumentdbPrivateNetworkEndpointPrivateNetworkArgs:
1631
2177
  pulumi.set(self, "zone", value)
1632
2178
 
1633
2179
 
2180
+ if not MYPY:
2181
+ class DocumentdbReadReplicaDirectAccessArgsDict(TypedDict):
2182
+ endpoint_id: NotRequired[pulumi.Input[str]]
2183
+ """
2184
+ The ID of the endpoint of the read replica.
2185
+ """
2186
+ hostname: NotRequired[pulumi.Input[str]]
2187
+ """
2188
+ Hostname of the endpoint. Only one of ip and hostname may be set.
2189
+ """
2190
+ ip: NotRequired[pulumi.Input[str]]
2191
+ """
2192
+ IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
2193
+ """
2194
+ name: NotRequired[pulumi.Input[str]]
2195
+ """
2196
+ Name of the endpoint.
2197
+ """
2198
+ port: NotRequired[pulumi.Input[int]]
2199
+ """
2200
+ TCP port of the endpoint.
2201
+ """
2202
+ elif False:
2203
+ DocumentdbReadReplicaDirectAccessArgsDict: TypeAlias = Mapping[str, Any]
2204
+
1634
2205
  @pulumi.input_type
1635
2206
  class DocumentdbReadReplicaDirectAccessArgs:
1636
2207
  def __init__(__self__, *,
@@ -1718,6 +2289,45 @@ class DocumentdbReadReplicaDirectAccessArgs:
1718
2289
  pulumi.set(self, "port", value)
1719
2290
 
1720
2291
 
2292
+ if not MYPY:
2293
+ class DocumentdbReadReplicaPrivateNetworkArgsDict(TypedDict):
2294
+ private_network_id: pulumi.Input[str]
2295
+ """
2296
+ UUID of the private network to be connected to the read replica.
2297
+ """
2298
+ endpoint_id: NotRequired[pulumi.Input[str]]
2299
+ """
2300
+ The ID of the endpoint of the read replica.
2301
+ """
2302
+ hostname: NotRequired[pulumi.Input[str]]
2303
+ """
2304
+ Hostname of the endpoint. Only one of ip and hostname may be set.
2305
+ """
2306
+ ip: NotRequired[pulumi.Input[str]]
2307
+ """
2308
+ IPv4 address of the endpoint (IP address). Only one of ip and hostname may be set.
2309
+ """
2310
+ name: NotRequired[pulumi.Input[str]]
2311
+ """
2312
+ Name of the endpoint.
2313
+ """
2314
+ port: NotRequired[pulumi.Input[int]]
2315
+ """
2316
+ TCP port of the endpoint.
2317
+ """
2318
+ service_ip: NotRequired[pulumi.Input[str]]
2319
+ """
2320
+ The IP network address within the private subnet. This must be an IPv4 address with a
2321
+ CIDR notation. The IP network address within the private subnet is determined by the IP Address Management (IPAM)
2322
+ service if not set.
2323
+ """
2324
+ zone: NotRequired[pulumi.Input[str]]
2325
+ """
2326
+ Private network zone
2327
+ """
2328
+ elif False:
2329
+ DocumentdbReadReplicaPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
2330
+
1721
2331
  @pulumi.input_type
1722
2332
  class DocumentdbReadReplicaPrivateNetworkArgs:
1723
2333
  def __init__(__self__, *,
@@ -1856,6 +2466,15 @@ class DocumentdbReadReplicaPrivateNetworkArgs:
1856
2466
  pulumi.set(self, "zone", value)
1857
2467
 
1858
2468
 
2469
+ if not MYPY:
2470
+ class DomainRecordGeoIpArgsDict(TypedDict):
2471
+ matches: pulumi.Input[Sequence[pulumi.Input['DomainRecordGeoIpMatchArgsDict']]]
2472
+ """
2473
+ The list of matches
2474
+ """
2475
+ elif False:
2476
+ DomainRecordGeoIpArgsDict: TypeAlias = Mapping[str, Any]
2477
+
1859
2478
  @pulumi.input_type
1860
2479
  class DomainRecordGeoIpArgs:
1861
2480
  def __init__(__self__, *,
@@ -1878,6 +2497,23 @@ class DomainRecordGeoIpArgs:
1878
2497
  pulumi.set(self, "matches", value)
1879
2498
 
1880
2499
 
2500
+ if not MYPY:
2501
+ class DomainRecordGeoIpMatchArgsDict(TypedDict):
2502
+ data: pulumi.Input[str]
2503
+ """
2504
+ The content of the record (an IPv4 for an `A`, a string for a `TXT`...).
2505
+ """
2506
+ continents: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
2507
+ """
2508
+ List of continents (eg: EU for Europe, NA for North America, AS for Asia...). List of all continents code: https://api.scaleway.com/domain-private/v2beta1/continents
2509
+ """
2510
+ countries: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
2511
+ """
2512
+ List of countries (eg: FR for France, US for the United States, GB for Great Britain...). List of all countries code: https://api.scaleway.com/domain-private/v2beta1/countries
2513
+ """
2514
+ elif False:
2515
+ DomainRecordGeoIpMatchArgsDict: TypeAlias = Mapping[str, Any]
2516
+
1881
2517
  @pulumi.input_type
1882
2518
  class DomainRecordGeoIpMatchArgs:
1883
2519
  def __init__(__self__, *,
@@ -1932,6 +2568,31 @@ class DomainRecordGeoIpMatchArgs:
1932
2568
  pulumi.set(self, "countries", value)
1933
2569
 
1934
2570
 
2571
+ if not MYPY:
2572
+ class DomainRecordHttpServiceArgsDict(TypedDict):
2573
+ ips: pulumi.Input[Sequence[pulumi.Input[str]]]
2574
+ """
2575
+ IPs to check
2576
+ """
2577
+ must_contain: pulumi.Input[str]
2578
+ """
2579
+ Text to search
2580
+ """
2581
+ strategy: pulumi.Input[str]
2582
+ """
2583
+ Strategy to return an IP from the IPs list
2584
+ """
2585
+ url: pulumi.Input[str]
2586
+ """
2587
+ URL to match the must_contain text to validate an IP
2588
+ """
2589
+ user_agent: NotRequired[pulumi.Input[str]]
2590
+ """
2591
+ User-agent used when checking the URL
2592
+ """
2593
+ elif False:
2594
+ DomainRecordHttpServiceArgsDict: TypeAlias = Mapping[str, Any]
2595
+
1935
2596
  @pulumi.input_type
1936
2597
  class DomainRecordHttpServiceArgs:
1937
2598
  def __init__(__self__, *,
@@ -2015,6 +2676,19 @@ class DomainRecordHttpServiceArgs:
2015
2676
  pulumi.set(self, "user_agent", value)
2016
2677
 
2017
2678
 
2679
+ if not MYPY:
2680
+ class DomainRecordViewArgsDict(TypedDict):
2681
+ data: pulumi.Input[str]
2682
+ """
2683
+ The content of the record (an IPv4 for an `A`, a string for a `TXT`...).
2684
+ """
2685
+ subnet: pulumi.Input[str]
2686
+ """
2687
+ The subnet of the view
2688
+ """
2689
+ elif False:
2690
+ DomainRecordViewArgsDict: TypeAlias = Mapping[str, Any]
2691
+
2018
2692
  @pulumi.input_type
2019
2693
  class DomainRecordViewArgs:
2020
2694
  def __init__(__self__, *,
@@ -2052,6 +2726,19 @@ class DomainRecordViewArgs:
2052
2726
  pulumi.set(self, "subnet", value)
2053
2727
 
2054
2728
 
2729
+ if not MYPY:
2730
+ class DomainRecordWeightedArgsDict(TypedDict):
2731
+ ip: pulumi.Input[str]
2732
+ """
2733
+ The weighted IP
2734
+ """
2735
+ weight: pulumi.Input[int]
2736
+ """
2737
+ The weight of the IP
2738
+ """
2739
+ elif False:
2740
+ DomainRecordWeightedArgsDict: TypeAlias = Mapping[str, Any]
2741
+
2055
2742
  @pulumi.input_type
2056
2743
  class DomainRecordWeightedArgs:
2057
2744
  def __init__(__self__, *,
@@ -2089,6 +2776,27 @@ class DomainRecordWeightedArgs:
2089
2776
  pulumi.set(self, "weight", value)
2090
2777
 
2091
2778
 
2779
+ if not MYPY:
2780
+ class FunctionTriggerNatsArgsDict(TypedDict):
2781
+ subject: pulumi.Input[str]
2782
+ """
2783
+ The subject to listen to
2784
+ """
2785
+ account_id: NotRequired[pulumi.Input[str]]
2786
+ """
2787
+ ID of the mnq nats account.
2788
+ """
2789
+ project_id: NotRequired[pulumi.Input[str]]
2790
+ """
2791
+ ID of the project that contain the mnq nats account, defaults to provider's project
2792
+ """
2793
+ region: NotRequired[pulumi.Input[str]]
2794
+ """
2795
+ Region where the mnq nats account is, defaults to provider's region
2796
+ """
2797
+ elif False:
2798
+ FunctionTriggerNatsArgsDict: TypeAlias = Mapping[str, Any]
2799
+
2092
2800
  @pulumi.input_type
2093
2801
  class FunctionTriggerNatsArgs:
2094
2802
  def __init__(__self__, *,
@@ -2159,6 +2867,27 @@ class FunctionTriggerNatsArgs:
2159
2867
  pulumi.set(self, "region", value)
2160
2868
 
2161
2869
 
2870
+ if not MYPY:
2871
+ class FunctionTriggerSqsArgsDict(TypedDict):
2872
+ queue: pulumi.Input[str]
2873
+ """
2874
+ Name of the queue
2875
+ """
2876
+ namespace_id: NotRequired[pulumi.Input[str]]
2877
+ """
2878
+ ID of the mnq namespace. Deprecated.
2879
+ """
2880
+ project_id: NotRequired[pulumi.Input[str]]
2881
+ """
2882
+ ID of the project that contain the mnq namespace, defaults to provider's project
2883
+ """
2884
+ region: NotRequired[pulumi.Input[str]]
2885
+ """
2886
+ Region where the mnq namespace is, defaults to provider's region
2887
+ """
2888
+ elif False:
2889
+ FunctionTriggerSqsArgsDict: TypeAlias = Mapping[str, Any]
2890
+
2162
2891
  @pulumi.input_type
2163
2892
  class FunctionTriggerSqsArgs:
2164
2893
  def __init__(__self__, *,
@@ -2233,6 +2962,31 @@ class FunctionTriggerSqsArgs:
2233
2962
  pulumi.set(self, "region", value)
2234
2963
 
2235
2964
 
2965
+ if not MYPY:
2966
+ class IamPolicyRuleArgsDict(TypedDict):
2967
+ permission_set_names: pulumi.Input[Sequence[pulumi.Input[str]]]
2968
+ """
2969
+ Names of permission sets bind to the rule.
2970
+
2971
+ **_TIP:_** You can use the Scaleway CLI to list the permissions details. e.g:
2972
+
2973
+ ```shell
2974
+ scw IAM permission-set list
2975
+ ```
2976
+ """
2977
+ organization_id: NotRequired[pulumi.Input[str]]
2978
+ """
2979
+ ID of organization scoped to the rule, this can be used to create a rule for all projects in an organization.
2980
+ """
2981
+ project_ids: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
2982
+ """
2983
+ List of project IDs scoped to the rule.
2984
+
2985
+ > **Important** One `organization_id` or `project_ids` must be set per rule.
2986
+ """
2987
+ elif False:
2988
+ IamPolicyRuleArgsDict: TypeAlias = Mapping[str, Any]
2989
+
2236
2990
  @pulumi.input_type
2237
2991
  class IamPolicyRuleArgs:
2238
2992
  def __init__(__self__, *,
@@ -2303,6 +3057,63 @@ class IamPolicyRuleArgs:
2303
3057
  pulumi.set(self, "project_ids", value)
2304
3058
 
2305
3059
 
3060
+ if not MYPY:
3061
+ class InstanceImageAdditionalVolumeArgsDict(TypedDict):
3062
+ creation_date: NotRequired[pulumi.Input[str]]
3063
+ """
3064
+ Date of the volume creation.
3065
+ """
3066
+ export_uri: NotRequired[pulumi.Input[str]]
3067
+ """
3068
+ The export URI of the volume.
3069
+ """
3070
+ id: NotRequired[pulumi.Input[str]]
3071
+ """
3072
+ ID of the server containing the volume.
3073
+ """
3074
+ modification_date: NotRequired[pulumi.Input[str]]
3075
+ """
3076
+ Date of volume latest update.
3077
+ """
3078
+ name: NotRequired[pulumi.Input[str]]
3079
+ """
3080
+ The name of the image. If not provided it will be randomly generated.
3081
+ """
3082
+ organization: NotRequired[pulumi.Input[str]]
3083
+ """
3084
+ The organization ID the volume is associated with.
3085
+ """
3086
+ project: NotRequired[pulumi.Input[str]]
3087
+ """
3088
+ ID of the project the volume is associated with
3089
+ """
3090
+ server: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
3091
+ """
3092
+ Description of the server containing the volume (in case the image is a backup from a server).
3093
+ """
3094
+ size: NotRequired[pulumi.Input[int]]
3095
+ """
3096
+ The size of the volume.
3097
+ """
3098
+ state: NotRequired[pulumi.Input[str]]
3099
+ """
3100
+ State of the volume.
3101
+ """
3102
+ tags: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
3103
+ """
3104
+ A list of tags to apply to the image.
3105
+ """
3106
+ volume_type: NotRequired[pulumi.Input[str]]
3107
+ """
3108
+ The type of volume, possible values are `l_ssd` and `b_ssd`.
3109
+ """
3110
+ zone: NotRequired[pulumi.Input[str]]
3111
+ """
3112
+ The zone in which the image should be created.
3113
+ """
3114
+ elif False:
3115
+ InstanceImageAdditionalVolumeArgsDict: TypeAlias = Mapping[str, Any]
3116
+
2306
3117
  @pulumi.input_type
2307
3118
  class InstanceImageAdditionalVolumeArgs:
2308
3119
  def __init__(__self__, *,
@@ -2518,17 +3329,46 @@ class InstanceImageAdditionalVolumeArgs:
2518
3329
  pulumi.set(self, "zone", value)
2519
3330
 
2520
3331
 
2521
- @pulumi.input_type
2522
- class InstanceSecurityGroupInboundRuleArgs:
2523
- def __init__(__self__, *,
2524
- action: pulumi.Input[str],
2525
- ip: Optional[pulumi.Input[str]] = None,
2526
- ip_range: Optional[pulumi.Input[str]] = None,
2527
- port: Optional[pulumi.Input[int]] = None,
2528
- port_range: Optional[pulumi.Input[str]] = None,
2529
- protocol: Optional[pulumi.Input[str]] = None):
3332
+ if not MYPY:
3333
+ class InstanceSecurityGroupInboundRuleArgsDict(TypedDict):
3334
+ action: pulumi.Input[str]
2530
3335
  """
2531
- :param pulumi.Input[str] action: The action to take when rule match. Possible values are: `accept` or `drop`.
3336
+ The action to take when rule match. Possible values are: `accept` or `drop`.
3337
+ """
3338
+ ip: NotRequired[pulumi.Input[str]]
3339
+ """
3340
+ The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
3341
+ """
3342
+ ip_range: NotRequired[pulumi.Input[str]]
3343
+ """
3344
+ The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
3345
+ """
3346
+ port: NotRequired[pulumi.Input[int]]
3347
+ """
3348
+ The port this rule applies to. If no `port` nor `port_range` are specified, the rule will apply to all port. Only one of `port` and `port_range` should be specified.
3349
+ """
3350
+ port_range: NotRequired[pulumi.Input[str]]
3351
+ """
3352
+ Computed port range for this rule (e.g: 1-1024, 22-22)
3353
+ """
3354
+ protocol: NotRequired[pulumi.Input[str]]
3355
+ """
3356
+ The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
3357
+ """
3358
+ elif False:
3359
+ InstanceSecurityGroupInboundRuleArgsDict: TypeAlias = Mapping[str, Any]
3360
+
3361
+ @pulumi.input_type
3362
+ class InstanceSecurityGroupInboundRuleArgs:
3363
+ def __init__(__self__, *,
3364
+ action: pulumi.Input[str],
3365
+ ip: Optional[pulumi.Input[str]] = None,
3366
+ ip_range: Optional[pulumi.Input[str]] = None,
3367
+ port: Optional[pulumi.Input[int]] = None,
3368
+ port_range: Optional[pulumi.Input[str]] = None,
3369
+ protocol: Optional[pulumi.Input[str]] = None):
3370
+ """
3371
+ :param pulumi.Input[str] action: The action to take when rule match. Possible values are: `accept` or `drop`.
2532
3372
  :param pulumi.Input[str] ip: The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
2533
3373
  :param pulumi.Input[str] ip_range: The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
2534
3374
  :param pulumi.Input[int] port: The port this rule applies to. If no `port` nor `port_range` are specified, the rule will apply to all port. Only one of `port` and `port_range` should be specified.
@@ -2624,6 +3464,35 @@ class InstanceSecurityGroupInboundRuleArgs:
2624
3464
  pulumi.set(self, "protocol", value)
2625
3465
 
2626
3466
 
3467
+ if not MYPY:
3468
+ class InstanceSecurityGroupOutboundRuleArgsDict(TypedDict):
3469
+ action: pulumi.Input[str]
3470
+ """
3471
+ Action when rule match request (drop or accept)
3472
+ """
3473
+ ip: NotRequired[pulumi.Input[str]]
3474
+ """
3475
+ Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
3476
+ """
3477
+ ip_range: NotRequired[pulumi.Input[str]]
3478
+ """
3479
+ Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
3480
+ """
3481
+ port: NotRequired[pulumi.Input[int]]
3482
+ """
3483
+ Network port for this rule
3484
+ """
3485
+ port_range: NotRequired[pulumi.Input[str]]
3486
+ """
3487
+ Computed port range for this rule (e.g: 1-1024, 22-22)
3488
+ """
3489
+ protocol: NotRequired[pulumi.Input[str]]
3490
+ """
3491
+ Protocol for this rule (TCP, UDP, ICMP or ANY)
3492
+ """
3493
+ elif False:
3494
+ InstanceSecurityGroupOutboundRuleArgsDict: TypeAlias = Mapping[str, Any]
3495
+
2627
3496
  @pulumi.input_type
2628
3497
  class InstanceSecurityGroupOutboundRuleArgs:
2629
3498
  def __init__(__self__, *,
@@ -2730,6 +3599,35 @@ class InstanceSecurityGroupOutboundRuleArgs:
2730
3599
  pulumi.set(self, "protocol", value)
2731
3600
 
2732
3601
 
3602
+ if not MYPY:
3603
+ class InstanceSecurityGroupRulesInboundRuleArgsDict(TypedDict):
3604
+ action: pulumi.Input[str]
3605
+ """
3606
+ The action to take when rule match. Possible values are: `accept` or `drop`.
3607
+ """
3608
+ ip: NotRequired[pulumi.Input[str]]
3609
+ """
3610
+ The ip this rule apply to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
3611
+ """
3612
+ ip_range: NotRequired[pulumi.Input[str]]
3613
+ """
3614
+ The ip range (e.g `192.168.1.0/24`) this rule applies to. If no `ip` nor `ip_range` are specified, rule will apply to all ip. Only one of `ip` and `ip_range` should be specified.
3615
+ """
3616
+ port: NotRequired[pulumi.Input[int]]
3617
+ """
3618
+ The port this rule apply to. If no port is specified, rule will apply to all port.
3619
+ """
3620
+ port_range: NotRequired[pulumi.Input[str]]
3621
+ """
3622
+ Computed port range for this rule (e.g: 1-1024, 22-22)
3623
+ """
3624
+ protocol: NotRequired[pulumi.Input[str]]
3625
+ """
3626
+ The protocol this rule apply to. Possible values are: `TCP`, `UDP`, `ICMP` or `ANY`.
3627
+ """
3628
+ elif False:
3629
+ InstanceSecurityGroupRulesInboundRuleArgsDict: TypeAlias = Mapping[str, Any]
3630
+
2733
3631
  @pulumi.input_type
2734
3632
  class InstanceSecurityGroupRulesInboundRuleArgs:
2735
3633
  def __init__(__self__, *,
@@ -2836,6 +3734,35 @@ class InstanceSecurityGroupRulesInboundRuleArgs:
2836
3734
  pulumi.set(self, "protocol", value)
2837
3735
 
2838
3736
 
3737
+ if not MYPY:
3738
+ class InstanceSecurityGroupRulesOutboundRuleArgsDict(TypedDict):
3739
+ action: pulumi.Input[str]
3740
+ """
3741
+ Action when rule match request (drop or accept)
3742
+ """
3743
+ ip: NotRequired[pulumi.Input[str]]
3744
+ """
3745
+ Ip address for this rule (e.g: 1.1.1.1). Only one of ip or ip_range should be provided
3746
+ """
3747
+ ip_range: NotRequired[pulumi.Input[str]]
3748
+ """
3749
+ Ip range for this rule (e.g: 192.168.1.0/24). Only one of ip or ip_range should be provided
3750
+ """
3751
+ port: NotRequired[pulumi.Input[int]]
3752
+ """
3753
+ Network port for this rule
3754
+ """
3755
+ port_range: NotRequired[pulumi.Input[str]]
3756
+ """
3757
+ Computed port range for this rule (e.g: 1-1024, 22-22)
3758
+ """
3759
+ protocol: NotRequired[pulumi.Input[str]]
3760
+ """
3761
+ Protocol for this rule (TCP, UDP, ICMP or ANY)
3762
+ """
3763
+ elif False:
3764
+ InstanceSecurityGroupRulesOutboundRuleArgsDict: TypeAlias = Mapping[str, Any]
3765
+
2839
3766
  @pulumi.input_type
2840
3767
  class InstanceSecurityGroupRulesOutboundRuleArgs:
2841
3768
  def __init__(__self__, *,
@@ -2942,6 +3869,31 @@ class InstanceSecurityGroupRulesOutboundRuleArgs:
2942
3869
  pulumi.set(self, "protocol", value)
2943
3870
 
2944
3871
 
3872
+ if not MYPY:
3873
+ class InstanceServerPrivateNetworkArgsDict(TypedDict):
3874
+ pn_id: pulumi.Input[str]
3875
+ """
3876
+ The Private Network ID
3877
+ """
3878
+ mac_address: NotRequired[pulumi.Input[str]]
3879
+ """
3880
+ MAC address of the NIC
3881
+ """
3882
+ pnic_id: NotRequired[pulumi.Input[str]]
3883
+ """
3884
+ The ID of the NIC
3885
+ """
3886
+ status: NotRequired[pulumi.Input[str]]
3887
+ """
3888
+ The private NIC state
3889
+ """
3890
+ zone: NotRequired[pulumi.Input[str]]
3891
+ """
3892
+ `zone`) The zone in which the server should be created.
3893
+ """
3894
+ elif False:
3895
+ InstanceServerPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
3896
+
2945
3897
  @pulumi.input_type
2946
3898
  class InstanceServerPrivateNetworkArgs:
2947
3899
  def __init__(__self__, *,
@@ -3028,6 +3980,19 @@ class InstanceServerPrivateNetworkArgs:
3028
3980
  pulumi.set(self, "zone", value)
3029
3981
 
3030
3982
 
3983
+ if not MYPY:
3984
+ class InstanceServerPublicIpArgsDict(TypedDict):
3985
+ address: NotRequired[pulumi.Input[str]]
3986
+ """
3987
+ The address of the IP
3988
+ """
3989
+ id: NotRequired[pulumi.Input[str]]
3990
+ """
3991
+ The ID of the IP
3992
+ """
3993
+ elif False:
3994
+ InstanceServerPublicIpArgsDict: TypeAlias = Mapping[str, Any]
3995
+
3031
3996
  @pulumi.input_type
3032
3997
  class InstanceServerPublicIpArgs:
3033
3998
  def __init__(__self__, *,
@@ -3067,6 +4032,40 @@ class InstanceServerPublicIpArgs:
3067
4032
  pulumi.set(self, "id", value)
3068
4033
 
3069
4034
 
4035
+ if not MYPY:
4036
+ class InstanceServerRootVolumeArgsDict(TypedDict):
4037
+ boot: NotRequired[pulumi.Input[bool]]
4038
+ """
4039
+ Set the volume where the boot the server
4040
+ """
4041
+ delete_on_termination: NotRequired[pulumi.Input[bool]]
4042
+ """
4043
+ Forces deletion of the root volume on instance termination.
4044
+
4045
+ > **Important:** Updates to `root_volume.size_in_gb` will be ignored after the creation of the server.
4046
+ """
4047
+ name: NotRequired[pulumi.Input[str]]
4048
+ """
4049
+ The name of the server.
4050
+ """
4051
+ size_in_gb: NotRequired[pulumi.Input[int]]
4052
+ """
4053
+ Size of the root volume in gigabytes.
4054
+ To find the right size use [this endpoint](https://www.scaleway.com/en/developers/api/instance/#path-instances-list-all-instances) and
4055
+ check the `volumes_constraint.{min|max}_size` (in bytes) for your `commercial_type`.
4056
+ Updates to this field will recreate a new resource.
4057
+ """
4058
+ volume_id: NotRequired[pulumi.Input[str]]
4059
+ """
4060
+ The volume ID of the root volume of the server, allows you to create server with an existing volume. If empty, will be computed to a created volume ID.
4061
+ """
4062
+ volume_type: NotRequired[pulumi.Input[str]]
4063
+ """
4064
+ Volume type of root volume, can be `b_ssd` or `l_ssd`, default value depends on server type
4065
+ """
4066
+ elif False:
4067
+ InstanceServerRootVolumeArgsDict: TypeAlias = Mapping[str, Any]
4068
+
3070
4069
  @pulumi.input_type
3071
4070
  class InstanceServerRootVolumeArgs:
3072
4071
  def __init__(__self__, *,
@@ -3180,6 +4179,21 @@ class InstanceServerRootVolumeArgs:
3180
4179
  pulumi.set(self, "volume_type", value)
3181
4180
 
3182
4181
 
4182
+ if not MYPY:
4183
+ class InstanceSnapshotImportArgsDict(TypedDict):
4184
+ bucket: pulumi.Input[str]
4185
+ """
4186
+ Bucket name containing [qcow2](https://en.wikipedia.org/wiki/Qcow) to import
4187
+ """
4188
+ key: pulumi.Input[str]
4189
+ """
4190
+ Key of the object to import
4191
+
4192
+ > **Note:** The type `unified` could be instantiated on both `l_ssd` and `b_ssd` volumes.
4193
+ """
4194
+ elif False:
4195
+ InstanceSnapshotImportArgsDict: TypeAlias = Mapping[str, Any]
4196
+
3183
4197
  @pulumi.input_type
3184
4198
  class InstanceSnapshotImportArgs:
3185
4199
  def __init__(__self__, *,
@@ -3221,6 +4235,19 @@ class InstanceSnapshotImportArgs:
3221
4235
  pulumi.set(self, "key", value)
3222
4236
 
3223
4237
 
4238
+ if not MYPY:
4239
+ class IotDeviceCertificateArgsDict(TypedDict):
4240
+ crt: NotRequired[pulumi.Input[str]]
4241
+ """
4242
+ X509 PEM encoded certificate of the device
4243
+ """
4244
+ key: NotRequired[pulumi.Input[str]]
4245
+ """
4246
+ The private key of the device, in case it is generated by Scaleway.
4247
+ """
4248
+ elif False:
4249
+ IotDeviceCertificateArgsDict: TypeAlias = Mapping[str, Any]
4250
+
3224
4251
  @pulumi.input_type
3225
4252
  class IotDeviceCertificateArgs:
3226
4253
  def __init__(__self__, *,
@@ -3260,6 +4287,19 @@ class IotDeviceCertificateArgs:
3260
4287
  pulumi.set(self, "key", value)
3261
4288
 
3262
4289
 
4290
+ if not MYPY:
4291
+ class IotDeviceMessageFiltersArgsDict(TypedDict):
4292
+ publish: NotRequired[pulumi.Input['IotDeviceMessageFiltersPublishArgsDict']]
4293
+ """
4294
+ Rules used to restrict topics the device can publish to.
4295
+ """
4296
+ subscribe: NotRequired[pulumi.Input['IotDeviceMessageFiltersSubscribeArgsDict']]
4297
+ """
4298
+ Rules used to restrict topics the device can subscribe to.
4299
+ """
4300
+ elif False:
4301
+ IotDeviceMessageFiltersArgsDict: TypeAlias = Mapping[str, Any]
4302
+
3263
4303
  @pulumi.input_type
3264
4304
  class IotDeviceMessageFiltersArgs:
3265
4305
  def __init__(__self__, *,
@@ -3299,6 +4339,19 @@ class IotDeviceMessageFiltersArgs:
3299
4339
  pulumi.set(self, "subscribe", value)
3300
4340
 
3301
4341
 
4342
+ if not MYPY:
4343
+ class IotDeviceMessageFiltersPublishArgsDict(TypedDict):
4344
+ policy: NotRequired[pulumi.Input[str]]
4345
+ """
4346
+ Filtering policy (eg `accept` or `reject`)
4347
+ """
4348
+ topics: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
4349
+ """
4350
+ List of topics to match (eg `foo/bar/+/baz/#`)
4351
+ """
4352
+ elif False:
4353
+ IotDeviceMessageFiltersPublishArgsDict: TypeAlias = Mapping[str, Any]
4354
+
3302
4355
  @pulumi.input_type
3303
4356
  class IotDeviceMessageFiltersPublishArgs:
3304
4357
  def __init__(__self__, *,
@@ -3338,6 +4391,23 @@ class IotDeviceMessageFiltersPublishArgs:
3338
4391
  pulumi.set(self, "topics", value)
3339
4392
 
3340
4393
 
4394
+ if not MYPY:
4395
+ class IotDeviceMessageFiltersSubscribeArgsDict(TypedDict):
4396
+ policy: NotRequired[pulumi.Input[str]]
4397
+ """
4398
+ Same as publish rules.
4399
+ """
4400
+ topics: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
4401
+ """
4402
+ Same as publish rules.
4403
+
4404
+ - `certificate.crt` - (Optional) The certificate of the device, either generated by Scaleway or provided.
4405
+
4406
+ > **Important:** Updates to `certificate.crt` will disconnect connected devices and the previous certificate will be deleted and won't be recoverable.
4407
+ """
4408
+ elif False:
4409
+ IotDeviceMessageFiltersSubscribeArgsDict: TypeAlias = Mapping[str, Any]
4410
+
3341
4411
  @pulumi.input_type
3342
4412
  class IotDeviceMessageFiltersSubscribeArgs:
3343
4413
  def __init__(__self__, *,
@@ -3385,6 +4455,35 @@ class IotDeviceMessageFiltersSubscribeArgs:
3385
4455
  pulumi.set(self, "topics", value)
3386
4456
 
3387
4457
 
4458
+ if not MYPY:
4459
+ class IotRouteDatabaseArgsDict(TypedDict):
4460
+ dbname: pulumi.Input[str]
4461
+ """
4462
+ The database name (e.g. `measurements`).
4463
+ """
4464
+ host: pulumi.Input[str]
4465
+ """
4466
+ The database hostname. Can be an IP or a FQDN.
4467
+ """
4468
+ password: pulumi.Input[str]
4469
+ """
4470
+ The database password.
4471
+ """
4472
+ port: pulumi.Input[int]
4473
+ """
4474
+ The database port (e.g. `5432`)
4475
+ """
4476
+ query: pulumi.Input[str]
4477
+ """
4478
+ The SQL query that will be executed when receiving a message ($TOPIC and $PAYLOAD variables are available, see documentation, e.g. `INSERT INTO mytable(date, topic, value) VALUES (NOW(), $TOPIC, $PAYLOAD)`).
4479
+ """
4480
+ username: pulumi.Input[str]
4481
+ """
4482
+ The database username.
4483
+ """
4484
+ elif False:
4485
+ IotRouteDatabaseArgsDict: TypeAlias = Mapping[str, Any]
4486
+
3388
4487
  @pulumi.input_type
3389
4488
  class IotRouteDatabaseArgs:
3390
4489
  def __init__(__self__, *,
@@ -3482,6 +4581,23 @@ class IotRouteDatabaseArgs:
3482
4581
  pulumi.set(self, "username", value)
3483
4582
 
3484
4583
 
4584
+ if not MYPY:
4585
+ class IotRouteRestArgsDict(TypedDict):
4586
+ headers: pulumi.Input[Mapping[str, pulumi.Input[str]]]
4587
+ """
4588
+ a map of the extra headers to send with the HTTP call (e.g. `X-Header = Value`).
4589
+ """
4590
+ uri: pulumi.Input[str]
4591
+ """
4592
+ The URI of the Rest endpoint (e.g. `https://internal.mycompany.com/ingest/mqttdata`).
4593
+ """
4594
+ verb: pulumi.Input[str]
4595
+ """
4596
+ The HTTP Verb used to call Rest URI (e.g. `post`).
4597
+ """
4598
+ elif False:
4599
+ IotRouteRestArgsDict: TypeAlias = Mapping[str, Any]
4600
+
3485
4601
  @pulumi.input_type
3486
4602
  class IotRouteRestArgs:
3487
4603
  def __init__(__self__, *,
@@ -3534,6 +4650,27 @@ class IotRouteRestArgs:
3534
4650
  pulumi.set(self, "verb", value)
3535
4651
 
3536
4652
 
4653
+ if not MYPY:
4654
+ class IotRouteS3ArgsDict(TypedDict):
4655
+ bucket_name: pulumi.Input[str]
4656
+ """
4657
+ The name of the S3 route's destination bucket (e.g. `my-object-storage`).
4658
+ """
4659
+ bucket_region: pulumi.Input[str]
4660
+ """
4661
+ The region of the S3 route's destination bucket (e.g. `fr-par`).
4662
+ """
4663
+ strategy: pulumi.Input[str]
4664
+ """
4665
+ How the S3 route's objects will be created (e.g. `per_topic`). See [documentation](https://www.scaleway.com/en/docs/scaleway-iothub-route/#-Messages-Store-Strategies) for behaviour details.
4666
+ """
4667
+ object_prefix: NotRequired[pulumi.Input[str]]
4668
+ """
4669
+ The string to prefix object names with (e.g. `mykeyprefix-`).
4670
+ """
4671
+ elif False:
4672
+ IotRouteS3ArgsDict: TypeAlias = Mapping[str, Any]
4673
+
3537
4674
  @pulumi.input_type
3538
4675
  class IotRouteS3Args:
3539
4676
  def __init__(__self__, *,
@@ -3602,6 +4739,27 @@ class IotRouteS3Args:
3602
4739
  pulumi.set(self, "object_prefix", value)
3603
4740
 
3604
4741
 
4742
+ if not MYPY:
4743
+ class IpamIpResourceArgsDict(TypedDict):
4744
+ id: NotRequired[pulumi.Input[str]]
4745
+ """
4746
+ The ID of the resource that the IP is attached to.
4747
+ """
4748
+ mac_address: NotRequired[pulumi.Input[str]]
4749
+ """
4750
+ The MAC address of the resource the IP is attached to.
4751
+ """
4752
+ name: NotRequired[pulumi.Input[str]]
4753
+ """
4754
+ The name of the resource the IP is attached to.
4755
+ """
4756
+ type: NotRequired[pulumi.Input[str]]
4757
+ """
4758
+ The type of resource the IP is attached to.
4759
+ """
4760
+ elif False:
4761
+ IpamIpResourceArgsDict: TypeAlias = Mapping[str, Any]
4762
+
3605
4763
  @pulumi.input_type
3606
4764
  class IpamIpResourceArgs:
3607
4765
  def __init__(__self__, *,
@@ -3673,6 +4831,19 @@ class IpamIpResourceArgs:
3673
4831
  pulumi.set(self, "type", value)
3674
4832
 
3675
4833
 
4834
+ if not MYPY:
4835
+ class IpamIpReverseArgsDict(TypedDict):
4836
+ address: NotRequired[pulumi.Input[str]]
4837
+ """
4838
+ The IP corresponding to the hostname
4839
+ """
4840
+ hostname: NotRequired[pulumi.Input[str]]
4841
+ """
4842
+ The reverse domain name.
4843
+ """
4844
+ elif False:
4845
+ IpamIpReverseArgsDict: TypeAlias = Mapping[str, Any]
4846
+
3676
4847
  @pulumi.input_type
3677
4848
  class IpamIpReverseArgs:
3678
4849
  def __init__(__self__, *,
@@ -3712,6 +4883,23 @@ class IpamIpReverseArgs:
3712
4883
  pulumi.set(self, "hostname", value)
3713
4884
 
3714
4885
 
4886
+ if not MYPY:
4887
+ class IpamIpSourceArgsDict(TypedDict):
4888
+ private_network_id: NotRequired[pulumi.Input[str]]
4889
+ """
4890
+ The Private Network of the IP (if the IP is a private IP).
4891
+ """
4892
+ subnet_id: NotRequired[pulumi.Input[str]]
4893
+ """
4894
+ The Private Network subnet of the IP (if the IP is a private IP).
4895
+ """
4896
+ zonal: NotRequired[pulumi.Input[str]]
4897
+ """
4898
+ The zone of the IP (if the IP is public and zoned, rather than private and/or regional)
4899
+ """
4900
+ elif False:
4901
+ IpamIpSourceArgsDict: TypeAlias = Mapping[str, Any]
4902
+
3715
4903
  @pulumi.input_type
3716
4904
  class IpamIpSourceArgs:
3717
4905
  def __init__(__self__, *,
@@ -3767,6 +4955,19 @@ class IpamIpSourceArgs:
3767
4955
  pulumi.set(self, "zonal", value)
3768
4956
 
3769
4957
 
4958
+ if not MYPY:
4959
+ class JobDefinitionCronArgsDict(TypedDict):
4960
+ schedule: pulumi.Input[str]
4961
+ """
4962
+ Cron format string.
4963
+ """
4964
+ timezone: pulumi.Input[str]
4965
+ """
4966
+ The timezone, must be a canonical TZ identifier as found in this [list](https://en.wikipedia.org/wiki/List_of_tz_database_time_zones).
4967
+ """
4968
+ elif False:
4969
+ JobDefinitionCronArgsDict: TypeAlias = Mapping[str, Any]
4970
+
3770
4971
  @pulumi.input_type
3771
4972
  class JobDefinitionCronArgs:
3772
4973
  def __init__(__self__, *,
@@ -3804,6 +5005,24 @@ class JobDefinitionCronArgs:
3804
5005
  pulumi.set(self, "timezone", value)
3805
5006
 
3806
5007
 
5008
+ if not MYPY:
5009
+ class KubernetesClusterAutoUpgradeArgsDict(TypedDict):
5010
+ enable: pulumi.Input[bool]
5011
+ """
5012
+ Set to `true` to enable Kubernetes patch version auto upgrades.
5013
+ > **Important:** When enabling auto upgrades, the `version` field take a minor version like x.y (ie 1.18).
5014
+ """
5015
+ maintenance_window_day: pulumi.Input[str]
5016
+ """
5017
+ The day of the auto upgrade maintenance window (`monday` to `sunday`, or `any`).
5018
+ """
5019
+ maintenance_window_start_hour: pulumi.Input[int]
5020
+ """
5021
+ The start hour (UTC) of the 2-hour auto upgrade maintenance window (0 to 23).
5022
+ """
5023
+ elif False:
5024
+ KubernetesClusterAutoUpgradeArgsDict: TypeAlias = Mapping[str, Any]
5025
+
3807
5026
  @pulumi.input_type
3808
5027
  class KubernetesClusterAutoUpgradeArgs:
3809
5028
  def __init__(__self__, *,
@@ -3839,24 +5058,69 @@ class KubernetesClusterAutoUpgradeArgs:
3839
5058
  """
3840
5059
  The day of the auto upgrade maintenance window (`monday` to `sunday`, or `any`).
3841
5060
  """
3842
- return pulumi.get(self, "maintenance_window_day")
3843
-
3844
- @maintenance_window_day.setter
3845
- def maintenance_window_day(self, value: pulumi.Input[str]):
3846
- pulumi.set(self, "maintenance_window_day", value)
3847
-
3848
- @property
3849
- @pulumi.getter(name="maintenanceWindowStartHour")
3850
- def maintenance_window_start_hour(self) -> pulumi.Input[int]:
5061
+ return pulumi.get(self, "maintenance_window_day")
5062
+
5063
+ @maintenance_window_day.setter
5064
+ def maintenance_window_day(self, value: pulumi.Input[str]):
5065
+ pulumi.set(self, "maintenance_window_day", value)
5066
+
5067
+ @property
5068
+ @pulumi.getter(name="maintenanceWindowStartHour")
5069
+ def maintenance_window_start_hour(self) -> pulumi.Input[int]:
5070
+ """
5071
+ The start hour (UTC) of the 2-hour auto upgrade maintenance window (0 to 23).
5072
+ """
5073
+ return pulumi.get(self, "maintenance_window_start_hour")
5074
+
5075
+ @maintenance_window_start_hour.setter
5076
+ def maintenance_window_start_hour(self, value: pulumi.Input[int]):
5077
+ pulumi.set(self, "maintenance_window_start_hour", value)
5078
+
5079
+
5080
+ if not MYPY:
5081
+ class KubernetesClusterAutoscalerConfigArgsDict(TypedDict):
5082
+ balance_similar_node_groups: NotRequired[pulumi.Input[bool]]
5083
+ """
5084
+ Detect similar node groups and balance the number of nodes between them.
5085
+ """
5086
+ disable_scale_down: NotRequired[pulumi.Input[bool]]
5087
+ """
5088
+ Disables the scale down feature of the autoscaler.
5089
+ """
5090
+ estimator: NotRequired[pulumi.Input[str]]
5091
+ """
5092
+ Type of resource estimator to be used in scale up.
5093
+ """
5094
+ expander: NotRequired[pulumi.Input[str]]
5095
+ """
5096
+ Type of node group expander to be used in scale up.
5097
+ """
5098
+ expendable_pods_priority_cutoff: NotRequired[pulumi.Input[int]]
5099
+ """
5100
+ Pods with priority below cutoff will be expendable. They can be killed without any consideration during scale down and they don't cause scale up. Pods with null priority (PodPriority disabled) are non expendable.
5101
+ """
5102
+ ignore_daemonsets_utilization: NotRequired[pulumi.Input[bool]]
5103
+ """
5104
+ Ignore DaemonSet pods when calculating resource utilization for scaling down.
5105
+ """
5106
+ max_graceful_termination_sec: NotRequired[pulumi.Input[int]]
5107
+ """
5108
+ Maximum number of seconds the cluster autoscaler waits for pod termination when trying to scale down a node
5109
+ """
5110
+ scale_down_delay_after_add: NotRequired[pulumi.Input[str]]
5111
+ """
5112
+ How long after scale up that scale down evaluation resumes.
5113
+ """
5114
+ scale_down_unneeded_time: NotRequired[pulumi.Input[str]]
5115
+ """
5116
+ How long a node should be unneeded before it is eligible for scale down.
5117
+ """
5118
+ scale_down_utilization_threshold: NotRequired[pulumi.Input[float]]
3851
5119
  """
3852
- The start hour (UTC) of the 2-hour auto upgrade maintenance window (0 to 23).
5120
+ Node utilization level, defined as sum of requested resources divided by capacity, below which a node can be considered for scale down
3853
5121
  """
3854
- return pulumi.get(self, "maintenance_window_start_hour")
3855
-
3856
- @maintenance_window_start_hour.setter
3857
- def maintenance_window_start_hour(self, value: pulumi.Input[int]):
3858
- pulumi.set(self, "maintenance_window_start_hour", value)
3859
-
5122
+ elif False:
5123
+ KubernetesClusterAutoscalerConfigArgsDict: TypeAlias = Mapping[str, Any]
3860
5124
 
3861
5125
  @pulumi.input_type
3862
5126
  class KubernetesClusterAutoscalerConfigArgs:
@@ -4025,6 +5289,27 @@ class KubernetesClusterAutoscalerConfigArgs:
4025
5289
  pulumi.set(self, "scale_down_utilization_threshold", value)
4026
5290
 
4027
5291
 
5292
+ if not MYPY:
5293
+ class KubernetesClusterKubeconfigArgsDict(TypedDict):
5294
+ cluster_ca_certificate: NotRequired[pulumi.Input[str]]
5295
+ """
5296
+ The CA certificate of the Kubernetes API server.
5297
+ """
5298
+ config_file: NotRequired[pulumi.Input[str]]
5299
+ """
5300
+ The raw kubeconfig file.
5301
+ """
5302
+ host: NotRequired[pulumi.Input[str]]
5303
+ """
5304
+ The URL of the Kubernetes API server.
5305
+ """
5306
+ token: NotRequired[pulumi.Input[str]]
5307
+ """
5308
+ The token to connect to the Kubernetes API server.
5309
+ """
5310
+ elif False:
5311
+ KubernetesClusterKubeconfigArgsDict: TypeAlias = Mapping[str, Any]
5312
+
4028
5313
  @pulumi.input_type
4029
5314
  class KubernetesClusterKubeconfigArgs:
4030
5315
  def __init__(__self__, *,
@@ -4096,6 +5381,39 @@ class KubernetesClusterKubeconfigArgs:
4096
5381
  pulumi.set(self, "token", value)
4097
5382
 
4098
5383
 
5384
+ if not MYPY:
5385
+ class KubernetesClusterOpenIdConnectConfigArgsDict(TypedDict):
5386
+ client_id: pulumi.Input[str]
5387
+ """
5388
+ A client id that all tokens must be issued for
5389
+ """
5390
+ issuer_url: pulumi.Input[str]
5391
+ """
5392
+ URL of the provider which allows the API server to discover public signing keys
5393
+ """
5394
+ groups_claims: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
5395
+ """
5396
+ JWT claim to use as the user's group
5397
+ """
5398
+ groups_prefix: NotRequired[pulumi.Input[str]]
5399
+ """
5400
+ Prefix prepended to group claims
5401
+ """
5402
+ required_claims: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
5403
+ """
5404
+ Multiple key=value pairs that describes a required claim in the ID Token
5405
+ """
5406
+ username_claim: NotRequired[pulumi.Input[str]]
5407
+ """
5408
+ JWT claim to use as the user name
5409
+ """
5410
+ username_prefix: NotRequired[pulumi.Input[str]]
5411
+ """
5412
+ Prefix prepended to username
5413
+ """
5414
+ elif False:
5415
+ KubernetesClusterOpenIdConnectConfigArgsDict: TypeAlias = Mapping[str, Any]
5416
+
4099
5417
  @pulumi.input_type
4100
5418
  class KubernetesClusterOpenIdConnectConfigArgs:
4101
5419
  def __init__(__self__, *,
@@ -4213,6 +5531,28 @@ class KubernetesClusterOpenIdConnectConfigArgs:
4213
5531
  pulumi.set(self, "username_prefix", value)
4214
5532
 
4215
5533
 
5534
+ if not MYPY:
5535
+ class KubernetesNodePoolNodeArgsDict(TypedDict):
5536
+ name: NotRequired[pulumi.Input[str]]
5537
+ """
5538
+ The name for the pool.
5539
+ > **Important:** Updates to this field will recreate a new resource.
5540
+ """
5541
+ public_ip: NotRequired[pulumi.Input[str]]
5542
+ """
5543
+ The public IPv4.
5544
+ """
5545
+ public_ip_v6: NotRequired[pulumi.Input[str]]
5546
+ """
5547
+ The public IPv6.
5548
+ """
5549
+ status: NotRequired[pulumi.Input[str]]
5550
+ """
5551
+ The status of the node.
5552
+ """
5553
+ elif False:
5554
+ KubernetesNodePoolNodeArgsDict: TypeAlias = Mapping[str, Any]
5555
+
4216
5556
  @pulumi.input_type
4217
5557
  class KubernetesNodePoolNodeArgs:
4218
5558
  def __init__(__self__, *,
@@ -4286,6 +5626,19 @@ class KubernetesNodePoolNodeArgs:
4286
5626
  pulumi.set(self, "status", value)
4287
5627
 
4288
5628
 
5629
+ if not MYPY:
5630
+ class KubernetesNodePoolUpgradePolicyArgsDict(TypedDict):
5631
+ max_surge: NotRequired[pulumi.Input[int]]
5632
+ """
5633
+ The maximum number of nodes to be created during the upgrade
5634
+ """
5635
+ max_unavailable: NotRequired[pulumi.Input[int]]
5636
+ """
5637
+ The maximum number of nodes that can be not ready at the same time
5638
+ """
5639
+ elif False:
5640
+ KubernetesNodePoolUpgradePolicyArgsDict: TypeAlias = Mapping[str, Any]
5641
+
4289
5642
  @pulumi.input_type
4290
5643
  class KubernetesNodePoolUpgradePolicyArgs:
4291
5644
  def __init__(__self__, *,
@@ -4325,6 +5678,19 @@ class KubernetesNodePoolUpgradePolicyArgs:
4325
5678
  pulumi.set(self, "max_unavailable", value)
4326
5679
 
4327
5680
 
5681
+ if not MYPY:
5682
+ class LoadbalancerAclActionArgsDict(TypedDict):
5683
+ type: pulumi.Input[str]
5684
+ """
5685
+ The action type. Possible values are: `allow` or `deny` or `redirect`.
5686
+ """
5687
+ redirects: NotRequired[pulumi.Input[Sequence[pulumi.Input['LoadbalancerAclActionRedirectArgsDict']]]]
5688
+ """
5689
+ Redirect parameters when using an ACL with `redirect` action.
5690
+ """
5691
+ elif False:
5692
+ LoadbalancerAclActionArgsDict: TypeAlias = Mapping[str, Any]
5693
+
4328
5694
  @pulumi.input_type
4329
5695
  class LoadbalancerAclActionArgs:
4330
5696
  def __init__(__self__, *,
@@ -4363,6 +5729,23 @@ class LoadbalancerAclActionArgs:
4363
5729
  pulumi.set(self, "redirects", value)
4364
5730
 
4365
5731
 
5732
+ if not MYPY:
5733
+ class LoadbalancerAclActionRedirectArgsDict(TypedDict):
5734
+ code: NotRequired[pulumi.Input[int]]
5735
+ """
5736
+ The HTTP redirect code to use. Valid values are `301`, `302`, `303`, `307` and `308`.
5737
+ """
5738
+ target: NotRequired[pulumi.Input[str]]
5739
+ """
5740
+ An URL can be used in case of a location redirect (e.g. `https://scaleway.com` will redirect to this same URL). A scheme name (e.g. `https`, `http`, `ftp`, `git`) will replace the request's original scheme.
5741
+ """
5742
+ type: NotRequired[pulumi.Input[str]]
5743
+ """
5744
+ The redirect type. Possible values are: `location` or `scheme`.
5745
+ """
5746
+ elif False:
5747
+ LoadbalancerAclActionRedirectArgsDict: TypeAlias = Mapping[str, Any]
5748
+
4366
5749
  @pulumi.input_type
4367
5750
  class LoadbalancerAclActionRedirectArgs:
4368
5751
  def __init__(__self__, *,
@@ -4418,6 +5801,34 @@ class LoadbalancerAclActionRedirectArgs:
4418
5801
  pulumi.set(self, "type", value)
4419
5802
 
4420
5803
 
5804
+ if not MYPY:
5805
+ class LoadbalancerAclMatchArgsDict(TypedDict):
5806
+ http_filter: NotRequired[pulumi.Input[str]]
5807
+ """
5808
+ The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol.
5809
+ It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part).
5810
+ Possible values are: `acl_http_filter_none`, `path_begin`, `path_end`, `http_header_match` or `regex`.
5811
+ """
5812
+ http_filter_option: NotRequired[pulumi.Input[str]]
5813
+ """
5814
+ If you have `http_filter` at `http_header_match`, you can use this field to filter on the HTTP header's value.
5815
+ """
5816
+ http_filter_values: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
5817
+ """
5818
+ A list of possible values to match for the given HTTP filter.
5819
+ Keep in mind that in the case of `http_header_match` the HTTP header field name is case insensitive.
5820
+ """
5821
+ invert: NotRequired[pulumi.Input[bool]]
5822
+ """
5823
+ If set to `true`, the condition will be of type "unless".
5824
+ """
5825
+ ip_subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
5826
+ """
5827
+ A list of IPs, or CIDR v4/v6 addresses of the session client, to match.
5828
+ """
5829
+ elif False:
5830
+ LoadbalancerAclMatchArgsDict: TypeAlias = Mapping[str, Any]
5831
+
4421
5832
  @pulumi.input_type
4422
5833
  class LoadbalancerAclMatchArgs:
4423
5834
  def __init__(__self__, *,
@@ -4511,6 +5922,27 @@ class LoadbalancerAclMatchArgs:
4511
5922
  pulumi.set(self, "ip_subnets", value)
4512
5923
 
4513
5924
 
5925
+ if not MYPY:
5926
+ class LoadbalancerBackendHealthCheckHttpArgsDict(TypedDict):
5927
+ uri: pulumi.Input[str]
5928
+ """
5929
+ The HTTP endpoint URL to call for HC requests
5930
+ """
5931
+ code: NotRequired[pulumi.Input[int]]
5932
+ """
5933
+ The expected HTTP status code
5934
+ """
5935
+ host_header: NotRequired[pulumi.Input[str]]
5936
+ """
5937
+ The HTTP host header to use for HC requests
5938
+ """
5939
+ method: NotRequired[pulumi.Input[str]]
5940
+ """
5941
+ The HTTP method to use for HC requests
5942
+ """
5943
+ elif False:
5944
+ LoadbalancerBackendHealthCheckHttpArgsDict: TypeAlias = Mapping[str, Any]
5945
+
4514
5946
  @pulumi.input_type
4515
5947
  class LoadbalancerBackendHealthCheckHttpArgs:
4516
5948
  def __init__(__self__, *,
@@ -4581,6 +6013,31 @@ class LoadbalancerBackendHealthCheckHttpArgs:
4581
6013
  pulumi.set(self, "method", value)
4582
6014
 
4583
6015
 
6016
+ if not MYPY:
6017
+ class LoadbalancerBackendHealthCheckHttpsArgsDict(TypedDict):
6018
+ uri: pulumi.Input[str]
6019
+ """
6020
+ The HTTPS endpoint URL to call for HC requests
6021
+ """
6022
+ code: NotRequired[pulumi.Input[int]]
6023
+ """
6024
+ The expected HTTP status code
6025
+ """
6026
+ host_header: NotRequired[pulumi.Input[str]]
6027
+ """
6028
+ The HTTP host header to use for HC requests
6029
+ """
6030
+ method: NotRequired[pulumi.Input[str]]
6031
+ """
6032
+ The HTTP method to use for HC requests
6033
+ """
6034
+ sni: NotRequired[pulumi.Input[str]]
6035
+ """
6036
+ The SNI to use for HC requests over SSL
6037
+ """
6038
+ elif False:
6039
+ LoadbalancerBackendHealthCheckHttpsArgsDict: TypeAlias = Mapping[str, Any]
6040
+
4584
6041
  @pulumi.input_type
4585
6042
  class LoadbalancerBackendHealthCheckHttpsArgs:
4586
6043
  def __init__(__self__, *,
@@ -4667,12 +6124,27 @@ class LoadbalancerBackendHealthCheckHttpsArgs:
4667
6124
  pulumi.set(self, "sni", value)
4668
6125
 
4669
6126
 
6127
+ if not MYPY:
6128
+ class LoadbalancerBackendHealthCheckTcpArgsDict(TypedDict):
6129
+ pass
6130
+ elif False:
6131
+ LoadbalancerBackendHealthCheckTcpArgsDict: TypeAlias = Mapping[str, Any]
6132
+
4670
6133
  @pulumi.input_type
4671
6134
  class LoadbalancerBackendHealthCheckTcpArgs:
4672
6135
  def __init__(__self__):
4673
6136
  pass
4674
6137
 
4675
6138
 
6139
+ if not MYPY:
6140
+ class LoadbalancerCertificateCustomCertificateArgsDict(TypedDict):
6141
+ certificate_chain: pulumi.Input[str]
6142
+ """
6143
+ The full PEM-formatted certificate chain
6144
+ """
6145
+ elif False:
6146
+ LoadbalancerCertificateCustomCertificateArgsDict: TypeAlias = Mapping[str, Any]
6147
+
4676
6148
  @pulumi.input_type
4677
6149
  class LoadbalancerCertificateCustomCertificateArgs:
4678
6150
  def __init__(__self__, *,
@@ -4695,6 +6167,19 @@ class LoadbalancerCertificateCustomCertificateArgs:
4695
6167
  pulumi.set(self, "certificate_chain", value)
4696
6168
 
4697
6169
 
6170
+ if not MYPY:
6171
+ class LoadbalancerCertificateLetsencryptArgsDict(TypedDict):
6172
+ common_name: pulumi.Input[str]
6173
+ """
6174
+ Main domain of the certificate
6175
+ """
6176
+ subject_alternative_names: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6177
+ """
6178
+ The alternative domain names of the certificate
6179
+ """
6180
+ elif False:
6181
+ LoadbalancerCertificateLetsencryptArgsDict: TypeAlias = Mapping[str, Any]
6182
+
4698
6183
  @pulumi.input_type
4699
6184
  class LoadbalancerCertificateLetsencryptArgs:
4700
6185
  def __init__(__self__, *,
@@ -4733,6 +6218,35 @@ class LoadbalancerCertificateLetsencryptArgs:
4733
6218
  pulumi.set(self, "subject_alternative_names", value)
4734
6219
 
4735
6220
 
6221
+ if not MYPY:
6222
+ class LoadbalancerFrontendAclArgsDict(TypedDict):
6223
+ action: pulumi.Input['LoadbalancerFrontendAclActionArgsDict']
6224
+ """
6225
+ Action to undertake when an ACL filter matches.
6226
+ """
6227
+ match: pulumi.Input['LoadbalancerFrontendAclMatchArgsDict']
6228
+ """
6229
+ The ACL match rule. At least `ip_subnet` or `http_filter` and `http_filter_value` are required.
6230
+ """
6231
+ created_at: NotRequired[pulumi.Input[str]]
6232
+ """
6233
+ IsDate and time of ACL's creation (RFC 3339 format)
6234
+ """
6235
+ description: NotRequired[pulumi.Input[str]]
6236
+ """
6237
+ Description of the ACL
6238
+ """
6239
+ name: NotRequired[pulumi.Input[str]]
6240
+ """
6241
+ The ACL name. If not provided it will be randomly generated.
6242
+ """
6243
+ updated_at: NotRequired[pulumi.Input[str]]
6244
+ """
6245
+ IsDate and time of ACL's update (RFC 3339 format)
6246
+ """
6247
+ elif False:
6248
+ LoadbalancerFrontendAclArgsDict: TypeAlias = Mapping[str, Any]
6249
+
4736
6250
  @pulumi.input_type
4737
6251
  class LoadbalancerFrontendAclArgs:
4738
6252
  def __init__(__self__, *,
@@ -4834,6 +6348,19 @@ class LoadbalancerFrontendAclArgs:
4834
6348
  pulumi.set(self, "updated_at", value)
4835
6349
 
4836
6350
 
6351
+ if not MYPY:
6352
+ class LoadbalancerFrontendAclActionArgsDict(TypedDict):
6353
+ type: pulumi.Input[str]
6354
+ """
6355
+ The action type. Possible values are: `allow` or `deny` or `redirect`.
6356
+ """
6357
+ redirects: NotRequired[pulumi.Input[Sequence[pulumi.Input['LoadbalancerFrontendAclActionRedirectArgsDict']]]]
6358
+ """
6359
+ Redirect parameters when using an ACL with `redirect` action.
6360
+ """
6361
+ elif False:
6362
+ LoadbalancerFrontendAclActionArgsDict: TypeAlias = Mapping[str, Any]
6363
+
4837
6364
  @pulumi.input_type
4838
6365
  class LoadbalancerFrontendAclActionArgs:
4839
6366
  def __init__(__self__, *,
@@ -4872,6 +6399,23 @@ class LoadbalancerFrontendAclActionArgs:
4872
6399
  pulumi.set(self, "redirects", value)
4873
6400
 
4874
6401
 
6402
+ if not MYPY:
6403
+ class LoadbalancerFrontendAclActionRedirectArgsDict(TypedDict):
6404
+ code: NotRequired[pulumi.Input[int]]
6405
+ """
6406
+ The HTTP redirect code to use. Valid values are `301`, `302`, `303`, `307` and `308`.
6407
+ """
6408
+ target: NotRequired[pulumi.Input[str]]
6409
+ """
6410
+ A URL can be used in case of a location redirect (e.g. `https://scaleway.com` will redirect to this same URL). A scheme name (e.g. `https`, `http`, `ftp`, `git`) will replace the request's original scheme.
6411
+ """
6412
+ type: NotRequired[pulumi.Input[str]]
6413
+ """
6414
+ The redirect type. Possible values are: `location` or `scheme`.
6415
+ """
6416
+ elif False:
6417
+ LoadbalancerFrontendAclActionRedirectArgsDict: TypeAlias = Mapping[str, Any]
6418
+
4875
6419
  @pulumi.input_type
4876
6420
  class LoadbalancerFrontendAclActionRedirectArgs:
4877
6421
  def __init__(__self__, *,
@@ -4927,6 +6471,34 @@ class LoadbalancerFrontendAclActionRedirectArgs:
4927
6471
  pulumi.set(self, "type", value)
4928
6472
 
4929
6473
 
6474
+ if not MYPY:
6475
+ class LoadbalancerFrontendAclMatchArgsDict(TypedDict):
6476
+ http_filter: NotRequired[pulumi.Input[str]]
6477
+ """
6478
+ The HTTP filter to match. This filter is supported only if your backend protocol has an HTTP forward protocol.
6479
+ It extracts the request's URL path, which starts at the first slash and ends before the question mark (without the host part).
6480
+ Possible values are: `acl_http_filter_none`, `path_begin`, `path_end`, `http_header_match` or `regex`.
6481
+ """
6482
+ http_filter_option: NotRequired[pulumi.Input[str]]
6483
+ """
6484
+ If you have `http_filter` at `http_header_match`, you can use this field to filter on the HTTP header's value.
6485
+ """
6486
+ http_filter_values: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6487
+ """
6488
+ A list of possible values to match for the given HTTP filter.
6489
+ Keep in mind that in the case of `http_header_match` the HTTP header field name is case insensitive.
6490
+ """
6491
+ invert: NotRequired[pulumi.Input[bool]]
6492
+ """
6493
+ If set to `true`, the condition will be of type "unless".
6494
+ """
6495
+ ip_subnets: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
6496
+ """
6497
+ A list of IPs, or CIDR v4/v6 addresses of the session client, to match.
6498
+ """
6499
+ elif False:
6500
+ LoadbalancerFrontendAclMatchArgsDict: TypeAlias = Mapping[str, Any]
6501
+
4930
6502
  @pulumi.input_type
4931
6503
  class LoadbalancerFrontendAclMatchArgs:
4932
6504
  def __init__(__self__, *,
@@ -5020,6 +6592,35 @@ class LoadbalancerFrontendAclMatchArgs:
5020
6592
  pulumi.set(self, "ip_subnets", value)
5021
6593
 
5022
6594
 
6595
+ if not MYPY:
6596
+ class LoadbalancerPrivateNetworkArgsDict(TypedDict):
6597
+ private_network_id: pulumi.Input[str]
6598
+ """
6599
+ (Required) The ID of the Private Network to attach to.
6600
+ """
6601
+ dhcp_config: NotRequired[pulumi.Input[bool]]
6602
+ """
6603
+ (Optional) Set to `true` if you want to let DHCP assign IP addresses. See below.
6604
+ """
6605
+ ipam_ids: NotRequired[pulumi.Input[str]]
6606
+ """
6607
+ (Optional) IPAM ID of a pre-reserved IP address to assign to the Load Balancer on this Private Network.
6608
+ """
6609
+ static_config: NotRequired[pulumi.Input[str]]
6610
+ """
6611
+ (Deprecated) Please use `ipam_ids`. Define a local ip address of your choice for the load balancer instance.
6612
+ """
6613
+ status: NotRequired[pulumi.Input[str]]
6614
+ """
6615
+ The status of private network connection
6616
+ """
6617
+ zone: NotRequired[pulumi.Input[str]]
6618
+ """
6619
+ `zone`) The zone of the Load Balancer.
6620
+ """
6621
+ elif False:
6622
+ LoadbalancerPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
6623
+
5023
6624
  @pulumi.input_type
5024
6625
  class LoadbalancerPrivateNetworkArgs:
5025
6626
  def __init__(__self__, *,
@@ -5126,6 +6727,23 @@ class LoadbalancerPrivateNetworkArgs:
5126
6727
  pulumi.set(self, "zone", value)
5127
6728
 
5128
6729
 
6730
+ if not MYPY:
6731
+ class MnqSnsCredentialsPermissionsArgsDict(TypedDict):
6732
+ can_manage: NotRequired[pulumi.Input[bool]]
6733
+ """
6734
+ . Defines whether the user can manage the associated resource(s).
6735
+ """
6736
+ can_publish: NotRequired[pulumi.Input[bool]]
6737
+ """
6738
+ . Defines whether the user can publish messages to the service.
6739
+ """
6740
+ can_receive: NotRequired[pulumi.Input[bool]]
6741
+ """
6742
+ . Defines whether the user can receive messages from the service.
6743
+ """
6744
+ elif False:
6745
+ MnqSnsCredentialsPermissionsArgsDict: TypeAlias = Mapping[str, Any]
6746
+
5129
6747
  @pulumi.input_type
5130
6748
  class MnqSnsCredentialsPermissionsArgs:
5131
6749
  def __init__(__self__, *,
@@ -5181,6 +6799,23 @@ class MnqSnsCredentialsPermissionsArgs:
5181
6799
  pulumi.set(self, "can_receive", value)
5182
6800
 
5183
6801
 
6802
+ if not MYPY:
6803
+ class MnqSqsCredentialsPermissionsArgsDict(TypedDict):
6804
+ can_manage: NotRequired[pulumi.Input[bool]]
6805
+ """
6806
+ . Defines whether the user can manage the associated resource(s).
6807
+ """
6808
+ can_publish: NotRequired[pulumi.Input[bool]]
6809
+ """
6810
+ . Defines whether the user can publish messages to the service.
6811
+ """
6812
+ can_receive: NotRequired[pulumi.Input[bool]]
6813
+ """
6814
+ . Defines whether the user can receive messages from the service.
6815
+ """
6816
+ elif False:
6817
+ MnqSqsCredentialsPermissionsArgsDict: TypeAlias = Mapping[str, Any]
6818
+
5184
6819
  @pulumi.input_type
5185
6820
  class MnqSqsCredentialsPermissionsArgs:
5186
6821
  def __init__(__self__, *,
@@ -5236,6 +6871,16 @@ class MnqSqsCredentialsPermissionsArgs:
5236
6871
  pulumi.set(self, "can_receive", value)
5237
6872
 
5238
6873
 
6874
+ if not MYPY:
6875
+ class ObjectBucketAclAccessControlPolicyArgsDict(TypedDict):
6876
+ owner: pulumi.Input['ObjectBucketAclAccessControlPolicyOwnerArgsDict']
6877
+ """
6878
+ Configuration block of the bucket project owner's display organization ID.
6879
+ """
6880
+ grants: NotRequired[pulumi.Input[Sequence[pulumi.Input['ObjectBucketAclAccessControlPolicyGrantArgsDict']]]]
6881
+ elif False:
6882
+ ObjectBucketAclAccessControlPolicyArgsDict: TypeAlias = Mapping[str, Any]
6883
+
5239
6884
  @pulumi.input_type
5240
6885
  class ObjectBucketAclAccessControlPolicyArgs:
5241
6886
  def __init__(__self__, *,
@@ -5270,6 +6915,19 @@ class ObjectBucketAclAccessControlPolicyArgs:
5270
6915
  pulumi.set(self, "grants", value)
5271
6916
 
5272
6917
 
6918
+ if not MYPY:
6919
+ class ObjectBucketAclAccessControlPolicyGrantArgsDict(TypedDict):
6920
+ permission: pulumi.Input[str]
6921
+ """
6922
+ Logging permissions assigned to the grantee for the bucket.
6923
+ """
6924
+ grantee: NotRequired[pulumi.Input['ObjectBucketAclAccessControlPolicyGrantGranteeArgsDict']]
6925
+ """
6926
+ Configuration block for the project being granted permissions.
6927
+ """
6928
+ elif False:
6929
+ ObjectBucketAclAccessControlPolicyGrantArgsDict: TypeAlias = Mapping[str, Any]
6930
+
5273
6931
  @pulumi.input_type
5274
6932
  class ObjectBucketAclAccessControlPolicyGrantArgs:
5275
6933
  def __init__(__self__, *,
@@ -5308,6 +6966,20 @@ class ObjectBucketAclAccessControlPolicyGrantArgs:
5308
6966
  pulumi.set(self, "grantee", value)
5309
6967
 
5310
6968
 
6969
+ if not MYPY:
6970
+ class ObjectBucketAclAccessControlPolicyGrantGranteeArgsDict(TypedDict):
6971
+ id: pulumi.Input[str]
6972
+ """
6973
+ The `region`,`bucket` and `acl` separated by (`/`).
6974
+ """
6975
+ type: pulumi.Input[str]
6976
+ """
6977
+ Type of grantee. Valid values: `CanonicalUser`
6978
+ """
6979
+ display_name: NotRequired[pulumi.Input[str]]
6980
+ elif False:
6981
+ ObjectBucketAclAccessControlPolicyGrantGranteeArgsDict: TypeAlias = Mapping[str, Any]
6982
+
5311
6983
  @pulumi.input_type
5312
6984
  class ObjectBucketAclAccessControlPolicyGrantGranteeArgs:
5313
6985
  def __init__(__self__, *,
@@ -5357,6 +7029,19 @@ class ObjectBucketAclAccessControlPolicyGrantGranteeArgs:
5357
7029
  pulumi.set(self, "display_name", value)
5358
7030
 
5359
7031
 
7032
+ if not MYPY:
7033
+ class ObjectBucketAclAccessControlPolicyOwnerArgsDict(TypedDict):
7034
+ id: pulumi.Input[str]
7035
+ """
7036
+ The `region`,`bucket` and `acl` separated by (`/`).
7037
+ """
7038
+ display_name: NotRequired[pulumi.Input[str]]
7039
+ """
7040
+ The project ID of the grantee.
7041
+ """
7042
+ elif False:
7043
+ ObjectBucketAclAccessControlPolicyOwnerArgsDict: TypeAlias = Mapping[str, Any]
7044
+
5360
7045
  @pulumi.input_type
5361
7046
  class ObjectBucketAclAccessControlPolicyOwnerArgs:
5362
7047
  def __init__(__self__, *,
@@ -5395,6 +7080,31 @@ class ObjectBucketAclAccessControlPolicyOwnerArgs:
5395
7080
  pulumi.set(self, "display_name", value)
5396
7081
 
5397
7082
 
7083
+ if not MYPY:
7084
+ class ObjectBucketCorsRuleArgsDict(TypedDict):
7085
+ allowed_methods: pulumi.Input[Sequence[pulumi.Input[str]]]
7086
+ """
7087
+ Specifies which methods are allowed. Can be `GET`, `PUT`, `POST`, `DELETE` or `HEAD`.
7088
+ """
7089
+ allowed_origins: pulumi.Input[Sequence[pulumi.Input[str]]]
7090
+ """
7091
+ Specifies which origins are allowed.
7092
+ """
7093
+ allowed_headers: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
7094
+ """
7095
+ Specifies which headers are allowed.
7096
+ """
7097
+ expose_headers: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
7098
+ """
7099
+ Specifies expose header in the response.
7100
+ """
7101
+ max_age_seconds: NotRequired[pulumi.Input[int]]
7102
+ """
7103
+ Specifies time in seconds that browser can cache the response for a preflight request.
7104
+ """
7105
+ elif False:
7106
+ ObjectBucketCorsRuleArgsDict: TypeAlias = Mapping[str, Any]
7107
+
5398
7108
  @pulumi.input_type
5399
7109
  class ObjectBucketCorsRuleArgs:
5400
7110
  def __init__(__self__, *,
@@ -5480,6 +7190,43 @@ class ObjectBucketCorsRuleArgs:
5480
7190
  pulumi.set(self, "max_age_seconds", value)
5481
7191
 
5482
7192
 
7193
+ if not MYPY:
7194
+ class ObjectBucketLifecycleRuleArgsDict(TypedDict):
7195
+ enabled: pulumi.Input[bool]
7196
+ """
7197
+ The element value can be either Enabled or Disabled. If a rule is disabled, Scaleway S3 doesn't perform any of the actions defined in the rule.
7198
+ """
7199
+ abort_incomplete_multipart_upload_days: NotRequired[pulumi.Input[int]]
7200
+ """
7201
+ Specifies the number of days after initiating a multipart upload when the multipart upload must be completed.
7202
+
7203
+ * > **Important:** It's not recommended using `prefix` for `AbortIncompleteMultipartUpload` as any incomplete multipart upload will be billed
7204
+ """
7205
+ expiration: NotRequired[pulumi.Input['ObjectBucketLifecycleRuleExpirationArgsDict']]
7206
+ """
7207
+ Specifies a period in the object's expire (documented below).
7208
+ """
7209
+ id: NotRequired[pulumi.Input[str]]
7210
+ """
7211
+ Unique identifier for the rule. Must be less than or equal to 255 characters in length.
7212
+ """
7213
+ prefix: NotRequired[pulumi.Input[str]]
7214
+ """
7215
+ Object key prefix identifying one or more objects to which the rule applies.
7216
+ """
7217
+ tags: NotRequired[pulumi.Input[Mapping[str, pulumi.Input[str]]]]
7218
+ """
7219
+ Specifies object tags key and value.
7220
+ """
7221
+ transitions: NotRequired[pulumi.Input[Sequence[pulumi.Input['ObjectBucketLifecycleRuleTransitionArgsDict']]]]
7222
+ """
7223
+ Specifies a period in the object's transitions (documented below).
7224
+
7225
+ At least one of `abort_incomplete_multipart_upload_days`, `expiration`, `transition` must be specified.
7226
+ """
7227
+ elif False:
7228
+ ObjectBucketLifecycleRuleArgsDict: TypeAlias = Mapping[str, Any]
7229
+
5483
7230
  @pulumi.input_type
5484
7231
  class ObjectBucketLifecycleRuleArgs:
5485
7232
  def __init__(__self__, *,
@@ -5606,6 +7353,17 @@ class ObjectBucketLifecycleRuleArgs:
5606
7353
  pulumi.set(self, "transitions", value)
5607
7354
 
5608
7355
 
7356
+ if not MYPY:
7357
+ class ObjectBucketLifecycleRuleExpirationArgsDict(TypedDict):
7358
+ days: pulumi.Input[int]
7359
+ """
7360
+ Specifies the number of days after object creation when the specific rule action takes effect.
7361
+
7362
+ > **Important:** If versioning is enabled, this rule only deletes the current version of an object.
7363
+ """
7364
+ elif False:
7365
+ ObjectBucketLifecycleRuleExpirationArgsDict: TypeAlias = Mapping[str, Any]
7366
+
5609
7367
  @pulumi.input_type
5610
7368
  class ObjectBucketLifecycleRuleExpirationArgs:
5611
7369
  def __init__(__self__, *,
@@ -5632,6 +7390,21 @@ class ObjectBucketLifecycleRuleExpirationArgs:
5632
7390
  pulumi.set(self, "days", value)
5633
7391
 
5634
7392
 
7393
+ if not MYPY:
7394
+ class ObjectBucketLifecycleRuleTransitionArgsDict(TypedDict):
7395
+ storage_class: pulumi.Input[str]
7396
+ """
7397
+ Specifies the Scaleway [storage class](https://www.scaleway.com/en/docs/storage/object/concepts/#storage-class) `STANDARD`, `GLACIER`, `ONEZONE_IA` to which you want the object to transition.
7398
+
7399
+ > **Important:** `ONEZONE_IA` is only available in `fr-par` region. The storage class `GLACIER` is not available in `pl-waw` region.
7400
+ """
7401
+ days: NotRequired[pulumi.Input[int]]
7402
+ """
7403
+ Specifies the number of days after object creation when the specific rule action takes effect.
7404
+ """
7405
+ elif False:
7406
+ ObjectBucketLifecycleRuleTransitionArgsDict: TypeAlias = Mapping[str, Any]
7407
+
5635
7408
  @pulumi.input_type
5636
7409
  class ObjectBucketLifecycleRuleTransitionArgs:
5637
7410
  def __init__(__self__, *,
@@ -5674,6 +7447,15 @@ class ObjectBucketLifecycleRuleTransitionArgs:
5674
7447
  pulumi.set(self, "days", value)
5675
7448
 
5676
7449
 
7450
+ if not MYPY:
7451
+ class ObjectBucketLockConfigurationRuleArgsDict(TypedDict):
7452
+ default_retention: pulumi.Input['ObjectBucketLockConfigurationRuleDefaultRetentionArgsDict']
7453
+ """
7454
+ The default retention for the lock.
7455
+ """
7456
+ elif False:
7457
+ ObjectBucketLockConfigurationRuleArgsDict: TypeAlias = Mapping[str, Any]
7458
+
5677
7459
  @pulumi.input_type
5678
7460
  class ObjectBucketLockConfigurationRuleArgs:
5679
7461
  def __init__(__self__, *,
@@ -5696,6 +7478,23 @@ class ObjectBucketLockConfigurationRuleArgs:
5696
7478
  pulumi.set(self, "default_retention", value)
5697
7479
 
5698
7480
 
7481
+ if not MYPY:
7482
+ class ObjectBucketLockConfigurationRuleDefaultRetentionArgsDict(TypedDict):
7483
+ mode: pulumi.Input[str]
7484
+ """
7485
+ The default Object Lock retention mode you want to apply to new objects placed in the specified bucket. Valid values are `GOVERNANCE` or `COMPLIANCE`. To learn more about the difference between these modes, see [Object Lock retention modes](https://www.scaleway.com/en/docs/storage/object/api-cli/object-lock/#retention-modes).
7486
+ """
7487
+ days: NotRequired[pulumi.Input[int]]
7488
+ """
7489
+ The number of days that you want to specify for the default retention period.
7490
+ """
7491
+ years: NotRequired[pulumi.Input[int]]
7492
+ """
7493
+ The number of years that you want to specify for the default retention period.
7494
+ """
7495
+ elif False:
7496
+ ObjectBucketLockConfigurationRuleDefaultRetentionArgsDict: TypeAlias = Mapping[str, Any]
7497
+
5699
7498
  @pulumi.input_type
5700
7499
  class ObjectBucketLockConfigurationRuleDefaultRetentionArgs:
5701
7500
  def __init__(__self__, *,
@@ -5750,6 +7549,15 @@ class ObjectBucketLockConfigurationRuleDefaultRetentionArgs:
5750
7549
  pulumi.set(self, "years", value)
5751
7550
 
5752
7551
 
7552
+ if not MYPY:
7553
+ class ObjectBucketVersioningArgsDict(TypedDict):
7554
+ enabled: NotRequired[pulumi.Input[bool]]
7555
+ """
7556
+ Enable versioning. Once you version-enable a bucket, it can never return to an unversioned state. You can, however, suspend versioning on that bucket.
7557
+ """
7558
+ elif False:
7559
+ ObjectBucketVersioningArgsDict: TypeAlias = Mapping[str, Any]
7560
+
5753
7561
  @pulumi.input_type
5754
7562
  class ObjectBucketVersioningArgs:
5755
7563
  def __init__(__self__, *,
@@ -5773,6 +7581,15 @@ class ObjectBucketVersioningArgs:
5773
7581
  pulumi.set(self, "enabled", value)
5774
7582
 
5775
7583
 
7584
+ if not MYPY:
7585
+ class ObjectBucketWebsiteConfigurationErrorDocumentArgsDict(TypedDict):
7586
+ key: pulumi.Input[str]
7587
+ """
7588
+ The object key name to use when a 4XX class error occurs.
7589
+ """
7590
+ elif False:
7591
+ ObjectBucketWebsiteConfigurationErrorDocumentArgsDict: TypeAlias = Mapping[str, Any]
7592
+
5776
7593
  @pulumi.input_type
5777
7594
  class ObjectBucketWebsiteConfigurationErrorDocumentArgs:
5778
7595
  def __init__(__self__, *,
@@ -5795,6 +7612,17 @@ class ObjectBucketWebsiteConfigurationErrorDocumentArgs:
5795
7612
  pulumi.set(self, "key", value)
5796
7613
 
5797
7614
 
7615
+ if not MYPY:
7616
+ class ObjectBucketWebsiteConfigurationIndexDocumentArgsDict(TypedDict):
7617
+ suffix: pulumi.Input[str]
7618
+ """
7619
+ A suffix that is appended to a request that is for a directory on the website endpoint.
7620
+
7621
+ > **Important:** The suffix must not be empty and must not include a slash character. The routing is not supported.
7622
+ """
7623
+ elif False:
7624
+ ObjectBucketWebsiteConfigurationIndexDocumentArgsDict: TypeAlias = Mapping[str, Any]
7625
+
5798
7626
  @pulumi.input_type
5799
7627
  class ObjectBucketWebsiteConfigurationIndexDocumentArgs:
5800
7628
  def __init__(__self__, *,
@@ -5821,6 +7649,26 @@ class ObjectBucketWebsiteConfigurationIndexDocumentArgs:
5821
7649
  pulumi.set(self, "suffix", value)
5822
7650
 
5823
7651
 
7652
+ if not MYPY:
7653
+ class RedisClusterAclArgsDict(TypedDict):
7654
+ ip: pulumi.Input[str]
7655
+ """
7656
+ The IP range to whitelist
7657
+ in [CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation)
7658
+ """
7659
+ description: NotRequired[pulumi.Input[str]]
7660
+ """
7661
+ A text describing this rule. Default description: `Allow IP`
7662
+
7663
+ > The `acl` conflict with `private_network`. Only one should be specified.
7664
+ """
7665
+ id: NotRequired[pulumi.Input[str]]
7666
+ """
7667
+ (Required) The UUID of the endpoint.
7668
+ """
7669
+ elif False:
7670
+ RedisClusterAclArgsDict: TypeAlias = Mapping[str, Any]
7671
+
5824
7672
  @pulumi.input_type
5825
7673
  class RedisClusterAclArgs:
5826
7674
  def __init__(__self__, *,
@@ -5881,6 +7729,46 @@ class RedisClusterAclArgs:
5881
7729
  pulumi.set(self, "id", value)
5882
7730
 
5883
7731
 
7732
+ if not MYPY:
7733
+ class RedisClusterPrivateNetworkArgsDict(TypedDict):
7734
+ id: pulumi.Input[str]
7735
+ """
7736
+ The UUID of the Private Network resource.
7737
+ """
7738
+ endpoint_id: NotRequired[pulumi.Input[str]]
7739
+ """
7740
+ The ID of the endpoint.
7741
+ """
7742
+ service_ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
7743
+ """
7744
+ Endpoint IPv4 addresses in [CIDR notation](https://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing#CIDR_notation). You must provide at least one IP per node.
7745
+ Keep in mind that in cluster mode you cannot edit your Private Network after its creation so if you want to be able to
7746
+ scale your cluster horizontally (adding nodes) later, you should provide more IPs than nodes.
7747
+ If not set, the IP network address within the private subnet is determined by the IP Address Management (IPAM) service.
7748
+
7749
+ > The `private_network` conflicts with `acl`. Only one should be specified.
7750
+
7751
+ > **Important:** The way to use Private Networks differs whether you are using Redis™ in Standalone or cluster mode.
7752
+
7753
+ - Standalone mode (`cluster_size` = 1) : you can attach as many Private Networks as you want (each must be a separate
7754
+ block). If you detach your only Private Network, your cluster won't be reachable until you define a new Private or
7755
+ Public Network. You can modify your `private_network` and its specs, you can have both a Private and Public Network side
7756
+ by side.
7757
+
7758
+ - Cluster mode (`cluster_size` > 2) : you can define a single Private Network as you create your cluster, you won't be
7759
+ able to edit or detach it afterward, unless you create another cluster. This also means that, if you are using a static
7760
+ configuration (`service_ips`), you won't be able to scale your cluster horizontally (add more nodes) since it would
7761
+ require updating the Private Network to add IPs.
7762
+ Your `service_ips` must be listed as follows:
7763
+ """
7764
+ zone: NotRequired[pulumi.Input[str]]
7765
+ """
7766
+ `zone`) The zone in which the
7767
+ Redis™ cluster should be created.
7768
+ """
7769
+ elif False:
7770
+ RedisClusterPrivateNetworkArgsDict: TypeAlias = Mapping[str, Any]
7771
+
5884
7772
  @pulumi.input_type
5885
7773
  class RedisClusterPrivateNetworkArgs:
5886
7774
  def __init__(__self__, *,
@@ -5989,6 +7877,23 @@ class RedisClusterPrivateNetworkArgs:
5989
7877
  pulumi.set(self, "zone", value)
5990
7878
 
5991
7879
 
7880
+ if not MYPY:
7881
+ class RedisClusterPublicNetworkArgsDict(TypedDict):
7882
+ id: NotRequired[pulumi.Input[str]]
7883
+ """
7884
+ (Required) The UUID of the endpoint.
7885
+ """
7886
+ ips: NotRequired[pulumi.Input[Sequence[pulumi.Input[str]]]]
7887
+ """
7888
+ Lis of IPv4 address of the endpoint (IP address).
7889
+ """
7890
+ port: NotRequired[pulumi.Input[int]]
7891
+ """
7892
+ TCP port of the endpoint.
7893
+ """
7894
+ elif False:
7895
+ RedisClusterPublicNetworkArgsDict: TypeAlias = Mapping[str, Any]
7896
+
5992
7897
  @pulumi.input_type
5993
7898
  class RedisClusterPublicNetworkArgs:
5994
7899
  def __init__(__self__, *,
@@ -6044,6 +7949,31 @@ class RedisClusterPublicNetworkArgs:
6044
7949
  pulumi.set(self, "port", value)
6045
7950
 
6046
7951
 
7952
+ if not MYPY:
7953
+ class TemDomainReputationArgsDict(TypedDict):
7954
+ previous_score: NotRequired[pulumi.Input[int]]
7955
+ """
7956
+ The previously-calculated domain's reputation score.
7957
+ """
7958
+ previous_scored_at: NotRequired[pulumi.Input[str]]
7959
+ """
7960
+ The time and date the previous reputation score was calculated.
7961
+ """
7962
+ score: NotRequired[pulumi.Input[int]]
7963
+ """
7964
+ A range from 0 to 100 that determines your domain's reputation score.
7965
+ """
7966
+ scored_at: NotRequired[pulumi.Input[str]]
7967
+ """
7968
+ The time and date the score was calculated.
7969
+ """
7970
+ status: NotRequired[pulumi.Input[str]]
7971
+ """
7972
+ The status of the domain's reputation.
7973
+ """
7974
+ elif False:
7975
+ TemDomainReputationArgsDict: TypeAlias = Mapping[str, Any]
7976
+
6047
7977
  @pulumi.input_type
6048
7978
  class TemDomainReputationArgs:
6049
7979
  def __init__(__self__, *,
@@ -6131,6 +8061,19 @@ class TemDomainReputationArgs:
6131
8061
  pulumi.set(self, "status", value)
6132
8062
 
6133
8063
 
8064
+ if not MYPY:
8065
+ class VpcGatewayNetworkIpamConfigArgsDict(TypedDict):
8066
+ ipam_ip_id: NotRequired[pulumi.Input[str]]
8067
+ """
8068
+ Use this IPAM-booked IP ID as the Gateway's IP in this Private Network.
8069
+ """
8070
+ push_default_route: NotRequired[pulumi.Input[bool]]
8071
+ """
8072
+ Defines whether to enable the default route on the GatewayNetwork.
8073
+ """
8074
+ elif False:
8075
+ VpcGatewayNetworkIpamConfigArgsDict: TypeAlias = Mapping[str, Any]
8076
+
6134
8077
  @pulumi.input_type
6135
8078
  class VpcGatewayNetworkIpamConfigArgs:
6136
8079
  def __init__(__self__, *,
@@ -6170,6 +8113,39 @@ class VpcGatewayNetworkIpamConfigArgs:
6170
8113
  pulumi.set(self, "push_default_route", value)
6171
8114
 
6172
8115
 
8116
+ if not MYPY:
8117
+ class VpcPrivateNetworkIpv4SubnetArgsDict(TypedDict):
8118
+ address: NotRequired[pulumi.Input[str]]
8119
+ """
8120
+ The network address of the subnet in hexadecimal notation, e.g., '2001:db8::' for a '2001:db8::/64' subnet.
8121
+ """
8122
+ created_at: NotRequired[pulumi.Input[str]]
8123
+ """
8124
+ The date and time of the creation of the subnet.
8125
+ """
8126
+ id: NotRequired[pulumi.Input[str]]
8127
+ """
8128
+ The subnet ID.
8129
+ """
8130
+ prefix_length: NotRequired[pulumi.Input[int]]
8131
+ """
8132
+ The length of the network prefix, e.g., 64 for a 'ffff:ffff:ffff:ffff::' mask.
8133
+ """
8134
+ subnet: NotRequired[pulumi.Input[str]]
8135
+ """
8136
+ The subnet CIDR.
8137
+ """
8138
+ subnet_mask: NotRequired[pulumi.Input[str]]
8139
+ """
8140
+ The subnet mask expressed in dotted decimal notation, e.g., '255.255.255.0' for a /24 subnet
8141
+ """
8142
+ updated_at: NotRequired[pulumi.Input[str]]
8143
+ """
8144
+ The date and time of the last update of the subnet.
8145
+ """
8146
+ elif False:
8147
+ VpcPrivateNetworkIpv4SubnetArgsDict: TypeAlias = Mapping[str, Any]
8148
+
6173
8149
  @pulumi.input_type
6174
8150
  class VpcPrivateNetworkIpv4SubnetArgs:
6175
8151
  def __init__(__self__, *,
@@ -6289,6 +8265,39 @@ class VpcPrivateNetworkIpv4SubnetArgs:
6289
8265
  pulumi.set(self, "updated_at", value)
6290
8266
 
6291
8267
 
8268
+ if not MYPY:
8269
+ class VpcPrivateNetworkIpv6SubnetArgsDict(TypedDict):
8270
+ address: NotRequired[pulumi.Input[str]]
8271
+ """
8272
+ The network address of the subnet in hexadecimal notation, e.g., '2001:db8::' for a '2001:db8::/64' subnet.
8273
+ """
8274
+ created_at: NotRequired[pulumi.Input[str]]
8275
+ """
8276
+ The date and time of the creation of the subnet.
8277
+ """
8278
+ id: NotRequired[pulumi.Input[str]]
8279
+ """
8280
+ The subnet ID.
8281
+ """
8282
+ prefix_length: NotRequired[pulumi.Input[int]]
8283
+ """
8284
+ The length of the network prefix, e.g., 64 for a 'ffff:ffff:ffff:ffff::' mask.
8285
+ """
8286
+ subnet: NotRequired[pulumi.Input[str]]
8287
+ """
8288
+ The subnet CIDR.
8289
+ """
8290
+ subnet_mask: NotRequired[pulumi.Input[str]]
8291
+ """
8292
+ The subnet mask expressed in dotted decimal notation, e.g., '255.255.255.0' for a /24 subnet
8293
+ """
8294
+ updated_at: NotRequired[pulumi.Input[str]]
8295
+ """
8296
+ The date and time of the last update of the subnet.
8297
+ """
8298
+ elif False:
8299
+ VpcPrivateNetworkIpv6SubnetArgsDict: TypeAlias = Mapping[str, Any]
8300
+
6292
8301
  @pulumi.input_type
6293
8302
  class VpcPrivateNetworkIpv6SubnetArgs:
6294
8303
  def __init__(__self__, *,
@@ -6408,6 +8417,19 @@ class VpcPrivateNetworkIpv6SubnetArgs:
6408
8417
  pulumi.set(self, "updated_at", value)
6409
8418
 
6410
8419
 
8420
+ if not MYPY:
8421
+ class WebhostingCpanelUrlArgsDict(TypedDict):
8422
+ dashboard: NotRequired[pulumi.Input[str]]
8423
+ """
8424
+ The URL of the Dashboard.
8425
+ """
8426
+ webmail: NotRequired[pulumi.Input[str]]
8427
+ """
8428
+ The URL of the Webmail interface.
8429
+ """
8430
+ elif False:
8431
+ WebhostingCpanelUrlArgsDict: TypeAlias = Mapping[str, Any]
8432
+
6411
8433
  @pulumi.input_type
6412
8434
  class WebhostingCpanelUrlArgs:
6413
8435
  def __init__(__self__, *,
@@ -6447,6 +8469,19 @@ class WebhostingCpanelUrlArgs:
6447
8469
  pulumi.set(self, "webmail", value)
6448
8470
 
6449
8471
 
8472
+ if not MYPY:
8473
+ class WebhostingOptionArgsDict(TypedDict):
8474
+ id: NotRequired[pulumi.Input[str]]
8475
+ """
8476
+ The option ID.
8477
+ """
8478
+ name: NotRequired[pulumi.Input[str]]
8479
+ """
8480
+ The option name.
8481
+ """
8482
+ elif False:
8483
+ WebhostingOptionArgsDict: TypeAlias = Mapping[str, Any]
8484
+
6450
8485
  @pulumi.input_type
6451
8486
  class WebhostingOptionArgs:
6452
8487
  def __init__(__self__, *,
@@ -6486,6 +8521,23 @@ class WebhostingOptionArgs:
6486
8521
  pulumi.set(self, "name", value)
6487
8522
 
6488
8523
 
8524
+ if not MYPY:
8525
+ class GetIpamIpResourceArgsDict(TypedDict):
8526
+ type: str
8527
+ """
8528
+ The type of the resource the IP is attached to. [Documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/ipam/v1#pkg-constants) with type list.
8529
+ """
8530
+ id: NotRequired[str]
8531
+ """
8532
+ The ID of the resource that the IP is attached to.
8533
+ """
8534
+ name: NotRequired[str]
8535
+ """
8536
+ The name of the resource the IP is attached to.
8537
+ """
8538
+ elif False:
8539
+ GetIpamIpResourceArgsDict: TypeAlias = Mapping[str, Any]
8540
+
6489
8541
  @pulumi.input_type
6490
8542
  class GetIpamIpResourceArgs:
6491
8543
  def __init__(__self__, *,
@@ -6540,6 +8592,23 @@ class GetIpamIpResourceArgs:
6540
8592
  pulumi.set(self, "name", value)
6541
8593
 
6542
8594
 
8595
+ if not MYPY:
8596
+ class GetIpamIpsResourceArgsDict(TypedDict):
8597
+ type: str
8598
+ """
8599
+ The type of the attached resource. [Documentation](https://pkg.go.dev/github.com/scaleway/scaleway-sdk-go@master/api/ipam/v1#pkg-constants) with type list.
8600
+ """
8601
+ id: NotRequired[str]
8602
+ """
8603
+ The ID of the attached resource.
8604
+ """
8605
+ name: NotRequired[str]
8606
+ """
8607
+ The name of the attached resource.
8608
+ """
8609
+ elif False:
8610
+ GetIpamIpsResourceArgsDict: TypeAlias = Mapping[str, Any]
8611
+
6543
8612
  @pulumi.input_type
6544
8613
  class GetIpamIpsResourceArgs:
6545
8614
  def __init__(__self__, *,