@scaleway/sdk 2.25.0 → 2.27.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (774) hide show
  1. package/dist/api/account/index.cjs +6 -0
  2. package/dist/api/account/index.d.ts +2 -0
  3. package/dist/api/account/index.js +6 -4
  4. package/dist/api/account/v2/api.gen.cjs +116 -0
  5. package/dist/api/account/v2/api.gen.d.ts +67 -0
  6. package/dist/api/account/v2/api.gen.js +61 -44
  7. package/dist/api/account/v2/index.gen.cjs +4 -0
  8. package/dist/api/account/v2/index.gen.d.ts +2 -0
  9. package/dist/api/account/v2/index.gen.js +4 -4
  10. package/dist/api/account/v2/marshalling.gen.cjs +44 -0
  11. package/dist/api/account/v2/marshalling.gen.d.ts +6 -0
  12. package/dist/api/account/v2/marshalling.gen.js +18 -13
  13. package/dist/api/account/v2/types.gen.d.ts +62 -0
  14. package/dist/api/account/v3/api.gen.cjs +106 -0
  15. package/dist/api/account/v3/api.gen.d.ts +57 -0
  16. package/dist/api/account/v3/api.gen.js +61 -44
  17. package/dist/api/account/v3/index.gen.cjs +6 -0
  18. package/dist/api/account/v3/index.gen.d.ts +3 -0
  19. package/dist/api/account/v3/index.gen.js +6 -6
  20. package/dist/api/account/v3/marshalling.gen.cjs +44 -0
  21. package/dist/api/account/v3/marshalling.gen.d.ts +6 -0
  22. package/dist/api/account/v3/marshalling.gen.js +18 -13
  23. package/dist/api/account/v3/types.gen.d.ts +62 -0
  24. package/dist/api/account/v3/validation-rules.gen.cjs +39 -0
  25. package/dist/api/account/v3/validation-rules.gen.d.ts +34 -0
  26. package/dist/api/account/v3/validation-rules.gen.js +5 -5
  27. package/dist/api/applesilicon/index.cjs +4 -0
  28. package/dist/api/applesilicon/index.d.ts +1 -0
  29. package/dist/api/applesilicon/index.js +4 -2
  30. package/dist/api/applesilicon/v1alpha1/api.gen.cjs +222 -0
  31. package/dist/api/applesilicon/v1alpha1/api.gen.d.ts +119 -0
  32. package/dist/api/applesilicon/v1alpha1/api.gen.js +125 -83
  33. package/dist/api/applesilicon/v1alpha1/content.gen.cjs +11 -0
  34. package/dist/api/applesilicon/v1alpha1/content.gen.d.ts +3 -0
  35. package/dist/api/applesilicon/v1alpha1/content.gen.js +11 -7
  36. package/dist/api/applesilicon/v1alpha1/index.gen.cjs +6 -0
  37. package/dist/api/applesilicon/v1alpha1/index.gen.d.ts +3 -0
  38. package/dist/api/applesilicon/v1alpha1/index.gen.js +6 -5
  39. package/dist/api/applesilicon/v1alpha1/marshalling.gen.cjs +147 -0
  40. package/dist/api/applesilicon/v1alpha1/marshalling.gen.d.ts +11 -0
  41. package/dist/api/applesilicon/v1alpha1/marshalling.gen.js +65 -31
  42. package/dist/api/applesilicon/v1alpha1/types.gen.d.ts +203 -0
  43. package/dist/api/baremetal/index.cjs +4 -0
  44. package/dist/api/baremetal/index.d.ts +1 -0
  45. package/dist/api/baremetal/index.js +4 -2
  46. package/dist/api/baremetal/v1/api.gen.cjs +575 -0
  47. package/dist/api/baremetal/v1/api.gen.d.ts +287 -0
  48. package/dist/api/baremetal/v1/api.gen.js +353 -205
  49. package/dist/api/baremetal/v1/api.utils.cjs +36 -0
  50. package/dist/api/baremetal/v1/api.utils.d.ts +13 -0
  51. package/dist/api/baremetal/v1/api.utils.js +27 -18
  52. package/dist/api/baremetal/v1/content.gen.cjs +18 -0
  53. package/dist/api/baremetal/v1/content.gen.d.ts +7 -0
  54. package/dist/api/baremetal/v1/content.gen.js +18 -13
  55. package/dist/api/baremetal/v1/index.cjs +12 -0
  56. package/dist/api/baremetal/v1/index.d.ts +5 -0
  57. package/dist/api/baremetal/v1/index.gen.d.ts +4 -0
  58. package/dist/api/baremetal/v1/index.js +12 -5
  59. package/dist/api/baremetal/v1/marshalling.gen.cjs +502 -0
  60. package/dist/api/baremetal/v1/marshalling.gen.d.ts +30 -0
  61. package/dist/api/baremetal/v1/marshalling.gen.js +186 -90
  62. package/dist/api/baremetal/v1/types.gen.d.ts +682 -0
  63. package/dist/api/baremetal/v1/validation-rules.gen.cjs +116 -0
  64. package/dist/api/baremetal/v1/validation-rules.gen.d.ts +104 -0
  65. package/dist/api/baremetal/v1/validation-rules.gen.js +12 -5
  66. package/dist/api/billing/index.cjs +6 -0
  67. package/dist/api/billing/index.d.ts +2 -0
  68. package/dist/api/billing/index.js +6 -4
  69. package/dist/api/billing/v2alpha1/api.gen.cjs +92 -0
  70. package/dist/api/billing/v2alpha1/api.gen.d.ts +50 -0
  71. package/dist/api/billing/v2alpha1/api.gen.js +60 -39
  72. package/dist/api/billing/v2alpha1/index.gen.cjs +4 -0
  73. package/dist/api/billing/v2alpha1/index.gen.d.ts +2 -0
  74. package/dist/api/billing/v2alpha1/index.gen.js +4 -4
  75. package/dist/api/billing/v2alpha1/marshalling.gen.cjs +117 -0
  76. package/dist/api/billing/v2alpha1/marshalling.gen.d.ts +4 -0
  77. package/dist/api/billing/v2alpha1/marshalling.gen.js +48 -29
  78. package/dist/api/billing/v2alpha1/types.gen.d.ts +136 -0
  79. package/dist/api/billing/v2beta1/api.gen.cjs +175 -0
  80. package/dist/api/billing/v2beta1/api.gen.d.ts +79 -0
  81. package/dist/api/billing/v2beta1/api.gen.js +122 -65
  82. package/dist/api/billing/v2beta1/index.gen.cjs +4 -0
  83. package/dist/api/billing/v2beta1/index.gen.d.ts +2 -0
  84. package/dist/api/billing/v2beta1/index.gen.js +4 -4
  85. package/dist/api/billing/v2beta1/marshalling.gen.cjs +158 -0
  86. package/dist/api/billing/v2beta1/marshalling.gen.d.ts +6 -0
  87. package/dist/api/billing/v2beta1/marshalling.gen.js +61 -36
  88. package/dist/api/billing/v2beta1/types.gen.d.ts +269 -0
  89. package/dist/api/block/index.cjs +4 -0
  90. package/dist/api/block/index.d.ts +1 -0
  91. package/dist/api/block/index.js +4 -2
  92. package/dist/api/block/v1alpha1/api.gen.cjs +272 -0
  93. package/dist/api/block/v1alpha1/api.gen.d.ts +144 -0
  94. package/dist/api/block/v1alpha1/api.gen.js +167 -90
  95. package/dist/api/block/v1alpha1/content.gen.cjs +20 -0
  96. package/dist/api/block/v1alpha1/content.gen.d.ts +7 -0
  97. package/dist/api/block/v1alpha1/content.gen.js +20 -13
  98. package/dist/api/block/v1alpha1/index.gen.cjs +10 -0
  99. package/dist/api/block/v1alpha1/index.gen.d.ts +4 -0
  100. package/dist/api/block/v1alpha1/index.gen.js +10 -7
  101. package/dist/api/block/v1alpha1/marshalling.gen.cjs +194 -0
  102. package/dist/api/block/v1alpha1/marshalling.gen.d.ts +13 -0
  103. package/dist/api/block/v1alpha1/marshalling.gen.js +78 -42
  104. package/dist/api/block/v1alpha1/types.gen.d.ts +315 -0
  105. package/dist/api/block/v1alpha1/validation-rules.gen.cjs +56 -0
  106. package/dist/api/block/v1alpha1/validation-rules.gen.d.ts +47 -0
  107. package/dist/api/block/v1alpha1/validation-rules.gen.js +14 -5
  108. package/dist/api/cockpit/index.cjs +6 -0
  109. package/dist/api/cockpit/index.d.ts +2 -0
  110. package/dist/api/cockpit/index.js +6 -4
  111. package/dist/api/cockpit/v1/api.gen.cjs +629 -0
  112. package/dist/api/cockpit/v1/api.gen.d.ts +310 -0
  113. package/dist/api/cockpit/v1/api.gen.js +374 -201
  114. package/dist/api/cockpit/v1/index.gen.cjs +7 -0
  115. package/dist/api/cockpit/v1/index.gen.d.ts +3 -0
  116. package/dist/api/cockpit/v1/index.gen.js +7 -6
  117. package/dist/api/cockpit/v1/marshalling.gen.cjs +325 -0
  118. package/dist/api/cockpit/v1/marshalling.gen.d.ts +30 -0
  119. package/dist/api/cockpit/v1/marshalling.gen.js +131 -59
  120. package/dist/api/cockpit/v1/types.gen.d.ts +525 -0
  121. package/dist/api/cockpit/v1/validation-rules.gen.cjs +48 -0
  122. package/dist/api/cockpit/v1/validation-rules.gen.d.ts +41 -0
  123. package/dist/api/cockpit/v1/validation-rules.gen.js +10 -8
  124. package/dist/api/cockpit/v1beta1/api.gen.cjs +484 -0
  125. package/dist/api/cockpit/v1beta1/api.gen.d.ts +224 -0
  126. package/dist/api/cockpit/v1beta1/api.gen.js +298 -167
  127. package/dist/api/cockpit/v1beta1/content.gen.cjs +8 -0
  128. package/dist/api/cockpit/v1beta1/content.gen.d.ts +3 -0
  129. package/dist/api/cockpit/v1beta1/content.gen.js +8 -7
  130. package/dist/api/cockpit/v1beta1/index.gen.cjs +6 -0
  131. package/dist/api/cockpit/v1beta1/index.gen.d.ts +3 -0
  132. package/dist/api/cockpit/v1beta1/index.gen.js +6 -5
  133. package/dist/api/cockpit/v1beta1/marshalling.gen.cjs +343 -0
  134. package/dist/api/cockpit/v1beta1/marshalling.gen.d.ts +29 -0
  135. package/dist/api/cockpit/v1beta1/marshalling.gen.js +131 -60
  136. package/dist/api/cockpit/v1beta1/types.gen.d.ts +385 -0
  137. package/dist/api/container/index.cjs +4 -0
  138. package/dist/api/container/index.d.ts +1 -0
  139. package/dist/api/container/index.js +4 -2
  140. package/dist/api/container/v1beta1/api.gen.cjs +621 -0
  141. package/dist/api/container/v1beta1/api.gen.d.ts +300 -0
  142. package/dist/api/container/v1beta1/api.gen.js +384 -228
  143. package/dist/api/container/v1beta1/content.gen.cjs +34 -0
  144. package/dist/api/container/v1beta1/content.gen.d.ts +13 -0
  145. package/dist/api/container/v1beta1/content.gen.js +34 -22
  146. package/dist/api/container/v1beta1/index.gen.cjs +13 -0
  147. package/dist/api/container/v1beta1/index.gen.d.ts +4 -0
  148. package/dist/api/container/v1beta1/index.gen.js +13 -7
  149. package/dist/api/container/v1beta1/marshalling.gen.cjs +408 -0
  150. package/dist/api/container/v1beta1/marshalling.gen.d.ts +24 -0
  151. package/dist/api/container/v1beta1/marshalling.gen.js +147 -71
  152. package/dist/api/container/v1beta1/types.gen.d.ts +785 -0
  153. package/dist/api/container/v1beta1/validation-rules.gen.cjs +45 -0
  154. package/dist/api/container/v1beta1/validation-rules.gen.d.ts +39 -0
  155. package/dist/api/container/v1beta1/validation-rules.gen.js +6 -5
  156. package/dist/api/dedibox/index.cjs +4 -0
  157. package/dist/api/dedibox/index.d.ts +1 -0
  158. package/dist/api/dedibox/index.js +4 -2
  159. package/dist/api/dedibox/v1/api.gen.cjs +1460 -0
  160. package/dist/api/dedibox/v1/api.gen.d.ts +560 -0
  161. package/dist/api/dedibox/v1/api.gen.js +1051 -565
  162. package/dist/api/dedibox/v1/content.gen.cjs +49 -0
  163. package/dist/api/dedibox/v1/content.gen.d.ts +19 -0
  164. package/dist/api/dedibox/v1/content.gen.js +49 -31
  165. package/dist/api/dedibox/v1/index.gen.cjs +22 -0
  166. package/dist/api/dedibox/v1/index.gen.d.ts +4 -0
  167. package/dist/api/dedibox/v1/index.gen.js +22 -7
  168. package/dist/api/dedibox/v1/marshalling.gen.cjs +1475 -0
  169. package/dist/api/dedibox/v1/marshalling.gen.d.ts +82 -0
  170. package/dist/api/dedibox/v1/marshalling.gen.js +514 -237
  171. package/dist/api/dedibox/v1/types.gen.d.ts +1900 -0
  172. package/dist/api/dedibox/v1/validation-rules.gen.cjs +626 -0
  173. package/dist/api/dedibox/v1/validation-rules.gen.d.ts +539 -0
  174. package/dist/api/dedibox/v1/validation-rules.gen.js +87 -5
  175. package/dist/api/document_db/index.cjs +4 -0
  176. package/dist/api/document_db/index.d.ts +1 -0
  177. package/dist/api/document_db/index.js +4 -2
  178. package/dist/api/document_db/v1beta1/api.gen.cjs +1018 -0
  179. package/dist/api/document_db/v1beta1/api.gen.d.ts +538 -0
  180. package/dist/api/document_db/v1beta1/api.gen.js +561 -339
  181. package/dist/api/document_db/v1beta1/content.gen.cjs +31 -0
  182. package/dist/api/document_db/v1beta1/content.gen.d.ts +11 -0
  183. package/dist/api/document_db/v1beta1/content.gen.js +31 -19
  184. package/dist/api/document_db/v1beta1/index.gen.cjs +12 -0
  185. package/dist/api/document_db/v1beta1/index.gen.d.ts +4 -0
  186. package/dist/api/document_db/v1beta1/index.gen.js +12 -7
  187. package/dist/api/document_db/v1beta1/marshalling.gen.cjs +829 -0
  188. package/dist/api/document_db/v1beta1/marshalling.gen.d.ts +50 -0
  189. package/dist/api/document_db/v1beta1/marshalling.gen.js +354 -181
  190. package/dist/api/document_db/v1beta1/types.gen.d.ts +1254 -0
  191. package/dist/api/document_db/v1beta1/validation-rules.gen.cjs +8 -0
  192. package/dist/api/document_db/v1beta1/validation-rules.gen.d.ts +5 -0
  193. package/dist/api/document_db/v1beta1/validation-rules.gen.js +3 -5
  194. package/dist/api/domain/index.cjs +4 -0
  195. package/dist/api/domain/index.d.ts +1 -0
  196. package/dist/api/domain/index.js +4 -2
  197. package/dist/api/domain/v2beta1/api.gen.cjs +1052 -0
  198. package/dist/api/domain/v2beta1/api.gen.d.ts +521 -0
  199. package/dist/api/domain/v2beta1/api.gen.js +638 -365
  200. package/dist/api/domain/v2beta1/content.gen.cjs +29 -0
  201. package/dist/api/domain/v2beta1/content.gen.d.ts +18 -0
  202. package/dist/api/domain/v2beta1/content.gen.js +29 -28
  203. package/dist/api/domain/v2beta1/index.gen.cjs +13 -0
  204. package/dist/api/domain/v2beta1/index.gen.d.ts +3 -0
  205. package/dist/api/domain/v2beta1/index.gen.js +13 -5
  206. package/dist/api/domain/v2beta1/marshalling.gen.cjs +1472 -0
  207. package/dist/api/domain/v2beta1/marshalling.gen.d.ts +59 -0
  208. package/dist/api/domain/v2beta1/marshalling.gen.js +676 -383
  209. package/dist/api/domain/v2beta1/types.gen.d.ts +1073 -0
  210. package/dist/api/flexibleip/index.cjs +4 -0
  211. package/dist/api/flexibleip/index.d.ts +1 -0
  212. package/dist/api/flexibleip/index.js +4 -2
  213. package/dist/api/flexibleip/v1alpha1/api.gen.cjs +227 -0
  214. package/dist/api/flexibleip/v1alpha1/api.gen.d.ts +117 -0
  215. package/dist/api/flexibleip/v1alpha1/api.gen.js +134 -86
  216. package/dist/api/flexibleip/v1alpha1/content.gen.cjs +12 -0
  217. package/dist/api/flexibleip/v1alpha1/content.gen.d.ts +5 -0
  218. package/dist/api/flexibleip/v1alpha1/content.gen.js +12 -10
  219. package/dist/api/flexibleip/v1alpha1/index.gen.cjs +9 -0
  220. package/dist/api/flexibleip/v1alpha1/index.gen.d.ts +4 -0
  221. package/dist/api/flexibleip/v1alpha1/index.gen.js +9 -7
  222. package/dist/api/flexibleip/v1alpha1/marshalling.gen.cjs +115 -0
  223. package/dist/api/flexibleip/v1alpha1/marshalling.gen.d.ts +13 -0
  224. package/dist/api/flexibleip/v1alpha1/marshalling.gen.js +36 -18
  225. package/dist/api/flexibleip/v1alpha1/types.gen.d.ts +196 -0
  226. package/dist/api/flexibleip/v1alpha1/validation-rules.gen.cjs +12 -0
  227. package/dist/api/flexibleip/v1alpha1/validation-rules.gen.d.ts +9 -0
  228. package/dist/api/flexibleip/v1alpha1/validation-rules.gen.js +3 -5
  229. package/dist/api/function/index.cjs +4 -0
  230. package/dist/api/function/index.d.ts +1 -0
  231. package/dist/api/function/index.js +4 -2
  232. package/dist/api/function/v1beta1/api.gen.cjs +666 -0
  233. package/dist/api/function/v1beta1/api.gen.d.ts +326 -0
  234. package/dist/api/function/v1beta1/api.gen.js +406 -244
  235. package/dist/api/function/v1beta1/content.gen.cjs +34 -0
  236. package/dist/api/function/v1beta1/content.gen.d.ts +13 -0
  237. package/dist/api/function/v1beta1/content.gen.js +34 -22
  238. package/dist/api/function/v1beta1/index.gen.cjs +13 -0
  239. package/dist/api/function/v1beta1/index.gen.d.ts +4 -0
  240. package/dist/api/function/v1beta1/index.gen.js +13 -7
  241. package/dist/api/function/v1beta1/marshalling.gen.cjs +457 -0
  242. package/dist/api/function/v1beta1/marshalling.gen.d.ts +27 -0
  243. package/dist/api/function/v1beta1/marshalling.gen.js +167 -80
  244. package/dist/api/function/v1beta1/types.gen.d.ts +819 -0
  245. package/dist/api/function/v1beta1/validation-rules.gen.cjs +45 -0
  246. package/dist/api/function/v1beta1/validation-rules.gen.d.ts +39 -0
  247. package/dist/api/function/v1beta1/validation-rules.gen.js +6 -5
  248. package/dist/api/iam/index.cjs +4 -0
  249. package/dist/api/iam/index.d.ts +1 -0
  250. package/dist/api/iam/index.js +4 -2
  251. package/dist/api/iam/v1alpha1/api.gen.cjs +951 -0
  252. package/dist/api/iam/v1alpha1/api.gen.d.ts +475 -0
  253. package/dist/api/iam/v1alpha1/api.gen.js +560 -302
  254. package/dist/api/iam/v1alpha1/index.gen.cjs +6 -0
  255. package/dist/api/iam/v1alpha1/index.gen.d.ts +3 -0
  256. package/dist/api/iam/v1alpha1/index.gen.js +6 -6
  257. package/dist/api/iam/v1alpha1/marshalling.gen.cjs +504 -0
  258. package/dist/api/iam/v1alpha1/marshalling.gen.d.ts +42 -0
  259. package/dist/api/iam/v1alpha1/marshalling.gen.js +184 -119
  260. package/dist/api/iam/v1alpha1/types.gen.d.ts +886 -0
  261. package/dist/api/iam/v1alpha1/validation-rules.gen.cjs +235 -0
  262. package/dist/api/iam/v1alpha1/validation-rules.gen.d.ts +211 -0
  263. package/dist/api/iam/v1alpha1/validation-rules.gen.js +29 -10
  264. package/dist/api/index.d.ts +34 -0
  265. package/dist/api/instance/index.cjs +4 -0
  266. package/dist/api/instance/index.d.ts +1 -0
  267. package/dist/api/instance/index.js +4 -2
  268. package/dist/api/instance/v1/api.gen.cjs +1178 -0
  269. package/dist/api/instance/v1/api.gen.d.ts +528 -0
  270. package/dist/api/instance/v1/api.gen.js +763 -445
  271. package/dist/api/instance/v1/api.utils.cjs +279 -0
  272. package/dist/api/instance/v1/api.utils.d.ts +95 -0
  273. package/dist/api/instance/v1/api.utils.js +145 -109
  274. package/dist/api/instance/v1/content.gen.cjs +44 -0
  275. package/dist/api/instance/v1/content.gen.d.ts +21 -0
  276. package/dist/api/instance/v1/content.gen.js +44 -34
  277. package/dist/api/instance/v1/index.cjs +15 -0
  278. package/dist/api/instance/v1/index.d.ts +4 -0
  279. package/dist/api/instance/v1/index.gen.d.ts +4 -0
  280. package/dist/api/instance/v1/index.js +15 -2
  281. package/dist/api/instance/v1/marshalling.gen.cjs +1813 -0
  282. package/dist/api/instance/v1/marshalling.gen.d.ts +95 -0
  283. package/dist/api/instance/v1/marshalling.gen.js +736 -412
  284. package/dist/api/instance/v1/marshalling.utils.d.ts +3 -0
  285. package/dist/api/instance/v1/types.gen.d.ts +1818 -0
  286. package/dist/api/instance/v1/types.private.gen.d.ts +167 -0
  287. package/dist/api/instance/v1/types.utils.d.ts +35 -0
  288. package/dist/api/instance/v1/validation-rules.gen.d.ts +10 -0
  289. package/dist/api/iot/index.cjs +4 -0
  290. package/dist/api/iot/index.d.ts +1 -0
  291. package/dist/api/iot/index.js +4 -2
  292. package/dist/api/iot/v1/api.gen.cjs +621 -0
  293. package/dist/api/iot/v1/api.gen.d.ts +325 -0
  294. package/dist/api/iot/v1/api.gen.js +350 -238
  295. package/dist/api/iot/v1/content.gen.cjs +4 -0
  296. package/dist/api/iot/v1/content.gen.d.ts +3 -0
  297. package/dist/api/iot/v1/content.gen.js +4 -7
  298. package/dist/api/iot/v1/index.gen.cjs +6 -0
  299. package/dist/api/iot/v1/index.gen.d.ts +3 -0
  300. package/dist/api/iot/v1/index.gen.js +6 -5
  301. package/dist/api/iot/v1/marshalling.gen.cjs +534 -0
  302. package/dist/api/iot/v1/marshalling.gen.d.ts +31 -0
  303. package/dist/api/iot/v1/marshalling.gen.js +209 -114
  304. package/dist/api/iot/v1/types.gen.d.ts +916 -0
  305. package/dist/api/ipam/index.cjs +4 -0
  306. package/dist/api/ipam/index.d.ts +1 -0
  307. package/dist/api/ipam/index.js +4 -2
  308. package/dist/api/ipam/v1/api.gen.cjs +115 -0
  309. package/dist/api/ipam/v1/api.gen.d.ts +57 -0
  310. package/dist/api/ipam/v1/api.gen.js +73 -55
  311. package/dist/api/ipam/v1/index.gen.cjs +6 -0
  312. package/dist/api/ipam/v1/index.gen.d.ts +3 -0
  313. package/dist/api/ipam/v1/index.gen.js +6 -6
  314. package/dist/api/ipam/v1/marshalling.gen.cjs +98 -0
  315. package/dist/api/ipam/v1/marshalling.gen.d.ts +6 -0
  316. package/dist/api/ipam/v1/marshalling.gen.js +35 -29
  317. package/dist/api/ipam/v1/types.gen.d.ts +198 -0
  318. package/dist/api/ipam/v1/validation-rules.gen.cjs +9 -0
  319. package/dist/api/ipam/v1/validation-rules.gen.d.ts +6 -0
  320. package/dist/api/ipam/v1/validation-rules.gen.js +3 -5
  321. package/dist/api/ipfs/index.cjs +4 -0
  322. package/dist/api/ipfs/index.d.ts +1 -0
  323. package/dist/api/ipfs/index.js +4 -2
  324. package/dist/api/ipfs/v1alpha1/api.gen.cjs +374 -0
  325. package/dist/api/ipfs/v1alpha1/api.gen.d.ts +198 -0
  326. package/dist/api/ipfs/v1alpha1/api.gen.js +210 -133
  327. package/dist/api/ipfs/v1alpha1/content.gen.cjs +6 -0
  328. package/dist/api/ipfs/v1alpha1/content.gen.d.ts +5 -0
  329. package/dist/api/ipfs/v1alpha1/content.gen.js +6 -10
  330. package/dist/api/ipfs/v1alpha1/index.gen.cjs +8 -0
  331. package/dist/api/ipfs/v1alpha1/index.gen.d.ts +3 -0
  332. package/dist/api/ipfs/v1alpha1/index.gen.js +8 -5
  333. package/dist/api/ipfs/v1alpha1/marshalling.gen.cjs +208 -0
  334. package/dist/api/ipfs/v1alpha1/marshalling.gen.d.ts +18 -0
  335. package/dist/api/ipfs/v1alpha1/marshalling.gen.js +68 -33
  336. package/dist/api/ipfs/v1alpha1/types.gen.d.ts +317 -0
  337. package/dist/api/jobs/index.cjs +4 -0
  338. package/dist/api/jobs/index.d.ts +1 -0
  339. package/dist/api/jobs/index.js +4 -2
  340. package/dist/api/jobs/v1alpha1/api.gen.cjs +170 -0
  341. package/dist/api/jobs/v1alpha1/api.gen.d.ts +80 -0
  342. package/dist/api/jobs/v1alpha1/api.gen.js +109 -69
  343. package/dist/api/jobs/v1alpha1/content.gen.cjs +8 -0
  344. package/dist/api/jobs/v1alpha1/content.gen.d.ts +3 -0
  345. package/dist/api/jobs/v1alpha1/content.gen.js +8 -7
  346. package/dist/api/jobs/v1alpha1/index.gen.cjs +8 -0
  347. package/dist/api/jobs/v1alpha1/index.gen.d.ts +4 -0
  348. package/dist/api/jobs/v1alpha1/index.gen.js +8 -7
  349. package/dist/api/jobs/v1alpha1/marshalling.gen.cjs +150 -0
  350. package/dist/api/jobs/v1alpha1/marshalling.gen.d.ts +10 -0
  351. package/dist/api/jobs/v1alpha1/marshalling.gen.js +50 -26
  352. package/dist/api/jobs/v1alpha1/types.gen.d.ts +210 -0
  353. package/dist/api/jobs/v1alpha1/validation-rules.gen.cjs +97 -0
  354. package/dist/api/jobs/v1alpha1/validation-rules.gen.d.ts +87 -0
  355. package/dist/api/jobs/v1alpha1/validation-rules.gen.js +12 -7
  356. package/dist/api/k8s/index.cjs +4 -0
  357. package/dist/api/k8s/index.d.ts +1 -0
  358. package/dist/api/k8s/index.js +4 -2
  359. package/dist/api/k8s/v1/api.gen.cjs +550 -0
  360. package/dist/api/k8s/v1/api.gen.d.ts +280 -0
  361. package/dist/api/k8s/v1/api.gen.js +324 -188
  362. package/dist/api/k8s/v1/api.utils.cjs +13 -0
  363. package/dist/api/k8s/v1/api.utils.d.ts +11 -0
  364. package/dist/api/k8s/v1/api.utils.js +5 -5
  365. package/dist/api/k8s/v1/content.gen.cjs +23 -0
  366. package/dist/api/k8s/v1/content.gen.d.ts +7 -0
  367. package/dist/api/k8s/v1/content.gen.js +23 -13
  368. package/dist/api/k8s/v1/index.cjs +10 -0
  369. package/dist/api/k8s/v1/index.d.ts +4 -0
  370. package/dist/api/k8s/v1/index.gen.d.ts +4 -0
  371. package/dist/api/k8s/v1/index.js +10 -4
  372. package/dist/api/k8s/v1/marshalling.gen.cjs +510 -0
  373. package/dist/api/k8s/v1/marshalling.gen.d.ts +22 -0
  374. package/dist/api/k8s/v1/marshalling.gen.js +158 -79
  375. package/dist/api/k8s/v1/types.gen.d.ts +1123 -0
  376. package/dist/api/k8s/v1/validation-rules.gen.cjs +110 -0
  377. package/dist/api/k8s/v1/validation-rules.gen.d.ts +96 -0
  378. package/dist/api/k8s/v1/validation-rules.gen.js +14 -5
  379. package/dist/api/lb/index.cjs +4 -0
  380. package/dist/api/lb/index.d.ts +1 -0
  381. package/dist/api/lb/index.js +4 -2
  382. package/dist/api/lb/v1/api.gen.cjs +1984 -0
  383. package/dist/api/lb/v1/api.gen.d.ts +990 -0
  384. package/dist/api/lb/v1/api.gen.js +1186 -695
  385. package/dist/api/lb/v1/api.utils.cjs +116 -0
  386. package/dist/api/lb/v1/api.utils.d.ts +41 -0
  387. package/dist/api/lb/v1/api.utils.js +83 -48
  388. package/dist/api/lb/v1/content.gen.cjs +22 -0
  389. package/dist/api/lb/v1/content.gen.d.ts +9 -0
  390. package/dist/api/lb/v1/content.gen.js +22 -16
  391. package/dist/api/lb/v1/index.cjs +10 -0
  392. package/dist/api/lb/v1/index.d.ts +4 -0
  393. package/dist/api/lb/v1/index.gen.d.ts +3 -0
  394. package/dist/api/lb/v1/index.js +10 -2
  395. package/dist/api/lb/v1/marshalling.gen.cjs +1289 -0
  396. package/dist/api/lb/v1/marshalling.gen.d.ts +73 -0
  397. package/dist/api/lb/v1/marshalling.gen.js +576 -334
  398. package/dist/api/lb/v1/types.gen.d.ts +2729 -0
  399. package/dist/api/lb/v1/types.utils.d.ts +13 -0
  400. package/dist/api/llm_inference/index.cjs +4 -0
  401. package/dist/api/llm_inference/index.d.ts +1 -0
  402. package/dist/api/llm_inference/index.js +4 -2
  403. package/dist/api/llm_inference/v1beta1/api.gen.cjs +305 -0
  404. package/dist/api/llm_inference/v1beta1/api.gen.d.ts +147 -0
  405. package/dist/api/llm_inference/v1beta1/api.gen.js +192 -120
  406. package/dist/api/llm_inference/v1beta1/content.gen.cjs +8 -0
  407. package/dist/api/llm_inference/v1beta1/content.gen.d.ts +3 -0
  408. package/dist/api/llm_inference/v1beta1/content.gen.js +8 -7
  409. package/dist/api/llm_inference/v1beta1/index.gen.cjs +8 -0
  410. package/dist/api/llm_inference/v1beta1/index.gen.d.ts +4 -0
  411. package/dist/api/llm_inference/v1beta1/index.gen.js +8 -7
  412. package/dist/api/llm_inference/v1beta1/marshalling.gen.cjs +271 -0
  413. package/dist/api/llm_inference/v1beta1/marshalling.gen.d.ts +18 -0
  414. package/dist/api/llm_inference/v1beta1/marshalling.gen.js +98 -52
  415. package/dist/api/llm_inference/v1beta1/types.gen.d.ts +433 -0
  416. package/dist/api/llm_inference/v1beta1/validation-rules.gen.cjs +56 -0
  417. package/dist/api/llm_inference/v1beta1/validation-rules.gen.d.ts +50 -0
  418. package/dist/api/llm_inference/v1beta1/validation-rules.gen.js +6 -5
  419. package/dist/api/marketplace/index.cjs +4 -0
  420. package/dist/api/marketplace/index.d.ts +1 -0
  421. package/dist/api/marketplace/index.js +4 -2
  422. package/dist/api/marketplace/v2/api.gen.cjs +174 -0
  423. package/dist/api/marketplace/v2/api.gen.d.ts +90 -0
  424. package/dist/api/marketplace/v2/api.gen.js +111 -67
  425. package/dist/api/marketplace/v2/index.gen.cjs +4 -0
  426. package/dist/api/marketplace/v2/index.gen.d.ts +2 -0
  427. package/dist/api/marketplace/v2/index.gen.js +4 -4
  428. package/dist/api/marketplace/v2/marshalling.gen.cjs +115 -0
  429. package/dist/api/marketplace/v2/marshalling.gen.d.ts +9 -0
  430. package/dist/api/marketplace/v2/marshalling.gen.js +44 -23
  431. package/dist/api/marketplace/v2/types.gen.d.ts +135 -0
  432. package/dist/api/mnq/index.cjs +4 -0
  433. package/dist/api/mnq/index.d.ts +1 -0
  434. package/dist/api/mnq/index.js +4 -2
  435. package/dist/api/mnq/v1beta1/api.gen.cjs +500 -0
  436. package/dist/api/mnq/v1beta1/api.gen.d.ts +265 -0
  437. package/dist/api/mnq/v1beta1/api.gen.js +291 -184
  438. package/dist/api/mnq/v1beta1/index.gen.cjs +8 -0
  439. package/dist/api/mnq/v1beta1/index.gen.d.ts +3 -0
  440. package/dist/api/mnq/v1beta1/index.gen.js +8 -6
  441. package/dist/api/mnq/v1beta1/marshalling.gen.cjs +268 -0
  442. package/dist/api/mnq/v1beta1/marshalling.gen.d.ts +23 -0
  443. package/dist/api/mnq/v1beta1/marshalling.gen.js +105 -49
  444. package/dist/api/mnq/v1beta1/types.gen.d.ts +449 -0
  445. package/dist/api/mnq/v1beta1/validation-rules.gen.cjs +85 -0
  446. package/dist/api/mnq/v1beta1/validation-rules.gen.d.ts +72 -0
  447. package/dist/api/mnq/v1beta1/validation-rules.gen.js +13 -5
  448. package/dist/api/rdb/index.cjs +4 -0
  449. package/dist/api/rdb/index.d.ts +1 -0
  450. package/dist/api/rdb/index.js +4 -2
  451. package/dist/api/rdb/v1/api.gen.cjs +1192 -0
  452. package/dist/api/rdb/v1/api.gen.d.ts +626 -0
  453. package/dist/api/rdb/v1/api.gen.js +660 -393
  454. package/dist/api/rdb/v1/content.gen.cjs +38 -0
  455. package/dist/api/rdb/v1/content.gen.d.ts +13 -0
  456. package/dist/api/rdb/v1/content.gen.js +38 -22
  457. package/dist/api/rdb/v1/index.gen.cjs +13 -0
  458. package/dist/api/rdb/v1/index.gen.d.ts +4 -0
  459. package/dist/api/rdb/v1/index.gen.js +13 -7
  460. package/dist/api/rdb/v1/marshalling.gen.cjs +908 -0
  461. package/dist/api/rdb/v1/marshalling.gen.d.ts +59 -0
  462. package/dist/api/rdb/v1/marshalling.gen.js +385 -191
  463. package/dist/api/rdb/v1/types.gen.d.ts +1404 -0
  464. package/dist/api/rdb/v1/validation-rules.gen.cjs +8 -0
  465. package/dist/api/rdb/v1/validation-rules.gen.d.ts +5 -0
  466. package/dist/api/rdb/v1/validation-rules.gen.js +3 -5
  467. package/dist/api/redis/index.cjs +4 -0
  468. package/dist/api/redis/index.d.ts +1 -0
  469. package/dist/api/redis/index.js +4 -2
  470. package/dist/api/redis/v1/api.gen.cjs +476 -0
  471. package/dist/api/redis/v1/api.gen.d.ts +249 -0
  472. package/dist/api/redis/v1/api.gen.js +265 -162
  473. package/dist/api/redis/v1/content.gen.cjs +10 -0
  474. package/dist/api/redis/v1/content.gen.d.ts +3 -0
  475. package/dist/api/redis/v1/content.gen.js +10 -7
  476. package/dist/api/redis/v1/index.gen.cjs +6 -0
  477. package/dist/api/redis/v1/index.gen.d.ts +3 -0
  478. package/dist/api/redis/v1/index.gen.js +6 -5
  479. package/dist/api/redis/v1/marshalling.gen.cjs +355 -0
  480. package/dist/api/redis/v1/marshalling.gen.d.ts +24 -0
  481. package/dist/api/redis/v1/marshalling.gen.js +156 -84
  482. package/dist/api/redis/v1/types.gen.d.ts +473 -0
  483. package/dist/api/registry/index.cjs +4 -0
  484. package/dist/api/registry/index.d.ts +1 -0
  485. package/dist/api/registry/index.js +4 -2
  486. package/dist/api/registry/v1/api.gen.cjs +287 -0
  487. package/dist/api/registry/v1/api.gen.d.ts +156 -0
  488. package/dist/api/registry/v1/api.gen.js +161 -94
  489. package/dist/api/registry/v1/content.gen.cjs +8 -0
  490. package/dist/api/registry/v1/content.gen.d.ts +7 -0
  491. package/dist/api/registry/v1/content.gen.js +8 -13
  492. package/dist/api/registry/v1/index.gen.cjs +8 -0
  493. package/dist/api/registry/v1/index.gen.d.ts +3 -0
  494. package/dist/api/registry/v1/index.gen.js +8 -5
  495. package/dist/api/registry/v1/marshalling.gen.cjs +129 -0
  496. package/dist/api/registry/v1/marshalling.gen.d.ts +11 -0
  497. package/dist/api/registry/v1/marshalling.gen.js +51 -30
  498. package/dist/api/registry/v1/types.gen.d.ts +300 -0
  499. package/dist/api/secret/index.cjs +6 -0
  500. package/dist/api/secret/index.d.ts +2 -0
  501. package/dist/api/secret/index.js +6 -4
  502. package/dist/api/secret/v1alpha1/api.gen.cjs +483 -0
  503. package/dist/api/secret/v1alpha1/api.gen.d.ts +261 -0
  504. package/dist/api/secret/v1alpha1/api.gen.js +271 -176
  505. package/dist/api/secret/v1alpha1/index.gen.cjs +4 -0
  506. package/dist/api/secret/v1alpha1/index.gen.d.ts +2 -0
  507. package/dist/api/secret/v1alpha1/index.gen.js +4 -4
  508. package/dist/api/secret/v1alpha1/marshalling.gen.cjs +221 -0
  509. package/dist/api/secret/v1alpha1/marshalling.gen.d.ts +19 -0
  510. package/dist/api/secret/v1alpha1/marshalling.gen.js +67 -33
  511. package/dist/api/secret/v1alpha1/types.gen.d.ts +619 -0
  512. package/dist/api/secret/v1beta1/api.gen.cjs +359 -0
  513. package/dist/api/secret/v1beta1/api.gen.d.ts +181 -0
  514. package/dist/api/secret/v1beta1/api.gen.js +213 -135
  515. package/dist/api/secret/v1beta1/index.gen.cjs +6 -0
  516. package/dist/api/secret/v1beta1/index.gen.d.ts +3 -0
  517. package/dist/api/secret/v1beta1/index.gen.js +6 -6
  518. package/dist/api/secret/v1beta1/marshalling.gen.cjs +219 -0
  519. package/dist/api/secret/v1beta1/marshalling.gen.d.ts +14 -0
  520. package/dist/api/secret/v1beta1/marshalling.gen.js +76 -40
  521. package/dist/api/secret/v1beta1/types.gen.d.ts +513 -0
  522. package/dist/api/secret/v1beta1/validation-rules.gen.cjs +8 -0
  523. package/dist/api/secret/v1beta1/validation-rules.gen.d.ts +5 -0
  524. package/dist/api/secret/v1beta1/validation-rules.gen.js +3 -5
  525. package/dist/api/serverless_sqldb/index.cjs +4 -0
  526. package/dist/api/serverless_sqldb/index.d.ts +1 -0
  527. package/dist/api/serverless_sqldb/index.js +4 -2
  528. package/dist/api/serverless_sqldb/v1alpha1/api.gen.cjs +202 -0
  529. package/dist/api/serverless_sqldb/v1alpha1/api.gen.d.ts +109 -0
  530. package/dist/api/serverless_sqldb/v1alpha1/api.gen.js +118 -78
  531. package/dist/api/serverless_sqldb/v1alpha1/content.gen.cjs +8 -0
  532. package/dist/api/serverless_sqldb/v1alpha1/content.gen.d.ts +3 -0
  533. package/dist/api/serverless_sqldb/v1alpha1/content.gen.js +8 -7
  534. package/dist/api/serverless_sqldb/v1alpha1/index.gen.cjs +8 -0
  535. package/dist/api/serverless_sqldb/v1alpha1/index.gen.d.ts +4 -0
  536. package/dist/api/serverless_sqldb/v1alpha1/index.gen.js +8 -7
  537. package/dist/api/serverless_sqldb/v1alpha1/marshalling.gen.cjs +89 -0
  538. package/dist/api/serverless_sqldb/v1alpha1/marshalling.gen.d.ts +9 -0
  539. package/dist/api/serverless_sqldb/v1alpha1/marshalling.gen.js +27 -15
  540. package/dist/api/serverless_sqldb/v1alpha1/types.gen.d.ts +193 -0
  541. package/dist/api/serverless_sqldb/v1alpha1/validation-rules.gen.cjs +62 -0
  542. package/dist/api/serverless_sqldb/v1alpha1/validation-rules.gen.d.ts +55 -0
  543. package/dist/api/serverless_sqldb/v1alpha1/validation-rules.gen.js +9 -7
  544. package/dist/api/std/index.gen.cjs +1 -0
  545. package/dist/api/std/index.gen.d.ts +1 -0
  546. package/dist/api/std/types.gen.d.ts +1 -0
  547. package/dist/api/tem/index.cjs +4 -0
  548. package/dist/api/tem/index.d.ts +1 -0
  549. package/dist/api/tem/index.js +4 -2
  550. package/dist/api/tem/v1alpha1/api.gen.cjs +260 -0
  551. package/dist/api/tem/v1alpha1/api.gen.d.ts +130 -0
  552. package/dist/api/tem/v1alpha1/api.gen.js +154 -89
  553. package/dist/api/tem/v1alpha1/content.gen.cjs +6 -0
  554. package/dist/api/tem/v1alpha1/content.gen.d.ts +5 -0
  555. package/dist/api/tem/v1alpha1/content.gen.js +6 -10
  556. package/dist/api/tem/v1alpha1/index.gen.cjs +7 -0
  557. package/dist/api/tem/v1alpha1/index.gen.d.ts +3 -0
  558. package/dist/api/tem/v1alpha1/index.gen.js +7 -5
  559. package/dist/api/tem/v1alpha1/marshalling.gen.cjs +255 -0
  560. package/dist/api/tem/v1alpha1/marshalling.gen.d.ts +11 -0
  561. package/dist/api/tem/v1alpha1/marshalling.gen.js +90 -50
  562. package/dist/api/tem/v1alpha1/types.gen.d.ts +401 -0
  563. package/dist/api/test/index.cjs +4 -0
  564. package/dist/api/test/index.d.ts +1 -0
  565. package/dist/api/test/index.js +4 -2
  566. package/dist/api/test/v1/api.gen.cjs +164 -0
  567. package/dist/api/test/v1/api.gen.d.ts +84 -0
  568. package/dist/api/test/v1/api.gen.js +99 -71
  569. package/dist/api/test/v1/content.gen.cjs +4 -0
  570. package/dist/api/test/v1/content.gen.d.ts +3 -0
  571. package/dist/api/test/v1/content.gen.js +4 -7
  572. package/dist/api/test/v1/index.gen.cjs +6 -0
  573. package/dist/api/test/v1/index.gen.d.ts +3 -0
  574. package/dist/api/test/v1/index.gen.js +6 -5
  575. package/dist/api/test/v1/marshalling.gen.cjs +93 -0
  576. package/dist/api/test/v1/marshalling.gen.d.ts +8 -0
  577. package/dist/api/test/v1/marshalling.gen.js +34 -22
  578. package/dist/api/test/v1/types.gen.d.ts +91 -0
  579. package/dist/api/vpc/index.cjs +6 -0
  580. package/dist/api/vpc/index.d.ts +2 -0
  581. package/dist/api/vpc/index.js +6 -4
  582. package/dist/api/vpc/v1/api.gen.cjs +119 -0
  583. package/dist/api/vpc/v1/api.gen.d.ts +54 -0
  584. package/dist/api/vpc/v1/api.gen.js +76 -43
  585. package/dist/api/vpc/v1/index.gen.cjs +4 -0
  586. package/dist/api/vpc/v1/index.gen.d.ts +2 -0
  587. package/dist/api/vpc/v1/index.gen.js +4 -4
  588. package/dist/api/vpc/v1/marshalling.gen.cjs +52 -0
  589. package/dist/api/vpc/v1/marshalling.gen.d.ts +6 -0
  590. package/dist/api/vpc/v1/marshalling.gen.js +22 -14
  591. package/dist/api/vpc/v1/types.gen.d.ts +99 -0
  592. package/dist/api/vpc/v2/api.gen.cjs +303 -0
  593. package/dist/api/vpc/v2/api.gen.d.ts +144 -0
  594. package/dist/api/vpc/v2/api.gen.js +181 -112
  595. package/dist/api/vpc/v2/index.gen.cjs +4 -0
  596. package/dist/api/vpc/v2/index.gen.d.ts +2 -0
  597. package/dist/api/vpc/v2/index.gen.js +4 -4
  598. package/dist/api/vpc/v2/marshalling.gen.cjs +173 -0
  599. package/dist/api/vpc/v2/marshalling.gen.d.ts +17 -0
  600. package/dist/api/vpc/v2/marshalling.gen.js +70 -36
  601. package/dist/api/vpc/v2/types.gen.d.ts +338 -0
  602. package/dist/api/vpcgw/index.cjs +4 -0
  603. package/dist/api/vpcgw/index.d.ts +1 -0
  604. package/dist/api/vpcgw/index.js +4 -2
  605. package/dist/api/vpcgw/v1/api.gen.cjs +740 -0
  606. package/dist/api/vpcgw/v1/api.gen.d.ts +389 -0
  607. package/dist/api/vpcgw/v1/api.gen.js +408 -239
  608. package/dist/api/vpcgw/v1/content.gen.cjs +15 -0
  609. package/dist/api/vpcgw/v1/content.gen.d.ts +5 -0
  610. package/dist/api/vpcgw/v1/content.gen.js +15 -10
  611. package/dist/api/vpcgw/v1/index.gen.cjs +7 -0
  612. package/dist/api/vpcgw/v1/index.gen.d.ts +3 -0
  613. package/dist/api/vpcgw/v1/index.gen.js +7 -5
  614. package/dist/api/vpcgw/v1/marshalling.gen.cjs +437 -0
  615. package/dist/api/vpcgw/v1/marshalling.gen.d.ts +31 -0
  616. package/dist/api/vpcgw/v1/marshalling.gen.js +145 -74
  617. package/dist/api/vpcgw/v1/types.gen.d.ts +901 -0
  618. package/dist/api/webhosting/index.cjs +4 -0
  619. package/dist/api/webhosting/index.d.ts +1 -0
  620. package/dist/api/webhosting/index.js +4 -2
  621. package/dist/api/webhosting/v1alpha1/api.gen.cjs +226 -0
  622. package/dist/api/webhosting/v1alpha1/api.gen.d.ts +111 -0
  623. package/dist/api/webhosting/v1alpha1/api.gen.js +145 -75
  624. package/dist/api/webhosting/v1alpha1/content.gen.cjs +8 -0
  625. package/dist/api/webhosting/v1alpha1/content.gen.d.ts +3 -0
  626. package/dist/api/webhosting/v1alpha1/content.gen.js +8 -7
  627. package/dist/api/webhosting/v1alpha1/index.gen.cjs +8 -0
  628. package/dist/api/webhosting/v1alpha1/index.gen.d.ts +4 -0
  629. package/dist/api/webhosting/v1alpha1/index.gen.js +8 -7
  630. package/dist/api/webhosting/v1alpha1/marshalling.gen.cjs +236 -0
  631. package/dist/api/webhosting/v1alpha1/marshalling.gen.d.ts +11 -0
  632. package/dist/api/webhosting/v1alpha1/marshalling.gen.js +92 -37
  633. package/dist/api/webhosting/v1alpha1/types.gen.d.ts +379 -0
  634. package/dist/api/webhosting/v1alpha1/validation-rules.gen.cjs +22 -0
  635. package/dist/api/webhosting/v1alpha1/validation-rules.gen.d.ts +18 -0
  636. package/dist/api/webhosting/v1alpha1/validation-rules.gen.js +4 -5
  637. package/dist/bridge.d.ts +11 -0
  638. package/dist/helpers/is-browser.cjs +7 -0
  639. package/dist/helpers/is-browser.d.ts +1 -0
  640. package/dist/helpers/is-browser.js +7 -5
  641. package/dist/helpers/is-response.cjs +4 -0
  642. package/dist/helpers/is-response.d.ts +8 -0
  643. package/dist/helpers/is-response.js +4 -10
  644. package/dist/helpers/json.cjs +7 -0
  645. package/dist/helpers/json.d.ts +13 -0
  646. package/dist/helpers/json.js +5 -9
  647. package/dist/helpers/marshalling.cjs +78 -0
  648. package/dist/helpers/marshalling.d.ts +63 -0
  649. package/dist/helpers/marshalling.js +40 -77
  650. package/dist/index.cjs +114 -32034
  651. package/dist/index.d.ts +15 -38373
  652. package/dist/index.js +115 -81
  653. package/dist/internal/async/interval-retrier.cjs +55 -0
  654. package/dist/internal/async/interval-retrier.d.ts +111 -0
  655. package/dist/internal/async/interval-retrier.js +30 -72
  656. package/dist/internal/async/sleep.cjs +6 -0
  657. package/dist/internal/async/sleep.d.ts +9 -0
  658. package/dist/internal/async/sleep.js +4 -11
  659. package/dist/internal/interceptors/composer.cjs +25 -0
  660. package/dist/internal/interceptors/composer.d.ts +25 -0
  661. package/dist/internal/interceptors/composer.js +15 -36
  662. package/dist/internal/interceptors/helpers.cjs +12 -0
  663. package/dist/internal/interceptors/helpers.d.ts +21 -0
  664. package/dist/internal/interceptors/helpers.js +7 -26
  665. package/dist/internal/interceptors/types.d.ts +89 -0
  666. package/dist/internal/logger/console-logger.cjs +24 -0
  667. package/dist/internal/logger/console-logger.d.ts +23 -0
  668. package/dist/internal/logger/console-logger.js +11 -19
  669. package/dist/internal/logger/index.cjs +12 -0
  670. package/dist/internal/logger/index.d.ts +25 -0
  671. package/dist/internal/logger/index.js +9 -30
  672. package/dist/internal/logger/level-resolver.cjs +13 -0
  673. package/dist/internal/logger/level-resolver.d.ts +9 -0
  674. package/dist/internal/logger/level-resolver.js +12 -12
  675. package/dist/internal/logger/logger.d.ts +13 -0
  676. package/dist/internal/validations/string-validation.cjs +30 -0
  677. package/dist/internal/validations/string-validation.d.ts +18 -0
  678. package/dist/internal/validations/string-validation.js +19 -27
  679. package/dist/internals.d.ts +10 -0
  680. package/dist/scw/api.cjs +8 -0
  681. package/dist/scw/api.d.ts +10 -0
  682. package/dist/scw/api.js +3 -7
  683. package/dist/scw/auth.cjs +28 -0
  684. package/dist/scw/auth.d.ts +57 -0
  685. package/dist/scw/auth.js +23 -62
  686. package/dist/scw/client-ini-factory.cjs +66 -0
  687. package/dist/scw/client-ini-factory.d.ts +111 -0
  688. package/dist/scw/client-ini-factory.js +33 -141
  689. package/dist/scw/client-ini-profile.cjs +23 -0
  690. package/dist/scw/client-ini-profile.d.ts +82 -0
  691. package/dist/scw/client-ini-profile.js +15 -46
  692. package/dist/scw/client-settings.cjs +51 -0
  693. package/dist/scw/client-settings.d.ts +59 -0
  694. package/dist/scw/client-settings.js +26 -53
  695. package/dist/scw/client.cjs +28 -0
  696. package/dist/scw/client.d.ts +72 -0
  697. package/dist/scw/client.js +14 -76
  698. package/dist/scw/constants.cjs +6 -0
  699. package/dist/scw/constants.d.ts +2 -0
  700. package/dist/scw/constants.js +5 -3
  701. package/dist/scw/custom-marshalling.cjs +92 -0
  702. package/dist/scw/custom-marshalling.d.ts +59 -0
  703. package/dist/scw/custom-marshalling.js +38 -77
  704. package/dist/scw/errors/error-parser.cjs +76 -0
  705. package/dist/scw/errors/error-parser.d.ts +12 -0
  706. package/dist/scw/errors/error-parser.js +33 -64
  707. package/dist/scw/errors/non-standard/invalid-request-mapper.cjs +36 -0
  708. package/dist/scw/errors/non-standard/invalid-request-mapper.d.ts +12 -0
  709. package/dist/scw/errors/non-standard/invalid-request-mapper.js +26 -23
  710. package/dist/scw/errors/non-standard/unknown-resource-mapper.cjs +23 -0
  711. package/dist/scw/errors/non-standard/unknown-resource-mapper.d.ts +11 -0
  712. package/dist/scw/errors/non-standard/unknown-resource-mapper.js +16 -20
  713. package/dist/scw/errors/scw-error.cjs +43 -0
  714. package/dist/scw/errors/scw-error.d.ts +25 -0
  715. package/dist/scw/errors/scw-error.js +19 -35
  716. package/dist/scw/errors/standard/already-exists-error.cjs +31 -0
  717. package/dist/scw/errors/standard/already-exists-error.d.ts +16 -0
  718. package/dist/scw/errors/standard/already-exists-error.js +18 -13
  719. package/dist/scw/errors/standard/denied-authentication-error.cjs +37 -0
  720. package/dist/scw/errors/standard/denied-authentication-error.d.ts +15 -0
  721. package/dist/scw/errors/standard/denied-authentication-error.js +9 -24
  722. package/dist/scw/errors/standard/index.cjs +28 -0
  723. package/dist/scw/errors/standard/index.d.ts +17 -0
  724. package/dist/scw/errors/standard/index.js +28 -13
  725. package/dist/scw/errors/standard/invalid-arguments-error.cjs +55 -0
  726. package/dist/scw/errors/standard/invalid-arguments-error.d.ts +24 -0
  727. package/dist/scw/errors/standard/invalid-arguments-error.js +26 -38
  728. package/dist/scw/errors/standard/out-of-stock-error.cjs +18 -0
  729. package/dist/scw/errors/standard/out-of-stock-error.d.ts +14 -0
  730. package/dist/scw/errors/standard/out-of-stock-error.js +7 -11
  731. package/dist/scw/errors/standard/permissions-denied-error.cjs +30 -0
  732. package/dist/scw/errors/standard/permissions-denied-error.d.ts +23 -0
  733. package/dist/scw/errors/standard/permissions-denied-error.js +20 -35
  734. package/dist/scw/errors/standard/precondition-failed-error.cjs +32 -0
  735. package/dist/scw/errors/standard/precondition-failed-error.d.ts +15 -0
  736. package/dist/scw/errors/standard/precondition-failed-error.js +14 -24
  737. package/dist/scw/errors/standard/quotas-exceeded-error.cjs +44 -0
  738. package/dist/scw/errors/standard/quotas-exceeded-error.d.ts +34 -0
  739. package/dist/scw/errors/standard/quotas-exceeded-error.js +29 -53
  740. package/dist/scw/errors/standard/resource-expired-error.cjs +31 -0
  741. package/dist/scw/errors/standard/resource-expired-error.d.ts +16 -0
  742. package/dist/scw/errors/standard/resource-expired-error.js +18 -13
  743. package/dist/scw/errors/standard/resource-locked-error.cjs +20 -0
  744. package/dist/scw/errors/standard/resource-locked-error.d.ts +15 -0
  745. package/dist/scw/errors/standard/resource-locked-error.js +6 -11
  746. package/dist/scw/errors/standard/resource-not-found-error.cjs +24 -0
  747. package/dist/scw/errors/standard/resource-not-found-error.d.ts +15 -0
  748. package/dist/scw/errors/standard/resource-not-found-error.js +11 -12
  749. package/dist/scw/errors/standard/too-many-requests-error.cjs +59 -0
  750. package/dist/scw/errors/standard/too-many-requests-error.d.ts +32 -0
  751. package/dist/scw/errors/standard/too-many-requests-error.js +20 -31
  752. package/dist/scw/errors/standard/transient-state-error.cjs +31 -0
  753. package/dist/scw/errors/standard/transient-state-error.d.ts +16 -0
  754. package/dist/scw/errors/standard/transient-state-error.js +18 -13
  755. package/dist/scw/errors/types.cjs +15 -0
  756. package/dist/scw/errors/types.d.ts +9 -0
  757. package/dist/scw/errors/types.js +6 -14
  758. package/dist/scw/fetch/build-fetcher.cjs +60 -0
  759. package/dist/scw/fetch/build-fetcher.d.ts +23 -0
  760. package/dist/scw/fetch/build-fetcher.js +29 -38
  761. package/dist/scw/fetch/http-dumper.cjs +20 -0
  762. package/dist/scw/fetch/http-dumper.d.ts +18 -0
  763. package/dist/scw/fetch/http-dumper.js +19 -50
  764. package/dist/scw/fetch/http-interceptors.cjs +43 -0
  765. package/dist/scw/fetch/http-interceptors.d.ts +38 -0
  766. package/dist/scw/fetch/http-interceptors.js +23 -66
  767. package/dist/scw/fetch/resource-paginator.cjs +37 -0
  768. package/dist/scw/fetch/resource-paginator.d.ts +47 -0
  769. package/dist/scw/fetch/resource-paginator.js +12 -45
  770. package/dist/scw/fetch/response-parser.cjs +57 -0
  771. package/dist/scw/fetch/response-parser.d.ts +25 -0
  772. package/dist/scw/fetch/response-parser.js +31 -46
  773. package/package.json +7 -3
  774. package/dist/node_modules/.pnpm/@scaleway_random-name@4.0.3/node_modules/@scaleway/random-name/dist/index.js +0 -11
@@ -0,0 +1,2729 @@
1
+ import type { Region, Zone } from '../../../bridge';
2
+ export type AclActionRedirectRedirectType = 'location' | 'scheme';
3
+ export type AclActionType = 'allow' | 'deny' | 'redirect';
4
+ export type AclHttpFilter = 'acl_http_filter_none' | 'path_begin' | 'path_end' | 'regex' | 'http_header_match';
5
+ export type BackendServerStatsHealthCheckStatus = 'unknown' | 'neutral' | 'failed' | 'passed' | 'condpass';
6
+ export type BackendServerStatsServerState = 'stopped' | 'starting' | 'running' | 'stopping';
7
+ export type CertificateStatus = 'pending' | 'ready' | 'error';
8
+ export type CertificateType = 'letsencryt' | 'custom';
9
+ export type ForwardPortAlgorithm = 'roundrobin' | 'leastconn' | 'first';
10
+ export type InstanceStatus = 'unknown' | 'ready' | 'pending' | 'stopped' | 'error' | 'locked' | 'migrating';
11
+ export type LbStatus = 'unknown' | 'ready' | 'pending' | 'stopped' | 'error' | 'locked' | 'migrating' | 'to_create' | 'creating' | 'to_delete' | 'deleting';
12
+ export type LbTypeStock = 'unknown' | 'low_stock' | 'out_of_stock' | 'available';
13
+ export type ListAclRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
14
+ export type ListBackendsRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
15
+ export type ListCertificatesRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
16
+ export type ListFrontendsRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
17
+ export type ListIpsRequestIpType = 'all' | 'ipv4' | 'ipv6';
18
+ export type ListLbsRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
19
+ export type ListPrivateNetworksRequestOrderBy = 'created_at_asc' | 'created_at_desc';
20
+ export type ListRoutesRequestOrderBy = 'created_at_asc' | 'created_at_desc';
21
+ export type ListSubscriberRequestOrderBy = 'created_at_asc' | 'created_at_desc' | 'name_asc' | 'name_desc';
22
+ export type OnMarkedDownAction = 'on_marked_down_action_none' | 'shutdown_sessions';
23
+ export type PrivateNetworkStatus = 'unknown' | 'ready' | 'pending' | 'error';
24
+ export type Protocol = 'tcp' | 'http';
25
+ export type ProxyProtocol = 'proxy_protocol_unknown' | 'proxy_protocol_none' | 'proxy_protocol_v1' | 'proxy_protocol_v2' | 'proxy_protocol_v2_ssl' | 'proxy_protocol_v2_ssl_cn';
26
+ export type SSLCompatibilityLevel = 'ssl_compatibility_level_unknown' | 'ssl_compatibility_level_intermediate' | 'ssl_compatibility_level_modern' | 'ssl_compatibility_level_old';
27
+ export type StickySessionsType = 'none' | 'cookie' | 'table';
28
+ export interface SubscriberEmailConfig {
29
+ /** Email address to send alerts to. */
30
+ email: string;
31
+ }
32
+ /** Webhook alert of subscriber. */
33
+ export interface SubscriberWebhookConfig {
34
+ /** URI to receive POST requests. */
35
+ uri: string;
36
+ }
37
+ export interface HealthCheckHttpConfig {
38
+ /** The HTTP URI to use when performing a health check on backend servers. */
39
+ uri: string;
40
+ /** The HTTP method used when performing a health check on backend servers. */
41
+ method: string;
42
+ /**
43
+ * The HTTP response code that should be returned for a health check to be
44
+ * considered successful.
45
+ */
46
+ code?: number;
47
+ /**
48
+ * The HTTP host header used when performing a health check on backend
49
+ * servers.
50
+ */
51
+ hostHeader: string;
52
+ }
53
+ export interface HealthCheckHttpsConfig {
54
+ /** The HTTP URI to use when performing a health check on backend servers. */
55
+ uri: string;
56
+ /** The HTTP method used when performing a health check on backend servers. */
57
+ method: string;
58
+ /**
59
+ * The HTTP response code that should be returned for a health check to be
60
+ * considered successful.
61
+ */
62
+ code?: number;
63
+ /**
64
+ * The HTTP host header used when performing a health check on backend
65
+ * servers.
66
+ */
67
+ hostHeader: string;
68
+ /**
69
+ * The SNI value used when performing a health check on backend servers over
70
+ * SSL.
71
+ */
72
+ sni: string;
73
+ }
74
+ export interface HealthCheckLdapConfig {
75
+ }
76
+ export interface HealthCheckMysqlConfig {
77
+ /** MySQL user to use for the health check. */
78
+ user: string;
79
+ }
80
+ export interface HealthCheckPgsqlConfig {
81
+ /** PostgreSQL user to use for the health check. */
82
+ user: string;
83
+ }
84
+ export interface HealthCheckRedisConfig {
85
+ }
86
+ export interface HealthCheckTcpConfig {
87
+ }
88
+ export interface Instance {
89
+ /** Underlying Instance ID. */
90
+ id: string;
91
+ /** Instance status. */
92
+ status: InstanceStatus;
93
+ /** Instance IP address. */
94
+ ipAddress: string;
95
+ /** Date on which the Instance was created. */
96
+ createdAt?: Date;
97
+ /** Date on which the Instance was last updated. */
98
+ updatedAt?: Date;
99
+ /** @deprecated The region the Instance is in. */
100
+ region?: Region;
101
+ /** The zone the Instance is in. */
102
+ zone: Zone;
103
+ }
104
+ export interface Ip {
105
+ /** IP address ID. */
106
+ id: string;
107
+ /** IP address. */
108
+ ipAddress: string;
109
+ /** Organization ID of the Scaleway Organization the IP address is in. */
110
+ organizationId: string;
111
+ /** Project ID of the Scaleway Project the IP address is in. */
112
+ projectId: string;
113
+ /** Load Balancer ID. */
114
+ lbId?: string;
115
+ /** Reverse DNS (domain name) of the IP address. */
116
+ reverse: string;
117
+ /** IP tags. */
118
+ tags: string[];
119
+ /** @deprecated The region the IP address is in. */
120
+ region?: Region;
121
+ /** The zone the IP address is in. */
122
+ zone: Zone;
123
+ }
124
+ /** Subscriber. */
125
+ export interface Subscriber {
126
+ /** Subscriber ID. */
127
+ id: string;
128
+ /** Subscriber name. */
129
+ name: string;
130
+ /**
131
+ * Email address of subscriber.
132
+ *
133
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
134
+ * set.
135
+ */
136
+ emailConfig?: SubscriberEmailConfig;
137
+ /**
138
+ * Webhook URI of subscriber.
139
+ *
140
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
141
+ * set.
142
+ */
143
+ webhookConfig?: SubscriberWebhookConfig;
144
+ }
145
+ export interface HealthCheck {
146
+ /** Port to use for the backend server health check. */
147
+ port: number;
148
+ /** Time to wait between two consecutive health checks. */
149
+ checkDelay?: string;
150
+ /** Maximum time a backend server has to reply to the health check. */
151
+ checkTimeout?: string;
152
+ /**
153
+ * Number of consecutive unsuccessful health checks after which the server
154
+ * will be considered dead.
155
+ */
156
+ checkMaxRetries: number;
157
+ /**
158
+ * Object to configure a basic TCP health check.
159
+ *
160
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
161
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
162
+ * could be set.
163
+ */
164
+ tcpConfig?: HealthCheckTcpConfig;
165
+ /**
166
+ * Object to configure a MySQL health check. The check requires MySQL >=3.22,
167
+ * for older versions, use a TCP health check.
168
+ *
169
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
170
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
171
+ * could be set.
172
+ */
173
+ mysqlConfig?: HealthCheckMysqlConfig;
174
+ /**
175
+ * Object to configure a PostgreSQL health check.
176
+ *
177
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
178
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
179
+ * could be set.
180
+ */
181
+ pgsqlConfig?: HealthCheckPgsqlConfig;
182
+ /**
183
+ * Object to configure an LDAP health check. The response is analyzed to find
184
+ * the LDAPv3 response message.
185
+ *
186
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
187
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
188
+ * could be set.
189
+ */
190
+ ldapConfig?: HealthCheckLdapConfig;
191
+ /**
192
+ * Object to configure a Redis health check. The response is analyzed to find
193
+ * the +PONG response message.
194
+ *
195
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
196
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
197
+ * could be set.
198
+ */
199
+ redisConfig?: HealthCheckRedisConfig;
200
+ /**
201
+ * Object to configure an HTTP health check.
202
+ *
203
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
204
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
205
+ * could be set.
206
+ */
207
+ httpConfig?: HealthCheckHttpConfig;
208
+ /**
209
+ * Object to configure an HTTPS health check.
210
+ *
211
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
212
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
213
+ * could be set.
214
+ */
215
+ httpsConfig?: HealthCheckHttpsConfig;
216
+ /** Defines whether proxy protocol should be activated for the health check. */
217
+ checkSendProxy: boolean;
218
+ /**
219
+ * Time to wait between two consecutive health checks when a backend server is
220
+ * in a transient state (going UP or DOWN).
221
+ */
222
+ transientCheckDelay?: string;
223
+ }
224
+ export interface Lb {
225
+ /** Underlying Instance ID. */
226
+ id: string;
227
+ /** Load Balancer name. */
228
+ name: string;
229
+ /** Load Balancer description. */
230
+ description: string;
231
+ /** Load Balancer status. */
232
+ status: LbStatus;
233
+ /** List of underlying Instances. */
234
+ instances: Instance[];
235
+ /** Scaleway Organization ID. */
236
+ organizationId: string;
237
+ /** Scaleway Project ID. */
238
+ projectId: string;
239
+ /** List of IP addresses attached to the Load Balancer. */
240
+ ip: Ip[];
241
+ /** Load Balancer tags. */
242
+ tags: string[];
243
+ /** Number of frontends the Load Balancer has. */
244
+ frontendCount: number;
245
+ /** Number of backends the Load Balancer has. */
246
+ backendCount: number;
247
+ /** Load Balancer offer type. */
248
+ type: string;
249
+ /** Subscriber information. */
250
+ subscriber?: Subscriber;
251
+ /**
252
+ * Determines the minimal SSL version which needs to be supported on client
253
+ * side.
254
+ */
255
+ sslCompatibilityLevel: SSLCompatibilityLevel;
256
+ /** Date on which the Load Balancer was created. */
257
+ createdAt?: Date;
258
+ /** Date on which the Load Balancer was last updated. */
259
+ updatedAt?: Date;
260
+ /** Number of Private Networks attached to the Load Balancer. */
261
+ privateNetworkCount: number;
262
+ /** Number of routes configured on the Load Balancer. */
263
+ routeCount: number;
264
+ /** @deprecated The region the Load Balancer is in. */
265
+ region?: Region;
266
+ /** The zone the Load Balancer is in. */
267
+ zone: Zone;
268
+ }
269
+ export interface AclActionRedirect {
270
+ /** Redirect type. */
271
+ type: AclActionRedirectRedirectType;
272
+ /**
273
+ * Redirect target. For a location redirect, you can use a URL e.g.
274
+ * `https://scaleway.com`. Using a scheme name (e.g. `https`, `http`, `ftp`,
275
+ * `git`) will replace the request's original scheme. This can be useful to
276
+ * implement HTTP to HTTPS redirects. Valid placeholders that can be used in a
277
+ * `location` redirect to preserve parts of the original request in the
278
+ * redirection URL are {{host}}, {{query}}, {{path}} and {{scheme}}.
279
+ */
280
+ target: string;
281
+ /**
282
+ * HTTP redirect code to use. Valid values are 301, 302, 303, 307 and 308.
283
+ * Default value is 302.
284
+ */
285
+ code?: number;
286
+ }
287
+ export interface Backend {
288
+ /** Backend ID. */
289
+ id: string;
290
+ /** Name of the backend. */
291
+ name: string;
292
+ /** Protocol used by the backend when forwarding traffic to backend servers. */
293
+ forwardProtocol: Protocol;
294
+ /** Port used by the backend when forwarding traffic to backend servers. */
295
+ forwardPort: number;
296
+ /**
297
+ * Load balancing algorithm to use when determining which backend server to
298
+ * forward new traffic to.
299
+ */
300
+ forwardPortAlgorithm: ForwardPortAlgorithm;
301
+ /**
302
+ * Defines whether sticky sessions (binding a particular session to a
303
+ * particular backend server) are activated and the method to use if so. None
304
+ * disables sticky sessions. Cookie-based uses an HTTP cookie to stick a
305
+ * session to a backend server. Table-based uses the source (client) IP
306
+ * address to stick a session to a backend server.
307
+ */
308
+ stickySessions: StickySessionsType;
309
+ /** Cookie name for cookie-based sticky sessions. */
310
+ stickySessionsCookieName: string;
311
+ /**
312
+ * Object defining the health check to be carried out by the backend when
313
+ * checking the status and health of backend servers.
314
+ */
315
+ healthCheck?: HealthCheck;
316
+ /** List of IP addresses of backend servers attached to this backend. */
317
+ pool: string[];
318
+ /** Load Balancer the backend is attached to. */
319
+ lb?: Lb;
320
+ /** @deprecated Deprecated in favor of proxy_protocol field. */
321
+ sendProxyV2?: boolean;
322
+ /** Maximum allowed time for a backend server to process a request. */
323
+ timeoutServer?: string;
324
+ /** Maximum allowed time for establishing a connection to a backend server. */
325
+ timeoutConnect?: string;
326
+ /**
327
+ * Maximum allowed tunnel inactivity time after Websocket is established
328
+ * (takes precedence over client and server timeout).
329
+ */
330
+ timeoutTunnel?: string;
331
+ /** Action to take when a backend server is marked as down. */
332
+ onMarkedDownAction: OnMarkedDownAction;
333
+ /**
334
+ * Protocol to use between the Load Balancer and backend servers. Allows the
335
+ * backend servers to be informed of the client's real IP address. The PROXY
336
+ * protocol must be supported by the backend servers' software.
337
+ */
338
+ proxyProtocol: ProxyProtocol;
339
+ /** Date at which the backend was created. */
340
+ createdAt?: Date;
341
+ /** Date at which the backend was updated. */
342
+ updatedAt?: Date;
343
+ /**
344
+ * Scaleway S3 bucket website to be served as failover if all backend servers
345
+ * are down, e.g. failover-website.s3-website.fr-par.scw.cloud.
346
+ */
347
+ failoverHost?: string;
348
+ /**
349
+ * Defines whether to enable SSL bridging between the Load Balancer and
350
+ * backend servers.
351
+ */
352
+ sslBridging?: boolean;
353
+ /** Defines whether the server certificate verification should be ignored. */
354
+ ignoreSslServerVerify?: boolean;
355
+ /** Whether to use another backend server on each attempt. */
356
+ redispatchAttemptCount?: number;
357
+ /** Number of retries when a backend server connection failed. */
358
+ maxRetries?: number;
359
+ /** Maximum number of connections allowed per backend server. */
360
+ maxConnections?: number;
361
+ /**
362
+ * Maximum time for a request to be left pending in queue when
363
+ * `max_connections` is reached.
364
+ */
365
+ timeoutQueue?: string;
366
+ }
367
+ export interface Certificate {
368
+ /** Certificate type (Let's Encrypt or custom). */
369
+ type: CertificateType;
370
+ /** Certificate ID. */
371
+ id: string;
372
+ /** Main domain name of certificate. */
373
+ commonName: string;
374
+ /** Alternative domain names. */
375
+ subjectAlternativeName: string[];
376
+ /** Identifier (SHA-1) of the certificate. */
377
+ fingerprint: string;
378
+ /** Lower validity bound. */
379
+ notValidBefore?: Date;
380
+ /** Upper validity bound. */
381
+ notValidAfter?: Date;
382
+ /** Certificate status. */
383
+ status: CertificateStatus;
384
+ /** Load Balancer object the certificate is attached to. */
385
+ lb?: Lb;
386
+ /** Certificate name. */
387
+ name: string;
388
+ /** Date on which the certificate was created. */
389
+ createdAt?: Date;
390
+ /** Date on which the certificate was last updated. */
391
+ updatedAt?: Date;
392
+ /**
393
+ * Additional information about the certificate status (useful in case of
394
+ * certificate generation failure, for example).
395
+ */
396
+ statusDetails?: string;
397
+ }
398
+ export interface AclAction {
399
+ /** Action to take when incoming traffic matches an ACL filter. */
400
+ type: AclActionType;
401
+ /** Redirection parameters when using an ACL with a `redirect` action. */
402
+ redirect?: AclActionRedirect;
403
+ }
404
+ export interface AclMatch {
405
+ /** List of IPs or CIDR v4/v6 addresses to filter for from the client side. */
406
+ ipSubnet: string[];
407
+ /**
408
+ * Type of HTTP filter to match. Extracts the request's URL path, which starts
409
+ * at the first slash and ends before the question mark (without the host
410
+ * part). Defines where to filter for the http_filter_value. Only supported
411
+ * for HTTP backends.
412
+ */
413
+ httpFilter: AclHttpFilter;
414
+ /** List of values to filter for. */
415
+ httpFilterValue: string[];
416
+ /**
417
+ * Name of the HTTP header to filter on if `http_header_match` was selected in
418
+ * `http_filter`.
419
+ */
420
+ httpFilterOption?: string;
421
+ /**
422
+ * Defines whether to invert the match condition. If set to `true`, the ACL
423
+ * carries out its action when the condition DOES NOT match.
424
+ */
425
+ invert: boolean;
426
+ }
427
+ export interface Frontend {
428
+ /** Frontend ID. */
429
+ id: string;
430
+ /** Name of the frontend. */
431
+ name: string;
432
+ /** Port the frontend listens on. */
433
+ inboundPort: number;
434
+ /** Backend object the frontend is attached to. */
435
+ backend?: Backend;
436
+ /** Load Balancer object the frontend is attached to. */
437
+ lb?: Lb;
438
+ /** Maximum allowed inactivity time on the client side. */
439
+ timeoutClient?: string;
440
+ /** @deprecated Certificate, deprecated in favor of certificate_ids array. */
441
+ certificate?: Certificate;
442
+ /** List of SSL/TLS certificate IDs to bind to the frontend. */
443
+ certificateIds: string[];
444
+ /** Date on which the frontend was created. */
445
+ createdAt?: Date;
446
+ /** Date on which the frontend was last updated. */
447
+ updatedAt?: Date;
448
+ /** Defines whether to enable HTTP/3 protocol on the frontend. */
449
+ enableHttp3: boolean;
450
+ }
451
+ export interface PrivateNetworkDHCPConfig {
452
+ /** @deprecated */
453
+ ipId?: string;
454
+ }
455
+ export interface PrivateNetworkIpamConfig {
456
+ }
457
+ export interface PrivateNetworkStaticConfig {
458
+ /**
459
+ * @deprecated Array of a local IP address for the Load Balancer on this
460
+ * Private Network.
461
+ */
462
+ ipAddress?: string[];
463
+ }
464
+ export interface RouteMatch {
465
+ /**
466
+ * Value to match in the Server Name Indication TLS extension (SNI) field from
467
+ * an incoming connection made via an SSL/TLS transport layer. This field
468
+ * should be set for routes on TCP Load Balancers.
469
+ *
470
+ * One-of ('matchType'): at most one of 'sni', 'hostHeader' could be set.
471
+ */
472
+ sni?: string;
473
+ /**
474
+ * Value to match in the HTTP Host request header from an incoming connection.
475
+ * This field should be set for routes on HTTP Load Balancers.
476
+ *
477
+ * One-of ('matchType'): at most one of 'sni', 'hostHeader' could be set.
478
+ */
479
+ hostHeader?: string;
480
+ }
481
+ export interface CreateCertificateRequestCustomCertificate {
482
+ /**
483
+ * Full PEM-formatted certificate, consisting of the entire certificate chain
484
+ * including public key, private key, and (optionally) Certificate
485
+ * Authorities.
486
+ */
487
+ certificateChain: string;
488
+ }
489
+ export interface CreateCertificateRequestLetsencryptConfig {
490
+ /**
491
+ * Main domain name of certificate (this domain must exist and resolve to your
492
+ * Load Balancer IP address).
493
+ */
494
+ commonName: string;
495
+ /**
496
+ * Alternative domain names (all domain names must exist and resolve to your
497
+ * Load Balancer IP address).
498
+ */
499
+ subjectAlternativeName: string[];
500
+ }
501
+ export interface BackendServerStats {
502
+ /** ID of your Load Balancer's underlying Instance. */
503
+ instanceId: string;
504
+ /** Backend ID. */
505
+ backendId: string;
506
+ /** IPv4 or IPv6 address of the backend server. */
507
+ ip: string;
508
+ /** Server operational state (stopped/starting/running/stopping). */
509
+ serverState: BackendServerStatsServerState;
510
+ /** Time since last operational change. */
511
+ serverStateChangedAt?: Date;
512
+ /** Last health check status (unknown/neutral/failed/passed/condpass). */
513
+ lastHealthCheckStatus: BackendServerStatsHealthCheckStatus;
514
+ }
515
+ export interface Acl {
516
+ /** ACL ID. */
517
+ id: string;
518
+ /** ACL name. */
519
+ name: string;
520
+ /**
521
+ * ACL match filter object. One of `ip_subnet` or `http_filter` &
522
+ * `http_filter_value` are required.
523
+ */
524
+ match?: AclMatch;
525
+ /** Action to take when incoming traffic matches an ACL filter. */
526
+ action?: AclAction;
527
+ /** ACL is attached to this frontend object. */
528
+ frontend?: Frontend;
529
+ /**
530
+ * Priority of this ACL (ACLs are applied in ascending order, 0 is the first
531
+ * ACL executed).
532
+ */
533
+ index: number;
534
+ /** Date on which the ACL was created. */
535
+ createdAt?: Date;
536
+ /** Date on which the ACL was last updated. */
537
+ updatedAt?: Date;
538
+ /** ACL description. */
539
+ description: string;
540
+ }
541
+ export interface PrivateNetwork {
542
+ /** Load Balancer object which is attached to the Private Network. */
543
+ lb?: Lb;
544
+ /** IPAM IDs of the booked IP addresses. */
545
+ ipamIds: string[];
546
+ /**
547
+ * @deprecated Object containing an array of a local IP address for the Load
548
+ * Balancer on this Private Network.
549
+ *
550
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
551
+ * 'ipamConfig' could be set.
552
+ */
553
+ staticConfig?: PrivateNetworkStaticConfig;
554
+ /**
555
+ * @deprecated Object containing DHCP-assigned IP addresses.
556
+ *
557
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
558
+ * 'ipamConfig' could be set.
559
+ */
560
+ dhcpConfig?: PrivateNetworkDHCPConfig;
561
+ /**
562
+ * @deprecated For internal use only.
563
+ *
564
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
565
+ * 'ipamConfig' could be set.
566
+ */
567
+ ipamConfig?: PrivateNetworkIpamConfig;
568
+ /** Private Network ID. */
569
+ privateNetworkId: string;
570
+ /** Status of Private Network connection. */
571
+ status: PrivateNetworkStatus;
572
+ /** Date on which the Private Network was created. */
573
+ createdAt?: Date;
574
+ /** Date on which the PN was last updated. */
575
+ updatedAt?: Date;
576
+ }
577
+ export interface LbType {
578
+ /** Load Balancer commercial offer type name. */
579
+ name: string;
580
+ /** Current stock status for a given Load Balancer type. */
581
+ stockStatus: LbTypeStock;
582
+ /** Load Balancer commercial offer type description. */
583
+ description: string;
584
+ /** @deprecated The region the Load Balancer stock is in. */
585
+ region?: Region;
586
+ /** The zone the Load Balancer stock is in. */
587
+ zone: Zone;
588
+ }
589
+ export interface Route {
590
+ /** Route ID. */
591
+ id: string;
592
+ /** ID of the source frontend. */
593
+ frontendId: string;
594
+ /** ID of the target backend. */
595
+ backendId: string;
596
+ /**
597
+ * Object defining the match condition for a route to be applied. If an
598
+ * incoming client session matches the specified condition (i.e. it has a
599
+ * matching SNI value or HTTP Host header value), it will be passed to the
600
+ * target backend.
601
+ */
602
+ match?: RouteMatch;
603
+ /** Date on which the route was created. */
604
+ createdAt?: Date;
605
+ /** Date on which the route was last updated. */
606
+ updatedAt?: Date;
607
+ }
608
+ export interface AclSpec {
609
+ /** ACL name. */
610
+ name: string;
611
+ /** Action to take when incoming traffic matches an ACL filter. */
612
+ action: AclAction;
613
+ /**
614
+ * ACL match filter object. One of `ip_subnet` or `http_filter` and
615
+ * `http_filter_value` are required.
616
+ */
617
+ match?: AclMatch;
618
+ /**
619
+ * Priority of this ACL (ACLs are applied in ascending order, 0 is the first
620
+ * ACL executed).
621
+ */
622
+ index: number;
623
+ /** ACL description. */
624
+ description: string;
625
+ }
626
+ export type AddBackendServersRequest = {
627
+ /**
628
+ * Region to target. If none is passed will use default region from the
629
+ * config.
630
+ */
631
+ region?: Region;
632
+ /** Backend ID. */
633
+ backendId: string;
634
+ /** List of IP addresses to add to backend servers. */
635
+ serverIp: string[];
636
+ };
637
+ export type AttachPrivateNetworkRequest = {
638
+ /**
639
+ * Region to target. If none is passed will use default region from the
640
+ * config.
641
+ */
642
+ region?: Region;
643
+ /** Load Balancer ID. */
644
+ lbId: string;
645
+ /** Private Network ID. */
646
+ privateNetworkId: string;
647
+ /**
648
+ * @deprecated Object containing an array of a local IP address for the Load
649
+ * Balancer on this Private Network.
650
+ *
651
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
652
+ * 'ipamConfig' could be set.
653
+ */
654
+ staticConfig?: PrivateNetworkStaticConfig;
655
+ /**
656
+ * @deprecated Defines whether to let DHCP assign IP addresses.
657
+ *
658
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
659
+ * 'ipamConfig' could be set.
660
+ */
661
+ dhcpConfig?: PrivateNetworkDHCPConfig;
662
+ /**
663
+ * @deprecated For internal use only.
664
+ *
665
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
666
+ * 'ipamConfig' could be set.
667
+ */
668
+ ipamConfig?: PrivateNetworkIpamConfig;
669
+ };
670
+ /** Add an ACL to a Load Balancer frontend. */
671
+ export type CreateAclRequest = {
672
+ /**
673
+ * Region to target. If none is passed will use default region from the
674
+ * config.
675
+ */
676
+ region?: Region;
677
+ /** Frontend ID to attach the ACL to. */
678
+ frontendId: string;
679
+ /** ACL name. */
680
+ name?: string;
681
+ /** Action to take when incoming traffic matches an ACL filter. */
682
+ action: AclAction;
683
+ /**
684
+ * ACL match filter object. One of `ip_subnet` or `http_filter` &
685
+ * `http_filter_value` are required.
686
+ */
687
+ match?: AclMatch;
688
+ /**
689
+ * Priority of this ACL (ACLs are applied in ascending order, 0 is the first
690
+ * ACL executed).
691
+ */
692
+ index: number;
693
+ /** ACL description. */
694
+ description: string;
695
+ };
696
+ export type CreateBackendRequest = {
697
+ /**
698
+ * Region to target. If none is passed will use default region from the
699
+ * config.
700
+ */
701
+ region?: Region;
702
+ /** Load Balancer ID. */
703
+ lbId: string;
704
+ /** Name for the backend. */
705
+ name?: string;
706
+ /**
707
+ * Protocol to be used by the backend when forwarding traffic to backend
708
+ * servers.
709
+ */
710
+ forwardProtocol: Protocol;
711
+ /** Port to be used by the backend when forwarding traffic to backend servers. */
712
+ forwardPort: number;
713
+ /**
714
+ * Load balancing algorithm to be used when determining which backend server
715
+ * to forward new traffic to.
716
+ */
717
+ forwardPortAlgorithm: ForwardPortAlgorithm;
718
+ /**
719
+ * Defines whether to activate sticky sessions (binding a particular session
720
+ * to a particular backend server) and the method to use if so. None disables
721
+ * sticky sessions. Cookie-based uses an HTTP cookie TO stick a session to a
722
+ * backend server. Table-based uses the source (client) IP address to stick a
723
+ * session to a backend server.
724
+ */
725
+ stickySessions: StickySessionsType;
726
+ /** Cookie name for cookie-based sticky sessions. */
727
+ stickySessionsCookieName: string;
728
+ /**
729
+ * Object defining the health check to be carried out by the backend when
730
+ * checking the status and health of backend servers.
731
+ */
732
+ healthCheck: HealthCheck;
733
+ /**
734
+ * List of backend server IP addresses (IPv4 or IPv6) the backend should
735
+ * forward traffic to.
736
+ */
737
+ serverIp: string[];
738
+ /** @deprecated Deprecated in favor of proxy_protocol field. */
739
+ sendProxyV2?: boolean;
740
+ /** Maximum allowed time for a backend server to process a request. */
741
+ timeoutServer?: string;
742
+ /** Maximum allowed time for establishing a connection to a backend server. */
743
+ timeoutConnect?: string;
744
+ /**
745
+ * Maximum allowed tunnel inactivity time after Websocket is established
746
+ * (takes precedence over client and server timeout).
747
+ */
748
+ timeoutTunnel?: string;
749
+ /** Action to take when a backend server is marked as down. */
750
+ onMarkedDownAction?: OnMarkedDownAction;
751
+ /**
752
+ * Protocol to use between the Load Balancer and backend servers. Allows the
753
+ * backend servers to be informed of the client's real IP address. The PROXY
754
+ * protocol must be supported by the backend servers' software.
755
+ */
756
+ proxyProtocol?: ProxyProtocol;
757
+ /**
758
+ * Scaleway S3 bucket website to be served as failover if all backend servers
759
+ * are down, e.g. failover-website.s3-website.fr-par.scw.cloud.
760
+ */
761
+ failoverHost?: string;
762
+ /**
763
+ * Defines whether to enable SSL bridging between the Load Balancer and
764
+ * backend servers.
765
+ */
766
+ sslBridging?: boolean;
767
+ /** Defines whether the server certificate verification should be ignored. */
768
+ ignoreSslServerVerify?: boolean;
769
+ /** Whether to use another backend server on each attempt. */
770
+ redispatchAttemptCount?: number;
771
+ /** Number of retries when a backend server connection failed. */
772
+ maxRetries?: number;
773
+ /** Maximum number of connections allowed per backend server. */
774
+ maxConnections?: number;
775
+ /**
776
+ * Maximum time for a request to be left pending in queue when
777
+ * `max_connections` is reached.
778
+ */
779
+ timeoutQueue?: string;
780
+ };
781
+ export type CreateCertificateRequest = {
782
+ /**
783
+ * Region to target. If none is passed will use default region from the
784
+ * config.
785
+ */
786
+ region?: Region;
787
+ /** Load Balancer ID. */
788
+ lbId: string;
789
+ /** Name for the certificate. */
790
+ name?: string;
791
+ /**
792
+ * Object to define a new Let's Encrypt certificate to be generated.
793
+ *
794
+ * One-of ('type'): at most one of 'letsencrypt', 'customCertificate' could be
795
+ * set.
796
+ */
797
+ letsencrypt?: CreateCertificateRequestLetsencryptConfig;
798
+ /**
799
+ * Object to define an existing custom certificate to be imported.
800
+ *
801
+ * One-of ('type'): at most one of 'letsencrypt', 'customCertificate' could be
802
+ * set.
803
+ */
804
+ customCertificate?: CreateCertificateRequestCustomCertificate;
805
+ };
806
+ export type CreateFrontendRequest = {
807
+ /**
808
+ * Region to target. If none is passed will use default region from the
809
+ * config.
810
+ */
811
+ region?: Region;
812
+ /** Load Balancer ID (ID of the Load Balancer to attach the frontend to). */
813
+ lbId: string;
814
+ /** Name for the frontend. */
815
+ name?: string;
816
+ /** Port the frontend should listen on. */
817
+ inboundPort: number;
818
+ /** Backend ID (ID of the backend the frontend should pass traffic to). */
819
+ backendId: string;
820
+ /** Maximum allowed inactivity time on the client side. */
821
+ timeoutClient?: string;
822
+ /** @deprecated Certificate ID, deprecated in favor of certificate_ids array. */
823
+ certificateId?: string;
824
+ /** List of SSL/TLS certificate IDs to bind to the frontend. */
825
+ certificateIds?: string[];
826
+ /** Defines whether to enable HTTP/3 protocol on the frontend. */
827
+ enableHttp3: boolean;
828
+ };
829
+ export type CreateIpRequest = {
830
+ /**
831
+ * Region to target. If none is passed will use default region from the
832
+ * config.
833
+ */
834
+ region?: Region;
835
+ /**
836
+ * @deprecated Organization ID of the Organization where the IP address should
837
+ * be created.
838
+ *
839
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
840
+ * could be set.
841
+ */
842
+ organizationId?: string;
843
+ /**
844
+ * Project ID of the Project where the IP address should be created.
845
+ *
846
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
847
+ * could be set.
848
+ */
849
+ projectId?: string;
850
+ /** Reverse DNS (domain name) for the IP address. */
851
+ reverse?: string;
852
+ /** If true, creates a Flexible IP with an ipv6 address. */
853
+ isIpv6: boolean;
854
+ /** List of tags for the IP. */
855
+ tags?: string[];
856
+ };
857
+ export type CreateLbRequest = {
858
+ /**
859
+ * Region to target. If none is passed will use default region from the
860
+ * config.
861
+ */
862
+ region?: Region;
863
+ /**
864
+ * @deprecated Scaleway Organization to create the Load Balancer in.
865
+ *
866
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
867
+ * could be set.
868
+ */
869
+ organizationId?: string;
870
+ /**
871
+ * Scaleway Project to create the Load Balancer in.
872
+ *
873
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
874
+ * could be set.
875
+ */
876
+ projectId?: string;
877
+ /** Name for the Load Balancer. */
878
+ name?: string;
879
+ /** Description for the Load Balancer. */
880
+ description: string;
881
+ /**
882
+ * @deprecated ID of an existing flexible IP address to attach to the Load
883
+ * Balancer.
884
+ */
885
+ ipId?: string;
886
+ /**
887
+ * Defines whether to automatically assign a flexible public IP to lb. Default
888
+ * value is `false` (do not assign).
889
+ */
890
+ assignFlexibleIp?: boolean;
891
+ /**
892
+ * Defines whether to automatically assign a flexible public IPv6 to the Load
893
+ * Balancer. Default value is `false` (do not assign).
894
+ */
895
+ assignFlexibleIpv6?: boolean;
896
+ /** List of IP IDs to attach to the Load Balancer. */
897
+ ipIds?: string[];
898
+ /** List of tags for the Load Balancer. */
899
+ tags?: string[];
900
+ /**
901
+ * Load Balancer commercial offer type. Use the Load Balancer types endpoint
902
+ * to retrieve a list of available offer types.
903
+ */
904
+ type: string;
905
+ /**
906
+ * Determines the minimal SSL version which needs to be supported on the
907
+ * client side, in an SSL/TLS offloading context. Intermediate is suitable for
908
+ * general-purpose servers with a variety of clients, recommended for almost
909
+ * all systems. Modern is suitable for services with clients that support TLS
910
+ * 1.3 and do not need backward compatibility. Old is compatible with a small
911
+ * number of very old clients and should be used only as a last resort.
912
+ */
913
+ sslCompatibilityLevel?: SSLCompatibilityLevel;
914
+ };
915
+ export type CreateRouteRequest = {
916
+ /**
917
+ * Region to target. If none is passed will use default region from the
918
+ * config.
919
+ */
920
+ region?: Region;
921
+ /** ID of the source frontend to create the route on. */
922
+ frontendId: string;
923
+ /** ID of the target backend for the route. */
924
+ backendId: string;
925
+ /**
926
+ * Object defining the match condition for a route to be applied. If an
927
+ * incoming client session matches the specified condition (i.e. it has a
928
+ * matching SNI value or HTTP Host header value), it will be passed to the
929
+ * target backend.
930
+ */
931
+ match?: RouteMatch;
932
+ };
933
+ /** Create a new alert subscriber (webhook or email). */
934
+ export type CreateSubscriberRequest = {
935
+ /**
936
+ * Region to target. If none is passed will use default region from the
937
+ * config.
938
+ */
939
+ region?: Region;
940
+ /** Subscriber name. */
941
+ name: string;
942
+ /**
943
+ * Email address configuration.
944
+ *
945
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
946
+ * set.
947
+ */
948
+ emailConfig?: SubscriberEmailConfig;
949
+ /**
950
+ * WebHook URI configuration.
951
+ *
952
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
953
+ * set.
954
+ */
955
+ webhookConfig?: SubscriberWebhookConfig;
956
+ /**
957
+ * @deprecated Organization ID to create the subscriber in.
958
+ *
959
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
960
+ * could be set.
961
+ */
962
+ organizationId?: string;
963
+ /**
964
+ * Project ID to create the subscriber in.
965
+ *
966
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
967
+ * could be set.
968
+ */
969
+ projectId?: string;
970
+ };
971
+ export type DeleteAclRequest = {
972
+ /**
973
+ * Region to target. If none is passed will use default region from the
974
+ * config.
975
+ */
976
+ region?: Region;
977
+ /** ACL ID. */
978
+ aclId: string;
979
+ };
980
+ export type DeleteBackendRequest = {
981
+ /**
982
+ * Region to target. If none is passed will use default region from the
983
+ * config.
984
+ */
985
+ region?: Region;
986
+ /** ID of the backend to delete. */
987
+ backendId: string;
988
+ };
989
+ export type DeleteCertificateRequest = {
990
+ /**
991
+ * Region to target. If none is passed will use default region from the
992
+ * config.
993
+ */
994
+ region?: Region;
995
+ /** Certificate ID. */
996
+ certificateId: string;
997
+ };
998
+ export type DeleteFrontendRequest = {
999
+ /**
1000
+ * Region to target. If none is passed will use default region from the
1001
+ * config.
1002
+ */
1003
+ region?: Region;
1004
+ /** ID of the frontend to delete. */
1005
+ frontendId: string;
1006
+ };
1007
+ export type DeleteLbRequest = {
1008
+ /**
1009
+ * Region to target. If none is passed will use default region from the
1010
+ * config.
1011
+ */
1012
+ region?: Region;
1013
+ /** ID of the Load Balancer to delete. */
1014
+ lbId: string;
1015
+ /**
1016
+ * Defines whether the Load Balancer's flexible IP should be deleted. Set to
1017
+ * true to release the flexible IP, or false to keep it available in your
1018
+ * account for future Load Balancers.
1019
+ */
1020
+ releaseIp: boolean;
1021
+ };
1022
+ export type DeleteRouteRequest = {
1023
+ /**
1024
+ * Region to target. If none is passed will use default region from the
1025
+ * config.
1026
+ */
1027
+ region?: Region;
1028
+ /** Route ID. */
1029
+ routeId: string;
1030
+ };
1031
+ export type DeleteSubscriberRequest = {
1032
+ /**
1033
+ * Region to target. If none is passed will use default region from the
1034
+ * config.
1035
+ */
1036
+ region?: Region;
1037
+ /** Subscriber ID. */
1038
+ subscriberId: string;
1039
+ };
1040
+ export type DetachPrivateNetworkRequest = {
1041
+ /**
1042
+ * Region to target. If none is passed will use default region from the
1043
+ * config.
1044
+ */
1045
+ region?: Region;
1046
+ /** Load balancer ID. */
1047
+ lbId: string;
1048
+ /** Set your instance private network id. */
1049
+ privateNetworkId: string;
1050
+ };
1051
+ export type GetAclRequest = {
1052
+ /**
1053
+ * Region to target. If none is passed will use default region from the
1054
+ * config.
1055
+ */
1056
+ region?: Region;
1057
+ /** ACL ID. */
1058
+ aclId: string;
1059
+ };
1060
+ export type GetBackendRequest = {
1061
+ /**
1062
+ * Region to target. If none is passed will use default region from the
1063
+ * config.
1064
+ */
1065
+ region?: Region;
1066
+ /** Backend ID. */
1067
+ backendId: string;
1068
+ };
1069
+ export type GetCertificateRequest = {
1070
+ /**
1071
+ * Region to target. If none is passed will use default region from the
1072
+ * config.
1073
+ */
1074
+ region?: Region;
1075
+ /** Certificate ID. */
1076
+ certificateId: string;
1077
+ };
1078
+ export type GetFrontendRequest = {
1079
+ /**
1080
+ * Region to target. If none is passed will use default region from the
1081
+ * config.
1082
+ */
1083
+ region?: Region;
1084
+ /** Frontend ID. */
1085
+ frontendId: string;
1086
+ };
1087
+ export type GetIpRequest = {
1088
+ /**
1089
+ * Region to target. If none is passed will use default region from the
1090
+ * config.
1091
+ */
1092
+ region?: Region;
1093
+ /** IP address ID. */
1094
+ ipId: string;
1095
+ };
1096
+ export type GetLbRequest = {
1097
+ /**
1098
+ * Region to target. If none is passed will use default region from the
1099
+ * config.
1100
+ */
1101
+ region?: Region;
1102
+ /** Load Balancer ID. */
1103
+ lbId: string;
1104
+ };
1105
+ /** Get Load Balancer stats. */
1106
+ export type GetLbStatsRequest = {
1107
+ /**
1108
+ * Region to target. If none is passed will use default region from the
1109
+ * config.
1110
+ */
1111
+ region?: Region;
1112
+ /** Load Balancer ID. */
1113
+ lbId: string;
1114
+ /** ID of the backend. */
1115
+ backendId?: string;
1116
+ };
1117
+ export type GetRouteRequest = {
1118
+ /**
1119
+ * Region to target. If none is passed will use default region from the
1120
+ * config.
1121
+ */
1122
+ region?: Region;
1123
+ /** Route ID. */
1124
+ routeId: string;
1125
+ };
1126
+ export type GetSubscriberRequest = {
1127
+ /**
1128
+ * Region to target. If none is passed will use default region from the
1129
+ * config.
1130
+ */
1131
+ region?: Region;
1132
+ /** Subscriber ID. */
1133
+ subscriberId: string;
1134
+ };
1135
+ export interface LbStats {
1136
+ /** List of objects containing Load Balancer statistics. */
1137
+ backendServersStats: BackendServerStats[];
1138
+ }
1139
+ export interface ListAclResponse {
1140
+ /** List of ACL objects. */
1141
+ acls: Acl[];
1142
+ /** The total number of objects. */
1143
+ totalCount: number;
1144
+ }
1145
+ export type ListAclsRequest = {
1146
+ /**
1147
+ * Region to target. If none is passed will use default region from the
1148
+ * config.
1149
+ */
1150
+ region?: Region;
1151
+ /**
1152
+ * Frontend ID (ACLs attached to this frontend will be returned in the
1153
+ * response).
1154
+ */
1155
+ frontendId: string;
1156
+ /** Sort order of ACLs in the response. */
1157
+ orderBy?: ListAclRequestOrderBy;
1158
+ /** The page number to return, from the paginated results. */
1159
+ page?: number;
1160
+ /** The number of ACLs to return. */
1161
+ pageSize?: number;
1162
+ /** ACL name to filter for. */
1163
+ name?: string;
1164
+ };
1165
+ export type ListBackendStatsRequest = {
1166
+ /**
1167
+ * Region to target. If none is passed will use default region from the
1168
+ * config.
1169
+ */
1170
+ region?: Region;
1171
+ /** Load Balancer ID. */
1172
+ lbId: string;
1173
+ /** The page number to return, from the paginated results. */
1174
+ page?: number;
1175
+ /** Number of items to return. */
1176
+ pageSize?: number;
1177
+ /** ID of the backend. */
1178
+ backendId?: string;
1179
+ };
1180
+ export interface ListBackendStatsResponse {
1181
+ /** List of objects containing backend server statistics. */
1182
+ backendServersStats: BackendServerStats[];
1183
+ /** The total number of objects. */
1184
+ totalCount: number;
1185
+ }
1186
+ export type ListBackendsRequest = {
1187
+ /**
1188
+ * Region to target. If none is passed will use default region from the
1189
+ * config.
1190
+ */
1191
+ region?: Region;
1192
+ /** Load Balancer ID. */
1193
+ lbId: string;
1194
+ /** Name of the backend to filter for. */
1195
+ name?: string;
1196
+ /** Sort order of backends in the response. */
1197
+ orderBy?: ListBackendsRequestOrderBy;
1198
+ /** The page number to return, from the paginated results. */
1199
+ page?: number;
1200
+ /** Number of backends to return. */
1201
+ pageSize?: number;
1202
+ };
1203
+ export interface ListBackendsResponse {
1204
+ /** List of backend objects of a given Load Balancer. */
1205
+ backends: Backend[];
1206
+ /** Total count of backend objects, without pagination. */
1207
+ totalCount: number;
1208
+ }
1209
+ export type ListCertificatesRequest = {
1210
+ /**
1211
+ * Region to target. If none is passed will use default region from the
1212
+ * config.
1213
+ */
1214
+ region?: Region;
1215
+ /** Load Balancer ID. */
1216
+ lbId: string;
1217
+ /** Sort order of certificates in the response. */
1218
+ orderBy?: ListCertificatesRequestOrderBy;
1219
+ /** The page number to return, from the paginated results. */
1220
+ page?: number;
1221
+ /** Number of certificates to return. */
1222
+ pageSize?: number;
1223
+ /**
1224
+ * Certificate name to filter for, only certificates of this name will be
1225
+ * returned.
1226
+ */
1227
+ name?: string;
1228
+ };
1229
+ export interface ListCertificatesResponse {
1230
+ /** List of certificate objects. */
1231
+ certificates: Certificate[];
1232
+ /** The total number of objects. */
1233
+ totalCount: number;
1234
+ }
1235
+ export type ListFrontendsRequest = {
1236
+ /**
1237
+ * Region to target. If none is passed will use default region from the
1238
+ * config.
1239
+ */
1240
+ region?: Region;
1241
+ /** Load Balancer ID. */
1242
+ lbId: string;
1243
+ /** Name of the frontend to filter for. */
1244
+ name?: string;
1245
+ /** Sort order of frontends in the response. */
1246
+ orderBy?: ListFrontendsRequestOrderBy;
1247
+ /** The page number to return, from the paginated results. */
1248
+ page?: number;
1249
+ /** Number of frontends to return. */
1250
+ pageSize?: number;
1251
+ };
1252
+ export interface ListFrontendsResponse {
1253
+ /** List of frontend objects of a given Load Balancer. */
1254
+ frontends: Frontend[];
1255
+ /** Total count of frontend objects, without pagination. */
1256
+ totalCount: number;
1257
+ }
1258
+ export type ListIPsRequest = {
1259
+ /**
1260
+ * Region to target. If none is passed will use default region from the
1261
+ * config.
1262
+ */
1263
+ region?: Region;
1264
+ /** The page number to return, from the paginated results. */
1265
+ page?: number;
1266
+ /** Number of IP addresses to return. */
1267
+ pageSize?: number;
1268
+ /** IP address to filter for. */
1269
+ ipAddress?: string;
1270
+ /**
1271
+ * Organization ID to filter for, only Load Balancer IP addresses from this
1272
+ * Organization will be returned.
1273
+ */
1274
+ organizationId?: string;
1275
+ /**
1276
+ * Project ID to filter for, only Load Balancer IP addresses from this Project
1277
+ * will be returned.
1278
+ */
1279
+ projectId?: string;
1280
+ /** IP type to filter for. */
1281
+ ipType?: ListIpsRequestIpType;
1282
+ /**
1283
+ * Tag to filter for, only IPs with one or more matching tags will be
1284
+ * returned.
1285
+ */
1286
+ tags?: string[];
1287
+ };
1288
+ export interface ListIpsResponse {
1289
+ /** List of IP address objects. */
1290
+ ips: Ip[];
1291
+ /** Total count of IP address objects, without pagination. */
1292
+ totalCount: number;
1293
+ }
1294
+ export type ListLbPrivateNetworksRequest = {
1295
+ /**
1296
+ * Region to target. If none is passed will use default region from the
1297
+ * config.
1298
+ */
1299
+ region?: Region;
1300
+ /** Load Balancer ID. */
1301
+ lbId: string;
1302
+ /** Sort order of Private Network objects in the response. */
1303
+ orderBy?: ListPrivateNetworksRequestOrderBy;
1304
+ /** Number of objects to return. */
1305
+ pageSize?: number;
1306
+ /** The page number to return, from the paginated results. */
1307
+ page?: number;
1308
+ };
1309
+ export interface ListLbPrivateNetworksResponse {
1310
+ /** List of Private Network objects attached to the Load Balancer. */
1311
+ privateNetwork: PrivateNetwork[];
1312
+ /** Total number of objects in the response. */
1313
+ totalCount: number;
1314
+ }
1315
+ export type ListLbTypesRequest = {
1316
+ /**
1317
+ * Region to target. If none is passed will use default region from the
1318
+ * config.
1319
+ */
1320
+ region?: Region;
1321
+ /** The page number to return, from the paginated results. */
1322
+ page?: number;
1323
+ /** The number of items to return. */
1324
+ pageSize?: number;
1325
+ };
1326
+ export interface ListLbTypesResponse {
1327
+ /** List of Load Balancer commercial offer type objects. */
1328
+ lbTypes: LbType[];
1329
+ /** Total number of Load Balancer offer type objects. */
1330
+ totalCount: number;
1331
+ }
1332
+ export type ListLbsRequest = {
1333
+ /**
1334
+ * Region to target. If none is passed will use default region from the
1335
+ * config.
1336
+ */
1337
+ region?: Region;
1338
+ /** Load Balancer name to filter for. */
1339
+ name?: string;
1340
+ /** Sort order of Load Balancers in the response. */
1341
+ orderBy?: ListLbsRequestOrderBy;
1342
+ /** Number of Load Balancers to return. */
1343
+ pageSize?: number;
1344
+ /** Page number to return, from the paginated results. */
1345
+ page?: number;
1346
+ /**
1347
+ * Organization ID to filter for, only Load Balancers from this Organization
1348
+ * will be returned.
1349
+ */
1350
+ organizationId?: string;
1351
+ /**
1352
+ * Project ID to filter for, only Load Balancers from this Project will be
1353
+ * returned.
1354
+ */
1355
+ projectId?: string;
1356
+ /**
1357
+ * Filter by tag, only Load Balancers with one or more matching tags will be
1358
+ * returned.
1359
+ */
1360
+ tags?: string[];
1361
+ };
1362
+ export interface ListLbsResponse {
1363
+ /** List of Load Balancer objects. */
1364
+ lbs: Lb[];
1365
+ /** The total number of Load Balancer objects. */
1366
+ totalCount: number;
1367
+ }
1368
+ export type ListRoutesRequest = {
1369
+ /**
1370
+ * Region to target. If none is passed will use default region from the
1371
+ * config.
1372
+ */
1373
+ region?: Region;
1374
+ /** Sort order of routes in the response. */
1375
+ orderBy?: ListRoutesRequestOrderBy;
1376
+ /** The number of route objects to return. */
1377
+ pageSize?: number;
1378
+ /** The page number to return, from the paginated results. */
1379
+ page?: number;
1380
+ /** Frontend ID to filter for, only Routes from this Frontend will be returned. */
1381
+ frontendId?: string;
1382
+ };
1383
+ export interface ListRoutesResponse {
1384
+ /** List of route objects. */
1385
+ routes: Route[];
1386
+ /** The total number of route objects. */
1387
+ totalCount: number;
1388
+ }
1389
+ export type ListSubscriberRequest = {
1390
+ /**
1391
+ * Region to target. If none is passed will use default region from the
1392
+ * config.
1393
+ */
1394
+ region?: Region;
1395
+ /** Sort order of subscribers in the response. */
1396
+ orderBy?: ListSubscriberRequestOrderBy;
1397
+ /** The page number to return, from the paginated results. */
1398
+ page?: number;
1399
+ /** The number of items to return. */
1400
+ pageSize?: number;
1401
+ /** Subscriber name to search for. */
1402
+ name?: string;
1403
+ /** Filter subscribers by Organization ID. */
1404
+ organizationId?: string;
1405
+ /** Filter subscribers by Project ID. */
1406
+ projectId?: string;
1407
+ };
1408
+ export interface ListSubscriberResponse {
1409
+ /** List of subscriber objects. */
1410
+ subscribers: Subscriber[];
1411
+ /** The total number of objects. */
1412
+ totalCount: number;
1413
+ }
1414
+ export type MigrateLbRequest = {
1415
+ /**
1416
+ * Region to target. If none is passed will use default region from the
1417
+ * config.
1418
+ */
1419
+ region?: Region;
1420
+ /** Load Balancer ID. */
1421
+ lbId: string;
1422
+ /**
1423
+ * Load Balancer type to migrate to (use the List all Load Balancer offer
1424
+ * types endpoint to get a list of available offer types).
1425
+ */
1426
+ type: string;
1427
+ };
1428
+ export type ReleaseIpRequest = {
1429
+ /**
1430
+ * Region to target. If none is passed will use default region from the
1431
+ * config.
1432
+ */
1433
+ region?: Region;
1434
+ /** IP address ID. */
1435
+ ipId: string;
1436
+ };
1437
+ export type RemoveBackendServersRequest = {
1438
+ /**
1439
+ * Region to target. If none is passed will use default region from the
1440
+ * config.
1441
+ */
1442
+ region?: Region;
1443
+ /** Backend ID. */
1444
+ backendId: string;
1445
+ /** List of IP addresses to remove from backend servers. */
1446
+ serverIp: string[];
1447
+ };
1448
+ export interface SetAclsResponse {
1449
+ /** List of ACL objects. */
1450
+ acls: Acl[];
1451
+ /** The total number of ACL objects. */
1452
+ totalCount: number;
1453
+ }
1454
+ export type SetBackendServersRequest = {
1455
+ /**
1456
+ * Region to target. If none is passed will use default region from the
1457
+ * config.
1458
+ */
1459
+ region?: Region;
1460
+ /** Backend ID. */
1461
+ backendId: string;
1462
+ /**
1463
+ * List of IP addresses for backend servers. Any other existing backend
1464
+ * servers will be removed.
1465
+ */
1466
+ serverIp: string[];
1467
+ };
1468
+ export type SubscribeToLbRequest = {
1469
+ /**
1470
+ * Region to target. If none is passed will use default region from the
1471
+ * config.
1472
+ */
1473
+ region?: Region;
1474
+ /** Load Balancer ID. */
1475
+ lbId: string;
1476
+ /** Subscriber ID. */
1477
+ subscriberId: string;
1478
+ };
1479
+ export type UnsubscribeFromLbRequest = {
1480
+ /**
1481
+ * Region to target. If none is passed will use default region from the
1482
+ * config.
1483
+ */
1484
+ region?: Region;
1485
+ /** Load Balancer ID. */
1486
+ lbId: string;
1487
+ };
1488
+ export type UpdateAclRequest = {
1489
+ /**
1490
+ * Region to target. If none is passed will use default region from the
1491
+ * config.
1492
+ */
1493
+ region?: Region;
1494
+ /** ACL ID. */
1495
+ aclId: string;
1496
+ /** ACL name. */
1497
+ name: string;
1498
+ /** Action to take when incoming traffic matches an ACL filter. */
1499
+ action: AclAction;
1500
+ /**
1501
+ * ACL match filter object. One of `ip_subnet` or `http_filter` &
1502
+ * `http_filter_value` are required.
1503
+ */
1504
+ match?: AclMatch;
1505
+ /**
1506
+ * Priority of this ACL (ACLs are applied in ascending order, 0 is the first
1507
+ * ACL executed).
1508
+ */
1509
+ index: number;
1510
+ /** ACL description. */
1511
+ description?: string;
1512
+ };
1513
+ export type UpdateBackendRequest = {
1514
+ /**
1515
+ * Region to target. If none is passed will use default region from the
1516
+ * config.
1517
+ */
1518
+ region?: Region;
1519
+ /** Backend ID. */
1520
+ backendId: string;
1521
+ /** Backend name. */
1522
+ name: string;
1523
+ /**
1524
+ * Protocol to be used by the backend when forwarding traffic to backend
1525
+ * servers.
1526
+ */
1527
+ forwardProtocol: Protocol;
1528
+ /** Port to be used by the backend when forwarding traffic to backend servers. */
1529
+ forwardPort: number;
1530
+ /**
1531
+ * Load balancing algorithm to be used when determining which backend server
1532
+ * to forward new traffic to.
1533
+ */
1534
+ forwardPortAlgorithm: ForwardPortAlgorithm;
1535
+ /**
1536
+ * Defines whether to activate sticky sessions (binding a particular session
1537
+ * to a particular backend server) and the method to use if so. None disables
1538
+ * sticky sessions. Cookie-based uses an HTTP cookie to stick a session to a
1539
+ * backend server. Table-based uses the source (client) IP address to stick a
1540
+ * session to a backend server.
1541
+ */
1542
+ stickySessions: StickySessionsType;
1543
+ /** Cookie name for cookie-based sticky sessions. */
1544
+ stickySessionsCookieName: string;
1545
+ /** @deprecated Deprecated in favor of proxy_protocol field. */
1546
+ sendProxyV2?: boolean;
1547
+ /** Maximum allowed time for a backend server to process a request. */
1548
+ timeoutServer?: string;
1549
+ /** Maximum allowed time for establishing a connection to a backend server. */
1550
+ timeoutConnect?: string;
1551
+ /**
1552
+ * Maximum allowed tunnel inactivity time after Websocket is established
1553
+ * (takes precedence over client and server timeout).
1554
+ */
1555
+ timeoutTunnel?: string;
1556
+ /** Action to take when a backend server is marked as down. */
1557
+ onMarkedDownAction?: OnMarkedDownAction;
1558
+ /**
1559
+ * Protocol to use between the Load Balancer and backend servers. Allows the
1560
+ * backend servers to be informed of the client's real IP address. The PROXY
1561
+ * protocol must be supported by the backend servers' software.
1562
+ */
1563
+ proxyProtocol?: ProxyProtocol;
1564
+ /**
1565
+ * Scaleway S3 bucket website to be served as failover if all backend servers
1566
+ * are down, e.g. failover-website.s3-website.fr-par.scw.cloud.
1567
+ */
1568
+ failoverHost?: string;
1569
+ /**
1570
+ * Defines whether to enable SSL bridging between the Load Balancer and
1571
+ * backend servers.
1572
+ */
1573
+ sslBridging?: boolean;
1574
+ /** Defines whether the server certificate verification should be ignored. */
1575
+ ignoreSslServerVerify?: boolean;
1576
+ /** Whether to use another backend server on each attempt. */
1577
+ redispatchAttemptCount?: number;
1578
+ /** Number of retries when a backend server connection failed. */
1579
+ maxRetries?: number;
1580
+ /** Maximum number of connections allowed per backend server. */
1581
+ maxConnections?: number;
1582
+ /**
1583
+ * Maximum time for a request to be left pending in queue when
1584
+ * `max_connections` is reached.
1585
+ */
1586
+ timeoutQueue?: string;
1587
+ };
1588
+ export type UpdateCertificateRequest = {
1589
+ /**
1590
+ * Region to target. If none is passed will use default region from the
1591
+ * config.
1592
+ */
1593
+ region?: Region;
1594
+ /** Certificate ID. */
1595
+ certificateId: string;
1596
+ /** Certificate name. */
1597
+ name: string;
1598
+ };
1599
+ export type UpdateFrontendRequest = {
1600
+ /**
1601
+ * Region to target. If none is passed will use default region from the
1602
+ * config.
1603
+ */
1604
+ region?: Region;
1605
+ /** Frontend ID. */
1606
+ frontendId: string;
1607
+ /** Frontend name. */
1608
+ name: string;
1609
+ /** Port the frontend should listen on. */
1610
+ inboundPort: number;
1611
+ /** Backend ID (ID of the backend the frontend should pass traffic to). */
1612
+ backendId: string;
1613
+ /** Maximum allowed inactivity time on the client side. */
1614
+ timeoutClient?: string;
1615
+ /** @deprecated Certificate ID, deprecated in favor of certificate_ids array. */
1616
+ certificateId?: string;
1617
+ /** List of SSL/TLS certificate IDs to bind to the frontend. */
1618
+ certificateIds?: string[];
1619
+ /** Defines whether to enable HTTP/3 protocol on the frontend. */
1620
+ enableHttp3: boolean;
1621
+ };
1622
+ export type UpdateHealthCheckRequest = {
1623
+ /**
1624
+ * Region to target. If none is passed will use default region from the
1625
+ * config.
1626
+ */
1627
+ region?: Region;
1628
+ /** Backend ID. */
1629
+ backendId: string;
1630
+ /** Port to use for the backend server health check. */
1631
+ port: number;
1632
+ /** Time to wait between two consecutive health checks. */
1633
+ checkDelay?: string;
1634
+ /** Maximum time a backend server has to reply to the health check. */
1635
+ checkTimeout?: string;
1636
+ /**
1637
+ * Number of consecutive unsuccessful health checks after which the server
1638
+ * will be considered dead.
1639
+ */
1640
+ checkMaxRetries: number;
1641
+ /** Defines whether proxy protocol should be activated for the health check. */
1642
+ checkSendProxy: boolean;
1643
+ /**
1644
+ * Object to configure a basic TCP health check.
1645
+ *
1646
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1647
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1648
+ * could be set.
1649
+ */
1650
+ tcpConfig?: HealthCheckTcpConfig;
1651
+ /**
1652
+ * Object to configure a MySQL health check. The check requires MySQL >=3.22,
1653
+ * for older versions, use a TCP health check.
1654
+ *
1655
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1656
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1657
+ * could be set.
1658
+ */
1659
+ mysqlConfig?: HealthCheckMysqlConfig;
1660
+ /**
1661
+ * Object to configure a PostgreSQL health check.
1662
+ *
1663
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1664
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1665
+ * could be set.
1666
+ */
1667
+ pgsqlConfig?: HealthCheckPgsqlConfig;
1668
+ /**
1669
+ * Object to configure an LDAP health check. The response is analyzed to find
1670
+ * the LDAPv3 response message.
1671
+ *
1672
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1673
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1674
+ * could be set.
1675
+ */
1676
+ ldapConfig?: HealthCheckLdapConfig;
1677
+ /**
1678
+ * Object to configure a Redis health check. The response is analyzed to find
1679
+ * the +PONG response message.
1680
+ *
1681
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1682
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1683
+ * could be set.
1684
+ */
1685
+ redisConfig?: HealthCheckRedisConfig;
1686
+ /**
1687
+ * Object to configure an HTTP health check.
1688
+ *
1689
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1690
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1691
+ * could be set.
1692
+ */
1693
+ httpConfig?: HealthCheckHttpConfig;
1694
+ /**
1695
+ * Object to configure an HTTPS health check.
1696
+ *
1697
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
1698
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
1699
+ * could be set.
1700
+ */
1701
+ httpsConfig?: HealthCheckHttpsConfig;
1702
+ /**
1703
+ * Time to wait between two consecutive health checks when a backend server is
1704
+ * in a transient state (going UP or DOWN).
1705
+ */
1706
+ transientCheckDelay?: string;
1707
+ };
1708
+ export type UpdateIpRequest = {
1709
+ /**
1710
+ * Region to target. If none is passed will use default region from the
1711
+ * config.
1712
+ */
1713
+ region?: Region;
1714
+ /** IP address ID. */
1715
+ ipId: string;
1716
+ /** Reverse DNS (domain name) for the IP address. */
1717
+ reverse?: string;
1718
+ /** ID of the server on which to attach the flexible IP. */
1719
+ lbId?: string;
1720
+ /** List of tags for the IP. */
1721
+ tags?: string[];
1722
+ };
1723
+ export type UpdateLbRequest = {
1724
+ /**
1725
+ * Region to target. If none is passed will use default region from the
1726
+ * config.
1727
+ */
1728
+ region?: Region;
1729
+ /** Load Balancer ID. */
1730
+ lbId: string;
1731
+ /** Load Balancer name. */
1732
+ name: string;
1733
+ /** Load Balancer description. */
1734
+ description: string;
1735
+ /** List of tags for the Load Balancer. */
1736
+ tags?: string[];
1737
+ /**
1738
+ * Determines the minimal SSL version which needs to be supported on the
1739
+ * client side, in an SSL/TLS offloading context. Intermediate is suitable for
1740
+ * general-purpose servers with a variety of clients, recommended for almost
1741
+ * all systems. Modern is suitable for services with clients that support TLS
1742
+ * 1.3 and don't need backward compatibility. Old is compatible with a small
1743
+ * number of very old clients and should be used only as a last resort.
1744
+ */
1745
+ sslCompatibilityLevel?: SSLCompatibilityLevel;
1746
+ };
1747
+ export type UpdateRouteRequest = {
1748
+ /**
1749
+ * Region to target. If none is passed will use default region from the
1750
+ * config.
1751
+ */
1752
+ region?: Region;
1753
+ /** Route ID. */
1754
+ routeId: string;
1755
+ /** ID of the target backend for the route. */
1756
+ backendId: string;
1757
+ /**
1758
+ * Object defining the match condition for a route to be applied. If an
1759
+ * incoming client session matches the specified condition (i.e. it has a
1760
+ * matching SNI value or HTTP Host header value), it will be passed to the
1761
+ * target backend.
1762
+ */
1763
+ match?: RouteMatch;
1764
+ };
1765
+ export type UpdateSubscriberRequest = {
1766
+ /**
1767
+ * Region to target. If none is passed will use default region from the
1768
+ * config.
1769
+ */
1770
+ region?: Region;
1771
+ /** Subscriber ID. */
1772
+ subscriberId: string;
1773
+ /** Subscriber name. */
1774
+ name: string;
1775
+ /**
1776
+ * Email address configuration.
1777
+ *
1778
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
1779
+ * set.
1780
+ */
1781
+ emailConfig?: SubscriberEmailConfig;
1782
+ /**
1783
+ * Webhook URI configuration.
1784
+ *
1785
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
1786
+ * set.
1787
+ */
1788
+ webhookConfig?: SubscriberWebhookConfig;
1789
+ };
1790
+ export type ZonedApiAddBackendServersRequest = {
1791
+ /** Zone to target. If none is passed will use default zone from the config. */
1792
+ zone?: Zone;
1793
+ /** Backend ID. */
1794
+ backendId: string;
1795
+ /** List of IP addresses to add to backend servers. */
1796
+ serverIp: string[];
1797
+ };
1798
+ export type ZonedApiAttachPrivateNetworkRequest = {
1799
+ /** Zone to target. If none is passed will use default zone from the config. */
1800
+ zone?: Zone;
1801
+ /** Load Balancer ID. */
1802
+ lbId: string;
1803
+ /** Private Network ID. */
1804
+ privateNetworkId: string;
1805
+ /**
1806
+ * @deprecated Object containing an array of a local IP address for the Load
1807
+ * Balancer on this Private Network.
1808
+ *
1809
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
1810
+ * 'ipamConfig' could be set.
1811
+ */
1812
+ staticConfig?: PrivateNetworkStaticConfig;
1813
+ /**
1814
+ * @deprecated Defines whether to let DHCP assign IP addresses.
1815
+ *
1816
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
1817
+ * 'ipamConfig' could be set.
1818
+ */
1819
+ dhcpConfig?: PrivateNetworkDHCPConfig;
1820
+ /**
1821
+ * @deprecated For internal use only.
1822
+ *
1823
+ * One-of ('config'): at most one of 'staticConfig', 'dhcpConfig',
1824
+ * 'ipamConfig' could be set.
1825
+ */
1826
+ ipamConfig?: PrivateNetworkIpamConfig;
1827
+ };
1828
+ /** Add an ACL to a Load Balancer frontend. */
1829
+ export type ZonedApiCreateAclRequest = {
1830
+ /** Zone to target. If none is passed will use default zone from the config. */
1831
+ zone?: Zone;
1832
+ /** Frontend ID to attach the ACL to. */
1833
+ frontendId: string;
1834
+ /** ACL name. */
1835
+ name?: string;
1836
+ /** Action to take when incoming traffic matches an ACL filter. */
1837
+ action: AclAction;
1838
+ /**
1839
+ * ACL match filter object. One of `ip_subnet` or `http_filter` &
1840
+ * `http_filter_value` are required.
1841
+ */
1842
+ match?: AclMatch;
1843
+ /**
1844
+ * Priority of this ACL (ACLs are applied in ascending order, 0 is the first
1845
+ * ACL executed).
1846
+ */
1847
+ index: number;
1848
+ /** ACL description. */
1849
+ description: string;
1850
+ };
1851
+ export type ZonedApiCreateBackendRequest = {
1852
+ /** Zone to target. If none is passed will use default zone from the config. */
1853
+ zone?: Zone;
1854
+ /** Load Balancer ID. */
1855
+ lbId: string;
1856
+ /** Name for the backend. */
1857
+ name?: string;
1858
+ /**
1859
+ * Protocol to be used by the backend when forwarding traffic to backend
1860
+ * servers.
1861
+ */
1862
+ forwardProtocol: Protocol;
1863
+ /** Port to be used by the backend when forwarding traffic to backend servers. */
1864
+ forwardPort: number;
1865
+ /**
1866
+ * Load balancing algorithm to be used when determining which backend server
1867
+ * to forward new traffic to.
1868
+ */
1869
+ forwardPortAlgorithm: ForwardPortAlgorithm;
1870
+ /**
1871
+ * Defines whether to activate sticky sessions (binding a particular session
1872
+ * to a particular backend server) and the method to use if so. None disables
1873
+ * sticky sessions. Cookie-based uses an HTTP cookie TO stick a session to a
1874
+ * backend server. Table-based uses the source (client) IP address to stick a
1875
+ * session to a backend server.
1876
+ */
1877
+ stickySessions: StickySessionsType;
1878
+ /** Cookie name for cookie-based sticky sessions. */
1879
+ stickySessionsCookieName: string;
1880
+ /**
1881
+ * Object defining the health check to be carried out by the backend when
1882
+ * checking the status and health of backend servers.
1883
+ */
1884
+ healthCheck: HealthCheck;
1885
+ /**
1886
+ * List of backend server IP addresses (IPv4 or IPv6) the backend should
1887
+ * forward traffic to.
1888
+ */
1889
+ serverIp: string[];
1890
+ /** @deprecated Deprecated in favor of proxy_protocol field. */
1891
+ sendProxyV2?: boolean;
1892
+ /** Maximum allowed time for a backend server to process a request. */
1893
+ timeoutServer?: string;
1894
+ /** Maximum allowed time for establishing a connection to a backend server. */
1895
+ timeoutConnect?: string;
1896
+ /**
1897
+ * Maximum allowed tunnel inactivity time after Websocket is established
1898
+ * (takes precedence over client and server timeout).
1899
+ */
1900
+ timeoutTunnel?: string;
1901
+ /** Action to take when a backend server is marked as down. */
1902
+ onMarkedDownAction?: OnMarkedDownAction;
1903
+ /**
1904
+ * Protocol to use between the Load Balancer and backend servers. Allows the
1905
+ * backend servers to be informed of the client's real IP address. The PROXY
1906
+ * protocol must be supported by the backend servers' software.
1907
+ */
1908
+ proxyProtocol?: ProxyProtocol;
1909
+ /**
1910
+ * Scaleway S3 bucket website to be served as failover if all backend servers
1911
+ * are down, e.g. failover-website.s3-website.fr-par.scw.cloud.
1912
+ */
1913
+ failoverHost?: string;
1914
+ /**
1915
+ * Defines whether to enable SSL bridging between the Load Balancer and
1916
+ * backend servers.
1917
+ */
1918
+ sslBridging?: boolean;
1919
+ /** Defines whether the server certificate verification should be ignored. */
1920
+ ignoreSslServerVerify?: boolean;
1921
+ /** Whether to use another backend server on each attempt. */
1922
+ redispatchAttemptCount?: number;
1923
+ /** Number of retries when a backend server connection failed. */
1924
+ maxRetries?: number;
1925
+ /** Maximum number of connections allowed per backend server. */
1926
+ maxConnections?: number;
1927
+ /**
1928
+ * Maximum time for a request to be left pending in queue when
1929
+ * `max_connections` is reached.
1930
+ */
1931
+ timeoutQueue?: string;
1932
+ };
1933
+ export type ZonedApiCreateCertificateRequest = {
1934
+ /** Zone to target. If none is passed will use default zone from the config. */
1935
+ zone?: Zone;
1936
+ /** Load Balancer ID. */
1937
+ lbId: string;
1938
+ /** Name for the certificate. */
1939
+ name?: string;
1940
+ /**
1941
+ * Object to define a new Let's Encrypt certificate to be generated.
1942
+ *
1943
+ * One-of ('type'): at most one of 'letsencrypt', 'customCertificate' could be
1944
+ * set.
1945
+ */
1946
+ letsencrypt?: CreateCertificateRequestLetsencryptConfig;
1947
+ /**
1948
+ * Object to define an existing custom certificate to be imported.
1949
+ *
1950
+ * One-of ('type'): at most one of 'letsencrypt', 'customCertificate' could be
1951
+ * set.
1952
+ */
1953
+ customCertificate?: CreateCertificateRequestCustomCertificate;
1954
+ };
1955
+ export type ZonedApiCreateFrontendRequest = {
1956
+ /** Zone to target. If none is passed will use default zone from the config. */
1957
+ zone?: Zone;
1958
+ /** Load Balancer ID (ID of the Load Balancer to attach the frontend to). */
1959
+ lbId: string;
1960
+ /** Name for the frontend. */
1961
+ name?: string;
1962
+ /** Port the frontend should listen on. */
1963
+ inboundPort: number;
1964
+ /** Backend ID (ID of the backend the frontend should pass traffic to). */
1965
+ backendId: string;
1966
+ /** Maximum allowed inactivity time on the client side. */
1967
+ timeoutClient?: string;
1968
+ /** @deprecated Certificate ID, deprecated in favor of certificate_ids array. */
1969
+ certificateId?: string;
1970
+ /** List of SSL/TLS certificate IDs to bind to the frontend. */
1971
+ certificateIds?: string[];
1972
+ /** Defines whether to enable HTTP/3 protocol on the frontend. */
1973
+ enableHttp3: boolean;
1974
+ };
1975
+ export type ZonedApiCreateIpRequest = {
1976
+ /** Zone to target. If none is passed will use default zone from the config. */
1977
+ zone?: Zone;
1978
+ /**
1979
+ * @deprecated Organization ID of the Organization where the IP address should
1980
+ * be created.
1981
+ *
1982
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
1983
+ * could be set.
1984
+ */
1985
+ organizationId?: string;
1986
+ /**
1987
+ * Project ID of the Project where the IP address should be created.
1988
+ *
1989
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
1990
+ * could be set.
1991
+ */
1992
+ projectId?: string;
1993
+ /** Reverse DNS (domain name) for the IP address. */
1994
+ reverse?: string;
1995
+ /** If true, creates a Flexible IP with an ipv6 address. */
1996
+ isIpv6: boolean;
1997
+ /** List of tags for the IP. */
1998
+ tags?: string[];
1999
+ };
2000
+ export type ZonedApiCreateLbRequest = {
2001
+ /** Zone to target. If none is passed will use default zone from the config. */
2002
+ zone?: Zone;
2003
+ /**
2004
+ * @deprecated Scaleway Organization to create the Load Balancer in.
2005
+ *
2006
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
2007
+ * could be set.
2008
+ */
2009
+ organizationId?: string;
2010
+ /**
2011
+ * Scaleway Project to create the Load Balancer in.
2012
+ *
2013
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
2014
+ * could be set.
2015
+ */
2016
+ projectId?: string;
2017
+ /** Name for the Load Balancer. */
2018
+ name?: string;
2019
+ /** Description for the Load Balancer. */
2020
+ description: string;
2021
+ /**
2022
+ * @deprecated ID of an existing flexible IP address to attach to the Load
2023
+ * Balancer.
2024
+ */
2025
+ ipId?: string;
2026
+ /**
2027
+ * Defines whether to automatically assign a flexible public IP to lb. Default
2028
+ * value is `false` (do not assign).
2029
+ */
2030
+ assignFlexibleIp?: boolean;
2031
+ /**
2032
+ * Defines whether to automatically assign a flexible public IPv6 to the Load
2033
+ * Balancer. Default value is `false` (do not assign).
2034
+ */
2035
+ assignFlexibleIpv6?: boolean;
2036
+ /** List of IP IDs to attach to the Load Balancer. */
2037
+ ipIds?: string[];
2038
+ /** List of tags for the Load Balancer. */
2039
+ tags?: string[];
2040
+ /**
2041
+ * Load Balancer commercial offer type. Use the Load Balancer types endpoint
2042
+ * to retrieve a list of available offer types.
2043
+ */
2044
+ type: string;
2045
+ /**
2046
+ * Determines the minimal SSL version which needs to be supported on the
2047
+ * client side, in an SSL/TLS offloading context. Intermediate is suitable for
2048
+ * general-purpose servers with a variety of clients, recommended for almost
2049
+ * all systems. Modern is suitable for services with clients that support TLS
2050
+ * 1.3 and do not need backward compatibility. Old is compatible with a small
2051
+ * number of very old clients and should be used only as a last resort.
2052
+ */
2053
+ sslCompatibilityLevel?: SSLCompatibilityLevel;
2054
+ };
2055
+ export type ZonedApiCreateRouteRequest = {
2056
+ /** Zone to target. If none is passed will use default zone from the config. */
2057
+ zone?: Zone;
2058
+ /** ID of the source frontend to create the route on. */
2059
+ frontendId: string;
2060
+ /** ID of the target backend for the route. */
2061
+ backendId: string;
2062
+ /**
2063
+ * Object defining the match condition for a route to be applied. If an
2064
+ * incoming client session matches the specified condition (i.e. it has a
2065
+ * matching SNI value or HTTP Host header value), it will be passed to the
2066
+ * target backend.
2067
+ */
2068
+ match?: RouteMatch;
2069
+ };
2070
+ /** Create a new alert subscriber (webhook or email). */
2071
+ export type ZonedApiCreateSubscriberRequest = {
2072
+ /** Zone to target. If none is passed will use default zone from the config. */
2073
+ zone?: Zone;
2074
+ /** Subscriber name. */
2075
+ name: string;
2076
+ /**
2077
+ * Email address configuration.
2078
+ *
2079
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
2080
+ * set.
2081
+ */
2082
+ emailConfig?: SubscriberEmailConfig;
2083
+ /**
2084
+ * WebHook URI configuration.
2085
+ *
2086
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
2087
+ * set.
2088
+ */
2089
+ webhookConfig?: SubscriberWebhookConfig;
2090
+ /**
2091
+ * @deprecated Organization ID to create the subscriber in.
2092
+ *
2093
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
2094
+ * could be set.
2095
+ */
2096
+ organizationId?: string;
2097
+ /**
2098
+ * Project ID to create the subscriber in.
2099
+ *
2100
+ * One-of ('projectIdentifier'): at most one of 'projectId', 'organizationId'
2101
+ * could be set.
2102
+ */
2103
+ projectId?: string;
2104
+ };
2105
+ export type ZonedApiDeleteAclRequest = {
2106
+ /** Zone to target. If none is passed will use default zone from the config. */
2107
+ zone?: Zone;
2108
+ /** ACL ID. */
2109
+ aclId: string;
2110
+ };
2111
+ export type ZonedApiDeleteBackendRequest = {
2112
+ /** Zone to target. If none is passed will use default zone from the config. */
2113
+ zone?: Zone;
2114
+ /** ID of the backend to delete. */
2115
+ backendId: string;
2116
+ };
2117
+ export type ZonedApiDeleteCertificateRequest = {
2118
+ /** Zone to target. If none is passed will use default zone from the config. */
2119
+ zone?: Zone;
2120
+ /** Certificate ID. */
2121
+ certificateId: string;
2122
+ };
2123
+ export type ZonedApiDeleteFrontendRequest = {
2124
+ /** Zone to target. If none is passed will use default zone from the config. */
2125
+ zone?: Zone;
2126
+ /** ID of the frontend to delete. */
2127
+ frontendId: string;
2128
+ };
2129
+ export type ZonedApiDeleteLbRequest = {
2130
+ /** Zone to target. If none is passed will use default zone from the config. */
2131
+ zone?: Zone;
2132
+ /** ID of the Load Balancer to delete. */
2133
+ lbId: string;
2134
+ /**
2135
+ * Defines whether the Load Balancer's flexible IP should be deleted. Set to
2136
+ * true to release the flexible IP, or false to keep it available in your
2137
+ * account for future Load Balancers.
2138
+ */
2139
+ releaseIp: boolean;
2140
+ };
2141
+ export type ZonedApiDeleteRouteRequest = {
2142
+ /** Zone to target. If none is passed will use default zone from the config. */
2143
+ zone?: Zone;
2144
+ /** Route ID. */
2145
+ routeId: string;
2146
+ };
2147
+ export type ZonedApiDeleteSubscriberRequest = {
2148
+ /** Zone to target. If none is passed will use default zone from the config. */
2149
+ zone?: Zone;
2150
+ /** Subscriber ID. */
2151
+ subscriberId: string;
2152
+ };
2153
+ export type ZonedApiDetachPrivateNetworkRequest = {
2154
+ /** Zone to target. If none is passed will use default zone from the config. */
2155
+ zone?: Zone;
2156
+ /** Load balancer ID. */
2157
+ lbId: string;
2158
+ /** Set your instance private network id. */
2159
+ privateNetworkId: string;
2160
+ };
2161
+ export type ZonedApiGetAclRequest = {
2162
+ /** Zone to target. If none is passed will use default zone from the config. */
2163
+ zone?: Zone;
2164
+ /** ACL ID. */
2165
+ aclId: string;
2166
+ };
2167
+ export type ZonedApiGetBackendRequest = {
2168
+ /** Zone to target. If none is passed will use default zone from the config. */
2169
+ zone?: Zone;
2170
+ /** Backend ID. */
2171
+ backendId: string;
2172
+ };
2173
+ export type ZonedApiGetCertificateRequest = {
2174
+ /** Zone to target. If none is passed will use default zone from the config. */
2175
+ zone?: Zone;
2176
+ /** Certificate ID. */
2177
+ certificateId: string;
2178
+ };
2179
+ export type ZonedApiGetFrontendRequest = {
2180
+ /** Zone to target. If none is passed will use default zone from the config. */
2181
+ zone?: Zone;
2182
+ /** Frontend ID. */
2183
+ frontendId: string;
2184
+ };
2185
+ export type ZonedApiGetIpRequest = {
2186
+ /** Zone to target. If none is passed will use default zone from the config. */
2187
+ zone?: Zone;
2188
+ /** IP address ID. */
2189
+ ipId: string;
2190
+ };
2191
+ export type ZonedApiGetLbRequest = {
2192
+ /** Zone to target. If none is passed will use default zone from the config. */
2193
+ zone?: Zone;
2194
+ /** Load Balancer ID. */
2195
+ lbId: string;
2196
+ };
2197
+ /** Get Load Balancer stats. */
2198
+ export type ZonedApiGetLbStatsRequest = {
2199
+ /** Zone to target. If none is passed will use default zone from the config. */
2200
+ zone?: Zone;
2201
+ /** Load Balancer ID. */
2202
+ lbId: string;
2203
+ /** ID of the backend. */
2204
+ backendId?: string;
2205
+ };
2206
+ export type ZonedApiGetRouteRequest = {
2207
+ /** Zone to target. If none is passed will use default zone from the config. */
2208
+ zone?: Zone;
2209
+ /** Route ID. */
2210
+ routeId: string;
2211
+ };
2212
+ export type ZonedApiGetSubscriberRequest = {
2213
+ /** Zone to target. If none is passed will use default zone from the config. */
2214
+ zone?: Zone;
2215
+ /** Subscriber ID. */
2216
+ subscriberId: string;
2217
+ };
2218
+ export type ZonedApiListAclsRequest = {
2219
+ /** Zone to target. If none is passed will use default zone from the config. */
2220
+ zone?: Zone;
2221
+ /**
2222
+ * Frontend ID (ACLs attached to this frontend will be returned in the
2223
+ * response).
2224
+ */
2225
+ frontendId: string;
2226
+ /** Sort order of ACLs in the response. */
2227
+ orderBy?: ListAclRequestOrderBy;
2228
+ /** The page number to return, from the paginated results. */
2229
+ page?: number;
2230
+ /** The number of ACLs to return. */
2231
+ pageSize?: number;
2232
+ /** ACL name to filter for. */
2233
+ name?: string;
2234
+ };
2235
+ export type ZonedApiListBackendStatsRequest = {
2236
+ /** Zone to target. If none is passed will use default zone from the config. */
2237
+ zone?: Zone;
2238
+ /** Load Balancer ID. */
2239
+ lbId: string;
2240
+ /** The page number to return, from the paginated results. */
2241
+ page?: number;
2242
+ /** Number of items to return. */
2243
+ pageSize?: number;
2244
+ /** ID of the backend. */
2245
+ backendId?: string;
2246
+ };
2247
+ export type ZonedApiListBackendsRequest = {
2248
+ /** Zone to target. If none is passed will use default zone from the config. */
2249
+ zone?: Zone;
2250
+ /** Load Balancer ID. */
2251
+ lbId: string;
2252
+ /** Name of the backend to filter for. */
2253
+ name?: string;
2254
+ /** Sort order of backends in the response. */
2255
+ orderBy?: ListBackendsRequestOrderBy;
2256
+ /** The page number to return, from the paginated results. */
2257
+ page?: number;
2258
+ /** Number of backends to return. */
2259
+ pageSize?: number;
2260
+ };
2261
+ export type ZonedApiListCertificatesRequest = {
2262
+ /** Zone to target. If none is passed will use default zone from the config. */
2263
+ zone?: Zone;
2264
+ /** Load Balancer ID. */
2265
+ lbId: string;
2266
+ /** Sort order of certificates in the response. */
2267
+ orderBy?: ListCertificatesRequestOrderBy;
2268
+ /** The page number to return, from the paginated results. */
2269
+ page?: number;
2270
+ /** Number of certificates to return. */
2271
+ pageSize?: number;
2272
+ /**
2273
+ * Certificate name to filter for, only certificates of this name will be
2274
+ * returned.
2275
+ */
2276
+ name?: string;
2277
+ };
2278
+ export type ZonedApiListFrontendsRequest = {
2279
+ /** Zone to target. If none is passed will use default zone from the config. */
2280
+ zone?: Zone;
2281
+ /** Load Balancer ID. */
2282
+ lbId: string;
2283
+ /** Name of the frontend to filter for. */
2284
+ name?: string;
2285
+ /** Sort order of frontends in the response. */
2286
+ orderBy?: ListFrontendsRequestOrderBy;
2287
+ /** The page number to return, from the paginated results. */
2288
+ page?: number;
2289
+ /** Number of frontends to return. */
2290
+ pageSize?: number;
2291
+ };
2292
+ export type ZonedApiListIPsRequest = {
2293
+ /** Zone to target. If none is passed will use default zone from the config. */
2294
+ zone?: Zone;
2295
+ /** The page number to return, from the paginated results. */
2296
+ page?: number;
2297
+ /** Number of IP addresses to return. */
2298
+ pageSize?: number;
2299
+ /** IP address to filter for. */
2300
+ ipAddress?: string;
2301
+ /**
2302
+ * Organization ID to filter for, only Load Balancer IP addresses from this
2303
+ * Organization will be returned.
2304
+ */
2305
+ organizationId?: string;
2306
+ /**
2307
+ * Project ID to filter for, only Load Balancer IP addresses from this Project
2308
+ * will be returned.
2309
+ */
2310
+ projectId?: string;
2311
+ /** IP type to filter for. */
2312
+ ipType?: ListIpsRequestIpType;
2313
+ /**
2314
+ * Tag to filter for, only IPs with one or more matching tags will be
2315
+ * returned.
2316
+ */
2317
+ tags?: string[];
2318
+ };
2319
+ export type ZonedApiListLbPrivateNetworksRequest = {
2320
+ /** Zone to target. If none is passed will use default zone from the config. */
2321
+ zone?: Zone;
2322
+ /** Load Balancer ID. */
2323
+ lbId: string;
2324
+ /** Sort order of Private Network objects in the response. */
2325
+ orderBy?: ListPrivateNetworksRequestOrderBy;
2326
+ /** Number of objects to return. */
2327
+ pageSize?: number;
2328
+ /** The page number to return, from the paginated results. */
2329
+ page?: number;
2330
+ };
2331
+ export type ZonedApiListLbTypesRequest = {
2332
+ /** Zone to target. If none is passed will use default zone from the config. */
2333
+ zone?: Zone;
2334
+ /** The page number to return, from the paginated results. */
2335
+ page?: number;
2336
+ /** The number of items to return. */
2337
+ pageSize?: number;
2338
+ };
2339
+ export type ZonedApiListLbsRequest = {
2340
+ /** Zone to target. If none is passed will use default zone from the config. */
2341
+ zone?: Zone;
2342
+ /** Load Balancer name to filter for. */
2343
+ name?: string;
2344
+ /** Sort order of Load Balancers in the response. */
2345
+ orderBy?: ListLbsRequestOrderBy;
2346
+ /** Number of Load Balancers to return. */
2347
+ pageSize?: number;
2348
+ /** Page number to return, from the paginated results. */
2349
+ page?: number;
2350
+ /**
2351
+ * Organization ID to filter for, only Load Balancers from this Organization
2352
+ * will be returned.
2353
+ */
2354
+ organizationId?: string;
2355
+ /**
2356
+ * Project ID to filter for, only Load Balancers from this Project will be
2357
+ * returned.
2358
+ */
2359
+ projectId?: string;
2360
+ /**
2361
+ * Filter by tag, only Load Balancers with one or more matching tags will be
2362
+ * returned.
2363
+ */
2364
+ tags?: string[];
2365
+ };
2366
+ export type ZonedApiListRoutesRequest = {
2367
+ /** Zone to target. If none is passed will use default zone from the config. */
2368
+ zone?: Zone;
2369
+ /** Sort order of routes in the response. */
2370
+ orderBy?: ListRoutesRequestOrderBy;
2371
+ /** The number of route objects to return. */
2372
+ pageSize?: number;
2373
+ /** The page number to return, from the paginated results. */
2374
+ page?: number;
2375
+ /** Frontend ID to filter for, only Routes from this Frontend will be returned. */
2376
+ frontendId?: string;
2377
+ };
2378
+ export type ZonedApiListSubscriberRequest = {
2379
+ /** Zone to target. If none is passed will use default zone from the config. */
2380
+ zone?: Zone;
2381
+ /** Sort order of subscribers in the response. */
2382
+ orderBy?: ListSubscriberRequestOrderBy;
2383
+ /** The page number to return, from the paginated results. */
2384
+ page?: number;
2385
+ /** The number of items to return. */
2386
+ pageSize?: number;
2387
+ /** Subscriber name to search for. */
2388
+ name?: string;
2389
+ /** Filter subscribers by Organization ID. */
2390
+ organizationId?: string;
2391
+ /** Filter subscribers by Project ID. */
2392
+ projectId?: string;
2393
+ };
2394
+ export type ZonedApiMigrateLbRequest = {
2395
+ /** Zone to target. If none is passed will use default zone from the config. */
2396
+ zone?: Zone;
2397
+ /** Load Balancer ID. */
2398
+ lbId: string;
2399
+ /**
2400
+ * Load Balancer type to migrate to (use the List all Load Balancer offer
2401
+ * types endpoint to get a list of available offer types).
2402
+ */
2403
+ type: string;
2404
+ };
2405
+ export type ZonedApiReleaseIpRequest = {
2406
+ /** Zone to target. If none is passed will use default zone from the config. */
2407
+ zone?: Zone;
2408
+ /** IP address ID. */
2409
+ ipId: string;
2410
+ };
2411
+ export type ZonedApiRemoveBackendServersRequest = {
2412
+ /** Zone to target. If none is passed will use default zone from the config. */
2413
+ zone?: Zone;
2414
+ /** Backend ID. */
2415
+ backendId: string;
2416
+ /** List of IP addresses to remove from backend servers. */
2417
+ serverIp: string[];
2418
+ };
2419
+ export type ZonedApiSetAclsRequest = {
2420
+ /** Zone to target. If none is passed will use default zone from the config. */
2421
+ zone?: Zone;
2422
+ /** Frontend ID. */
2423
+ frontendId: string;
2424
+ /**
2425
+ * List of ACLs for this frontend. Any other existing ACLs on this frontend
2426
+ * will be removed.
2427
+ */
2428
+ acls: AclSpec[];
2429
+ };
2430
+ export type ZonedApiSetBackendServersRequest = {
2431
+ /** Zone to target. If none is passed will use default zone from the config. */
2432
+ zone?: Zone;
2433
+ /** Backend ID. */
2434
+ backendId: string;
2435
+ /**
2436
+ * List of IP addresses for backend servers. Any other existing backend
2437
+ * servers will be removed.
2438
+ */
2439
+ serverIp: string[];
2440
+ };
2441
+ export type ZonedApiSubscribeToLbRequest = {
2442
+ /** Zone to target. If none is passed will use default zone from the config. */
2443
+ zone?: Zone;
2444
+ /** Load Balancer ID. */
2445
+ lbId: string;
2446
+ /** Subscriber ID. */
2447
+ subscriberId: string;
2448
+ };
2449
+ export type ZonedApiUnsubscribeFromLbRequest = {
2450
+ /** Zone to target. If none is passed will use default zone from the config. */
2451
+ zone?: Zone;
2452
+ /** Load Balancer ID. */
2453
+ lbId: string;
2454
+ };
2455
+ export type ZonedApiUpdateAclRequest = {
2456
+ /** Zone to target. If none is passed will use default zone from the config. */
2457
+ zone?: Zone;
2458
+ /** ACL ID. */
2459
+ aclId: string;
2460
+ /** ACL name. */
2461
+ name: string;
2462
+ /** Action to take when incoming traffic matches an ACL filter. */
2463
+ action: AclAction;
2464
+ /**
2465
+ * ACL match filter object. One of `ip_subnet` or `http_filter` &
2466
+ * `http_filter_value` are required.
2467
+ */
2468
+ match?: AclMatch;
2469
+ /**
2470
+ * Priority of this ACL (ACLs are applied in ascending order, 0 is the first
2471
+ * ACL executed).
2472
+ */
2473
+ index: number;
2474
+ /** ACL description. */
2475
+ description?: string;
2476
+ };
2477
+ export type ZonedApiUpdateBackendRequest = {
2478
+ /** Zone to target. If none is passed will use default zone from the config. */
2479
+ zone?: Zone;
2480
+ /** Backend ID. */
2481
+ backendId: string;
2482
+ /** Backend name. */
2483
+ name: string;
2484
+ /**
2485
+ * Protocol to be used by the backend when forwarding traffic to backend
2486
+ * servers.
2487
+ */
2488
+ forwardProtocol: Protocol;
2489
+ /** Port to be used by the backend when forwarding traffic to backend servers. */
2490
+ forwardPort: number;
2491
+ /**
2492
+ * Load balancing algorithm to be used when determining which backend server
2493
+ * to forward new traffic to.
2494
+ */
2495
+ forwardPortAlgorithm: ForwardPortAlgorithm;
2496
+ /**
2497
+ * Defines whether to activate sticky sessions (binding a particular session
2498
+ * to a particular backend server) and the method to use if so. None disables
2499
+ * sticky sessions. Cookie-based uses an HTTP cookie to stick a session to a
2500
+ * backend server. Table-based uses the source (client) IP address to stick a
2501
+ * session to a backend server.
2502
+ */
2503
+ stickySessions: StickySessionsType;
2504
+ /** Cookie name for cookie-based sticky sessions. */
2505
+ stickySessionsCookieName: string;
2506
+ /** @deprecated Deprecated in favor of proxy_protocol field. */
2507
+ sendProxyV2?: boolean;
2508
+ /** Maximum allowed time for a backend server to process a request. */
2509
+ timeoutServer?: string;
2510
+ /** Maximum allowed time for establishing a connection to a backend server. */
2511
+ timeoutConnect?: string;
2512
+ /**
2513
+ * Maximum allowed tunnel inactivity time after Websocket is established
2514
+ * (takes precedence over client and server timeout).
2515
+ */
2516
+ timeoutTunnel?: string;
2517
+ /** Action to take when a backend server is marked as down. */
2518
+ onMarkedDownAction?: OnMarkedDownAction;
2519
+ /**
2520
+ * Protocol to use between the Load Balancer and backend servers. Allows the
2521
+ * backend servers to be informed of the client's real IP address. The PROXY
2522
+ * protocol must be supported by the backend servers' software.
2523
+ */
2524
+ proxyProtocol?: ProxyProtocol;
2525
+ /**
2526
+ * Scaleway S3 bucket website to be served as failover if all backend servers
2527
+ * are down, e.g. failover-website.s3-website.fr-par.scw.cloud.
2528
+ */
2529
+ failoverHost?: string;
2530
+ /**
2531
+ * Defines whether to enable SSL bridging between the Load Balancer and
2532
+ * backend servers.
2533
+ */
2534
+ sslBridging?: boolean;
2535
+ /** Defines whether the server certificate verification should be ignored. */
2536
+ ignoreSslServerVerify?: boolean;
2537
+ /** Whether to use another backend server on each attempt. */
2538
+ redispatchAttemptCount?: number;
2539
+ /** Number of retries when a backend server connection failed. */
2540
+ maxRetries?: number;
2541
+ /** Maximum number of connections allowed per backend server. */
2542
+ maxConnections?: number;
2543
+ /**
2544
+ * Maximum time for a request to be left pending in queue when
2545
+ * `max_connections` is reached.
2546
+ */
2547
+ timeoutQueue?: string;
2548
+ };
2549
+ export type ZonedApiUpdateCertificateRequest = {
2550
+ /** Zone to target. If none is passed will use default zone from the config. */
2551
+ zone?: Zone;
2552
+ /** Certificate ID. */
2553
+ certificateId: string;
2554
+ /** Certificate name. */
2555
+ name: string;
2556
+ };
2557
+ export type ZonedApiUpdateFrontendRequest = {
2558
+ /** Zone to target. If none is passed will use default zone from the config. */
2559
+ zone?: Zone;
2560
+ /** Frontend ID. */
2561
+ frontendId: string;
2562
+ /** Frontend name. */
2563
+ name: string;
2564
+ /** Port the frontend should listen on. */
2565
+ inboundPort: number;
2566
+ /** Backend ID (ID of the backend the frontend should pass traffic to). */
2567
+ backendId: string;
2568
+ /** Maximum allowed inactivity time on the client side. */
2569
+ timeoutClient?: string;
2570
+ /** @deprecated Certificate ID, deprecated in favor of certificate_ids array. */
2571
+ certificateId?: string;
2572
+ /** List of SSL/TLS certificate IDs to bind to the frontend. */
2573
+ certificateIds?: string[];
2574
+ /** Defines whether to enable HTTP/3 protocol on the frontend. */
2575
+ enableHttp3: boolean;
2576
+ };
2577
+ export type ZonedApiUpdateHealthCheckRequest = {
2578
+ /** Zone to target. If none is passed will use default zone from the config. */
2579
+ zone?: Zone;
2580
+ /** Backend ID. */
2581
+ backendId: string;
2582
+ /** Port to use for the backend server health check. */
2583
+ port: number;
2584
+ /** Time to wait between two consecutive health checks. */
2585
+ checkDelay?: string;
2586
+ /** Maximum time a backend server has to reply to the health check. */
2587
+ checkTimeout?: string;
2588
+ /**
2589
+ * Number of consecutive unsuccessful health checks after which the server
2590
+ * will be considered dead.
2591
+ */
2592
+ checkMaxRetries: number;
2593
+ /** Defines whether proxy protocol should be activated for the health check. */
2594
+ checkSendProxy: boolean;
2595
+ /**
2596
+ * Object to configure a basic TCP health check.
2597
+ *
2598
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2599
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2600
+ * could be set.
2601
+ */
2602
+ tcpConfig?: HealthCheckTcpConfig;
2603
+ /**
2604
+ * Object to configure a MySQL health check. The check requires MySQL >=3.22,
2605
+ * for older versions, use a TCP health check.
2606
+ *
2607
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2608
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2609
+ * could be set.
2610
+ */
2611
+ mysqlConfig?: HealthCheckMysqlConfig;
2612
+ /**
2613
+ * Object to configure a PostgreSQL health check.
2614
+ *
2615
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2616
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2617
+ * could be set.
2618
+ */
2619
+ pgsqlConfig?: HealthCheckPgsqlConfig;
2620
+ /**
2621
+ * Object to configure an LDAP health check. The response is analyzed to find
2622
+ * the LDAPv3 response message.
2623
+ *
2624
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2625
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2626
+ * could be set.
2627
+ */
2628
+ ldapConfig?: HealthCheckLdapConfig;
2629
+ /**
2630
+ * Object to configure a Redis health check. The response is analyzed to find
2631
+ * the +PONG response message.
2632
+ *
2633
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2634
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2635
+ * could be set.
2636
+ */
2637
+ redisConfig?: HealthCheckRedisConfig;
2638
+ /**
2639
+ * Object to configure an HTTP health check.
2640
+ *
2641
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2642
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2643
+ * could be set.
2644
+ */
2645
+ httpConfig?: HealthCheckHttpConfig;
2646
+ /**
2647
+ * Object to configure an HTTPS health check.
2648
+ *
2649
+ * One-of ('config'): at most one of 'tcpConfig', 'mysqlConfig',
2650
+ * 'pgsqlConfig', 'ldapConfig', 'redisConfig', 'httpConfig', 'httpsConfig'
2651
+ * could be set.
2652
+ */
2653
+ httpsConfig?: HealthCheckHttpsConfig;
2654
+ /**
2655
+ * Time to wait between two consecutive health checks when a backend server is
2656
+ * in a transient state (going UP or DOWN).
2657
+ */
2658
+ transientCheckDelay?: string;
2659
+ };
2660
+ export type ZonedApiUpdateIpRequest = {
2661
+ /** Zone to target. If none is passed will use default zone from the config. */
2662
+ zone?: Zone;
2663
+ /** IP address ID. */
2664
+ ipId: string;
2665
+ /** Reverse DNS (domain name) for the IP address. */
2666
+ reverse?: string;
2667
+ /** ID of the server on which to attach the flexible IP. */
2668
+ lbId?: string;
2669
+ /** List of tags for the IP. */
2670
+ tags?: string[];
2671
+ };
2672
+ export type ZonedApiUpdateLbRequest = {
2673
+ /** Zone to target. If none is passed will use default zone from the config. */
2674
+ zone?: Zone;
2675
+ /** Load Balancer ID. */
2676
+ lbId: string;
2677
+ /** Load Balancer name. */
2678
+ name: string;
2679
+ /** Load Balancer description. */
2680
+ description: string;
2681
+ /** List of tags for the Load Balancer. */
2682
+ tags?: string[];
2683
+ /**
2684
+ * Determines the minimal SSL version which needs to be supported on the
2685
+ * client side, in an SSL/TLS offloading context. Intermediate is suitable for
2686
+ * general-purpose servers with a variety of clients, recommended for almost
2687
+ * all systems. Modern is suitable for services with clients that support TLS
2688
+ * 1.3 and don't need backward compatibility. Old is compatible with a small
2689
+ * number of very old clients and should be used only as a last resort.
2690
+ */
2691
+ sslCompatibilityLevel?: SSLCompatibilityLevel;
2692
+ };
2693
+ export type ZonedApiUpdateRouteRequest = {
2694
+ /** Zone to target. If none is passed will use default zone from the config. */
2695
+ zone?: Zone;
2696
+ /** Route ID. */
2697
+ routeId: string;
2698
+ /** ID of the target backend for the route. */
2699
+ backendId: string;
2700
+ /**
2701
+ * Object defining the match condition for a route to be applied. If an
2702
+ * incoming client session matches the specified condition (i.e. it has a
2703
+ * matching SNI value or HTTP Host header value), it will be passed to the
2704
+ * target backend.
2705
+ */
2706
+ match?: RouteMatch;
2707
+ };
2708
+ export type ZonedApiUpdateSubscriberRequest = {
2709
+ /** Zone to target. If none is passed will use default zone from the config. */
2710
+ zone?: Zone;
2711
+ /** Subscriber ID. */
2712
+ subscriberId: string;
2713
+ /** Subscriber name. */
2714
+ name: string;
2715
+ /**
2716
+ * Email address configuration.
2717
+ *
2718
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
2719
+ * set.
2720
+ */
2721
+ emailConfig?: SubscriberEmailConfig;
2722
+ /**
2723
+ * Webhook URI configuration.
2724
+ *
2725
+ * One-of ('config'): at most one of 'emailConfig', 'webhookConfig' could be
2726
+ * set.
2727
+ */
2728
+ webhookConfig?: SubscriberWebhookConfig;
2729
+ };