@distilled.cloud/stackit 1.0.0-rc.14 → 1.0.0-rc.16

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 (285) hide show
  1. package/lib/credentials.d.ts +2 -2
  2. package/lib/credentials.d.ts.map +1 -1
  3. package/lib/credentials.js +32 -28
  4. package/lib/credentials.js.map +1 -1
  5. package/lib/errors.d.ts +13 -13
  6. package/lib/errors.d.ts.map +1 -1
  7. package/lib/errors.js +16 -16
  8. package/lib/errors.js.map +1 -1
  9. package/lib/index.d.ts +2 -2
  10. package/lib/index.js +22 -22
  11. package/lib/pagination.d.ts +1 -1
  12. package/lib/pagination.js +15 -15
  13. package/lib/protocol.d.ts +3 -3
  14. package/lib/protocol.d.ts.map +1 -1
  15. package/lib/protocol.js +31 -29
  16. package/lib/protocol.js.map +1 -1
  17. package/lib/retry.d.ts +1 -1
  18. package/lib/retry.d.ts.map +1 -1
  19. package/lib/retry.js +24 -23
  20. package/lib/retry.js.map +1 -1
  21. package/lib/services/alb.d.ts +10 -87
  22. package/lib/services/alb.d.ts.map +1 -1
  23. package/lib/services/alb.js +73 -502
  24. package/lib/services/alb_waf.d.ts +9 -82
  25. package/lib/services/alb_waf.d.ts.map +1 -1
  26. package/lib/services/alb_waf.js +84 -510
  27. package/lib/services/authorization.d.ts +5 -47
  28. package/lib/services/authorization.d.ts.map +1 -1
  29. package/lib/services/authorization.js +67 -314
  30. package/lib/services/automation.d.ts +7 -47
  31. package/lib/services/automation.d.ts.map +1 -1
  32. package/lib/services/automation.js +58 -353
  33. package/lib/services/cdn.d.ts +8 -220
  34. package/lib/services/cdn.d.ts.map +1 -1
  35. package/lib/services/cdn.js +81 -896
  36. package/lib/services/certificates.d.ts +8 -27
  37. package/lib/services/certificates.d.ts.map +1 -1
  38. package/lib/services/certificates.js +45 -171
  39. package/lib/services/cost.d.ts +10 -37
  40. package/lib/services/cost.d.ts.map +1 -1
  41. package/lib/services/cost.js +39 -169
  42. package/lib/services/dns.d.ts +9 -104
  43. package/lib/services/dns.d.ts.map +1 -1
  44. package/lib/services/dns.js +98 -714
  45. package/lib/services/dremio.d.ts +8 -50
  46. package/lib/services/dremio.d.ts.map +1 -1
  47. package/lib/services/dremio.js +56 -307
  48. package/lib/services/edge.d.ts +7 -40
  49. package/lib/services/edge.d.ts.map +1 -1
  50. package/lib/services/edge.js +66 -347
  51. package/lib/services/functions.d.ts +1 -48
  52. package/lib/services/functions.d.ts.map +1 -1
  53. package/lib/services/functions.js +64 -393
  54. package/lib/services/git.d.ts +8 -61
  55. package/lib/services/git.d.ts.map +1 -1
  56. package/lib/services/git.js +87 -510
  57. package/lib/services/iaas.d.ts +9 -337
  58. package/lib/services/iaas.d.ts.map +1 -1
  59. package/lib/services/iaas.js +409 -3532
  60. package/lib/services/intake.d.ts +8 -75
  61. package/lib/services/intake.d.ts.map +1 -1
  62. package/lib/services/intake.js +74 -465
  63. package/lib/services/kms.d.ts +9 -92
  64. package/lib/services/kms.d.ts.map +1 -1
  65. package/lib/services/kms.js +95 -650
  66. package/lib/services/lb_ip_lists.d.ts +9 -25
  67. package/lib/services/lb_ip_lists.d.ts.map +1 -1
  68. package/lib/services/lb_ip_lists.js +45 -146
  69. package/lib/services/load_balancer.d.ts +10 -81
  70. package/lib/services/load_balancer.d.ts.map +1 -1
  71. package/lib/services/load_balancer.js +76 -486
  72. package/lib/services/logme.d.ts +8 -69
  73. package/lib/services/logme.d.ts.map +1 -1
  74. package/lib/services/logme.js +82 -564
  75. package/lib/services/logs.d.ts +8 -64
  76. package/lib/services/logs.d.ts.map +1 -1
  77. package/lib/services/logs.js +84 -465
  78. package/lib/services/mariadb.d.ts +8 -65
  79. package/lib/services/mariadb.d.ts.map +1 -1
  80. package/lib/services/mariadb.js +84 -541
  81. package/lib/services/model_experiments.d.ts +9 -48
  82. package/lib/services/model_experiments.d.ts.map +1 -1
  83. package/lib/services/model_experiments.js +66 -325
  84. package/lib/services/model_serving.d.ts +7 -47
  85. package/lib/services/model_serving.d.ts.map +1 -1
  86. package/lib/services/model_serving.js +55 -277
  87. package/lib/services/mongodb_flex.d.ts +8 -137
  88. package/lib/services/mongodb_flex.d.ts.map +1 -1
  89. package/lib/services/mongodb_flex.js +102 -793
  90. package/lib/services/object_storage.d.ts +12 -59
  91. package/lib/services/object_storage.d.ts.map +1 -1
  92. package/lib/services/object_storage.js +93 -528
  93. package/lib/services/observability.d.ts +8 -407
  94. package/lib/services/observability.d.ts.map +1 -1
  95. package/lib/services/observability.js +375 -3148
  96. package/lib/services/opensearch.d.ts +8 -71
  97. package/lib/services/opensearch.d.ts.map +1 -1
  98. package/lib/services/opensearch.js +85 -553
  99. package/lib/services/pim.d.ts +12 -108
  100. package/lib/services/pim.d.ts.map +1 -1
  101. package/lib/services/pim.js +81 -726
  102. package/lib/services/postgres_flex.d.ts +14 -136
  103. package/lib/services/postgres_flex.d.ts.map +1 -1
  104. package/lib/services/postgres_flex.js +114 -841
  105. package/lib/services/pubsub.d.ts +11 -73
  106. package/lib/services/pubsub.d.ts.map +1 -1
  107. package/lib/services/pubsub.js +92 -507
  108. package/lib/services/rabbitmq.d.ts +8 -76
  109. package/lib/services/rabbitmq.d.ts.map +1 -1
  110. package/lib/services/rabbitmq.js +88 -564
  111. package/lib/services/registry.d.ts +10 -28
  112. package/lib/services/registry.d.ts.map +1 -1
  113. package/lib/services/registry.js +49 -189
  114. package/lib/services/resource_manager.d.ts +9 -61
  115. package/lib/services/resource_manager.d.ts.map +1 -1
  116. package/lib/services/resource_manager.js +92 -462
  117. package/lib/services/run_command.d.ts +5 -28
  118. package/lib/services/run_command.d.ts.map +1 -1
  119. package/lib/services/run_command.js +38 -176
  120. package/lib/services/sca.d.ts +8 -79
  121. package/lib/services/sca.d.ts.map +1 -1
  122. package/lib/services/sca.js +63 -435
  123. package/lib/services/scf.d.ts +8 -64
  124. package/lib/services/scf.d.ts.map +1 -1
  125. package/lib/services/scf.js +99 -660
  126. package/lib/services/secrets_manager.d.ts +8 -61
  127. package/lib/services/secrets_manager.d.ts.map +1 -1
  128. package/lib/services/secrets_manager.js +99 -601
  129. package/lib/services/server_backup.d.ts +7 -50
  130. package/lib/services/server_backup.d.ts.map +1 -1
  131. package/lib/services/server_backup.js +70 -444
  132. package/lib/services/server_update.d.ts +7 -35
  133. package/lib/services/server_update.d.ts.map +1 -1
  134. package/lib/services/server_update.js +58 -342
  135. package/lib/services/service_account.d.ts +10 -68
  136. package/lib/services/service_account.d.ts.map +1 -1
  137. package/lib/services/service_account.js +75 -495
  138. package/lib/services/service_enablement.d.ts +7 -29
  139. package/lib/services/service_enablement.d.ts.map +1 -1
  140. package/lib/services/service_enablement.js +40 -147
  141. package/lib/services/sfs.d.ts +4 -96
  142. package/lib/services/sfs.d.ts.map +1 -1
  143. package/lib/services/sfs.js +117 -782
  144. package/lib/services/ske.d.ts +9 -108
  145. package/lib/services/ske.d.ts.map +1 -1
  146. package/lib/services/ske.js +67 -549
  147. package/lib/services/sqlserverflex.d.ts +11 -152
  148. package/lib/services/sqlserverflex.d.ts.map +1 -1
  149. package/lib/services/sqlserverflex.js +112 -925
  150. package/lib/services/stackit_marketplace.d.ts +9 -38
  151. package/lib/services/stackit_marketplace.d.ts.map +1 -1
  152. package/lib/services/stackit_marketplace.js +64 -369
  153. package/lib/services/telemetry_link.d.ts +8 -61
  154. package/lib/services/telemetry_link.d.ts.map +1 -1
  155. package/lib/services/telemetry_link.js +81 -522
  156. package/lib/services/telemetry_router.d.ts +8 -72
  157. package/lib/services/telemetry_router.d.ts.map +1 -1
  158. package/lib/services/telemetry_router.js +73 -474
  159. package/lib/services/ufw.d.ts +7 -42
  160. package/lib/services/ufw.d.ts.map +1 -1
  161. package/lib/services/ufw.js +55 -269
  162. package/lib/services/valkey.d.ts +8 -68
  163. package/lib/services/valkey.d.ts.map +1 -1
  164. package/lib/services/valkey.js +85 -557
  165. package/lib/services/vpn.d.ts +21 -186
  166. package/lib/services/vpn.d.ts.map +1 -1
  167. package/lib/services/vpn.js +105 -920
  168. package/lib/services/workflows.d.ts +15 -84
  169. package/lib/services/workflows.d.ts.map +1 -1
  170. package/lib/services/workflows.js +67 -497
  171. package/lib/traits.d.ts +1 -1
  172. package/lib/traits.js +10 -10
  173. package/package.json +13 -9
  174. package/src/credentials.ts +21 -18
  175. package/src/errors.ts +10 -14
  176. package/src/index.ts +2 -2
  177. package/src/pagination.ts +2 -2
  178. package/src/protocol.ts +12 -9
  179. package/src/retry.ts +6 -4
  180. package/src/services/alb.ts +599 -655
  181. package/src/services/alb_waf.ts +597 -637
  182. package/src/services/authorization.ts +400 -383
  183. package/src/services/automation.ts +422 -405
  184. package/src/services/cdn.ts +817 -1375
  185. package/src/services/certificates.ts +209 -190
  186. package/src/services/cost.ts +100 -207
  187. package/src/services/dns.ts +793 -833
  188. package/src/services/dremio.ts +356 -349
  189. package/src/services/edge.ts +406 -366
  190. package/src/services/functions.ts +465 -463
  191. package/src/services/git.ts +602 -547
  192. package/src/services/iaas.ts +3931 -3821
  193. package/src/services/intake.ts +521 -549
  194. package/src/services/kms.ts +715 -692
  195. package/src/services/lb_ip_lists.ts +173 -152
  196. package/src/services/load_balancer.ts +576 -619
  197. package/src/services/logme.ts +696 -641
  198. package/src/services/logs.ts +510 -493
  199. package/src/services/mariadb.ts +671 -604
  200. package/src/services/model_experiments.ts +343 -356
  201. package/src/services/model_serving.ts +337 -328
  202. package/src/services/mongodb_flex.ts +955 -1007
  203. package/src/services/object_storage.ts +614 -557
  204. package/src/services/observability.ts +3469 -3866
  205. package/src/services/opensearch.ts +679 -628
  206. package/src/services/pim.ts +672 -909
  207. package/src/services/postgres_flex.ts +966 -986
  208. package/src/services/pubsub.ts +524 -546
  209. package/src/services/rabbitmq.ts +693 -654
  210. package/src/services/registry.ts +227 -194
  211. package/src/services/resource_manager.ts +520 -517
  212. package/src/services/run_command.ts +219 -211
  213. package/src/services/sca.ts +543 -570
  214. package/src/services/scf.ts +790 -716
  215. package/src/services/secrets_manager.ts +707 -622
  216. package/src/services/server_backup.ts +490 -475
  217. package/src/services/server_update.ts +353 -356
  218. package/src/services/service_account.ts +515 -553
  219. package/src/services/service_enablement.ts +162 -166
  220. package/src/services/sfs.ts +879 -958
  221. package/src/services/ske.ts +694 -769
  222. package/src/services/sqlserverflex.ts +1042 -1117
  223. package/src/services/stackit_marketplace.ts +377 -372
  224. package/src/services/telemetry_link.ts +530 -531
  225. package/src/services/telemetry_router.ts +509 -534
  226. package/src/services/ufw.ts +305 -307
  227. package/src/services/valkey.ts +684 -629
  228. package/src/services/vpn.ts +935 -1195
  229. package/src/services/workflows.ts +426 -586
  230. package/src/traits.ts +1 -1
  231. package/lib/protocol.test.d.ts +0 -2
  232. package/lib/protocol.test.d.ts.map +0 -1
  233. package/lib/protocol.test.js +0 -181
  234. package/lib/protocol.test.js.map +0 -1
  235. package/lib/services/alb.js.map +0 -1
  236. package/lib/services/alb_waf.js.map +0 -1
  237. package/lib/services/authorization.js.map +0 -1
  238. package/lib/services/automation.js.map +0 -1
  239. package/lib/services/cdn.js.map +0 -1
  240. package/lib/services/certificates.js.map +0 -1
  241. package/lib/services/cost.js.map +0 -1
  242. package/lib/services/dns.js.map +0 -1
  243. package/lib/services/dremio.js.map +0 -1
  244. package/lib/services/edge.js.map +0 -1
  245. package/lib/services/functions.js.map +0 -1
  246. package/lib/services/git.js.map +0 -1
  247. package/lib/services/iaas.js.map +0 -1
  248. package/lib/services/intake.js.map +0 -1
  249. package/lib/services/kms.js.map +0 -1
  250. package/lib/services/lb_ip_lists.js.map +0 -1
  251. package/lib/services/load_balancer.js.map +0 -1
  252. package/lib/services/logme.js.map +0 -1
  253. package/lib/services/logs.js.map +0 -1
  254. package/lib/services/mariadb.js.map +0 -1
  255. package/lib/services/model_experiments.js.map +0 -1
  256. package/lib/services/model_serving.js.map +0 -1
  257. package/lib/services/mongodb_flex.js.map +0 -1
  258. package/lib/services/object_storage.js.map +0 -1
  259. package/lib/services/observability.js.map +0 -1
  260. package/lib/services/opensearch.js.map +0 -1
  261. package/lib/services/pim.js.map +0 -1
  262. package/lib/services/postgres_flex.js.map +0 -1
  263. package/lib/services/pubsub.js.map +0 -1
  264. package/lib/services/rabbitmq.js.map +0 -1
  265. package/lib/services/registry.js.map +0 -1
  266. package/lib/services/resource_manager.js.map +0 -1
  267. package/lib/services/run_command.js.map +0 -1
  268. package/lib/services/sca.js.map +0 -1
  269. package/lib/services/scf.js.map +0 -1
  270. package/lib/services/secrets_manager.js.map +0 -1
  271. package/lib/services/server_backup.js.map +0 -1
  272. package/lib/services/server_update.js.map +0 -1
  273. package/lib/services/service_account.js.map +0 -1
  274. package/lib/services/service_enablement.js.map +0 -1
  275. package/lib/services/sfs.js.map +0 -1
  276. package/lib/services/ske.js.map +0 -1
  277. package/lib/services/sqlserverflex.js.map +0 -1
  278. package/lib/services/stackit_marketplace.js.map +0 -1
  279. package/lib/services/telemetry_link.js.map +0 -1
  280. package/lib/services/telemetry_router.js.map +0 -1
  281. package/lib/services/ufw.js.map +0 -1
  282. package/lib/services/valkey.js.map +0 -1
  283. package/lib/services/vpn.js.map +0 -1
  284. package/lib/services/workflows.js.map +0 -1
  285. package/src/protocol.test.ts +0 -304
@@ -1,12 +1,15 @@
1
1
  import * as API from "@distilled.cloud/core/api";
2
2
  import * as C from "@distilled.cloud/core/category";
3
3
  // AUTO-GENERATED by scripts/generate.ts from .generated-specs (specs/spec-mirror-stackit). Do not edit.
4
- import * as S from "@distilled.cloud/core/schema";
5
- import * as Redacted from "effect/Redacted";
4
+ import * as S from "@distilled.cloud/core/schema-lite";
5
+ import * as __L from "@distilled.cloud/core/schema-lite";
6
+ import type * as Redacted from "effect/Redacted";
6
7
  import { UnknownStackitError } from "../errors.ts";
7
8
  import { StackitProtocol, type StackitOpError, type StackitOpContext } from "../protocol.ts";
8
9
  import * as Retry from "../retry.ts";
9
10
  import * as T from "../traits.ts";
11
+ // Schema table, filled on first reach (see __S at the end).
12
+ const __s: any[] = [];
10
13
 
11
14
  export type { StackitOpError, StackitOpContext };
12
15
 
@@ -56,23 +59,6 @@ export interface CreateCredentialsRequest {
56
59
  /** A valid username used for an existing STACKIT Observability instance, which is used during basic auth. */
57
60
  username?: string;
58
61
  }
59
- export const CreateCredentialsRequest = /*@__PURE__*/ S.suspend(() =>
60
- S.Struct({
61
- projectId: S.String.pipe(T.Label()),
62
- region: S.String.pipe(T.Label()),
63
- displayName: S.optional(S.String),
64
- password: S.optional(S.String.pipe(T.SensitiveValue({}))),
65
- username: S.optional(S.String),
66
- }).pipe(
67
- T.Http({
68
- method: "POST",
69
- uri: "/v2/projects/{projectId}/regions/{region}/credentials",
70
- code: 200,
71
- baseUrl: "https://load-balancer.api.stackit.cloud",
72
- }),
73
- ),
74
- ).annotate({ identifier: "CreateCredentialsRequest" }) as any as S.Schema<CreateCredentialsRequest>;
75
-
76
62
  export interface CredentialsResponse {
77
63
  /** The credentials reference can be used for observability of the Load Balancer. */
78
64
  credentialsRef?: string;
@@ -83,33 +69,11 @@ export interface CredentialsResponse {
83
69
  /** The username used for the STACKIT Observability instance */
84
70
  username?: string;
85
71
  }
86
- export const CredentialsResponse = /*@__PURE__*/ S.suspend(() =>
87
- S.Struct({
88
- credentialsRef: S.optional(S.String),
89
- displayName: S.optional(S.String),
90
- region: S.optional(S.String),
91
- username: S.optional(S.String),
92
- }),
93
- ).annotate({ identifier: "CredentialsResponse" }) as any as S.Schema<CredentialsResponse>;
94
-
95
72
  export interface CreateCredentialsResponse {
96
73
  credential?: CredentialsResponse;
97
74
  }
98
- export const CreateCredentialsResponse = /*@__PURE__*/ S.suspend(() =>
99
- S.Struct({
100
- credential: S.optional(CredentialsResponse),
101
- }),
102
- ).annotate({
103
- identifier: "CreateCredentialsResponse",
104
- }) as any as S.Schema<CreateCredentialsResponse>;
105
-
106
75
  /** Labels represent user-defined metadata as key-value pairs. Label count should not exceed 64 per LB. **Key Formatting Rules:** Length: 1-63 characters. Characters: Must begin and end with [a-zA-Z0-9]. May contain dashes (-), underscores (_), dots (.), and alphanumerics in between. Keys starting with 'stackit-' are system-reserved; users MUST NOT manage them. **Value Formatting Rules:** Length: 0-63 characters (empty string explicitly allowed). Characters (for non-empty values): Must begin and end with [a-zA-Z0-9]. May contain dashes (-), underscores (_), dots (.), and alphanumerics in between. */
107
76
  export type CreateLoadBalancerRequestLabelsMap = { [key: string]: string | undefined };
108
- export const CreateLoadBalancerRequestLabelsMap = /*@__PURE__*/ S.Record(
109
- S.String,
110
- S.String,
111
- ) as any as S.Schema<CreateLoadBalancerRequestLabelsMap>;
112
-
113
77
  /** Protocol is the highest network protocol we understand to load balance. Currently only PROTOCOL_TCP, PROTOCOL_TCP_PROXY and PROTOCOL_TLS_PASSTHROUGH are supported. */
114
78
  export type ListenerInputProtocol =
115
79
  | "PROTOCOL_UNSPECIFIED"
@@ -117,46 +81,22 @@ export type ListenerInputProtocol =
117
81
  | "PROTOCOL_UDP"
118
82
  | "PROTOCOL_TCP_PROXY"
119
83
  | "PROTOCOL_TLS_PASSTHROUGH";
120
- export const ListenerInputProtocol = S.String;
121
-
122
84
  export interface ServerNameIndicator {
123
85
  /** The domain name for this SNI config. */
124
86
  name?: string;
125
87
  }
126
- export const ServerNameIndicator = /*@__PURE__*/ S.suspend(() =>
127
- S.Struct({
128
- name: S.optional(S.String),
129
- }),
130
- ).annotate({ identifier: "ServerNameIndicator" }) as any as S.Schema<ServerNameIndicator>;
131
-
132
88
  /** Server Name Indicators config for domains to be routed to the desired target pool for this listener. */
133
89
  export type ListenerInputServerNameIndicatorsList = Array<ServerNameIndicator>;
134
- export const ListenerInputServerNameIndicatorsList = /*@__PURE__*/ S.Array(
135
- ServerNameIndicator,
136
- ) as any as S.Schema<ListenerInputServerNameIndicatorsList>;
137
-
138
90
  /** ProtocolOptionsTCP options to be configured for the PROTOCOL_TCP, PROTOCOL_TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH protocols. TCP options for the SNI listeners with the same port must be the same. */
139
91
  export interface OptionsTCP {
140
92
  /** The connection idle timeout to be used with the protocol. The default value is set to 5 minutes, and the maximum value is one hour. */
141
93
  idleTimeout?: string;
142
94
  }
143
- export const OptionsTCP = /*@__PURE__*/ S.suspend(() =>
144
- S.Struct({
145
- idleTimeout: S.optional(S.String),
146
- }),
147
- ).annotate({ identifier: "OptionsTCP" }) as any as S.Schema<OptionsTCP>;
148
-
149
95
  /** ProtocolOptionsUDP options to be configured for the PROTOCOL_UDP protocol. */
150
96
  export interface OptionsUDP {
151
97
  /** The connection idle timeout to be used with the protocol. The default value is set to 1 minute, and the maximum value is 2 minutes. */
152
98
  idleTimeout?: string;
153
99
  }
154
- export const OptionsUDP = /*@__PURE__*/ S.suspend(() =>
155
- S.Struct({
156
- idleTimeout: S.optional(S.String),
157
- }),
158
- ).annotate({ identifier: "OptionsUDP" }) as any as S.Schema<OptionsUDP>;
159
-
160
100
  export interface ListenerInput {
161
101
  displayName?: string;
162
102
  /** Port number where we listen for traffic */
@@ -170,112 +110,46 @@ export interface ListenerInput {
170
110
  tcp?: OptionsTCP;
171
111
  udp?: OptionsUDP;
172
112
  }
173
- export const ListenerInput = /*@__PURE__*/ S.suspend(() =>
174
- S.Struct({
175
- displayName: S.optional(S.String),
176
- port: S.optional(S.Number),
177
- protocol: S.optional(ListenerInputProtocol),
178
- serverNameIndicators: S.optional(ListenerInputServerNameIndicatorsList),
179
- targetPool: S.optional(S.String),
180
- tcp: S.optional(OptionsTCP),
181
- udp: S.optional(OptionsUDP),
182
- }),
183
- ).annotate({ identifier: "ListenerInput" }) as any as S.Schema<ListenerInput>;
184
-
185
113
  /** There is a maximum listener count of 20. Port and protocol limitations: - UDP listeners cannot have the same port. - TCP-derived listeners cannot have the same port. A TCP-derived listener is any listener that listens on a TCP port. As of now those are: TCP, TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH. The only exception is, if all listeners for the same port are PROTOCOL_TLS_PASSTHROUGH. - PROTOCOL_TLS_PASSTHROUGH listeners cannot have the same port and at least one common domain name. - PROTOCOL_TLS_PASSTHROUGH listeners can have the same domain name and different ports though (e.g. ports 443 and 8443 for domain example.com). - PROTOCOL_TLS_PASSTHROUGH listeners without a domain name serve as a default listener and you can have only one default listener. */
186
114
  export type CreateLoadBalancerRequestListenersList = Array<ListenerInput>;
187
- export const CreateLoadBalancerRequestListenersList = /*@__PURE__*/ S.Array(
188
- ListenerInput,
189
- ) as any as S.Schema<CreateLoadBalancerRequestListenersList>;
190
-
191
115
  /** The role defines how the load balancer is using the network. Currently only ROLE_LISTENERS_AND_TARGETS is supported. */
192
116
  export type NetworkRole =
193
117
  | "ROLE_UNSPECIFIED"
194
118
  | "ROLE_LISTENERS_AND_TARGETS"
195
119
  | "ROLE_LISTENERS"
196
120
  | "ROLE_TARGETS";
197
- export const NetworkRole = S.String;
198
-
199
121
  export interface Network {
200
122
  /** Openstack network ID */
201
123
  networkId?: string;
202
124
  /** The role defines how the load balancer is using the network. Currently only ROLE_LISTENERS_AND_TARGETS is supported. */
203
125
  role?: NetworkRole | (string & {});
204
126
  }
205
- export const Network = /*@__PURE__*/ S.suspend(() =>
206
- S.Struct({
207
- networkId: S.optional(S.String),
208
- role: S.optional(NetworkRole),
209
- }),
210
- ).annotate({ identifier: "Network" }) as any as S.Schema<Network>;
211
-
212
127
  /** List of networks that listeners and targets reside in. Currently limited to one. Not changeable after creation. */
213
128
  export type CreateLoadBalancerRequestNetworksList = Array<Network>;
214
- export const CreateLoadBalancerRequestNetworksList = /*@__PURE__*/ S.Array(
215
- Network,
216
- ) as any as S.Schema<CreateLoadBalancerRequestNetworksList>;
217
-
218
129
  /** Load Balancer is accessible only from an IP address in this range */
219
130
  export type LoadbalancerOptionAccessControlAllowedSourceRangesList = Array<string>;
220
- export const LoadbalancerOptionAccessControlAllowedSourceRangesList = /*@__PURE__*/ S.Array(
221
- S.String,
222
- ) as any as S.Schema<LoadbalancerOptionAccessControlAllowedSourceRangesList>;
223
-
224
131
  /** Use this option to limit the IP ranges that can use the load balancer. */
225
132
  export interface LoadbalancerOptionAccessControl {
226
133
  /** Load Balancer is accessible only from an IP address in this range */
227
134
  allowedSourceRanges?: LoadbalancerOptionAccessControlAllowedSourceRangesList;
228
135
  }
229
- export const LoadbalancerOptionAccessControl = /*@__PURE__*/ S.suspend(() =>
230
- S.Struct({
231
- allowedSourceRanges: S.optional(LoadbalancerOptionAccessControlAllowedSourceRangesList),
232
- }),
233
- ).annotate({
234
- identifier: "LoadbalancerOptionAccessControl",
235
- }) as any as S.Schema<LoadbalancerOptionAccessControl>;
236
-
237
136
  export interface LoadbalancerOptionLogs {
238
137
  /** Credentials reference for logging. This reference is created via the observability create endpoint and the credential needs to contain the basic auth username and password for the logging solution the push URL points to. Then this enables monitoring via remote write for the Load Balancer. */
239
138
  credentialsRef?: string;
240
139
  /** The Observability(Logs)/Loki remote write Push URL you want the logs to be shipped to. */
241
140
  pushUrl?: string;
242
141
  }
243
- export const LoadbalancerOptionLogs = /*@__PURE__*/ S.suspend(() =>
244
- S.Struct({
245
- credentialsRef: S.optional(S.String),
246
- pushUrl: S.optional(S.String),
247
- }),
248
- ).annotate({ identifier: "LoadbalancerOptionLogs" }) as any as S.Schema<LoadbalancerOptionLogs>;
249
-
250
142
  export interface LoadbalancerOptionMetrics {
251
143
  /** Credentials reference for metrics. This reference is created via the observability create endpoint and the credential needs to contain the basic auth username and password for the metrics solution the push URL points to. Then this enables monitoring via remote write for the Load Balancer. */
252
144
  credentialsRef?: string;
253
145
  /** The Observability(Metrics)/Prometheus remote write push URL you want the metrics to be shipped to. */
254
146
  pushUrl?: string;
255
147
  }
256
- export const LoadbalancerOptionMetrics = /*@__PURE__*/ S.suspend(() =>
257
- S.Struct({
258
- credentialsRef: S.optional(S.String),
259
- pushUrl: S.optional(S.String),
260
- }),
261
- ).annotate({
262
- identifier: "LoadbalancerOptionMetrics",
263
- }) as any as S.Schema<LoadbalancerOptionMetrics>;
264
-
265
148
  /** We offer Load Balancer observability via STACKIT Observability or external solutions. */
266
149
  export interface LoadbalancerOptionObservability {
267
150
  logs?: LoadbalancerOptionLogs;
268
151
  metrics?: LoadbalancerOptionMetrics;
269
152
  }
270
- export const LoadbalancerOptionObservability = /*@__PURE__*/ S.suspend(() =>
271
- S.Struct({
272
- logs: S.optional(LoadbalancerOptionLogs),
273
- metrics: S.optional(LoadbalancerOptionMetrics),
274
- }),
275
- ).annotate({
276
- identifier: "LoadbalancerOptionObservability",
277
- }) as any as S.Schema<LoadbalancerOptionObservability>;
278
-
279
153
  /** Defines any optional functionality you want to have enabled on your load balancer. */
280
154
  export interface LoadBalancerOptions {
281
155
  accessControl?: LoadbalancerOptionAccessControl;
@@ -284,21 +158,8 @@ export interface LoadBalancerOptions {
284
158
  /** Load Balancer is accessible only via a private network ip address. Not changeable after creation. */
285
159
  privateNetworkOnly?: boolean;
286
160
  }
287
- export const LoadBalancerOptions = /*@__PURE__*/ S.suspend(() =>
288
- S.Struct({
289
- accessControl: S.optional(LoadbalancerOptionAccessControl),
290
- ephemeralAddress: S.optional(S.Boolean),
291
- observability: S.optional(LoadbalancerOptionObservability),
292
- privateNetworkOnly: S.optional(S.Boolean),
293
- }),
294
- ).annotate({ identifier: "LoadBalancerOptions" }) as any as S.Schema<LoadBalancerOptions>;
295
-
296
161
  /** List of HTTP status codes that indicate a healthy response */
297
162
  export type HttpHealthChecksOkStatusesList = Array<string>;
298
- export const HttpHealthChecksOkStatusesList = /*@__PURE__*/ S.Array(
299
- S.String,
300
- ) as any as S.Schema<HttpHealthChecksOkStatusesList>;
301
-
302
163
  /** Set this to configure TLS settings. */
303
164
  export interface TlsConfig {
304
165
  /** Specifies a custom Certificate Authority (CA). When provided, the target pool will trust certificates signed by this CA, in addition to any system-trusted CAs. This is useful for scenarios where the target pool needs to communicate with servers using self-signed or internally-issued certificates. Enabled needs to be set to true and skip validation to false for this option. */
@@ -308,14 +169,6 @@ export interface TlsConfig {
308
169
  /** Bypass certificate validation for TLS bridging in this target pool. This option is insecure and can only be used with public CAs by setting enabled true. Meant to be used for testing purposes only! */
309
170
  skipCertificateValidation?: boolean;
310
171
  }
311
- export const TlsConfig = /*@__PURE__*/ S.suspend(() =>
312
- S.Struct({
313
- customCa: S.optional(S.String),
314
- enabled: S.optional(S.Boolean),
315
- skipCertificateValidation: S.optional(S.Boolean),
316
- }),
317
- ).annotate({ identifier: "TlsConfig" }) as any as S.Schema<TlsConfig>;
318
-
319
172
  /** Options for the HTTP health checking. */
320
173
  export interface HttpHealthChecks {
321
174
  /** List of HTTP status codes that indicate a healthy response */
@@ -324,14 +177,6 @@ export interface HttpHealthChecks {
324
177
  path?: string;
325
178
  tls?: TlsConfig;
326
179
  }
327
- export const HttpHealthChecks = /*@__PURE__*/ S.suspend(() =>
328
- S.Struct({
329
- okStatuses: S.optional(HttpHealthChecksOkStatusesList),
330
- path: S.optional(S.String),
331
- tls: S.optional(TlsConfig),
332
- }),
333
- ).annotate({ identifier: "HttpHealthChecks" }) as any as S.Schema<HttpHealthChecks>;
334
-
335
180
  export interface ActiveHealthCheck {
336
181
  /** Overrides the default port used for health check probes. */
337
182
  altPort?: number;
@@ -347,47 +192,18 @@ export interface ActiveHealthCheck {
347
192
  /** Unhealthy threshold of the health checking */
348
193
  unhealthyThreshold?: number;
349
194
  }
350
- export const ActiveHealthCheck = /*@__PURE__*/ S.suspend(() =>
351
- S.Struct({
352
- altPort: S.optional(S.Number),
353
- healthyThreshold: S.optional(S.Number),
354
- httpHealthChecks: S.optional(HttpHealthChecks),
355
- interval: S.optional(S.String),
356
- intervalJitter: S.optional(S.String),
357
- timeout: S.optional(S.String),
358
- unhealthyThreshold: S.optional(S.Number),
359
- }),
360
- ).annotate({ identifier: "ActiveHealthCheck" }) as any as S.Schema<ActiveHealthCheck>;
361
-
362
195
  export interface SessionPersistence {
363
196
  /** If enabled then all connections from one source IP address are redirected to the same target. This setting changes the load balancing algorithm to Maglev. */
364
197
  useSourceIpAddress?: boolean;
365
198
  }
366
- export const SessionPersistence = /*@__PURE__*/ S.suspend(() =>
367
- S.Struct({
368
- useSourceIpAddress: S.optional(S.Boolean),
369
- }),
370
- ).annotate({ identifier: "SessionPersistence" }) as any as S.Schema<SessionPersistence>;
371
-
372
199
  export interface Target {
373
200
  /** Target name */
374
201
  displayName?: string;
375
202
  /** Target IP. Must by unique within a target pool. */
376
203
  ip?: string;
377
204
  }
378
- export const Target = /*@__PURE__*/ S.suspend(() =>
379
- S.Struct({
380
- displayName: S.optional(S.String),
381
- ip: S.optional(S.String),
382
- }),
383
- ).annotate({ identifier: "Target" }) as any as S.Schema<Target>;
384
-
385
205
  /** List of all targets which will be used in the pool. Limited to 250. */
386
206
  export type TargetPoolTargetsList = Array<Target>;
387
- export const TargetPoolTargetsList = /*@__PURE__*/ S.Array(
388
- Target,
389
- ) as any as S.Schema<TargetPoolTargetsList>;
390
-
391
207
  export interface TargetPool {
392
208
  activeHealthCheck?: ActiveHealthCheck;
393
209
  /** Target pool name */
@@ -398,22 +214,8 @@ export interface TargetPool {
398
214
  /** List of all targets which will be used in the pool. Limited to 250. */
399
215
  targets?: TargetPoolTargetsList;
400
216
  }
401
- export const TargetPool = /*@__PURE__*/ S.suspend(() =>
402
- S.Struct({
403
- activeHealthCheck: S.optional(ActiveHealthCheck),
404
- name: S.optional(S.String),
405
- sessionPersistence: S.optional(SessionPersistence),
406
- targetPort: S.optional(S.Number),
407
- targets: S.optional(TargetPoolTargetsList),
408
- }),
409
- ).annotate({ identifier: "TargetPool" }) as any as S.Schema<TargetPool>;
410
-
411
217
  /** List of all target pools which will be used in the load balancer. Limited to 20. */
412
218
  export type CreateLoadBalancerRequestTargetPoolsList = Array<TargetPool>;
413
- export const CreateLoadBalancerRequestTargetPoolsList = /*@__PURE__*/ S.Array(
414
- TargetPool,
415
- ) as any as S.Schema<CreateLoadBalancerRequestTargetPoolsList>;
416
-
417
219
  export interface CreateLoadBalancerRequest {
418
220
  projectId: string;
419
221
  region: string;
@@ -437,32 +239,6 @@ export interface CreateLoadBalancerRequest {
437
239
  /** Load balancer resource version. Must be empty or unset for creating load balancers, non-empty for updating load balancers. Semantics: While retrieving load balancers, this is the current version of this load balancer resource that changes during updates of the load balancers. On updates this field specified the load balancer version you calculated your update for instead of the future version to enable concurrency safe updates. Update calls will then report the new version in their result as you would see with a load balancer retrieval call later. There exist no total order of the version, so you can only compare it for equality, but not for less/greater than another version. Since the creation of load balancer is always intended to create the first version of it, there should be no existing version. That's why this field must by empty of not present in that case. */
438
240
  version?: string;
439
241
  }
440
- export const CreateLoadBalancerRequest = /*@__PURE__*/ S.suspend(() =>
441
- S.Struct({
442
- projectId: S.String.pipe(T.Label()),
443
- region: S.String.pipe(T.Label()),
444
- disableTargetSecurityGroupAssignment: S.optional(S.Boolean),
445
- externalAddress: S.optional(S.String),
446
- labels: S.optional(CreateLoadBalancerRequestLabelsMap),
447
- listeners: S.optional(CreateLoadBalancerRequestListenersList),
448
- name: S.optional(S.String),
449
- networks: S.optional(CreateLoadBalancerRequestNetworksList),
450
- options: S.optional(LoadBalancerOptions),
451
- planId: S.optional(S.String),
452
- targetPools: S.optional(CreateLoadBalancerRequestTargetPoolsList),
453
- version: S.optional(S.String),
454
- }).pipe(
455
- T.Http({
456
- method: "POST",
457
- uri: "/v2/projects/{projectId}/regions/{region}/load-balancers",
458
- code: 200,
459
- baseUrl: "https://load-balancer.api.stackit.cloud",
460
- }),
461
- ),
462
- ).annotate({
463
- identifier: "CreateLoadBalancerRequest",
464
- }) as any as S.Schema<CreateLoadBalancerRequest>;
465
-
466
242
  /** The error type specifies which part of the load balancer encountered the error. I.e. the API will not check if a provided public IP is actually available in the project. Instead the load balancer with try to use the provided IP and if not available reports TYPE_FIP_NOT_CONFIGURED error or TYPE_FIP_NOT_FOUND if the IP was deleted. */
467
243
  export type LoadBalancerErrorType =
468
244
  | "TYPE_UNSPECIFIED"
@@ -478,34 +254,16 @@ export type LoadBalancerErrorType =
478
254
  | "TYPE_IP_EXHAUSTED"
479
255
  | "TYPE_DNS_NOT_CONFIGURED"
480
256
  | "TYPE_VM_PORT_NOT_CONFIGURED";
481
- export const LoadBalancerErrorType = S.String;
482
-
483
257
  export interface LoadBalancerError {
484
258
  /** The error description contains additional helpful user information to fix the error state of the load balancer. For example the IP 45.135.247.139 does not exist in the project, then the description will report: Floating IP "45.135.247.139" could not be found or if the IP was deleted then you will get a proper error message. */
485
259
  description?: string;
486
260
  /** The error type specifies which part of the load balancer encountered the error. I.e. the API will not check if a provided public IP is actually available in the project. Instead the load balancer with try to use the provided IP and if not available reports TYPE_FIP_NOT_CONFIGURED error or TYPE_FIP_NOT_FOUND if the IP was deleted. */
487
261
  type?: LoadBalancerErrorType;
488
262
  }
489
- export const LoadBalancerError = /*@__PURE__*/ S.suspend(() =>
490
- S.Struct({
491
- description: S.optional(S.String),
492
- type: S.optional(LoadBalancerErrorType),
493
- }),
494
- ).annotate({ identifier: "LoadBalancerError" }) as any as S.Schema<LoadBalancerError>;
495
-
496
263
  /** Reports all errors a load balancer has. */
497
264
  export type LoadBalancerErrorsList = Array<LoadBalancerError>;
498
- export const LoadBalancerErrorsList = /*@__PURE__*/ S.Array(
499
- LoadBalancerError,
500
- ) as any as S.Schema<LoadBalancerErrorsList>;
501
-
502
265
  /** Labels represent user-defined metadata as key-value pairs. Label count should not exceed 64 per LB. **Key Formatting Rules:** Length: 1-63 characters. Characters: Must begin and end with [a-zA-Z0-9]. May contain dashes (-), underscores (_), dots (.), and alphanumerics in between. Keys starting with 'stackit-' are system-reserved; users MUST NOT manage them. **Value Formatting Rules:** Length: 0-63 characters (empty string explicitly allowed). Characters (for non-empty values): Must begin and end with [a-zA-Z0-9]. May contain dashes (-), underscores (_), dots (.), and alphanumerics in between. */
503
266
  export type LoadBalancerLabelsMap = { [key: string]: string | undefined };
504
- export const LoadBalancerLabelsMap = /*@__PURE__*/ S.Record(
505
- S.String,
506
- S.String,
507
- ) as any as S.Schema<LoadBalancerLabelsMap>;
508
-
509
267
  /** Protocol is the highest network protocol we understand to load balance. Currently only PROTOCOL_TCP, PROTOCOL_TCP_PROXY and PROTOCOL_TLS_PASSTHROUGH are supported. */
510
268
  export type ListenerProtocol =
511
269
  | "PROTOCOL_UNSPECIFIED"
@@ -513,14 +271,8 @@ export type ListenerProtocol =
513
271
  | "PROTOCOL_UDP"
514
272
  | "PROTOCOL_TCP_PROXY"
515
273
  | "PROTOCOL_TLS_PASSTHROUGH";
516
- export const ListenerProtocol = S.String;
517
-
518
274
  /** Server Name Indicators config for domains to be routed to the desired target pool for this listener. */
519
275
  export type ListenerServerNameIndicatorsList = Array<ServerNameIndicator>;
520
- export const ListenerServerNameIndicatorsList = /*@__PURE__*/ S.Array(
521
- ServerNameIndicator,
522
- ) as any as S.Schema<ListenerServerNameIndicatorsList>;
523
-
524
276
  export interface Listener {
525
277
  displayName?: string;
526
278
  /** Will be used to reference a listener and will replace display name in the future. Currently uses <protocol>-<port> as the name if no display name is given. */
@@ -536,58 +288,24 @@ export interface Listener {
536
288
  tcp?: OptionsTCP;
537
289
  udp?: OptionsUDP;
538
290
  }
539
- export const Listener = /*@__PURE__*/ S.suspend(() =>
540
- S.Struct({
541
- displayName: S.optional(S.String),
542
- name: S.optional(S.String),
543
- port: S.optional(S.Number),
544
- protocol: S.optional(ListenerProtocol),
545
- serverNameIndicators: S.optional(ListenerServerNameIndicatorsList),
546
- targetPool: S.optional(S.String),
547
- tcp: S.optional(OptionsTCP),
548
- udp: S.optional(OptionsUDP),
549
- }),
550
- ).annotate({ identifier: "Listener" }) as any as S.Schema<Listener>;
551
-
552
291
  /** There is a maximum listener count of 20. Port and protocol limitations: - UDP listeners cannot have the same port. - TCP-derived listeners cannot have the same port. A TCP-derived listener is any listener that listens on a TCP port. As of now those are: TCP, TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH. The only exception is, if all listeners for the same port are PROTOCOL_TLS_PASSTHROUGH. - PROTOCOL_TLS_PASSTHROUGH listeners cannot have the same port and at least one common domain name. - PROTOCOL_TLS_PASSTHROUGH listeners can have the same domain name and different ports though (e.g. ports 443 and 8443 for domain example.com). - PROTOCOL_TLS_PASSTHROUGH listeners without a domain name serve as a default listener and you can have only one default listener. */
553
292
  export type LoadBalancerListenersList = Array<Listener>;
554
- export const LoadBalancerListenersList = /*@__PURE__*/ S.Array(
555
- Listener,
556
- ) as any as S.Schema<LoadBalancerListenersList>;
557
-
558
293
  export interface SecurityGroup {
559
294
  /** ID of the security Group */
560
295
  id?: string;
561
296
  /** Name of the security Group */
562
297
  name?: string;
563
298
  }
564
- export const SecurityGroup = /*@__PURE__*/ S.suspend(() =>
565
- S.Struct({
566
- id: S.optional(S.String),
567
- name: S.optional(S.String),
568
- }),
569
- ).annotate({ identifier: "SecurityGroup" }) as any as S.Schema<SecurityGroup>;
570
-
571
299
  /** List of networks that listeners and targets reside in. Currently limited to one. Not changeable after creation. */
572
300
  export type LoadBalancerNetworksList = Array<Network>;
573
- export const LoadBalancerNetworksList = /*@__PURE__*/ S.Array(
574
- Network,
575
- ) as any as S.Schema<LoadBalancerNetworksList>;
576
-
577
301
  export type LoadBalancerStatus =
578
302
  | "STATUS_UNSPECIFIED"
579
303
  | "STATUS_PENDING"
580
304
  | "STATUS_READY"
581
305
  | "STATUS_ERROR"
582
306
  | "STATUS_TERMINATING";
583
- export const LoadBalancerStatus = S.String;
584
-
585
307
  /** List of all target pools which will be used in the load balancer. Limited to 20. */
586
308
  export type LoadBalancerTargetPoolsList = Array<TargetPool>;
587
- export const LoadBalancerTargetPoolsList = /*@__PURE__*/ S.Array(
588
- TargetPool,
589
- ) as any as S.Schema<LoadBalancerTargetPoolsList>;
590
-
591
309
  export interface LoadBalancer2 {
592
310
  /** Disable target security group assignemt to allow targets outside of the given network. Connectivity to targets need to be ensured by the customer, including routing and Security Groups (targetSecurityGroup can be assigned). Not changeable after creation. */
593
311
  disableTargetSecurityGroupAssignment?: boolean;
@@ -620,150 +338,35 @@ export interface LoadBalancer2 {
620
338
  /** Load balancer resource version. Must be empty or unset for creating load balancers, non-empty for updating load balancers. Semantics: While retrieving load balancers, this is the current version of this load balancer resource that changes during updates of the load balancers. On updates this field specified the load balancer version you calculated your update for instead of the future version to enable concurrency safe updates. Update calls will then report the new version in their result as you would see with a load balancer retrieval call later. There exist no total order of the version, so you can only compare it for equality, but not for less/greater than another version. Since the creation of load balancer is always intended to create the first version of it, there should be no existing version. That's why this field must by empty of not present in that case. */
621
339
  version?: string;
622
340
  }
623
- export const LoadBalancer2 = /*@__PURE__*/ S.suspend(() =>
624
- S.Struct({
625
- disableTargetSecurityGroupAssignment: S.optional(S.Boolean),
626
- errors: S.optional(LoadBalancerErrorsList),
627
- externalAddress: S.optional(S.String),
628
- labels: S.optional(LoadBalancerLabelsMap),
629
- listeners: S.optional(LoadBalancerListenersList),
630
- loadBalancerSecurityGroup: S.optional(SecurityGroup),
631
- name: S.optional(S.String),
632
- networks: S.optional(LoadBalancerNetworksList),
633
- options: S.optional(LoadBalancerOptions),
634
- planId: S.optional(S.String),
635
- privateAddress: S.optional(S.String),
636
- region: S.optional(S.String),
637
- status: S.optional(LoadBalancerStatus),
638
- targetPools: S.optional(LoadBalancerTargetPoolsList),
639
- targetSecurityGroup: S.optional(SecurityGroup),
640
- version: S.optional(S.String),
641
- }),
642
- ).annotate({ identifier: "LoadBalancer2" }) as any as S.Schema<LoadBalancer2>;
643
-
644
341
  export interface DeleteCredentialsRequest {
645
342
  projectId: string;
646
343
  region: string;
647
344
  credentialsRef: string;
648
345
  }
649
- export const DeleteCredentialsRequest = /*@__PURE__*/ S.suspend(() =>
650
- S.Struct({
651
- projectId: S.String.pipe(T.Label()),
652
- region: S.String.pipe(T.Label()),
653
- credentialsRef: S.String.pipe(T.Label()),
654
- }).pipe(
655
- T.Http({
656
- method: "DELETE",
657
- uri: "/v2/projects/{projectId}/regions/{region}/credentials/{credentialsRef}",
658
- code: 200,
659
- baseUrl: "https://load-balancer.api.stackit.cloud",
660
- }),
661
- ),
662
- ).annotate({ identifier: "DeleteCredentialsRequest" }) as any as S.Schema<DeleteCredentialsRequest>;
663
-
664
346
  export type DeleteCredentialsResponse2 = unknown;
665
- export const DeleteCredentialsResponse2 = /*@__PURE__*/ S.suspend(() =>
666
- S.Unknown.pipe(T.RawResponseRoot()),
667
- ).annotate({
668
- identifier: "DeleteCredentialsResponse2",
669
- }) as any as S.Schema<DeleteCredentialsResponse2>;
670
-
671
347
  export interface DeleteLoadBalancerRequest {
672
348
  projectId: string;
673
349
  region: string;
674
350
  name: string;
675
351
  }
676
- export const DeleteLoadBalancerRequest = /*@__PURE__*/ S.suspend(() =>
677
- S.Struct({
678
- projectId: S.String.pipe(T.Label()),
679
- region: S.String.pipe(T.Label()),
680
- name: S.String.pipe(T.Label()),
681
- }).pipe(
682
- T.Http({
683
- method: "DELETE",
684
- uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}",
685
- code: 200,
686
- baseUrl: "https://load-balancer.api.stackit.cloud",
687
- }),
688
- ),
689
- ).annotate({
690
- identifier: "DeleteLoadBalancerRequest",
691
- }) as any as S.Schema<DeleteLoadBalancerRequest>;
692
-
693
352
  export type DeleteLoadBalancerResponse2 = unknown;
694
- export const DeleteLoadBalancerResponse2 = /*@__PURE__*/ S.suspend(() =>
695
- S.Unknown.pipe(T.RawResponseRoot()),
696
- ).annotate({
697
- identifier: "DeleteLoadBalancerResponse2",
698
- }) as any as S.Schema<DeleteLoadBalancerResponse2>;
699
-
700
353
  export interface GetCredentialsRequest {
701
354
  projectId: string;
702
355
  region: string;
703
356
  credentialsRef: string;
704
357
  }
705
- export const GetCredentialsRequest = /*@__PURE__*/ S.suspend(() =>
706
- S.Struct({
707
- projectId: S.String.pipe(T.Label()),
708
- region: S.String.pipe(T.Label()),
709
- credentialsRef: S.String.pipe(T.Label()),
710
- }).pipe(
711
- T.Http({
712
- method: "GET",
713
- uri: "/v2/projects/{projectId}/regions/{region}/credentials/{credentialsRef}",
714
- code: 200,
715
- baseUrl: "https://load-balancer.api.stackit.cloud",
716
- }),
717
- ),
718
- ).annotate({ identifier: "GetCredentialsRequest" }) as any as S.Schema<GetCredentialsRequest>;
719
-
720
358
  export interface GetCredentialsResponse {
721
359
  credential?: CredentialsResponse;
722
360
  }
723
- export const GetCredentialsResponse = /*@__PURE__*/ S.suspend(() =>
724
- S.Struct({
725
- credential: S.optional(CredentialsResponse),
726
- }),
727
- ).annotate({ identifier: "GetCredentialsResponse" }) as any as S.Schema<GetCredentialsResponse>;
728
-
729
361
  export interface GetLoadBalancerRequest {
730
362
  projectId: string;
731
363
  region: string;
732
364
  name: string;
733
365
  }
734
- export const GetLoadBalancerRequest = /*@__PURE__*/ S.suspend(() =>
735
- S.Struct({
736
- projectId: S.String.pipe(T.Label()),
737
- region: S.String.pipe(T.Label()),
738
- name: S.String.pipe(T.Label()),
739
- }).pipe(
740
- T.Http({
741
- method: "GET",
742
- uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}",
743
- code: 200,
744
- baseUrl: "https://load-balancer.api.stackit.cloud",
745
- }),
746
- ),
747
- ).annotate({ identifier: "GetLoadBalancerRequest" }) as any as S.Schema<GetLoadBalancerRequest>;
748
-
749
366
  export interface GetQuotaRequest {
750
367
  projectId: string;
751
368
  region: string;
752
369
  }
753
- export const GetQuotaRequest = /*@__PURE__*/ S.suspend(() =>
754
- S.Struct({
755
- projectId: S.String.pipe(T.Label()),
756
- region: S.String.pipe(T.Label()),
757
- }).pipe(
758
- T.Http({
759
- method: "GET",
760
- uri: "/v2/projects/{projectId}/regions/{region}/quota",
761
- code: 200,
762
- baseUrl: "https://load-balancer.api.stackit.cloud",
763
- }),
764
- ),
765
- ).annotate({ identifier: "GetQuotaRequest" }) as any as S.Schema<GetQuotaRequest>;
766
-
767
370
  export interface GetQuotaResponse {
768
371
  /** The maximum number of observability credentials that can be stored in this project. */
769
372
  maxCredentials?: number;
@@ -778,49 +381,14 @@ export interface GetQuotaResponse {
778
381
  /** The number of load balancing servers that are currently existing in this project. */
779
382
  usedLoadBalancers?: number;
780
383
  }
781
- export const GetQuotaResponse = /*@__PURE__*/ S.suspend(() =>
782
- S.Struct({
783
- maxCredentials: S.optional(S.Number),
784
- maxLoadBalancers: S.optional(S.Number),
785
- projectId: S.optional(S.String),
786
- region: S.optional(S.String),
787
- usedCredentials: S.optional(S.Number),
788
- usedLoadBalancers: S.optional(S.Number),
789
- }),
790
- ).annotate({ identifier: "GetQuotaResponse" }) as any as S.Schema<GetQuotaResponse>;
791
-
792
384
  export interface ListCredentialsRequest {
793
385
  projectId: string;
794
386
  region: string;
795
387
  }
796
- export const ListCredentialsRequest = /*@__PURE__*/ S.suspend(() =>
797
- S.Struct({
798
- projectId: S.String.pipe(T.Label()),
799
- region: S.String.pipe(T.Label()),
800
- }).pipe(
801
- T.Http({
802
- method: "GET",
803
- uri: "/v2/projects/{projectId}/regions/{region}/credentials",
804
- code: 200,
805
- baseUrl: "https://load-balancer.api.stackit.cloud",
806
- }),
807
- ),
808
- ).annotate({ identifier: "ListCredentialsRequest" }) as any as S.Schema<ListCredentialsRequest>;
809
-
810
388
  export type ListCredentialsResponseCredentialsList = Array<CredentialsResponse>;
811
- export const ListCredentialsResponseCredentialsList = /*@__PURE__*/ S.Array(
812
- CredentialsResponse,
813
- ) as any as S.Schema<ListCredentialsResponseCredentialsList>;
814
-
815
389
  export interface ListCredentialsResponse {
816
390
  credentials?: ListCredentialsResponseCredentialsList;
817
391
  }
818
- export const ListCredentialsResponse = /*@__PURE__*/ S.suspend(() =>
819
- S.Struct({
820
- credentials: S.optional(ListCredentialsResponseCredentialsList),
821
- }),
822
- ).annotate({ identifier: "ListCredentialsResponse" }) as any as S.Schema<ListCredentialsResponse>;
823
-
824
392
  export interface ListLoadBalancersRequest {
825
393
  projectId: string;
826
394
  region: string;
@@ -829,57 +397,15 @@ export interface ListLoadBalancersRequest {
829
397
  /** page_id is a page identifier returned by the previous response and is used to request the next page */
830
398
  pageId?: string;
831
399
  }
832
- export const ListLoadBalancersRequest = /*@__PURE__*/ S.suspend(() =>
833
- S.Struct({
834
- projectId: S.String.pipe(T.Label()),
835
- region: S.String.pipe(T.Label()),
836
- pageSize: S.optional(S.String.pipe(T.Query())),
837
- pageId: S.optional(S.String.pipe(T.Query())),
838
- }).pipe(
839
- T.Http({
840
- method: "GET",
841
- uri: "/v2/projects/{projectId}/regions/{region}/load-balancers",
842
- code: 200,
843
- baseUrl: "https://load-balancer.api.stackit.cloud",
844
- }),
845
- ),
846
- ).annotate({ identifier: "ListLoadBalancersRequest" }) as any as S.Schema<ListLoadBalancersRequest>;
847
-
848
400
  export type ListLoadBalancersResponseLoadBalancersList = Array<LoadBalancer2>;
849
- export const ListLoadBalancersResponseLoadBalancersList = /*@__PURE__*/ S.Array(
850
- LoadBalancer2,
851
- ) as any as S.Schema<ListLoadBalancersResponseLoadBalancersList>;
852
-
853
401
  export interface ListLoadBalancersResponse {
854
402
  loadBalancers?: ListLoadBalancersResponseLoadBalancersList;
855
403
  /** Continue token from the ListLoadBalancerResponse with Limit option */
856
404
  nextPageId?: string;
857
405
  }
858
- export const ListLoadBalancersResponse = /*@__PURE__*/ S.suspend(() =>
859
- S.Struct({
860
- loadBalancers: S.optional(ListLoadBalancersResponseLoadBalancersList),
861
- nextPageId: S.optional(S.String),
862
- }),
863
- ).annotate({
864
- identifier: "ListLoadBalancersResponse",
865
- }) as any as S.Schema<ListLoadBalancersResponse>;
866
-
867
406
  export interface ListPlansRequest {
868
407
  region: string;
869
408
  }
870
- export const ListPlansRequest = /*@__PURE__*/ S.suspend(() =>
871
- S.Struct({
872
- region: S.String.pipe(T.Label()),
873
- }).pipe(
874
- T.Http({
875
- method: "GET",
876
- uri: "/v2/regions/{region}/plans",
877
- code: 200,
878
- baseUrl: "https://load-balancer.api.stackit.cloud",
879
- }),
880
- ),
881
- ).annotate({ identifier: "ListPlansRequest" }) as any as S.Schema<ListPlansRequest>;
882
-
883
409
  export interface PlanDetails {
884
410
  /** Description */
885
411
  description?: string;
@@ -894,31 +420,10 @@ export interface PlanDetails {
894
420
  /** Region this Plan is available in */
895
421
  region?: string;
896
422
  }
897
- export const PlanDetails = /*@__PURE__*/ S.suspend(() =>
898
- S.Struct({
899
- description: S.optional(S.String),
900
- flavorName: S.optional(S.String),
901
- maxConnections: S.optional(S.Number),
902
- name: S.optional(S.String),
903
- planId: S.optional(S.String),
904
- region: S.optional(S.String),
905
- }),
906
- ).annotate({ identifier: "PlanDetails" }) as any as S.Schema<PlanDetails>;
907
-
908
423
  export type ListPlansResponseValidPlansList = Array<PlanDetails>;
909
- export const ListPlansResponseValidPlansList = /*@__PURE__*/ S.Array(
910
- PlanDetails,
911
- ) as any as S.Schema<ListPlansResponseValidPlansList>;
912
-
913
424
  export interface ListPlansResponse {
914
425
  validPlans?: ListPlansResponseValidPlansList;
915
426
  }
916
- export const ListPlansResponse = /*@__PURE__*/ S.suspend(() =>
917
- S.Struct({
918
- validPlans: S.optional(ListPlansResponseValidPlansList),
919
- }),
920
- ).annotate({ identifier: "ListPlansResponse" }) as any as S.Schema<ListPlansResponse>;
921
-
922
427
  export interface UpdateCredentialsRequest {
923
428
  projectId: string;
924
429
  region: string;
@@ -930,60 +435,17 @@ export interface UpdateCredentialsRequest {
930
435
  /** A valid username used for an existing STACKIT Observability instance, which is used during basic auth. */
931
436
  username?: string;
932
437
  }
933
- export const UpdateCredentialsRequest = /*@__PURE__*/ S.suspend(() =>
934
- S.Struct({
935
- projectId: S.String.pipe(T.Label()),
936
- region: S.String.pipe(T.Label()),
937
- credentialsRef: S.String.pipe(T.Label()),
938
- displayName: S.optional(S.String),
939
- password: S.optional(S.String.pipe(T.SensitiveValue({}))),
940
- username: S.optional(S.String),
941
- }).pipe(
942
- T.Http({
943
- method: "PUT",
944
- uri: "/v2/projects/{projectId}/regions/{region}/credentials/{credentialsRef}",
945
- code: 200,
946
- baseUrl: "https://load-balancer.api.stackit.cloud",
947
- }),
948
- ),
949
- ).annotate({ identifier: "UpdateCredentialsRequest" }) as any as S.Schema<UpdateCredentialsRequest>;
950
-
951
438
  export interface UpdateCredentialsResponse {
952
439
  credential?: CredentialsResponse;
953
440
  }
954
- export const UpdateCredentialsResponse = /*@__PURE__*/ S.suspend(() =>
955
- S.Struct({
956
- credential: S.optional(CredentialsResponse),
957
- }),
958
- ).annotate({
959
- identifier: "UpdateCredentialsResponse",
960
- }) as any as S.Schema<UpdateCredentialsResponse>;
961
-
962
441
  /** Labels represent user-defined metadata as key-value pairs. Label count should not exceed 64 per LB. **Key Formatting Rules:** Length: 1-63 characters. Characters: Must begin and end with [a-zA-Z0-9]. May contain dashes (-), underscores (_), dots (.), and alphanumerics in between. Keys starting with 'stackit-' are system-reserved; users MUST NOT manage them. **Value Formatting Rules:** Length: 0-63 characters (empty string explicitly allowed). Characters (for non-empty values): Must begin and end with [a-zA-Z0-9]. May contain dashes (-), underscores (_), dots (.), and alphanumerics in between. */
963
442
  export type UpdateLoadBalancerRequestLabelsMap = { [key: string]: string | undefined };
964
- export const UpdateLoadBalancerRequestLabelsMap = /*@__PURE__*/ S.Record(
965
- S.String,
966
- S.String,
967
- ) as any as S.Schema<UpdateLoadBalancerRequestLabelsMap>;
968
-
969
443
  /** There is a maximum listener count of 20. Port and protocol limitations: - UDP listeners cannot have the same port. - TCP-derived listeners cannot have the same port. A TCP-derived listener is any listener that listens on a TCP port. As of now those are: TCP, TCP_PROXY, and PROTOCOL_TLS_PASSTHROUGH. The only exception is, if all listeners for the same port are PROTOCOL_TLS_PASSTHROUGH. - PROTOCOL_TLS_PASSTHROUGH listeners cannot have the same port and at least one common domain name. - PROTOCOL_TLS_PASSTHROUGH listeners can have the same domain name and different ports though (e.g. ports 443 and 8443 for domain example.com). - PROTOCOL_TLS_PASSTHROUGH listeners without a domain name serve as a default listener and you can have only one default listener. */
970
444
  export type UpdateLoadBalancerRequestListenersList = Array<ListenerInput>;
971
- export const UpdateLoadBalancerRequestListenersList = /*@__PURE__*/ S.Array(
972
- ListenerInput,
973
- ) as any as S.Schema<UpdateLoadBalancerRequestListenersList>;
974
-
975
445
  /** List of networks that listeners and targets reside in. Currently limited to one. Not changeable after creation. */
976
446
  export type UpdateLoadBalancerRequestNetworksList = Array<Network>;
977
- export const UpdateLoadBalancerRequestNetworksList = /*@__PURE__*/ S.Array(
978
- Network,
979
- ) as any as S.Schema<UpdateLoadBalancerRequestNetworksList>;
980
-
981
447
  /** List of all target pools which will be used in the load balancer. Limited to 20. */
982
448
  export type UpdateLoadBalancerRequestTargetPoolsList = Array<TargetPool>;
983
- export const UpdateLoadBalancerRequestTargetPoolsList = /*@__PURE__*/ S.Array(
984
- TargetPool,
985
- ) as any as S.Schema<UpdateLoadBalancerRequestTargetPoolsList>;
986
-
987
449
  export interface UpdateLoadBalancerRequest {
988
450
  projectId: string;
989
451
  region: string;
@@ -1006,38 +468,8 @@ export interface UpdateLoadBalancerRequest {
1006
468
  /** Load balancer resource version. Must be empty or unset for creating load balancers, non-empty for updating load balancers. Semantics: While retrieving load balancers, this is the current version of this load balancer resource that changes during updates of the load balancers. On updates this field specified the load balancer version you calculated your update for instead of the future version to enable concurrency safe updates. Update calls will then report the new version in their result as you would see with a load balancer retrieval call later. There exist no total order of the version, so you can only compare it for equality, but not for less/greater than another version. Since the creation of load balancer is always intended to create the first version of it, there should be no existing version. That's why this field must by empty of not present in that case. */
1007
469
  version?: string;
1008
470
  }
1009
- export const UpdateLoadBalancerRequest = /*@__PURE__*/ S.suspend(() =>
1010
- S.Struct({
1011
- projectId: S.String.pipe(T.Label()),
1012
- region: S.String.pipe(T.Label()),
1013
- name: S.String.pipe(T.Label()),
1014
- disableTargetSecurityGroupAssignment: S.optional(S.Boolean),
1015
- externalAddress: S.optional(S.String),
1016
- labels: S.optional(UpdateLoadBalancerRequestLabelsMap),
1017
- listeners: S.optional(UpdateLoadBalancerRequestListenersList),
1018
- networks: S.optional(UpdateLoadBalancerRequestNetworksList),
1019
- options: S.optional(LoadBalancerOptions),
1020
- planId: S.optional(S.String),
1021
- targetPools: S.optional(UpdateLoadBalancerRequestTargetPoolsList),
1022
- version: S.optional(S.String),
1023
- }).pipe(
1024
- T.Http({
1025
- method: "PUT",
1026
- uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}",
1027
- code: 200,
1028
- baseUrl: "https://load-balancer.api.stackit.cloud",
1029
- }),
1030
- ),
1031
- ).annotate({
1032
- identifier: "UpdateLoadBalancerRequest",
1033
- }) as any as S.Schema<UpdateLoadBalancerRequest>;
1034
-
1035
471
  /** List of all targets which will be used in the pool. Limited to 250. */
1036
472
  export type UpdateTargetPoolRequestTargetsList = Array<Target>;
1037
- export const UpdateTargetPoolRequestTargetsList = /*@__PURE__*/ S.Array(
1038
- Target,
1039
- ) as any as S.Schema<UpdateTargetPoolRequestTargetsList>;
1040
-
1041
473
  export interface UpdateTargetPoolRequest {
1042
474
  projectId: string;
1043
475
  region: string;
@@ -1050,26 +482,6 @@ export interface UpdateTargetPoolRequest {
1050
482
  /** List of all targets which will be used in the pool. Limited to 250. */
1051
483
  targets?: UpdateTargetPoolRequestTargetsList;
1052
484
  }
1053
- export const UpdateTargetPoolRequest = /*@__PURE__*/ S.suspend(() =>
1054
- S.Struct({
1055
- projectId: S.String.pipe(T.Label()),
1056
- region: S.String.pipe(T.Label()),
1057
- name: S.String.pipe(T.Label()),
1058
- targetPoolName: S.String.pipe(T.Label()),
1059
- activeHealthCheck: S.optional(ActiveHealthCheck),
1060
- sessionPersistence: S.optional(SessionPersistence),
1061
- targetPort: S.optional(S.Number),
1062
- targets: S.optional(UpdateTargetPoolRequestTargetsList),
1063
- }).pipe(
1064
- T.Http({
1065
- method: "PUT",
1066
- uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}/target-pools/{targetPoolName}",
1067
- code: 200,
1068
- baseUrl: "https://load-balancer.api.stackit.cloud",
1069
- }),
1070
- ),
1071
- ).annotate({ identifier: "UpdateTargetPoolRequest" }) as any as S.Schema<UpdateTargetPoolRequest>;
1072
-
1073
485
  export type CreateCredentialsError = BadRequest | Forbidden | StackitOpError;
1074
486
  /** Create credentials for observability of the Load Balancer Created credentials can be stored and used for the load balancer observability. For example, when using STACKIT Observability, credentials first must be created for that STACKIT Observability instance (by using their API or the STACKIT Portal) and then can be provided to the load balancer by storing them with this endpoint. */
1075
487
  export const createCredentials: API.OperationMethod<
@@ -1078,8 +490,8 @@ export const createCredentials: API.OperationMethod<
1078
490
  CreateCredentialsError,
1079
491
  StackitOpContext
1080
492
  > = /*@__PURE__*/ API.make(() => ({
1081
- input: CreateCredentialsRequest,
1082
- output: CreateCredentialsResponse,
493
+ input: __S(224, __c7, 0) as any as S.Schema<CreateCredentialsRequest>,
494
+ output: __S(288, __c9, 0) as any as S.Schema<CreateCredentialsResponse>,
1083
495
  errors: [BadRequest, Forbidden, UnknownStackitError],
1084
496
  protocol: StackitProtocol,
1085
497
  retry: Retry.Retry,
@@ -1093,8 +505,8 @@ export const createLoadBalancer: API.OperationMethod<
1093
505
  CreateLoadBalancerError,
1094
506
  StackitOpContext
1095
507
  > = /*@__PURE__*/ API.make(() => ({
1096
- input: CreateLoadBalancerRequest,
1097
- output: LoadBalancer2,
508
+ input: __S(320, __c10, 0) as any as S.Schema<CreateLoadBalancerRequest>,
509
+ output: __S(400, __c12, 16) as any as S.Schema<LoadBalancer2>,
1098
510
  errors: [BadRequest, Forbidden, Conflict, UnknownStackitError],
1099
511
  protocol: StackitProtocol,
1100
512
  retry: Retry.Retry,
@@ -1108,8 +520,8 @@ export const deleteCredentials: API.OperationMethod<
1108
520
  DeleteCredentialsError,
1109
521
  StackitOpContext
1110
522
  > = /*@__PURE__*/ API.make(() => ({
1111
- input: DeleteCredentialsRequest,
1112
- output: DeleteCredentialsResponse2,
523
+ input: __S(448, __c14, 0) as any as S.Schema<DeleteCredentialsRequest>,
524
+ output: __S(480, __c15, 0) as any as S.Schema<DeleteCredentialsResponse2>,
1113
525
  errors: [BadRequest, Forbidden, UnknownStackitError],
1114
526
  protocol: StackitProtocol,
1115
527
  retry: Retry.Retry,
@@ -1123,8 +535,8 @@ export const deleteLoadBalancer: API.OperationMethod<
1123
535
  DeleteLoadBalancerError,
1124
536
  StackitOpContext
1125
537
  > = /*@__PURE__*/ API.make(() => ({
1126
- input: DeleteLoadBalancerRequest,
1127
- output: DeleteLoadBalancerResponse2,
538
+ input: __S(512, __c16, 0) as any as S.Schema<DeleteLoadBalancerRequest>,
539
+ output: __S(480, __c15, 0) as any as S.Schema<DeleteLoadBalancerResponse2>,
1128
540
  errors: [BadRequest, Forbidden, UnknownStackitError],
1129
541
  protocol: StackitProtocol,
1130
542
  retry: Retry.Retry,
@@ -1138,8 +550,8 @@ export const getCredentials: API.OperationMethod<
1138
550
  GetCredentialsError,
1139
551
  StackitOpContext
1140
552
  > = /*@__PURE__*/ API.make(() => ({
1141
- input: GetCredentialsRequest,
1142
- output: GetCredentialsResponse,
553
+ input: __S(544, __c17, 0) as any as S.Schema<GetCredentialsRequest>,
554
+ output: __S(288, __c9, 0) as any as S.Schema<GetCredentialsResponse>,
1143
555
  errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
1144
556
  protocol: StackitProtocol,
1145
557
  retry: Retry.Retry,
@@ -1153,8 +565,8 @@ export const getLoadBalancer: API.OperationMethod<
1153
565
  GetLoadBalancerError,
1154
566
  StackitOpContext
1155
567
  > = /*@__PURE__*/ API.make(() => ({
1156
- input: GetLoadBalancerRequest,
1157
- output: LoadBalancer2,
568
+ input: __S(576, __c18, 0) as any as S.Schema<GetLoadBalancerRequest>,
569
+ output: __S(400, __c12, 16) as any as S.Schema<LoadBalancer2>,
1158
570
  errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
1159
571
  protocol: StackitProtocol,
1160
572
  retry: Retry.Retry,
@@ -1168,8 +580,8 @@ export const getQuota: API.OperationMethod<
1168
580
  GetQuotaError,
1169
581
  StackitOpContext
1170
582
  > = /*@__PURE__*/ API.make(() => ({
1171
- input: GetQuotaRequest,
1172
- output: GetQuotaResponse,
583
+ input: __S(0, __c0, 0) as any as S.Schema<GetQuotaRequest>,
584
+ output: __S(1, __c0, 1) as any as S.Schema<GetQuotaResponse>,
1173
585
  errors: [BadRequest, Forbidden, UnknownStackitError],
1174
586
  protocol: StackitProtocol,
1175
587
  retry: Retry.Retry,
@@ -1183,8 +595,8 @@ export const listCredentials: API.OperationMethod<
1183
595
  ListCredentialsError,
1184
596
  StackitOpContext
1185
597
  > = /*@__PURE__*/ API.make(() => ({
1186
- input: ListCredentialsRequest,
1187
- output: ListCredentialsResponse,
598
+ input: __S(32, __c1, 0) as any as S.Schema<ListCredentialsRequest>,
599
+ output: __S(34, __c1, 2) as any as S.Schema<ListCredentialsResponse>,
1188
600
  errors: [BadRequest, Forbidden, UnknownStackitError],
1189
601
  protocol: StackitProtocol,
1190
602
  retry: Retry.Retry,
@@ -1198,8 +610,8 @@ export const listLoadBalancers: API.OperationMethod<
1198
610
  ListLoadBalancersError,
1199
611
  StackitOpContext
1200
612
  > = /*@__PURE__*/ API.make(() => ({
1201
- input: ListLoadBalancersRequest,
1202
- output: ListLoadBalancersResponse,
613
+ input: __S(64, __c2, 0) as any as S.Schema<ListLoadBalancersRequest>,
614
+ output: __S(66, __c2, 2) as any as S.Schema<ListLoadBalancersResponse>,
1203
615
  errors: [BadRequest, Forbidden, UnknownStackitError],
1204
616
  protocol: StackitProtocol,
1205
617
  retry: Retry.Retry,
@@ -1213,8 +625,8 @@ export const listPlans: API.OperationMethod<
1213
625
  ListPlansError,
1214
626
  StackitOpContext
1215
627
  > = /*@__PURE__*/ API.make(() => ({
1216
- input: ListPlansRequest,
1217
- output: ListPlansResponse,
628
+ input: __S(96, __c3, 0) as any as S.Schema<ListPlansRequest>,
629
+ output: __S(99, __c3, 3) as any as S.Schema<ListPlansResponse>,
1218
630
  errors: [BadRequest, Forbidden, UnknownStackitError],
1219
631
  protocol: StackitProtocol,
1220
632
  retry: Retry.Retry,
@@ -1228,8 +640,8 @@ export const updateCredentials: API.OperationMethod<
1228
640
  UpdateCredentialsError,
1229
641
  StackitOpContext
1230
642
  > = /*@__PURE__*/ API.make(() => ({
1231
- input: UpdateCredentialsRequest,
1232
- output: UpdateCredentialsResponse,
643
+ input: __S(128, __c4, 0) as any as S.Schema<UpdateCredentialsRequest>,
644
+ output: __S(288, __c9, 0) as any as S.Schema<UpdateCredentialsResponse>,
1233
645
  errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
1234
646
  protocol: StackitProtocol,
1235
647
  retry: Retry.Retry,
@@ -1243,8 +655,8 @@ export const updateLoadBalancer: API.OperationMethod<
1243
655
  UpdateLoadBalancerError,
1244
656
  StackitOpContext
1245
657
  > = /*@__PURE__*/ API.make(() => ({
1246
- input: UpdateLoadBalancerRequest,
1247
- output: LoadBalancer2,
658
+ input: __S(160, __c5, 0) as any as S.Schema<UpdateLoadBalancerRequest>,
659
+ output: __S(400, __c12, 16) as any as S.Schema<LoadBalancer2>,
1248
660
  errors: [BadRequest, Forbidden, Conflict, UnknownStackitError],
1249
661
  protocol: StackitProtocol,
1250
662
  retry: Retry.Retry,
@@ -1258,9 +670,554 @@ export const updateTargetPool: API.OperationMethod<
1258
670
  UpdateTargetPoolError,
1259
671
  StackitOpContext
1260
672
  > = /*@__PURE__*/ API.make(() => ({
1261
- input: UpdateTargetPoolRequest,
1262
- output: TargetPool,
673
+ input: __S(192, __c6, 0) as any as S.Schema<UpdateTargetPoolRequest>,
674
+ output: __S(423, __c13, 7) as any as S.Schema<TargetPool>,
1263
675
  errors: [BadRequest, Forbidden, UnknownStackitError],
1264
676
  protocol: StackitProtocol,
1265
677
  retry: Retry.Retry,
1266
678
  }));
679
+
680
+ // Schema builders: each runs one schema initializer, on that schema's first use.
681
+ function __c0(j: number): any {
682
+ switch (j) {
683
+ case 0:
684
+ return S.suspend(() =>
685
+ S.Struct({
686
+ projectId: S.String.pipe(T.Label()),
687
+ region: S.String.pipe(T.Label()),
688
+ }).pipe(
689
+ T.Http({
690
+ method: "GET",
691
+ uri: "/v2/projects/{projectId}/regions/{region}/quota",
692
+ code: 200,
693
+ baseUrl: "https://load-balancer.api.stackit.cloud",
694
+ }),
695
+ ),
696
+ ).annotate({ identifier: "GetQuotaRequest" });
697
+ case 1:
698
+ return S.suspend(() =>
699
+ S.Struct({
700
+ maxCredentials: S.optional(S.Number),
701
+ maxLoadBalancers: S.optional(S.Number),
702
+ projectId: S.optional(S.String),
703
+ region: S.optional(S.String),
704
+ usedCredentials: S.optional(S.Number),
705
+ usedLoadBalancers: S.optional(S.Number),
706
+ }),
707
+ ).annotate({ identifier: "GetQuotaResponse" });
708
+ }
709
+ }
710
+ function __c1(j: number): any {
711
+ switch (j) {
712
+ case 0:
713
+ return S.suspend(() =>
714
+ S.Struct({
715
+ projectId: S.String.pipe(T.Label()),
716
+ region: S.String.pipe(T.Label()),
717
+ }).pipe(
718
+ T.Http({
719
+ method: "GET",
720
+ uri: "/v2/projects/{projectId}/regions/{region}/credentials",
721
+ code: 200,
722
+ baseUrl: "https://load-balancer.api.stackit.cloud",
723
+ }),
724
+ ),
725
+ ).annotate({ identifier: "ListCredentialsRequest" });
726
+ case 1:
727
+ return S.Array(__S(256, __c8, 0));
728
+ case 2:
729
+ return S.suspend(() =>
730
+ S.Struct({
731
+ credentials: S.optional(__S(33, __c1, 1)),
732
+ }),
733
+ ).annotate({ identifier: "ListCredentialsResponse" });
734
+ }
735
+ }
736
+ function __c2(j: number): any {
737
+ switch (j) {
738
+ case 0:
739
+ return S.suspend(() =>
740
+ S.Struct({
741
+ projectId: S.String.pipe(T.Label()),
742
+ region: S.String.pipe(T.Label()),
743
+ pageSize: S.optional(S.String.pipe(T.Query())),
744
+ pageId: S.optional(S.String.pipe(T.Query())),
745
+ }).pipe(
746
+ T.Http({
747
+ method: "GET",
748
+ uri: "/v2/projects/{projectId}/regions/{region}/load-balancers",
749
+ code: 200,
750
+ baseUrl: "https://load-balancer.api.stackit.cloud",
751
+ }),
752
+ ),
753
+ ).annotate({ identifier: "ListLoadBalancersRequest" });
754
+ case 1:
755
+ return S.Array(__S(400, __c12, 16));
756
+ case 2:
757
+ return S.suspend(() =>
758
+ S.Struct({
759
+ loadBalancers: S.optional(__S(65, __c2, 1)),
760
+ nextPageId: S.optional(S.String),
761
+ }),
762
+ ).annotate({ identifier: "ListLoadBalancersResponse" });
763
+ }
764
+ }
765
+ function __c3(j: number): any {
766
+ switch (j) {
767
+ case 0:
768
+ return S.suspend(() =>
769
+ S.Struct({
770
+ region: S.String.pipe(T.Label()),
771
+ }).pipe(
772
+ T.Http({
773
+ method: "GET",
774
+ uri: "/v2/regions/{region}/plans",
775
+ code: 200,
776
+ baseUrl: "https://load-balancer.api.stackit.cloud",
777
+ }),
778
+ ),
779
+ ).annotate({ identifier: "ListPlansRequest" });
780
+ case 1:
781
+ return S.suspend(() =>
782
+ S.Struct({
783
+ description: S.optional(S.String),
784
+ flavorName: S.optional(S.String),
785
+ maxConnections: S.optional(S.Number),
786
+ name: S.optional(S.String),
787
+ planId: S.optional(S.String),
788
+ region: S.optional(S.String),
789
+ }),
790
+ ).annotate({ identifier: "PlanDetails" });
791
+ case 2:
792
+ return S.Array(__S(97, __c3, 1));
793
+ case 3:
794
+ return S.suspend(() =>
795
+ S.Struct({
796
+ validPlans: S.optional(__S(98, __c3, 2)),
797
+ }),
798
+ ).annotate({ identifier: "ListPlansResponse" });
799
+ }
800
+ }
801
+ function __c4(j: number): any {
802
+ switch (j) {
803
+ case 0:
804
+ return S.suspend(() =>
805
+ S.Struct({
806
+ projectId: S.String.pipe(T.Label()),
807
+ region: S.String.pipe(T.Label()),
808
+ credentialsRef: S.String.pipe(T.Label()),
809
+ displayName: S.optional(S.String),
810
+ password: S.optional(S.String.pipe(T.SensitiveValue({}))),
811
+ username: S.optional(S.String),
812
+ }).pipe(
813
+ T.Http({
814
+ method: "PUT",
815
+ uri: "/v2/projects/{projectId}/regions/{region}/credentials/{credentialsRef}",
816
+ code: 200,
817
+ baseUrl: "https://load-balancer.api.stackit.cloud",
818
+ }),
819
+ ),
820
+ ).annotate({ identifier: "UpdateCredentialsRequest" });
821
+ }
822
+ }
823
+ function __c5(j: number): any {
824
+ switch (j) {
825
+ case 0:
826
+ return S.suspend(() =>
827
+ S.Struct({
828
+ projectId: S.String.pipe(T.Label()),
829
+ region: S.String.pipe(T.Label()),
830
+ name: S.String.pipe(T.Label()),
831
+ disableTargetSecurityGroupAssignment: S.optional(S.Boolean),
832
+ externalAddress: S.optional(S.String),
833
+ labels: S.optional(__S(384, __c12, 0)),
834
+ listeners: S.optional(__S(353, __c11, 1)),
835
+ networks: S.optional(__S(389, __c12, 5)),
836
+ options: S.optional(__S(393, __c12, 9)),
837
+ planId: S.optional(S.String),
838
+ targetPools: S.optional(__S(394, __c12, 10)),
839
+ version: S.optional(S.String),
840
+ }).pipe(
841
+ T.Http({
842
+ method: "PUT",
843
+ uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}",
844
+ code: 200,
845
+ baseUrl: "https://load-balancer.api.stackit.cloud",
846
+ }),
847
+ ),
848
+ ).annotate({ identifier: "UpdateLoadBalancerRequest" });
849
+ }
850
+ }
851
+ function __c6(j: number): any {
852
+ switch (j) {
853
+ case 0:
854
+ return S.suspend(() =>
855
+ S.Struct({
856
+ projectId: S.String.pipe(T.Label()),
857
+ region: S.String.pipe(T.Label()),
858
+ name: S.String.pipe(T.Label()),
859
+ targetPoolName: S.String.pipe(T.Label()),
860
+ activeHealthCheck: S.optional(__S(419, __c13, 3)),
861
+ sessionPersistence: S.optional(__S(420, __c13, 4)),
862
+ targetPort: S.optional(S.Number),
863
+ targets: S.optional(__S(422, __c13, 6)),
864
+ }).pipe(
865
+ T.Http({
866
+ method: "PUT",
867
+ uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}/target-pools/{targetPoolName}",
868
+ code: 200,
869
+ baseUrl: "https://load-balancer.api.stackit.cloud",
870
+ }),
871
+ ),
872
+ ).annotate({ identifier: "UpdateTargetPoolRequest" });
873
+ }
874
+ }
875
+ function __c7(j: number): any {
876
+ switch (j) {
877
+ case 0:
878
+ return S.suspend(() =>
879
+ S.Struct({
880
+ projectId: S.String.pipe(T.Label()),
881
+ region: S.String.pipe(T.Label()),
882
+ displayName: S.optional(S.String),
883
+ password: S.optional(S.String.pipe(T.SensitiveValue({}))),
884
+ username: S.optional(S.String),
885
+ }).pipe(
886
+ T.Http({
887
+ method: "POST",
888
+ uri: "/v2/projects/{projectId}/regions/{region}/credentials",
889
+ code: 200,
890
+ baseUrl: "https://load-balancer.api.stackit.cloud",
891
+ }),
892
+ ),
893
+ ).annotate({ identifier: "CreateCredentialsRequest" });
894
+ }
895
+ }
896
+ function __c8(j: number): any {
897
+ switch (j) {
898
+ case 0:
899
+ return S.suspend(() =>
900
+ S.Struct({
901
+ credentialsRef: S.optional(S.String),
902
+ displayName: S.optional(S.String),
903
+ region: S.optional(S.String),
904
+ username: S.optional(S.String),
905
+ }),
906
+ ).annotate({ identifier: "CredentialsResponse" });
907
+ }
908
+ }
909
+ function __c9(j: number): any {
910
+ switch (j) {
911
+ case 0:
912
+ return S.suspend(() =>
913
+ S.Struct({
914
+ credential: S.optional(__S(256, __c8, 0)),
915
+ }),
916
+ ).annotate({ identifier: "CreateCredentialsResponse" });
917
+ }
918
+ }
919
+ function __c10(j: number): any {
920
+ switch (j) {
921
+ case 0:
922
+ return S.suspend(() =>
923
+ S.Struct({
924
+ projectId: S.String.pipe(T.Label()),
925
+ region: S.String.pipe(T.Label()),
926
+ disableTargetSecurityGroupAssignment: S.optional(S.Boolean),
927
+ externalAddress: S.optional(S.String),
928
+ labels: S.optional(__S(384, __c12, 0)),
929
+ listeners: S.optional(__S(353, __c11, 1)),
930
+ name: S.optional(S.String),
931
+ networks: S.optional(__S(389, __c12, 5)),
932
+ options: S.optional(__S(393, __c12, 9)),
933
+ planId: S.optional(S.String),
934
+ targetPools: S.optional(__S(394, __c12, 10)),
935
+ version: S.optional(S.String),
936
+ }).pipe(
937
+ T.Http({
938
+ method: "POST",
939
+ uri: "/v2/projects/{projectId}/regions/{region}/load-balancers",
940
+ code: 200,
941
+ baseUrl: "https://load-balancer.api.stackit.cloud",
942
+ }),
943
+ ),
944
+ ).annotate({ identifier: "CreateLoadBalancerRequest" });
945
+ }
946
+ }
947
+ function __c11(j: number): any {
948
+ switch (j) {
949
+ case 0:
950
+ return S.suspend(() =>
951
+ S.Struct({
952
+ displayName: S.optional(S.String),
953
+ port: S.optional(S.Number),
954
+ protocol: S.optional(S.String),
955
+ serverNameIndicators: S.optional(__S(386, __c12, 2)),
956
+ targetPool: S.optional(S.String),
957
+ tcp: S.optional(__S(387, __c12, 3)),
958
+ udp: S.optional(__S(387, __c12, 3)),
959
+ }),
960
+ ).annotate({ identifier: "ListenerInput" });
961
+ case 1:
962
+ return S.Array(__S(352, __c11, 0));
963
+ }
964
+ }
965
+ function __c12(j: number): any {
966
+ switch (j) {
967
+ case 0:
968
+ return S.Record(S.String, S.String);
969
+ case 1:
970
+ return S.suspend(() =>
971
+ S.Struct({
972
+ name: S.optional(S.String),
973
+ }),
974
+ ).annotate({ identifier: "ServerNameIndicator" });
975
+ case 2:
976
+ return S.Array(__S(385, __c12, 1));
977
+ case 3:
978
+ return S.suspend(() =>
979
+ S.Struct({
980
+ idleTimeout: S.optional(S.String),
981
+ }),
982
+ ).annotate({ identifier: "OptionsTCP" });
983
+ case 4:
984
+ return S.suspend(() =>
985
+ S.Struct({
986
+ networkId: S.optional(S.String),
987
+ role: S.optional(S.String),
988
+ }),
989
+ ).annotate({ identifier: "Network" });
990
+ case 5:
991
+ return S.Array(__S(388, __c12, 4));
992
+ case 6:
993
+ return S.suspend(() =>
994
+ S.Struct({
995
+ allowedSourceRanges: S.optional(__S(416, __c13, 0)),
996
+ }),
997
+ ).annotate({ identifier: "LoadbalancerOptionAccessControl" });
998
+ case 7:
999
+ return S.suspend(() =>
1000
+ S.Struct({
1001
+ credentialsRef: S.optional(S.String),
1002
+ pushUrl: S.optional(S.String),
1003
+ }),
1004
+ ).annotate({ identifier: "LoadbalancerOptionLogs" });
1005
+ case 8:
1006
+ return S.suspend(() =>
1007
+ S.Struct({
1008
+ logs: S.optional(__S(391, __c12, 7)),
1009
+ metrics: S.optional(__S(391, __c12, 7)),
1010
+ }),
1011
+ ).annotate({ identifier: "LoadbalancerOptionObservability" });
1012
+ case 9:
1013
+ return S.suspend(() =>
1014
+ S.Struct({
1015
+ accessControl: S.optional(__S(390, __c12, 6)),
1016
+ ephemeralAddress: S.optional(S.Boolean),
1017
+ observability: S.optional(__S(392, __c12, 8)),
1018
+ privateNetworkOnly: S.optional(S.Boolean),
1019
+ }),
1020
+ ).annotate({ identifier: "LoadBalancerOptions" });
1021
+ case 10:
1022
+ return S.Array(__S(423, __c13, 7));
1023
+ case 11:
1024
+ return S.suspend(() =>
1025
+ S.Struct({
1026
+ description: S.optional(S.String),
1027
+ type: S.optional(S.String),
1028
+ }),
1029
+ ).annotate({ identifier: "LoadBalancerError" });
1030
+ case 12:
1031
+ return S.Array(__S(395, __c12, 11));
1032
+ case 13:
1033
+ return S.suspend(() =>
1034
+ S.Struct({
1035
+ displayName: S.optional(S.String),
1036
+ name: S.optional(S.String),
1037
+ port: S.optional(S.Number),
1038
+ protocol: S.optional(S.String),
1039
+ serverNameIndicators: S.optional(__S(386, __c12, 2)),
1040
+ targetPool: S.optional(S.String),
1041
+ tcp: S.optional(__S(387, __c12, 3)),
1042
+ udp: S.optional(__S(387, __c12, 3)),
1043
+ }),
1044
+ ).annotate({ identifier: "Listener" });
1045
+ case 14:
1046
+ return S.Array(__S(397, __c12, 13));
1047
+ case 15:
1048
+ return S.suspend(() =>
1049
+ S.Struct({
1050
+ id: S.optional(S.String),
1051
+ name: S.optional(S.String),
1052
+ }),
1053
+ ).annotate({ identifier: "SecurityGroup" });
1054
+ case 16:
1055
+ return S.suspend(() =>
1056
+ S.Struct({
1057
+ disableTargetSecurityGroupAssignment: S.optional(S.Boolean),
1058
+ errors: S.optional(__S(396, __c12, 12)),
1059
+ externalAddress: S.optional(S.String),
1060
+ labels: S.optional(__S(384, __c12, 0)),
1061
+ listeners: S.optional(__S(398, __c12, 14)),
1062
+ loadBalancerSecurityGroup: S.optional(__S(399, __c12, 15)),
1063
+ name: S.optional(S.String),
1064
+ networks: S.optional(__S(389, __c12, 5)),
1065
+ options: S.optional(__S(393, __c12, 9)),
1066
+ planId: S.optional(S.String),
1067
+ privateAddress: S.optional(S.String),
1068
+ region: S.optional(S.String),
1069
+ status: S.optional(S.String),
1070
+ targetPools: S.optional(__S(394, __c12, 10)),
1071
+ targetSecurityGroup: S.optional(__S(399, __c12, 15)),
1072
+ version: S.optional(S.String),
1073
+ }),
1074
+ ).annotate({ identifier: "LoadBalancer2" });
1075
+ }
1076
+ }
1077
+ function __c13(j: number): any {
1078
+ switch (j) {
1079
+ case 0:
1080
+ return S.Array(S.String);
1081
+ case 1:
1082
+ return S.suspend(() =>
1083
+ S.Struct({
1084
+ customCa: S.optional(S.String),
1085
+ enabled: S.optional(S.Boolean),
1086
+ skipCertificateValidation: S.optional(S.Boolean),
1087
+ }),
1088
+ ).annotate({ identifier: "TlsConfig" });
1089
+ case 2:
1090
+ return S.suspend(() =>
1091
+ S.Struct({
1092
+ okStatuses: S.optional(__S(416, __c13, 0)),
1093
+ path: S.optional(S.String),
1094
+ tls: S.optional(__S(417, __c13, 1)),
1095
+ }),
1096
+ ).annotate({ identifier: "HttpHealthChecks" });
1097
+ case 3:
1098
+ return S.suspend(() =>
1099
+ S.Struct({
1100
+ altPort: S.optional(S.Number),
1101
+ healthyThreshold: S.optional(S.Number),
1102
+ httpHealthChecks: S.optional(__S(418, __c13, 2)),
1103
+ interval: S.optional(S.String),
1104
+ intervalJitter: S.optional(S.String),
1105
+ timeout: S.optional(S.String),
1106
+ unhealthyThreshold: S.optional(S.Number),
1107
+ }),
1108
+ ).annotate({ identifier: "ActiveHealthCheck" });
1109
+ case 4:
1110
+ return S.suspend(() =>
1111
+ S.Struct({
1112
+ useSourceIpAddress: S.optional(S.Boolean),
1113
+ }),
1114
+ ).annotate({ identifier: "SessionPersistence" });
1115
+ case 5:
1116
+ return S.suspend(() =>
1117
+ S.Struct({
1118
+ displayName: S.optional(S.String),
1119
+ ip: S.optional(S.String),
1120
+ }),
1121
+ ).annotate({ identifier: "Target" });
1122
+ case 6:
1123
+ return S.Array(__S(421, __c13, 5));
1124
+ case 7:
1125
+ return S.suspend(() =>
1126
+ S.Struct({
1127
+ activeHealthCheck: S.optional(__S(419, __c13, 3)),
1128
+ name: S.optional(S.String),
1129
+ sessionPersistence: S.optional(__S(420, __c13, 4)),
1130
+ targetPort: S.optional(S.Number),
1131
+ targets: S.optional(__S(422, __c13, 6)),
1132
+ }),
1133
+ ).annotate({ identifier: "TargetPool" });
1134
+ }
1135
+ }
1136
+ function __c14(j: number): any {
1137
+ switch (j) {
1138
+ case 0:
1139
+ return S.suspend(() =>
1140
+ S.Struct({
1141
+ projectId: S.String.pipe(T.Label()),
1142
+ region: S.String.pipe(T.Label()),
1143
+ credentialsRef: S.String.pipe(T.Label()),
1144
+ }).pipe(
1145
+ T.Http({
1146
+ method: "DELETE",
1147
+ uri: "/v2/projects/{projectId}/regions/{region}/credentials/{credentialsRef}",
1148
+ code: 200,
1149
+ baseUrl: "https://load-balancer.api.stackit.cloud",
1150
+ }),
1151
+ ),
1152
+ ).annotate({ identifier: "DeleteCredentialsRequest" });
1153
+ }
1154
+ }
1155
+ function __c15(j: number): any {
1156
+ switch (j) {
1157
+ case 0:
1158
+ return S.suspend(() => S.Unknown.pipe(T.RawResponseRoot())).annotate({
1159
+ identifier: "DeleteCredentialsResponse2",
1160
+ });
1161
+ }
1162
+ }
1163
+ function __c16(j: number): any {
1164
+ switch (j) {
1165
+ case 0:
1166
+ return S.suspend(() =>
1167
+ S.Struct({
1168
+ projectId: S.String.pipe(T.Label()),
1169
+ region: S.String.pipe(T.Label()),
1170
+ name: S.String.pipe(T.Label()),
1171
+ }).pipe(
1172
+ T.Http({
1173
+ method: "DELETE",
1174
+ uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}",
1175
+ code: 200,
1176
+ baseUrl: "https://load-balancer.api.stackit.cloud",
1177
+ }),
1178
+ ),
1179
+ ).annotate({ identifier: "DeleteLoadBalancerRequest" });
1180
+ }
1181
+ }
1182
+ function __c17(j: number): any {
1183
+ switch (j) {
1184
+ case 0:
1185
+ return S.suspend(() =>
1186
+ S.Struct({
1187
+ projectId: S.String.pipe(T.Label()),
1188
+ region: S.String.pipe(T.Label()),
1189
+ credentialsRef: S.String.pipe(T.Label()),
1190
+ }).pipe(
1191
+ T.Http({
1192
+ method: "GET",
1193
+ uri: "/v2/projects/{projectId}/regions/{region}/credentials/{credentialsRef}",
1194
+ code: 200,
1195
+ baseUrl: "https://load-balancer.api.stackit.cloud",
1196
+ }),
1197
+ ),
1198
+ ).annotate({ identifier: "GetCredentialsRequest" });
1199
+ }
1200
+ }
1201
+ function __c18(j: number): any {
1202
+ switch (j) {
1203
+ case 0:
1204
+ return S.suspend(() =>
1205
+ S.Struct({
1206
+ projectId: S.String.pipe(T.Label()),
1207
+ region: S.String.pipe(T.Label()),
1208
+ name: S.String.pipe(T.Label()),
1209
+ }).pipe(
1210
+ T.Http({
1211
+ method: "GET",
1212
+ uri: "/v2/projects/{projectId}/regions/{region}/load-balancers/{name}",
1213
+ code: 200,
1214
+ baseUrl: "https://load-balancer.api.stackit.cloud",
1215
+ }),
1216
+ ),
1217
+ ).annotate({ identifier: "GetLoadBalancerRequest" });
1218
+ }
1219
+ }
1220
+ // Schema table: entry i is schema j of builder f, made on first reach.
1221
+ function __S(i: number, f: (j: number) => unknown, j: number): any {
1222
+ return (__s[i] ??= __L.at(f, j));
1223
+ }