@distilled.cloud/stackit 0.0.0-stage → 1.0.0-rc.13

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 (298) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +33 -2
  3. package/lib/credentials.d.ts +29 -0
  4. package/lib/credentials.d.ts.map +1 -0
  5. package/lib/credentials.js +49 -0
  6. package/lib/credentials.js.map +1 -0
  7. package/lib/errors.d.ts +36 -0
  8. package/lib/errors.d.ts.map +1 -0
  9. package/lib/errors.js +26 -0
  10. package/lib/errors.js.map +1 -0
  11. package/lib/index.d.ts +30 -0
  12. package/lib/index.d.ts.map +1 -0
  13. package/lib/index.js +30 -0
  14. package/lib/index.js.map +1 -0
  15. package/lib/pagination.d.ts +9 -0
  16. package/lib/pagination.d.ts.map +1 -0
  17. package/lib/pagination.js +48 -0
  18. package/lib/pagination.js.map +1 -0
  19. package/lib/protocol.d.ts +32 -0
  20. package/lib/protocol.d.ts.map +1 -0
  21. package/lib/protocol.js +148 -0
  22. package/lib/protocol.js.map +1 -0
  23. package/lib/response-validation.test.d.ts +4 -0
  24. package/lib/response-validation.test.d.ts.map +1 -0
  25. package/lib/response-validation.test.js +31 -0
  26. package/lib/response-validation.test.js.map +1 -0
  27. package/lib/retry.d.ts +31 -0
  28. package/lib/retry.d.ts.map +1 -0
  29. package/lib/retry.js +31 -0
  30. package/lib/retry.js.map +1 -0
  31. package/lib/services/alb.d.ts +603 -0
  32. package/lib/services/alb.d.ts.map +1 -0
  33. package/lib/services/alb.js +562 -0
  34. package/lib/services/alb.js.map +1 -0
  35. package/lib/services/alb_waf.d.ts +526 -0
  36. package/lib/services/alb_waf.d.ts.map +1 -0
  37. package/lib/services/alb_waf.js +545 -0
  38. package/lib/services/alb_waf.js.map +1 -0
  39. package/lib/services/authorization.d.ts +251 -0
  40. package/lib/services/authorization.d.ts.map +1 -0
  41. package/lib/services/authorization.js +353 -0
  42. package/lib/services/authorization.js.map +1 -0
  43. package/lib/services/automation.d.ts +358 -0
  44. package/lib/services/automation.d.ts.map +1 -0
  45. package/lib/services/automation.js +426 -0
  46. package/lib/services/automation.js.map +1 -0
  47. package/lib/services/cdn.d.ts +1239 -0
  48. package/lib/services/cdn.d.ts.map +1 -0
  49. package/lib/services/cdn.js +992 -0
  50. package/lib/services/cdn.js.map +1 -0
  51. package/lib/services/certificates.d.ts +201 -0
  52. package/lib/services/certificates.d.ts.map +1 -0
  53. package/lib/services/certificates.js +197 -0
  54. package/lib/services/certificates.js.map +1 -0
  55. package/lib/services/cost.d.ts +222 -0
  56. package/lib/services/cost.d.ts.map +1 -0
  57. package/lib/services/cost.js +188 -0
  58. package/lib/services/cost.js.map +1 -0
  59. package/lib/services/dns.d.ts +875 -0
  60. package/lib/services/dns.d.ts.map +1 -0
  61. package/lib/services/dns.js +854 -0
  62. package/lib/services/dns.js.map +1 -0
  63. package/lib/services/dremio.d.ts +358 -0
  64. package/lib/services/dremio.d.ts.map +1 -0
  65. package/lib/services/dremio.js +339 -0
  66. package/lib/services/dremio.js.map +1 -0
  67. package/lib/services/edge.d.ts +312 -0
  68. package/lib/services/edge.d.ts.map +1 -0
  69. package/lib/services/edge.js +375 -0
  70. package/lib/services/edge.js.map +1 -0
  71. package/lib/services/functions.d.ts +409 -0
  72. package/lib/services/functions.d.ts.map +1 -0
  73. package/lib/services/functions.js +423 -0
  74. package/lib/services/functions.js.map +1 -0
  75. package/lib/services/git.d.ts +497 -0
  76. package/lib/services/git.d.ts.map +1 -0
  77. package/lib/services/git.js +552 -0
  78. package/lib/services/git.js.map +1 -0
  79. package/lib/services/iaas.d.ts +2965 -0
  80. package/lib/services/iaas.d.ts.map +1 -0
  81. package/lib/services/iaas.js +3768 -0
  82. package/lib/services/iaas.js.map +1 -0
  83. package/lib/services/index.d.ts +51 -0
  84. package/lib/services/index.d.ts.map +1 -0
  85. package/lib/services/index.js +52 -0
  86. package/lib/services/index.js.map +1 -0
  87. package/lib/services/intake.d.ts +555 -0
  88. package/lib/services/intake.d.ts.map +1 -0
  89. package/lib/services/intake.js +513 -0
  90. package/lib/services/intake.js.map +1 -0
  91. package/lib/services/kms.d.ts +654 -0
  92. package/lib/services/kms.d.ts.map +1 -0
  93. package/lib/services/kms.js +703 -0
  94. package/lib/services/kms.js.map +1 -0
  95. package/lib/services/lb_ip_lists.d.ts +162 -0
  96. package/lib/services/lb_ip_lists.d.ts.map +1 -0
  97. package/lib/services/lb_ip_lists.js +173 -0
  98. package/lib/services/lb_ip_lists.js.map +1 -0
  99. package/lib/services/load_balancer.d.ts +563 -0
  100. package/lib/services/load_balancer.d.ts.map +1 -0
  101. package/lib/services/load_balancer.js +542 -0
  102. package/lib/services/load_balancer.js.map +1 -0
  103. package/lib/services/logme.d.ts +516 -0
  104. package/lib/services/logme.d.ts.map +1 -0
  105. package/lib/services/logme.js +636 -0
  106. package/lib/services/logme.js.map +1 -0
  107. package/lib/services/logs.d.ts +436 -0
  108. package/lib/services/logs.d.ts.map +1 -0
  109. package/lib/services/logs.js +498 -0
  110. package/lib/services/logs.js.map +1 -0
  111. package/lib/services/mariadb.d.ts +479 -0
  112. package/lib/services/mariadb.d.ts.map +1 -0
  113. package/lib/services/mariadb.js +611 -0
  114. package/lib/services/mariadb.js.map +1 -0
  115. package/lib/services/model_experiments.d.ts +306 -0
  116. package/lib/services/model_experiments.d.ts.map +1 -0
  117. package/lib/services/model_experiments.js +356 -0
  118. package/lib/services/model_experiments.js.map +1 -0
  119. package/lib/services/model_serving.d.ts +289 -0
  120. package/lib/services/model_serving.d.ts.map +1 -0
  121. package/lib/services/model_serving.js +319 -0
  122. package/lib/services/model_serving.js.map +1 -0
  123. package/lib/services/mongodb_flex.d.ts +826 -0
  124. package/lib/services/mongodb_flex.d.ts.map +1 -0
  125. package/lib/services/mongodb_flex.js +889 -0
  126. package/lib/services/mongodb_flex.js.map +1 -0
  127. package/lib/services/object_storage.d.ts +446 -0
  128. package/lib/services/object_storage.d.ts.map +1 -0
  129. package/lib/services/object_storage.js +577 -0
  130. package/lib/services/object_storage.js.map +1 -0
  131. package/lib/services/observability.d.ts +2750 -0
  132. package/lib/services/observability.d.ts.map +1 -0
  133. package/lib/services/observability.js +3407 -0
  134. package/lib/services/observability.js.map +1 -0
  135. package/lib/services/opensearch.d.ts +505 -0
  136. package/lib/services/opensearch.d.ts.map +1 -0
  137. package/lib/services/opensearch.js +623 -0
  138. package/lib/services/opensearch.js.map +1 -0
  139. package/lib/services/pim.d.ts +997 -0
  140. package/lib/services/pim.d.ts.map +1 -0
  141. package/lib/services/pim.js +789 -0
  142. package/lib/services/pim.js.map +1 -0
  143. package/lib/services/postgres_flex.d.ts +854 -0
  144. package/lib/services/postgres_flex.d.ts.map +1 -0
  145. package/lib/services/postgres_flex.js +1018 -0
  146. package/lib/services/postgres_flex.js.map +1 -0
  147. package/lib/services/pubsub.d.ts +489 -0
  148. package/lib/services/pubsub.d.ts.map +1 -0
  149. package/lib/services/pubsub.js +614 -0
  150. package/lib/services/pubsub.js.map +1 -0
  151. package/lib/services/rabbitmq.d.ts +523 -0
  152. package/lib/services/rabbitmq.d.ts.map +1 -0
  153. package/lib/services/rabbitmq.js +636 -0
  154. package/lib/services/rabbitmq.js.map +1 -0
  155. package/lib/services/registry.d.ts +212 -0
  156. package/lib/services/registry.d.ts.map +1 -0
  157. package/lib/services/registry.js +221 -0
  158. package/lib/services/registry.js.map +1 -0
  159. package/lib/services/resource_manager.d.ts +458 -0
  160. package/lib/services/resource_manager.d.ts.map +1 -0
  161. package/lib/services/resource_manager.js +503 -0
  162. package/lib/services/resource_manager.js.map +1 -0
  163. package/lib/services/run_command.d.ts +175 -0
  164. package/lib/services/run_command.d.ts.map +1 -0
  165. package/lib/services/run_command.js +203 -0
  166. package/lib/services/run_command.js.map +1 -0
  167. package/lib/services/sca.d.ts +541 -0
  168. package/lib/services/sca.d.ts.map +1 -0
  169. package/lib/services/sca.js +478 -0
  170. package/lib/services/sca.js.map +1 -0
  171. package/lib/services/scf.d.ts +498 -0
  172. package/lib/services/scf.d.ts.map +1 -0
  173. package/lib/services/scf.js +718 -0
  174. package/lib/services/scf.js.map +1 -0
  175. package/lib/services/secrets_manager.d.ts +505 -0
  176. package/lib/services/secrets_manager.d.ts.map +1 -0
  177. package/lib/services/secrets_manager.js +659 -0
  178. package/lib/services/secrets_manager.js.map +1 -0
  179. package/lib/services/server_backup.d.ts +380 -0
  180. package/lib/services/server_backup.d.ts.map +1 -0
  181. package/lib/services/server_backup.js +474 -0
  182. package/lib/services/server_backup.js.map +1 -0
  183. package/lib/services/server_update.d.ts +292 -0
  184. package/lib/services/server_update.d.ts.map +1 -0
  185. package/lib/services/server_update.js +364 -0
  186. package/lib/services/server_update.js.map +1 -0
  187. package/lib/services/service_account.d.ts +465 -0
  188. package/lib/services/service_account.d.ts.map +1 -0
  189. package/lib/services/service_account.js +523 -0
  190. package/lib/services/service_account.js.map +1 -0
  191. package/lib/services/service_enablement.d.ts +149 -0
  192. package/lib/services/service_enablement.d.ts.map +1 -0
  193. package/lib/services/service_enablement.js +159 -0
  194. package/lib/services/service_enablement.js.map +1 -0
  195. package/lib/services/sfs.d.ts +721 -0
  196. package/lib/services/sfs.d.ts.map +1 -0
  197. package/lib/services/sfs.js +845 -0
  198. package/lib/services/sfs.js.map +1 -0
  199. package/lib/services/ske.d.ts +536 -0
  200. package/lib/services/ske.d.ts.map +1 -0
  201. package/lib/services/ske.js +598 -0
  202. package/lib/services/ske.js.map +1 -0
  203. package/lib/services/sqlserverflex.d.ts +956 -0
  204. package/lib/services/sqlserverflex.d.ts.map +1 -0
  205. package/lib/services/sqlserverflex.js +1087 -0
  206. package/lib/services/sqlserverflex.js.map +1 -0
  207. package/lib/services/stackit_marketplace.d.ts +288 -0
  208. package/lib/services/stackit_marketplace.d.ts.map +1 -0
  209. package/lib/services/stackit_marketplace.js +393 -0
  210. package/lib/services/stackit_marketplace.js.map +1 -0
  211. package/lib/services/telemetry_link.d.ts +443 -0
  212. package/lib/services/telemetry_link.d.ts.map +1 -0
  213. package/lib/services/telemetry_link.js +550 -0
  214. package/lib/services/telemetry_link.js.map +1 -0
  215. package/lib/services/telemetry_router.d.ts +493 -0
  216. package/lib/services/telemetry_router.d.ts.map +1 -0
  217. package/lib/services/telemetry_router.js +523 -0
  218. package/lib/services/telemetry_router.js.map +1 -0
  219. package/lib/services/ufw.d.ts +295 -0
  220. package/lib/services/ufw.d.ts.map +1 -0
  221. package/lib/services/ufw.js +301 -0
  222. package/lib/services/ufw.js.map +1 -0
  223. package/lib/services/valkey.d.ts +505 -0
  224. package/lib/services/valkey.d.ts.map +1 -0
  225. package/lib/services/valkey.js +627 -0
  226. package/lib/services/valkey.js.map +1 -0
  227. package/lib/services/vpn.d.ts +1024 -0
  228. package/lib/services/vpn.d.ts.map +1 -0
  229. package/lib/services/vpn.js +1013 -0
  230. package/lib/services/vpn.js.map +1 -0
  231. package/lib/services/workflows.d.ts +600 -0
  232. package/lib/services/workflows.d.ts.map +1 -0
  233. package/lib/services/workflows.js +556 -0
  234. package/lib/services/workflows.js.map +1 -0
  235. package/lib/traits.d.ts +24 -0
  236. package/lib/traits.d.ts.map +1 -0
  237. package/lib/traits.js +15 -0
  238. package/lib/traits.js.map +1 -0
  239. package/package.json +83 -3
  240. package/src/credentials.ts +90 -0
  241. package/src/errors.ts +50 -0
  242. package/src/index.ts +34 -0
  243. package/src/pagination.ts +73 -0
  244. package/src/protocol.ts +243 -0
  245. package/src/response-validation.test.ts +45 -0
  246. package/src/retry.ts +53 -0
  247. package/src/services/alb.ts +1409 -0
  248. package/src/services/alb_waf.ts +1347 -0
  249. package/src/services/authorization.ts +740 -0
  250. package/src/services/automation.ts +966 -0
  251. package/src/services/cdn.ts +2736 -0
  252. package/src/services/certificates.ts +450 -0
  253. package/src/services/cost.ts +484 -0
  254. package/src/services/dns.ts +2271 -0
  255. package/src/services/dremio.ts +803 -0
  256. package/src/services/edge.ts +839 -0
  257. package/src/services/functions.ts +1010 -0
  258. package/src/services/git.ts +1275 -0
  259. package/src/services/iaas.ts +8670 -0
  260. package/src/services/index.ts +51 -0
  261. package/src/services/intake.ts +1233 -0
  262. package/src/services/kms.ts +1638 -0
  263. package/src/services/lb_ip_lists.ts +377 -0
  264. package/src/services/load_balancer.ts +1342 -0
  265. package/src/services/logme.ts +1379 -0
  266. package/src/services/logs.ts +1150 -0
  267. package/src/services/mariadb.ts +1293 -0
  268. package/src/services/model_experiments.ts +797 -0
  269. package/src/services/model_serving.ts +697 -0
  270. package/src/services/mongodb_flex.ts +2078 -0
  271. package/src/services/object_storage.ts +1248 -0
  272. package/src/services/observability.ts +7856 -0
  273. package/src/services/opensearch.ts +1354 -0
  274. package/src/services/pim.ts +2090 -0
  275. package/src/services/postgres_flex.ts +2326 -0
  276. package/src/services/pubsub.ts +1336 -0
  277. package/src/services/rabbitmq.ts +1402 -0
  278. package/src/services/registry.ts +494 -0
  279. package/src/services/resource_manager.ts +1155 -0
  280. package/src/services/run_command.ts +441 -0
  281. package/src/services/sca.ts +1222 -0
  282. package/src/services/scf.ts +1537 -0
  283. package/src/services/secrets_manager.ts +1399 -0
  284. package/src/services/server_backup.ts +1032 -0
  285. package/src/services/server_update.ts +767 -0
  286. package/src/services/service_account.ts +1208 -0
  287. package/src/services/service_enablement.ts +359 -0
  288. package/src/services/sfs.ts +1913 -0
  289. package/src/services/ske.ts +1408 -0
  290. package/src/services/sqlserverflex.ts +2543 -0
  291. package/src/services/stackit_marketplace.ts +853 -0
  292. package/src/services/telemetry_link.ts +1245 -0
  293. package/src/services/telemetry_router.ts +1205 -0
  294. package/src/services/ufw.ts +704 -0
  295. package/src/services/valkey.ts +1357 -0
  296. package/src/services/vpn.ts +2554 -0
  297. package/src/services/workflows.ts +1361 -0
  298. package/src/traits.ts +65 -0
@@ -0,0 +1,966 @@
1
+ // AUTO-GENERATED by scripts/generate.ts from .generated-specs (specs/spec-mirror-stackit). Do not edit.
2
+ import * as S from "@distilled.cloud/core/schema";
3
+ import * as API from "@distilled.cloud/core/api";
4
+ import * as C from "@distilled.cloud/core/category";
5
+ import * as T from "../traits.ts";
6
+ import {
7
+ StackitProtocol,
8
+ type StackitOpError,
9
+ type StackitOpContext,
10
+ } from "../protocol.ts";
11
+ import { UnknownStackitError } from "../errors.ts";
12
+ import * as Retry from "../retry.ts";
13
+
14
+ export type { StackitOpError, StackitOpContext };
15
+
16
+ export class BadRequest
17
+ extends /*@__PURE__*/ T.applyErrorMatchers(
18
+ /*@__PURE__*/ S.TaggedError<BadRequest>()("BadRequest", {
19
+ code: S.Number,
20
+ message: S.String,
21
+ }).pipe(C.withBadRequestError),
22
+ [{ status: 400 }],
23
+ ) {}
24
+
25
+ export class Forbidden
26
+ extends /*@__PURE__*/ T.applyErrorMatchers(
27
+ /*@__PURE__*/ S.TaggedError<Forbidden>()("Forbidden", {
28
+ code: S.Number,
29
+ message: S.String,
30
+ }).pipe(C.withAuthError),
31
+ [{ status: 403 }],
32
+ ) {}
33
+
34
+ export class NotFound
35
+ extends /*@__PURE__*/ T.applyErrorMatchers(
36
+ /*@__PURE__*/ S.TaggedError<NotFound>()("NotFound", {
37
+ code: S.Number,
38
+ message: S.String,
39
+ }).pipe(C.withBadRequestError),
40
+ [{ status: 404 }],
41
+ ) {}
42
+
43
+ export type VolumeRecoveryPointManagementInputRecoveryPointLabelsMap = {
44
+ [key: string]: string | undefined;
45
+ };
46
+ export const VolumeRecoveryPointManagementInputRecoveryPointLabelsMap =
47
+ /*@__PURE__*/ S.Record(
48
+ S.String,
49
+ S.String,
50
+ ) as any as S.Schema<VolumeRecoveryPointManagementInputRecoveryPointLabelsMap>;
51
+
52
+ export type SnapshotRetentionPolicyCountKind = "count";
53
+ export const SnapshotRetentionPolicyCountKind = /*@__PURE__*/ S.String;
54
+
55
+ export interface SnapshotRetentionPolicyCount {
56
+ kind: SnapshotRetentionPolicyCountKind;
57
+ value: number;
58
+ }
59
+ export const SnapshotRetentionPolicyCount = /*@__PURE__*/ S.suspend(() =>
60
+ S.Struct({
61
+ kind: SnapshotRetentionPolicyCountKind,
62
+ value: S.Number,
63
+ }),
64
+ ).annotate({
65
+ identifier: "SnapshotRetentionPolicyCount",
66
+ }) as any as S.Schema<SnapshotRetentionPolicyCount>;
67
+
68
+ export type SnapshotRetentionPolicyIndefinitelyKind = "indefinitely";
69
+ export const SnapshotRetentionPolicyIndefinitelyKind = /*@__PURE__*/ S.String;
70
+
71
+ export interface SnapshotRetentionPolicyIndefinitely {
72
+ kind: SnapshotRetentionPolicyIndefinitelyKind;
73
+ }
74
+ export const SnapshotRetentionPolicyIndefinitely = /*@__PURE__*/ S.suspend(() =>
75
+ S.Struct({
76
+ kind: SnapshotRetentionPolicyIndefinitelyKind,
77
+ }),
78
+ ).annotate({
79
+ identifier: "SnapshotRetentionPolicyIndefinitely",
80
+ }) as any as S.Schema<SnapshotRetentionPolicyIndefinitely>;
81
+
82
+ export type SnapshotRetentionPolicy =
83
+ | SnapshotRetentionPolicyCount
84
+ | SnapshotRetentionPolicyIndefinitely;
85
+ export const SnapshotRetentionPolicy =
86
+ /*@__PURE__*/ S.Unknown as any as S.Schema<SnapshotRetentionPolicy>;
87
+
88
+ export interface VolumeRecoveryPointManagementInput {
89
+ inheritVolumeLabels?: boolean;
90
+ kind: string;
91
+ recoveryPointLabels?: VolumeRecoveryPointManagementInputRecoveryPointLabelsMap;
92
+ snapshotRetentionPolicy: SnapshotRetentionPolicy;
93
+ volumeLabelSelector?: string;
94
+ }
95
+ export const VolumeRecoveryPointManagementInput = /*@__PURE__*/ S.suspend(() =>
96
+ S.Struct({
97
+ inheritVolumeLabels: S.optional(S.Boolean),
98
+ kind: S.String,
99
+ recoveryPointLabels: S.optional(
100
+ VolumeRecoveryPointManagementInputRecoveryPointLabelsMap,
101
+ ),
102
+ snapshotRetentionPolicy: SnapshotRetentionPolicy,
103
+ volumeLabelSelector: S.optional(S.String),
104
+ }),
105
+ ).annotate({
106
+ identifier: "VolumeRecoveryPointManagementInput",
107
+ }) as any as S.Schema<VolumeRecoveryPointManagementInput>;
108
+
109
+ export interface AutomationScheduleTrigger {
110
+ /** An rrule (Recurrence Rule) is a standardized string format used in iCalendar (RFC 5545) to define repeating events, and you can generate one by using a dedicated library or by using online generator tools to specify parameters like frequency, interval, and end dates */
111
+ rrule: string;
112
+ }
113
+ export const AutomationScheduleTrigger = /*@__PURE__*/ S.suspend(() =>
114
+ S.Struct({
115
+ rrule: S.String,
116
+ }),
117
+ ).annotate({
118
+ identifier: "AutomationScheduleTrigger",
119
+ }) as any as S.Schema<AutomationScheduleTrigger>;
120
+
121
+ export interface AutomationTriggers {
122
+ schedule?: AutomationScheduleTrigger;
123
+ }
124
+ export const AutomationTriggers = /*@__PURE__*/ S.suspend(() =>
125
+ S.Struct({
126
+ schedule: S.optional(AutomationScheduleTrigger),
127
+ }),
128
+ ).annotate({
129
+ identifier: "AutomationTriggers",
130
+ }) as any as S.Schema<AutomationTriggers>;
131
+
132
+ export interface CreateVolumeAutomationRequest {
133
+ /** project Id */
134
+ projectId: string;
135
+ /** region */
136
+ region: string;
137
+ description?: string;
138
+ input?: VolumeRecoveryPointManagementInput;
139
+ name?: string;
140
+ templateId: string;
141
+ triggers?: AutomationTriggers;
142
+ }
143
+ export const CreateVolumeAutomationRequest = /*@__PURE__*/ S.suspend(() =>
144
+ S.Struct({
145
+ projectId: S.String.pipe(T.Label()),
146
+ region: S.String.pipe(T.Label()),
147
+ description: S.optional(S.String),
148
+ input: S.optional(VolumeRecoveryPointManagementInput),
149
+ name: S.optional(S.String),
150
+ templateId: S.String,
151
+ triggers: S.optional(AutomationTriggers),
152
+ }).pipe(
153
+ T.Http({
154
+ method: "POST",
155
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations",
156
+ code: 200,
157
+ baseUrl: "https://automation-service.api.stackit.cloud",
158
+ }),
159
+ ),
160
+ ).annotate({
161
+ identifier: "CreateVolumeAutomationRequest",
162
+ }) as any as S.Schema<CreateVolumeAutomationRequest>;
163
+
164
+ export type GetVolumeIDsResultVolumeIDsList = Array<string>;
165
+ export const GetVolumeIDsResultVolumeIDsList = /*@__PURE__*/ S.Array(
166
+ S.String,
167
+ ) as any as S.Schema<GetVolumeIDsResultVolumeIDsList>;
168
+
169
+ export interface GetVolumeIDsResult {
170
+ kind: string;
171
+ volumeIDs?: GetVolumeIDsResultVolumeIDsList;
172
+ }
173
+ export const GetVolumeIDsResult = /*@__PURE__*/ S.suspend(() =>
174
+ S.Struct({
175
+ kind: S.String,
176
+ volumeIDs: S.optional(GetVolumeIDsResultVolumeIDsList),
177
+ }),
178
+ ).annotate({
179
+ identifier: "GetVolumeIDsResult",
180
+ }) as any as S.Schema<GetVolumeIDsResult>;
181
+
182
+ export type CreateSnapshotsResultCreatedSnapshotIDsList = Array<string>;
183
+ export const CreateSnapshotsResultCreatedSnapshotIDsList =
184
+ /*@__PURE__*/ S.Array(
185
+ S.String,
186
+ ) as any as S.Schema<CreateSnapshotsResultCreatedSnapshotIDsList>;
187
+
188
+ export interface CreateSnapshotsResult {
189
+ createdSnapshotIDs?: CreateSnapshotsResultCreatedSnapshotIDsList;
190
+ kind: string;
191
+ }
192
+ export const CreateSnapshotsResult = /*@__PURE__*/ S.suspend(() =>
193
+ S.Struct({
194
+ createdSnapshotIDs: S.optional(CreateSnapshotsResultCreatedSnapshotIDsList),
195
+ kind: S.String,
196
+ }),
197
+ ).annotate({
198
+ identifier: "CreateSnapshotsResult",
199
+ }) as any as S.Schema<CreateSnapshotsResult>;
200
+
201
+ export type VolumeOutputStepResult = GetVolumeIDsResult | CreateSnapshotsResult;
202
+ export const VolumeOutputStepResult =
203
+ /*@__PURE__*/ S.Unknown as any as S.Schema<VolumeOutputStepResult>;
204
+
205
+ export interface VolumeOutputStep {
206
+ name: string;
207
+ result?: VolumeOutputStepResult;
208
+ }
209
+ export const VolumeOutputStep = /*@__PURE__*/ S.suspend(() =>
210
+ S.Struct({
211
+ name: S.String,
212
+ result: S.optional(VolumeOutputStepResult),
213
+ }),
214
+ ).annotate({
215
+ identifier: "VolumeOutputStep",
216
+ }) as any as S.Schema<VolumeOutputStep>;
217
+
218
+ export type VolumeOutputStepsList = Array<VolumeOutputStep>;
219
+ export const VolumeOutputStepsList = /*@__PURE__*/ S.Array(
220
+ VolumeOutputStep,
221
+ ) as any as S.Schema<VolumeOutputStepsList>;
222
+
223
+ export interface VolumeOutput {
224
+ steps?: VolumeOutputStepsList;
225
+ }
226
+ export const VolumeOutput = /*@__PURE__*/ S.suspend(() =>
227
+ S.Struct({
228
+ steps: S.optional(VolumeOutputStepsList),
229
+ }),
230
+ ).annotate({ identifier: "VolumeOutput" }) as any as S.Schema<VolumeOutput>;
231
+
232
+ export interface VolumeAutomation {
233
+ createTime: string;
234
+ description?: string;
235
+ id: string;
236
+ input?: VolumeRecoveryPointManagementInput;
237
+ name?: string;
238
+ output?: VolumeOutput;
239
+ templateId?: string;
240
+ triggers?: AutomationTriggers;
241
+ updateTime: string;
242
+ }
243
+ export const VolumeAutomation = /*@__PURE__*/ S.suspend(() =>
244
+ S.Struct({
245
+ createTime: S.String,
246
+ description: S.optional(S.String),
247
+ id: S.String,
248
+ input: S.optional(VolumeRecoveryPointManagementInput),
249
+ name: S.optional(S.String),
250
+ output: S.optional(VolumeOutput),
251
+ templateId: S.optional(S.String),
252
+ triggers: S.optional(AutomationTriggers),
253
+ updateTime: S.String,
254
+ }),
255
+ ).annotate({
256
+ identifier: "VolumeAutomation",
257
+ }) as any as S.Schema<VolumeAutomation>;
258
+
259
+ export interface CreateVolumeExecutionRequest {
260
+ /** project Id */
261
+ projectId: string;
262
+ /** region */
263
+ region: string;
264
+ /** automation Id */
265
+ automationId: string;
266
+ }
267
+ export const CreateVolumeExecutionRequest = /*@__PURE__*/ S.suspend(() =>
268
+ S.Struct({
269
+ projectId: S.String.pipe(T.Label()),
270
+ region: S.String.pipe(T.Label()),
271
+ automationId: S.String.pipe(T.Label()),
272
+ }).pipe(
273
+ T.Http({
274
+ method: "POST",
275
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/{automationId}/executions",
276
+ code: 200,
277
+ baseUrl: "https://automation-service.api.stackit.cloud",
278
+ }),
279
+ ),
280
+ ).annotate({
281
+ identifier: "CreateVolumeExecutionRequest",
282
+ }) as any as S.Schema<CreateVolumeExecutionRequest>;
283
+
284
+ export interface VolumeExecutionAutomation {
285
+ createTime: string;
286
+ description?: string;
287
+ input?: VolumeRecoveryPointManagementInput;
288
+ name?: string;
289
+ output?: VolumeOutput;
290
+ templateId?: string;
291
+ triggers?: AutomationTriggers;
292
+ updateTime: string;
293
+ }
294
+ export const VolumeExecutionAutomation = /*@__PURE__*/ S.suspend(() =>
295
+ S.Struct({
296
+ createTime: S.String,
297
+ description: S.optional(S.String),
298
+ input: S.optional(VolumeRecoveryPointManagementInput),
299
+ name: S.optional(S.String),
300
+ output: S.optional(VolumeOutput),
301
+ templateId: S.optional(S.String),
302
+ triggers: S.optional(AutomationTriggers),
303
+ updateTime: S.String,
304
+ }),
305
+ ).annotate({
306
+ identifier: "VolumeExecutionAutomation",
307
+ }) as any as S.Schema<VolumeExecutionAutomation>;
308
+
309
+ export type VolumeExecutionOutputStepStatus =
310
+ | "PENDING"
311
+ | "RUNNING"
312
+ | "FAILED"
313
+ | "SUCCESSFUL";
314
+ export const VolumeExecutionOutputStepStatus = /*@__PURE__*/ S.String;
315
+
316
+ export interface VolumeExecutionOutputStep {
317
+ message?: string;
318
+ name: string;
319
+ result?: VolumeOutputStepResult;
320
+ status: VolumeExecutionOutputStepStatus;
321
+ }
322
+ export const VolumeExecutionOutputStep = /*@__PURE__*/ S.suspend(() =>
323
+ S.Struct({
324
+ message: S.optional(S.String),
325
+ name: S.String,
326
+ result: S.optional(VolumeOutputStepResult),
327
+ status: VolumeExecutionOutputStepStatus,
328
+ }),
329
+ ).annotate({
330
+ identifier: "VolumeExecutionOutputStep",
331
+ }) as any as S.Schema<VolumeExecutionOutputStep>;
332
+
333
+ export type VolumeExecutionOutputStepsList = Array<VolumeExecutionOutputStep>;
334
+ export const VolumeExecutionOutputStepsList = /*@__PURE__*/ S.Array(
335
+ VolumeExecutionOutputStep,
336
+ ) as any as S.Schema<VolumeExecutionOutputStepsList>;
337
+
338
+ export interface VolumeExecutionOutput {
339
+ steps?: VolumeExecutionOutputStepsList;
340
+ }
341
+ export const VolumeExecutionOutput = /*@__PURE__*/ S.suspend(() =>
342
+ S.Struct({
343
+ steps: S.optional(VolumeExecutionOutputStepsList),
344
+ }),
345
+ ).annotate({
346
+ identifier: "VolumeExecutionOutput",
347
+ }) as any as S.Schema<VolumeExecutionOutput>;
348
+
349
+ export interface VolumeExecutionDetails {
350
+ config: VolumeExecutionAutomation;
351
+ output?: VolumeExecutionOutput;
352
+ }
353
+ export const VolumeExecutionDetails = /*@__PURE__*/ S.suspend(() =>
354
+ S.Struct({
355
+ config: VolumeExecutionAutomation,
356
+ output: S.optional(VolumeExecutionOutput),
357
+ }),
358
+ ).annotate({
359
+ identifier: "VolumeExecutionDetails",
360
+ }) as any as S.Schema<VolumeExecutionDetails>;
361
+
362
+ export type VolumeExecutionResponseStatus =
363
+ | "PENDING"
364
+ | "RUNNING"
365
+ | "COMPLETED"
366
+ | "FAILED"
367
+ | "TERMINATED";
368
+ export const VolumeExecutionResponseStatus = /*@__PURE__*/ S.String;
369
+
370
+ export interface VolumeExecutionResponse {
371
+ automation?: VolumeExecutionDetails;
372
+ createTime: string;
373
+ endTime?: string;
374
+ id: string;
375
+ status: VolumeExecutionResponseStatus;
376
+ }
377
+ export const VolumeExecutionResponse = /*@__PURE__*/ S.suspend(() =>
378
+ S.Struct({
379
+ automation: S.optional(VolumeExecutionDetails),
380
+ createTime: S.String,
381
+ endTime: S.optional(S.String),
382
+ id: S.String,
383
+ status: VolumeExecutionResponseStatus,
384
+ }),
385
+ ).annotate({
386
+ identifier: "VolumeExecutionResponse",
387
+ }) as any as S.Schema<VolumeExecutionResponse>;
388
+
389
+ export interface DeleteVolumeAutomationRequest {
390
+ /** project Id */
391
+ projectId: string;
392
+ /** region */
393
+ region: string;
394
+ /** automation Id */
395
+ automationId: string;
396
+ }
397
+ export const DeleteVolumeAutomationRequest = /*@__PURE__*/ S.suspend(() =>
398
+ S.Struct({
399
+ projectId: S.String.pipe(T.Label()),
400
+ region: S.String.pipe(T.Label()),
401
+ automationId: S.String.pipe(T.Label()),
402
+ }).pipe(
403
+ T.Http({
404
+ method: "DELETE",
405
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/{automationId}",
406
+ code: 200,
407
+ baseUrl: "https://automation-service.api.stackit.cloud",
408
+ }),
409
+ ),
410
+ ).annotate({
411
+ identifier: "DeleteVolumeAutomationRequest",
412
+ }) as any as S.Schema<DeleteVolumeAutomationRequest>;
413
+
414
+ export interface DeleteVolumeAutomationResponse {}
415
+ export const DeleteVolumeAutomationResponse = /*@__PURE__*/ S.suspend(() =>
416
+ S.Struct({}),
417
+ ).annotate({
418
+ identifier: "DeleteVolumeAutomationResponse",
419
+ }) as any as S.Schema<DeleteVolumeAutomationResponse>;
420
+
421
+ export interface GetVolumeAutomationRequest {
422
+ /** project Id */
423
+ projectId: string;
424
+ /** region */
425
+ region: string;
426
+ /** automation Id */
427
+ automationId: string;
428
+ }
429
+ export const GetVolumeAutomationRequest = /*@__PURE__*/ S.suspend(() =>
430
+ S.Struct({
431
+ projectId: S.String.pipe(T.Label()),
432
+ region: S.String.pipe(T.Label()),
433
+ automationId: S.String.pipe(T.Label()),
434
+ }).pipe(
435
+ T.Http({
436
+ method: "GET",
437
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/{automationId}",
438
+ code: 200,
439
+ baseUrl: "https://automation-service.api.stackit.cloud",
440
+ }),
441
+ ),
442
+ ).annotate({
443
+ identifier: "GetVolumeAutomationRequest",
444
+ }) as any as S.Schema<GetVolumeAutomationRequest>;
445
+
446
+ export interface GetVolumeExecutionRequest {
447
+ /** project Id */
448
+ projectId: string;
449
+ /** region */
450
+ region: string;
451
+ /** automation Id */
452
+ automationId: string;
453
+ /** execution Id */
454
+ executionId: string;
455
+ }
456
+ export const GetVolumeExecutionRequest = /*@__PURE__*/ S.suspend(() =>
457
+ S.Struct({
458
+ projectId: S.String.pipe(T.Label()),
459
+ region: S.String.pipe(T.Label()),
460
+ automationId: S.String.pipe(T.Label()),
461
+ executionId: S.String.pipe(T.Label()),
462
+ }).pipe(
463
+ T.Http({
464
+ method: "GET",
465
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/{automationId}/executions/{executionId}",
466
+ code: 200,
467
+ baseUrl: "https://automation-service.api.stackit.cloud",
468
+ }),
469
+ ),
470
+ ).annotate({
471
+ identifier: "GetVolumeExecutionRequest",
472
+ }) as any as S.Schema<GetVolumeExecutionRequest>;
473
+
474
+ export interface GetVolumeTemplateRequest {
475
+ /** project Id */
476
+ projectId: string;
477
+ /** region */
478
+ region: string;
479
+ /** templateId Id */
480
+ templateId: string;
481
+ }
482
+ export const GetVolumeTemplateRequest = /*@__PURE__*/ S.suspend(() =>
483
+ S.Struct({
484
+ projectId: S.String.pipe(T.Label()),
485
+ region: S.String.pipe(T.Label()),
486
+ templateId: S.String.pipe(T.Label()),
487
+ }).pipe(
488
+ T.Http({
489
+ method: "GET",
490
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/templates/{templateId}",
491
+ code: 200,
492
+ baseUrl: "https://automation-service.api.stackit.cloud",
493
+ }),
494
+ ),
495
+ ).annotate({
496
+ identifier: "GetVolumeTemplateRequest",
497
+ }) as any as S.Schema<GetVolumeTemplateRequest>;
498
+
499
+ export type VolumeTemplateAutomationInputKind = "VolumeRecoveryPointManagement";
500
+ export const VolumeTemplateAutomationInputKind = /*@__PURE__*/ S.String;
501
+
502
+ export interface VolumeTemplateAutomationInput {
503
+ kind: VolumeTemplateAutomationInputKind;
504
+ }
505
+ export const VolumeTemplateAutomationInput = /*@__PURE__*/ S.suspend(() =>
506
+ S.Struct({
507
+ kind: VolumeTemplateAutomationInputKind,
508
+ }),
509
+ ).annotate({
510
+ identifier: "VolumeTemplateAutomationInput",
511
+ }) as any as S.Schema<VolumeTemplateAutomationInput>;
512
+
513
+ export interface GetVolumeTemplateResponse {
514
+ createTime: string;
515
+ description: string;
516
+ id: string;
517
+ input?: VolumeTemplateAutomationInput;
518
+ name: string;
519
+ output?: VolumeOutput;
520
+ }
521
+ export const GetVolumeTemplateResponse = /*@__PURE__*/ S.suspend(() =>
522
+ S.Struct({
523
+ createTime: S.String,
524
+ description: S.String,
525
+ id: S.String,
526
+ input: S.optional(VolumeTemplateAutomationInput),
527
+ name: S.String,
528
+ output: S.optional(VolumeOutput),
529
+ }),
530
+ ).annotate({
531
+ identifier: "GetVolumeTemplateResponse",
532
+ }) as any as S.Schema<GetVolumeTemplateResponse>;
533
+
534
+ export interface ListVolumeAutomationsRequest {
535
+ /** project Id */
536
+ projectId: string;
537
+ /** region */
538
+ region: string;
539
+ /** The maximum number of items to return. If unspecified or set to 0, at most 100 items will be returned. The maximum value is 100; values above 100 will be coerced to 100. */
540
+ pageSize?: number;
541
+ /** A page token, received from a previous list call. Provide this to retrieve the subsequent page. */
542
+ pageToken?: string;
543
+ }
544
+ export const ListVolumeAutomationsRequest = /*@__PURE__*/ S.suspend(() =>
545
+ S.Struct({
546
+ projectId: S.String.pipe(T.Label()),
547
+ region: S.String.pipe(T.Label()),
548
+ pageSize: S.optional(S.Number.pipe(T.Query())),
549
+ pageToken: S.optional(S.String.pipe(T.Query())),
550
+ }).pipe(
551
+ T.Http({
552
+ method: "GET",
553
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations",
554
+ code: 200,
555
+ baseUrl: "https://automation-service.api.stackit.cloud",
556
+ }),
557
+ ),
558
+ ).annotate({
559
+ identifier: "ListVolumeAutomationsRequest",
560
+ }) as any as S.Schema<ListVolumeAutomationsRequest>;
561
+
562
+ export interface ListAutomationsItem {
563
+ createTime: string;
564
+ description?: string;
565
+ id: string;
566
+ name?: string;
567
+ templateId?: string;
568
+ triggers?: AutomationTriggers;
569
+ updateTime: string;
570
+ }
571
+ export const ListAutomationsItem = /*@__PURE__*/ S.suspend(() =>
572
+ S.Struct({
573
+ createTime: S.String,
574
+ description: S.optional(S.String),
575
+ id: S.String,
576
+ name: S.optional(S.String),
577
+ templateId: S.optional(S.String),
578
+ triggers: S.optional(AutomationTriggers),
579
+ updateTime: S.String,
580
+ }),
581
+ ).annotate({
582
+ identifier: "ListAutomationsItem",
583
+ }) as any as S.Schema<ListAutomationsItem>;
584
+
585
+ export type ListAutomationsResponseItemsList = Array<ListAutomationsItem>;
586
+ export const ListAutomationsResponseItemsList = /*@__PURE__*/ S.Array(
587
+ ListAutomationsItem,
588
+ ) as any as S.Schema<ListAutomationsResponseItemsList>;
589
+
590
+ export interface ListAutomationsResponse {
591
+ items: ListAutomationsResponseItemsList;
592
+ /** A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */
593
+ nextPageToken?: string;
594
+ }
595
+ export const ListAutomationsResponse = /*@__PURE__*/ S.suspend(() =>
596
+ S.Struct({
597
+ items: ListAutomationsResponseItemsList,
598
+ nextPageToken: S.optional(S.String),
599
+ }),
600
+ ).annotate({
601
+ identifier: "ListAutomationsResponse",
602
+ }) as any as S.Schema<ListAutomationsResponse>;
603
+
604
+ export interface ListVolumeExecutionsRequest {
605
+ /** project Id */
606
+ projectId: string;
607
+ /** region */
608
+ region: string;
609
+ /** automation Id */
610
+ automationId: string;
611
+ /** The maximum number of items to return. If unspecified or set to 0, at most 100 items will be returned. The maximum value is 100; values above 100 will be coerced to 100. */
612
+ pageSize?: number;
613
+ /** A page token, received from a previous list call. Provide this to retrieve the subsequent page. */
614
+ pageToken?: string;
615
+ }
616
+ export const ListVolumeExecutionsRequest = /*@__PURE__*/ S.suspend(() =>
617
+ S.Struct({
618
+ projectId: S.String.pipe(T.Label()),
619
+ region: S.String.pipe(T.Label()),
620
+ automationId: S.String.pipe(T.Label()),
621
+ pageSize: S.optional(S.Number.pipe(T.Query())),
622
+ pageToken: S.optional(S.String.pipe(T.Query())),
623
+ }).pipe(
624
+ T.Http({
625
+ method: "GET",
626
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/{automationId}/executions",
627
+ code: 200,
628
+ baseUrl: "https://automation-service.api.stackit.cloud",
629
+ }),
630
+ ),
631
+ ).annotate({
632
+ identifier: "ListVolumeExecutionsRequest",
633
+ }) as any as S.Schema<ListVolumeExecutionsRequest>;
634
+
635
+ export type ListExecutionsItemStatus =
636
+ | "PENDING"
637
+ | "RUNNING"
638
+ | "COMPLETED"
639
+ | "FAILED"
640
+ | "TERMINATED";
641
+ export const ListExecutionsItemStatus = /*@__PURE__*/ S.String;
642
+
643
+ export interface ListExecutionsItem {
644
+ createTime: string;
645
+ endTime?: string;
646
+ id: string;
647
+ status: ListExecutionsItemStatus;
648
+ }
649
+ export const ListExecutionsItem = /*@__PURE__*/ S.suspend(() =>
650
+ S.Struct({
651
+ createTime: S.String,
652
+ endTime: S.optional(S.String),
653
+ id: S.String,
654
+ status: ListExecutionsItemStatus,
655
+ }),
656
+ ).annotate({
657
+ identifier: "ListExecutionsItem",
658
+ }) as any as S.Schema<ListExecutionsItem>;
659
+
660
+ export type ListExecutionsResponseItemsList = Array<ListExecutionsItem>;
661
+ export const ListExecutionsResponseItemsList = /*@__PURE__*/ S.Array(
662
+ ListExecutionsItem,
663
+ ) as any as S.Schema<ListExecutionsResponseItemsList>;
664
+
665
+ export interface ListExecutionsResponse {
666
+ items: ListExecutionsResponseItemsList;
667
+ /** A token that can be sent as `page_token` to retrieve the next page. If this field is omitted, there are no subsequent pages. */
668
+ nextPageToken?: string;
669
+ }
670
+ export const ListExecutionsResponse = /*@__PURE__*/ S.suspend(() =>
671
+ S.Struct({
672
+ items: ListExecutionsResponseItemsList,
673
+ nextPageToken: S.optional(S.String),
674
+ }),
675
+ ).annotate({
676
+ identifier: "ListExecutionsResponse",
677
+ }) as any as S.Schema<ListExecutionsResponse>;
678
+
679
+ export interface ListVolumeTemplatesRequest {
680
+ /** project Id */
681
+ projectId: string;
682
+ /** region */
683
+ region: string;
684
+ /** The maximum number of items to return. If unspecified or set to 0, at most 100 items will be returned. The maximum value is 100; values above 100 will be coerced to 100. */
685
+ pageSize?: number;
686
+ /** A page token, received from a previous list call. Provide this to retrieve the subsequent page. */
687
+ pageToken?: string;
688
+ }
689
+ export const ListVolumeTemplatesRequest = /*@__PURE__*/ S.suspend(() =>
690
+ S.Struct({
691
+ projectId: S.String.pipe(T.Label()),
692
+ region: S.String.pipe(T.Label()),
693
+ pageSize: S.optional(S.Number.pipe(T.Query())),
694
+ pageToken: S.optional(S.String.pipe(T.Query())),
695
+ }).pipe(
696
+ T.Http({
697
+ method: "GET",
698
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/templates",
699
+ code: 200,
700
+ baseUrl: "https://automation-service.api.stackit.cloud",
701
+ }),
702
+ ),
703
+ ).annotate({
704
+ identifier: "ListVolumeTemplatesRequest",
705
+ }) as any as S.Schema<ListVolumeTemplatesRequest>;
706
+
707
+ export interface Template {
708
+ createTime: string;
709
+ description: string;
710
+ id: string;
711
+ name: string;
712
+ }
713
+ export const Template = /*@__PURE__*/ S.suspend(() =>
714
+ S.Struct({
715
+ createTime: S.String,
716
+ description: S.String,
717
+ id: S.String,
718
+ name: S.String,
719
+ }),
720
+ ).annotate({ identifier: "Template" }) as any as S.Schema<Template>;
721
+
722
+ export type ListTemplatesResponseItemsList = Array<Template>;
723
+ export const ListTemplatesResponseItemsList = /*@__PURE__*/ S.Array(
724
+ Template,
725
+ ) as any as S.Schema<ListTemplatesResponseItemsList>;
726
+
727
+ export interface ListTemplatesResponse {
728
+ items: ListTemplatesResponseItemsList;
729
+ /** A token that can be sent as `pageToken` to retrieve the next page. If this field is omitted, there are no subsequent pages. */
730
+ nextPageToken?: string;
731
+ }
732
+ export const ListTemplatesResponse = /*@__PURE__*/ S.suspend(() =>
733
+ S.Struct({
734
+ items: ListTemplatesResponseItemsList,
735
+ nextPageToken: S.optional(S.String),
736
+ }),
737
+ ).annotate({
738
+ identifier: "ListTemplatesResponse",
739
+ }) as any as S.Schema<ListTemplatesResponse>;
740
+
741
+ export interface PartialUpdateVolumeAutomationRequest {
742
+ /** project Id */
743
+ projectId: string;
744
+ /** region */
745
+ region: string;
746
+ /** automation Id */
747
+ automationId: string;
748
+ /** A comma-separated list of fully qualified names of fields to be updated. Example: "name,triggers.schedule.rrule" */
749
+ updateMask?: string;
750
+ description?: string;
751
+ input?: VolumeRecoveryPointManagementInput;
752
+ name?: string;
753
+ triggers?: AutomationTriggers;
754
+ }
755
+ export const PartialUpdateVolumeAutomationRequest = /*@__PURE__*/ S.suspend(
756
+ () =>
757
+ S.Struct({
758
+ projectId: S.String.pipe(T.Label()),
759
+ region: S.String.pipe(T.Label()),
760
+ automationId: S.String.pipe(T.Label()),
761
+ updateMask: S.optional(S.String.pipe(T.Query())),
762
+ description: S.optional(S.String),
763
+ input: S.optional(VolumeRecoveryPointManagementInput),
764
+ name: S.optional(S.String),
765
+ triggers: S.optional(AutomationTriggers),
766
+ }).pipe(
767
+ T.Http({
768
+ method: "PATCH",
769
+ uri: "/v1beta/projects/{projectId}/regions/{region}/services/volumes/automations/{automationId}",
770
+ code: 200,
771
+ baseUrl: "https://automation-service.api.stackit.cloud",
772
+ }),
773
+ ),
774
+ ).annotate({
775
+ identifier: "PartialUpdateVolumeAutomationRequest",
776
+ }) as any as S.Schema<PartialUpdateVolumeAutomationRequest>;
777
+
778
+ export type CreateVolumeAutomationError =
779
+ | BadRequest
780
+ | Forbidden
781
+ | NotFound
782
+ | StackitOpError;
783
+ /** Create volume automation Creates a new volume automation */
784
+ export const createVolumeAutomation: API.OperationMethod<
785
+ CreateVolumeAutomationRequest,
786
+ VolumeAutomation,
787
+ CreateVolumeAutomationError,
788
+ StackitOpContext
789
+ > = /*@__PURE__*/ API.make(() => ({
790
+ input: CreateVolumeAutomationRequest,
791
+ output: VolumeAutomation,
792
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
793
+ protocol: StackitProtocol,
794
+ retry: Retry.Retry,
795
+ }));
796
+
797
+ export type CreateVolumeExecutionError =
798
+ | BadRequest
799
+ | Forbidden
800
+ | NotFound
801
+ | StackitOpError;
802
+ /** Create volume automation executions Creates a new execution for a specific volume automation */
803
+ export const createVolumeExecution: API.OperationMethod<
804
+ CreateVolumeExecutionRequest,
805
+ VolumeExecutionResponse,
806
+ CreateVolumeExecutionError,
807
+ StackitOpContext
808
+ > = /*@__PURE__*/ API.make(() => ({
809
+ input: CreateVolumeExecutionRequest,
810
+ output: VolumeExecutionResponse,
811
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
812
+ protocol: StackitProtocol,
813
+ retry: Retry.Retry,
814
+ }));
815
+
816
+ export type DeleteVolumeAutomationError =
817
+ | BadRequest
818
+ | Forbidden
819
+ | NotFound
820
+ | StackitOpError;
821
+ /** Delete volume automation Deletes a specific volume automation. */
822
+ export const deleteVolumeAutomation: API.OperationMethod<
823
+ DeleteVolumeAutomationRequest,
824
+ DeleteVolumeAutomationResponse,
825
+ DeleteVolumeAutomationError,
826
+ StackitOpContext
827
+ > = /*@__PURE__*/ API.make(() => ({
828
+ input: DeleteVolumeAutomationRequest,
829
+ output: DeleteVolumeAutomationResponse,
830
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
831
+ protocol: StackitProtocol,
832
+ retry: Retry.Retry,
833
+ }));
834
+
835
+ export type GetVolumeAutomationError =
836
+ | BadRequest
837
+ | Forbidden
838
+ | NotFound
839
+ | StackitOpError;
840
+ /** Get volume automation Retrieves a specific volume automation. */
841
+ export const getVolumeAutomation: API.OperationMethod<
842
+ GetVolumeAutomationRequest,
843
+ VolumeAutomation,
844
+ GetVolumeAutomationError,
845
+ StackitOpContext
846
+ > = /*@__PURE__*/ API.make(() => ({
847
+ input: GetVolumeAutomationRequest,
848
+ output: VolumeAutomation,
849
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
850
+ protocol: StackitProtocol,
851
+ retry: Retry.Retry,
852
+ }));
853
+
854
+ export type GetVolumeExecutionError =
855
+ | BadRequest
856
+ | Forbidden
857
+ | NotFound
858
+ | StackitOpError;
859
+ /** Get volume automation execution details Get details for a specific volume automation execution */
860
+ export const getVolumeExecution: API.OperationMethod<
861
+ GetVolumeExecutionRequest,
862
+ VolumeExecutionResponse,
863
+ GetVolumeExecutionError,
864
+ StackitOpContext
865
+ > = /*@__PURE__*/ API.make(() => ({
866
+ input: GetVolumeExecutionRequest,
867
+ output: VolumeExecutionResponse,
868
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
869
+ protocol: StackitProtocol,
870
+ retry: Retry.Retry,
871
+ }));
872
+
873
+ export type GetVolumeTemplateError =
874
+ | BadRequest
875
+ | Forbidden
876
+ | NotFound
877
+ | StackitOpError;
878
+ /** Get volume template Retrieve detailed information about a volume template */
879
+ export const getVolumeTemplate: API.OperationMethod<
880
+ GetVolumeTemplateRequest,
881
+ GetVolumeTemplateResponse,
882
+ GetVolumeTemplateError,
883
+ StackitOpContext
884
+ > = /*@__PURE__*/ API.make(() => ({
885
+ input: GetVolumeTemplateRequest,
886
+ output: GetVolumeTemplateResponse,
887
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
888
+ protocol: StackitProtocol,
889
+ retry: Retry.Retry,
890
+ }));
891
+
892
+ export type ListVolumeAutomationsError =
893
+ | BadRequest
894
+ | Forbidden
895
+ | NotFound
896
+ | StackitOpError;
897
+ /** List volume automations Retrieves a list of volume automations. */
898
+ export const listVolumeAutomations: API.OperationMethod<
899
+ ListVolumeAutomationsRequest,
900
+ ListAutomationsResponse,
901
+ ListVolumeAutomationsError,
902
+ StackitOpContext
903
+ > = /*@__PURE__*/ API.make(() => ({
904
+ input: ListVolumeAutomationsRequest,
905
+ output: ListAutomationsResponse,
906
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
907
+ protocol: StackitProtocol,
908
+ retry: Retry.Retry,
909
+ }));
910
+
911
+ export type ListVolumeExecutionsError =
912
+ | BadRequest
913
+ | Forbidden
914
+ | NotFound
915
+ | StackitOpError;
916
+ /** List volume automation executions Get a list of all executions for a specific volume automation. */
917
+ export const listVolumeExecutions: API.OperationMethod<
918
+ ListVolumeExecutionsRequest,
919
+ ListExecutionsResponse,
920
+ ListVolumeExecutionsError,
921
+ StackitOpContext
922
+ > = /*@__PURE__*/ API.make(() => ({
923
+ input: ListVolumeExecutionsRequest,
924
+ output: ListExecutionsResponse,
925
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
926
+ protocol: StackitProtocol,
927
+ retry: Retry.Retry,
928
+ }));
929
+
930
+ export type ListVolumeTemplatesError =
931
+ | BadRequest
932
+ | Forbidden
933
+ | NotFound
934
+ | StackitOpError;
935
+ /** List volume templates Lists all volume templates for the specified service */
936
+ export const listVolumeTemplates: API.OperationMethod<
937
+ ListVolumeTemplatesRequest,
938
+ ListTemplatesResponse,
939
+ ListVolumeTemplatesError,
940
+ StackitOpContext
941
+ > = /*@__PURE__*/ API.make(() => ({
942
+ input: ListVolumeTemplatesRequest,
943
+ output: ListTemplatesResponse,
944
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
945
+ protocol: StackitProtocol,
946
+ retry: Retry.Retry,
947
+ }));
948
+
949
+ export type PartialUpdateVolumeAutomationError =
950
+ | BadRequest
951
+ | Forbidden
952
+ | NotFound
953
+ | StackitOpError;
954
+ /** Patch volume automation Partially updates a specific volume automation. Specify the fields to update in the `updateMask` query parameter. */
955
+ export const partialUpdateVolumeAutomation: API.OperationMethod<
956
+ PartialUpdateVolumeAutomationRequest,
957
+ VolumeAutomation,
958
+ PartialUpdateVolumeAutomationError,
959
+ StackitOpContext
960
+ > = /*@__PURE__*/ API.make(() => ({
961
+ input: PartialUpdateVolumeAutomationRequest,
962
+ output: VolumeAutomation,
963
+ errors: [BadRequest, Forbidden, NotFound, UnknownStackitError],
964
+ protocol: StackitProtocol,
965
+ retry: Retry.Retry,
966
+ }));