@nilovonjs/hcloud-js 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +90 -0
- package/package.json +70 -0
- package/src/apis/actions/index.ts +113 -0
- package/src/apis/actions/schemas.ts +59 -0
- package/src/apis/actions/types.ts +77 -0
- package/src/apis/certificates/index.ts +326 -0
- package/src/apis/certificates/schemas.ts +140 -0
- package/src/apis/certificates/types.ts +176 -0
- package/src/apis/common/schemas.ts +19 -0
- package/src/apis/dns/index.ts +961 -0
- package/src/apis/dns/schemas.ts +437 -0
- package/src/apis/dns/types.ts +397 -0
- package/src/apis/firewalls/index.ts +469 -0
- package/src/apis/firewalls/schemas.ts +274 -0
- package/src/apis/firewalls/types.ts +205 -0
- package/src/apis/floating-ips/index.ts +466 -0
- package/src/apis/floating-ips/schemas.ts +203 -0
- package/src/apis/floating-ips/types.ts +207 -0
- package/src/apis/images/index.ts +195 -0
- package/src/apis/images/schemas.ts +113 -0
- package/src/apis/images/types.ts +124 -0
- package/src/apis/isos/index.ts +91 -0
- package/src/apis/isos/schemas.ts +43 -0
- package/src/apis/isos/types.ts +60 -0
- package/src/apis/load-balancers/index.ts +892 -0
- package/src/apis/load-balancers/schemas.ts +561 -0
- package/src/apis/load-balancers/types.ts +361 -0
- package/src/apis/locations/index.ts +176 -0
- package/src/apis/locations/schemas.ts +83 -0
- package/src/apis/locations/types.ts +113 -0
- package/src/apis/networks/index.ts +544 -0
- package/src/apis/networks/schemas.ts +279 -0
- package/src/apis/networks/types.ts +243 -0
- package/src/apis/placement-groups/index.ts +212 -0
- package/src/apis/placement-groups/schemas.ts +90 -0
- package/src/apis/placement-groups/types.ts +99 -0
- package/src/apis/pricing/index.ts +42 -0
- package/src/apis/pricing/schemas.ts +93 -0
- package/src/apis/pricing/types.ts +71 -0
- package/src/apis/primary-ips/index.ts +467 -0
- package/src/apis/primary-ips/schemas.ts +221 -0
- package/src/apis/primary-ips/types.ts +221 -0
- package/src/apis/server-types/index.ts +93 -0
- package/src/apis/server-types/schemas.ts +29 -0
- package/src/apis/server-types/types.ts +43 -0
- package/src/apis/servers/index.ts +378 -0
- package/src/apis/servers/schemas.ts +771 -0
- package/src/apis/servers/types.ts +538 -0
- package/src/apis/ssh-keys/index.ts +204 -0
- package/src/apis/ssh-keys/schemas.ts +84 -0
- package/src/apis/ssh-keys/types.ts +106 -0
- package/src/apis/volumes/index.ts +452 -0
- package/src/apis/volumes/schemas.ts +195 -0
- package/src/apis/volumes/types.ts +197 -0
- package/src/auth/index.ts +26 -0
- package/src/base/index.ts +10 -0
- package/src/client/index.ts +388 -0
- package/src/config/index.ts +34 -0
- package/src/errors/index.ts +38 -0
- package/src/index.ts +799 -0
- package/src/types/index.ts +37 -0
- package/src/validation/index.ts +109 -0
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Zod schemas for Hetzner Cloud Firewalls API
|
|
3
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
import { z } from "zod";
|
|
7
|
+
import { actionSchema, actionResourceSchema } from "../../apis/actions/schemas";
|
|
8
|
+
import { paginationMetaSchema } from "../../apis/common/schemas";
|
|
9
|
+
|
|
10
|
+
/**
|
|
11
|
+
* Firewall rule direction schema
|
|
12
|
+
*/
|
|
13
|
+
export const firewallRuleDirectionSchema = z.enum(["in", "out"]);
|
|
14
|
+
|
|
15
|
+
/**
|
|
16
|
+
* Firewall rule protocol schema
|
|
17
|
+
*/
|
|
18
|
+
export const firewallRuleProtocolSchema = z.enum(["tcp", "udp", "icmp", "esp", "gre"]);
|
|
19
|
+
|
|
20
|
+
/**
|
|
21
|
+
* Firewall rule port schema
|
|
22
|
+
*/
|
|
23
|
+
export const firewallRulePortSchema = z.string().regex(/^\d+(-\d+)?$/);
|
|
24
|
+
|
|
25
|
+
/**
|
|
26
|
+
* Firewall rule source IPs schema
|
|
27
|
+
* Accepts IP addresses and CIDR notation
|
|
28
|
+
*/
|
|
29
|
+
export const firewallRuleSourceIpsSchema = z.array(z.string());
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Firewall rule destination IPs schema
|
|
33
|
+
* Accepts IP addresses and CIDR notation
|
|
34
|
+
*/
|
|
35
|
+
export const firewallRuleDestinationIpsSchema = z.array(z.string());
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Firewall rule schema
|
|
39
|
+
*/
|
|
40
|
+
export const firewallRuleSchema = z
|
|
41
|
+
.object({
|
|
42
|
+
direction: firewallRuleDirectionSchema,
|
|
43
|
+
source_ips: firewallRuleSourceIpsSchema.optional(),
|
|
44
|
+
destination_ips: firewallRuleDestinationIpsSchema.optional(),
|
|
45
|
+
protocol: firewallRuleProtocolSchema,
|
|
46
|
+
port: firewallRulePortSchema.nullable().optional(),
|
|
47
|
+
description: z.string().nullable().optional(),
|
|
48
|
+
})
|
|
49
|
+
.passthrough();
|
|
50
|
+
|
|
51
|
+
/**
|
|
52
|
+
* Firewall applied to resource schema
|
|
53
|
+
*/
|
|
54
|
+
export const firewallAppliedToResourceSchema = z.object({
|
|
55
|
+
type: z.enum(["server", "label_selector"]),
|
|
56
|
+
server: z
|
|
57
|
+
.object({
|
|
58
|
+
id: z.number(),
|
|
59
|
+
})
|
|
60
|
+
.optional(),
|
|
61
|
+
label_selector: z
|
|
62
|
+
.object({
|
|
63
|
+
selector: z.string(),
|
|
64
|
+
})
|
|
65
|
+
.optional(),
|
|
66
|
+
});
|
|
67
|
+
|
|
68
|
+
/**
|
|
69
|
+
* Firewall schema
|
|
70
|
+
*/
|
|
71
|
+
export const firewallSchema = z
|
|
72
|
+
.object({
|
|
73
|
+
id: z.number(),
|
|
74
|
+
name: z.string(),
|
|
75
|
+
labels: z.record(z.string(), z.string()),
|
|
76
|
+
created: z.string(),
|
|
77
|
+
rules: z
|
|
78
|
+
.object({
|
|
79
|
+
inbound: z.array(firewallRuleSchema).optional(),
|
|
80
|
+
outbound: z.array(firewallRuleSchema).optional(),
|
|
81
|
+
})
|
|
82
|
+
.optional(),
|
|
83
|
+
applied_to: z.array(firewallAppliedToResourceSchema).optional(),
|
|
84
|
+
})
|
|
85
|
+
.passthrough();
|
|
86
|
+
|
|
87
|
+
/**
|
|
88
|
+
* List Firewalls response schema
|
|
89
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-list-firewalls
|
|
90
|
+
*/
|
|
91
|
+
export const listFirewallsResponseSchema = z.object({
|
|
92
|
+
firewalls: z.array(firewallSchema),
|
|
93
|
+
meta: z
|
|
94
|
+
.object({
|
|
95
|
+
pagination: paginationMetaSchema,
|
|
96
|
+
})
|
|
97
|
+
.optional(),
|
|
98
|
+
});
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Create Firewall request schema
|
|
102
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-create-a-firewall
|
|
103
|
+
*/
|
|
104
|
+
export const createFirewallRequestSchema = z.object({
|
|
105
|
+
name: z.string().min(1),
|
|
106
|
+
labels: z.record(z.string(), z.string()).optional(),
|
|
107
|
+
rules: z
|
|
108
|
+
.object({
|
|
109
|
+
inbound: z.array(firewallRuleSchema).optional(),
|
|
110
|
+
outbound: z.array(firewallRuleSchema).optional(),
|
|
111
|
+
})
|
|
112
|
+
.optional(),
|
|
113
|
+
apply_to: z
|
|
114
|
+
.array(
|
|
115
|
+
z.object({
|
|
116
|
+
type: z.enum(["server", "label_selector"]),
|
|
117
|
+
server: z
|
|
118
|
+
.object({
|
|
119
|
+
id: z.number(),
|
|
120
|
+
})
|
|
121
|
+
.optional(),
|
|
122
|
+
label_selector: z
|
|
123
|
+
.object({
|
|
124
|
+
selector: z.string(),
|
|
125
|
+
})
|
|
126
|
+
.optional(),
|
|
127
|
+
}),
|
|
128
|
+
)
|
|
129
|
+
.optional(),
|
|
130
|
+
});
|
|
131
|
+
|
|
132
|
+
/**
|
|
133
|
+
* Create Firewall response schema
|
|
134
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-create-a-firewall
|
|
135
|
+
*/
|
|
136
|
+
export const createFirewallResponseSchema = z.object({
|
|
137
|
+
firewall: firewallSchema,
|
|
138
|
+
action: actionSchema.optional(),
|
|
139
|
+
});
|
|
140
|
+
|
|
141
|
+
/**
|
|
142
|
+
* Get Firewall response schema
|
|
143
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-get-a-firewall
|
|
144
|
+
*/
|
|
145
|
+
export const getFirewallResponseSchema = z.object({
|
|
146
|
+
firewall: firewallSchema,
|
|
147
|
+
});
|
|
148
|
+
|
|
149
|
+
/**
|
|
150
|
+
* Update Firewall request schema
|
|
151
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-update-a-firewall
|
|
152
|
+
*/
|
|
153
|
+
export const updateFirewallRequestSchema = z.object({
|
|
154
|
+
name: z.string().min(1).optional(),
|
|
155
|
+
labels: z.record(z.string(), z.string()).optional(),
|
|
156
|
+
});
|
|
157
|
+
|
|
158
|
+
/**
|
|
159
|
+
* Update Firewall response schema
|
|
160
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-update-a-firewall
|
|
161
|
+
*/
|
|
162
|
+
export const updateFirewallResponseSchema = z.object({
|
|
163
|
+
firewall: firewallSchema,
|
|
164
|
+
});
|
|
165
|
+
|
|
166
|
+
/**
|
|
167
|
+
* Delete Firewall response schema
|
|
168
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-delete-a-firewall
|
|
169
|
+
*/
|
|
170
|
+
export const deleteFirewallResponseSchema = z.object({
|
|
171
|
+
action: actionSchema.optional(),
|
|
172
|
+
});
|
|
173
|
+
|
|
174
|
+
/**
|
|
175
|
+
* List Firewall Actions response schema
|
|
176
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-list-actions-for-a-firewall
|
|
177
|
+
*/
|
|
178
|
+
export const listFirewallActionsResponseSchema = z.object({
|
|
179
|
+
actions: z.array(actionSchema),
|
|
180
|
+
meta: z
|
|
181
|
+
.object({
|
|
182
|
+
pagination: paginationMetaSchema,
|
|
183
|
+
})
|
|
184
|
+
.optional(),
|
|
185
|
+
});
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Get Firewall Action response schema
|
|
189
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-get-an-action-for-a-firewall
|
|
190
|
+
*/
|
|
191
|
+
export const getFirewallActionResponseSchema = z.object({
|
|
192
|
+
action: actionSchema,
|
|
193
|
+
});
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Apply Firewall to Resources request schema
|
|
197
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-apply-to-resources
|
|
198
|
+
*/
|
|
199
|
+
export const applyFirewallToResourcesRequestSchema = z.object({
|
|
200
|
+
apply_to: z.array(
|
|
201
|
+
z.object({
|
|
202
|
+
type: z.enum(["server", "label_selector"]),
|
|
203
|
+
server: z
|
|
204
|
+
.object({
|
|
205
|
+
id: z.number(),
|
|
206
|
+
})
|
|
207
|
+
.optional(),
|
|
208
|
+
label_selector: z
|
|
209
|
+
.object({
|
|
210
|
+
selector: z.string(),
|
|
211
|
+
})
|
|
212
|
+
.optional(),
|
|
213
|
+
}),
|
|
214
|
+
),
|
|
215
|
+
});
|
|
216
|
+
|
|
217
|
+
/**
|
|
218
|
+
* Apply Firewall to Resources response schema
|
|
219
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-apply-to-resources
|
|
220
|
+
*/
|
|
221
|
+
export const applyFirewallToResourcesResponseSchema = z.object({
|
|
222
|
+
actions: z.array(actionSchema),
|
|
223
|
+
});
|
|
224
|
+
|
|
225
|
+
/**
|
|
226
|
+
* Remove Firewall from Resources request schema
|
|
227
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-remove-from-resources
|
|
228
|
+
*/
|
|
229
|
+
export const removeFirewallFromResourcesRequestSchema = z.object({
|
|
230
|
+
remove_from: z.array(
|
|
231
|
+
z.object({
|
|
232
|
+
type: z.enum(["server", "label_selector"]),
|
|
233
|
+
server: z
|
|
234
|
+
.object({
|
|
235
|
+
id: z.number(),
|
|
236
|
+
})
|
|
237
|
+
.optional(),
|
|
238
|
+
label_selector: z
|
|
239
|
+
.object({
|
|
240
|
+
selector: z.string(),
|
|
241
|
+
})
|
|
242
|
+
.optional(),
|
|
243
|
+
}),
|
|
244
|
+
),
|
|
245
|
+
});
|
|
246
|
+
|
|
247
|
+
/**
|
|
248
|
+
* Remove Firewall from Resources response schema
|
|
249
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-remove-from-resources
|
|
250
|
+
*/
|
|
251
|
+
export const removeFirewallFromResourcesResponseSchema = z.object({
|
|
252
|
+
actions: z.array(actionSchema),
|
|
253
|
+
});
|
|
254
|
+
|
|
255
|
+
/**
|
|
256
|
+
* Set Firewall Rules request schema
|
|
257
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-set-rules
|
|
258
|
+
*/
|
|
259
|
+
export const setFirewallRulesRequestSchema = z.object({
|
|
260
|
+
rules: z
|
|
261
|
+
.object({
|
|
262
|
+
inbound: z.array(firewallRuleSchema).optional(),
|
|
263
|
+
outbound: z.array(firewallRuleSchema).optional(),
|
|
264
|
+
})
|
|
265
|
+
.optional(),
|
|
266
|
+
});
|
|
267
|
+
|
|
268
|
+
/**
|
|
269
|
+
* Set Firewall Rules response schema
|
|
270
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-set-rules
|
|
271
|
+
*/
|
|
272
|
+
export const setFirewallRulesResponseSchema = z.object({
|
|
273
|
+
actions: z.array(actionSchema),
|
|
274
|
+
});
|
|
@@ -0,0 +1,205 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Types for Hetzner Cloud Firewalls API
|
|
3
|
+
* Types are inferred from Zod schemas
|
|
4
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls
|
|
5
|
+
*/
|
|
6
|
+
|
|
7
|
+
// biome-ignore assist/source/organizeImports: we need to import the schemas first
|
|
8
|
+
import {
|
|
9
|
+
listFirewallsResponseSchema,
|
|
10
|
+
createFirewallRequestSchema,
|
|
11
|
+
createFirewallResponseSchema,
|
|
12
|
+
getFirewallResponseSchema,
|
|
13
|
+
updateFirewallRequestSchema,
|
|
14
|
+
updateFirewallResponseSchema,
|
|
15
|
+
deleteFirewallResponseSchema,
|
|
16
|
+
listFirewallActionsResponseSchema,
|
|
17
|
+
getFirewallActionResponseSchema,
|
|
18
|
+
applyFirewallToResourcesRequestSchema,
|
|
19
|
+
applyFirewallToResourcesResponseSchema,
|
|
20
|
+
removeFirewallFromResourcesRequestSchema,
|
|
21
|
+
removeFirewallFromResourcesResponseSchema,
|
|
22
|
+
setFirewallRulesRequestSchema,
|
|
23
|
+
setFirewallRulesResponseSchema,
|
|
24
|
+
firewallSchema,
|
|
25
|
+
firewallRuleSchema,
|
|
26
|
+
firewallRuleDirectionSchema,
|
|
27
|
+
firewallRuleProtocolSchema,
|
|
28
|
+
firewallAppliedToResourceSchema,
|
|
29
|
+
} from "../../apis/firewalls/schemas";
|
|
30
|
+
import type { z } from "zod";
|
|
31
|
+
|
|
32
|
+
/**
|
|
33
|
+
* Firewall rule direction
|
|
34
|
+
*/
|
|
35
|
+
export type FirewallRuleDirection = z.infer<typeof firewallRuleDirectionSchema>;
|
|
36
|
+
|
|
37
|
+
/**
|
|
38
|
+
* Firewall rule protocol
|
|
39
|
+
*/
|
|
40
|
+
export type FirewallRuleProtocol = z.infer<typeof firewallRuleProtocolSchema>;
|
|
41
|
+
|
|
42
|
+
/**
|
|
43
|
+
* Firewall rule
|
|
44
|
+
*/
|
|
45
|
+
export type FirewallRule = z.infer<typeof firewallRuleSchema>;
|
|
46
|
+
|
|
47
|
+
/**
|
|
48
|
+
* Firewall applied to resource
|
|
49
|
+
*/
|
|
50
|
+
export type FirewallAppliedToResource = z.infer<typeof firewallAppliedToResourceSchema>;
|
|
51
|
+
|
|
52
|
+
/**
|
|
53
|
+
* Firewall
|
|
54
|
+
*/
|
|
55
|
+
export type Firewall = z.infer<typeof firewallSchema>;
|
|
56
|
+
|
|
57
|
+
/**
|
|
58
|
+
* List Firewalls query parameters
|
|
59
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-list-firewalls
|
|
60
|
+
*/
|
|
61
|
+
export interface ListFirewallsParams {
|
|
62
|
+
/**
|
|
63
|
+
* Can be used to filter Firewalls by their name. The response will only contain the Firewall matching the specified name.
|
|
64
|
+
*/
|
|
65
|
+
name?: string;
|
|
66
|
+
/**
|
|
67
|
+
* Can be used multiple times. Choices: id, id:asc, id:desc, name, name:asc, name:desc, created, created:asc, created:desc
|
|
68
|
+
* @see https://docs.hetzner.cloud/reference/cloud#sorting
|
|
69
|
+
*/
|
|
70
|
+
sort?: string | string[];
|
|
71
|
+
/**
|
|
72
|
+
* Can be used to filter Firewalls by labels. The response will only contain Firewalls matching the label selector.
|
|
73
|
+
*/
|
|
74
|
+
label_selector?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Page number to return. For more information, see [Pagination](https://docs.hetzner.cloud/reference/cloud#pagination).
|
|
77
|
+
*/
|
|
78
|
+
page?: number;
|
|
79
|
+
/**
|
|
80
|
+
* Maximum number of entries returned per page. For more information, see [Pagination](https://docs.hetzner.cloud/reference/cloud#pagination).
|
|
81
|
+
*/
|
|
82
|
+
per_page?: number;
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/**
|
|
86
|
+
* List Firewalls response
|
|
87
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-list-firewalls
|
|
88
|
+
*/
|
|
89
|
+
export type ListFirewallsResponse = z.infer<typeof listFirewallsResponseSchema>;
|
|
90
|
+
|
|
91
|
+
/**
|
|
92
|
+
* Create Firewall parameters
|
|
93
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-create-a-firewall
|
|
94
|
+
*/
|
|
95
|
+
export type CreateFirewallParams = z.infer<typeof createFirewallRequestSchema>;
|
|
96
|
+
|
|
97
|
+
/**
|
|
98
|
+
* Create Firewall response
|
|
99
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-create-a-firewall
|
|
100
|
+
*/
|
|
101
|
+
export type CreateFirewallResponse = z.infer<typeof createFirewallResponseSchema>;
|
|
102
|
+
|
|
103
|
+
/**
|
|
104
|
+
* Get Firewall response
|
|
105
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-get-a-firewall
|
|
106
|
+
*/
|
|
107
|
+
export type GetFirewallResponse = z.infer<typeof getFirewallResponseSchema>;
|
|
108
|
+
|
|
109
|
+
/**
|
|
110
|
+
* Update Firewall parameters
|
|
111
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-update-a-firewall
|
|
112
|
+
*/
|
|
113
|
+
export type UpdateFirewallParams = z.infer<typeof updateFirewallRequestSchema>;
|
|
114
|
+
|
|
115
|
+
/**
|
|
116
|
+
* Update Firewall response
|
|
117
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-update-a-firewall
|
|
118
|
+
*/
|
|
119
|
+
export type UpdateFirewallResponse = z.infer<typeof updateFirewallResponseSchema>;
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Delete Firewall response
|
|
123
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-delete-a-firewall
|
|
124
|
+
*/
|
|
125
|
+
export type DeleteFirewallResponse = z.infer<typeof deleteFirewallResponseSchema>;
|
|
126
|
+
|
|
127
|
+
/**
|
|
128
|
+
* List Firewall Actions query parameters
|
|
129
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-list-actions-for-a-firewall
|
|
130
|
+
*/
|
|
131
|
+
export interface ListFirewallActionsParams {
|
|
132
|
+
/**
|
|
133
|
+
* Can be used multiple times. Choices: id, id:asc, id:desc, command, command:asc, command:desc, status, status:asc, status:desc, progress, progress:asc, progress:desc, started, started:asc, started:desc, finished, finished:asc, finished:desc
|
|
134
|
+
* @see https://docs.hetzner.cloud/reference/cloud#sorting
|
|
135
|
+
*/
|
|
136
|
+
sort?: string | string[];
|
|
137
|
+
/**
|
|
138
|
+
* Can be used to filter Actions by status. The response will only contain Actions matching the status.
|
|
139
|
+
*/
|
|
140
|
+
status?: string | string[];
|
|
141
|
+
/**
|
|
142
|
+
* Page number to return. For more information, see [Pagination](https://docs.hetzner.cloud/reference/cloud#pagination).
|
|
143
|
+
*/
|
|
144
|
+
page?: number;
|
|
145
|
+
/**
|
|
146
|
+
* Maximum number of entries returned per page. For more information, see [Pagination](https://docs.hetzner.cloud/reference/cloud#pagination).
|
|
147
|
+
*/
|
|
148
|
+
per_page?: number;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/**
|
|
152
|
+
* List Firewall Actions response
|
|
153
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-list-actions-for-a-firewall
|
|
154
|
+
*/
|
|
155
|
+
export type ListFirewallActionsResponse = z.infer<typeof listFirewallActionsResponseSchema>;
|
|
156
|
+
|
|
157
|
+
/**
|
|
158
|
+
* Get Firewall Action response
|
|
159
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-get-an-action-for-a-firewall
|
|
160
|
+
*/
|
|
161
|
+
export type GetFirewallActionResponse = z.infer<typeof getFirewallActionResponseSchema>;
|
|
162
|
+
|
|
163
|
+
/**
|
|
164
|
+
* Apply Firewall to Resources parameters
|
|
165
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-apply-to-resources
|
|
166
|
+
*/
|
|
167
|
+
export type ApplyFirewallToResourcesParams = z.infer<
|
|
168
|
+
typeof applyFirewallToResourcesRequestSchema
|
|
169
|
+
>;
|
|
170
|
+
|
|
171
|
+
/**
|
|
172
|
+
* Apply Firewall to Resources response
|
|
173
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-apply-to-resources
|
|
174
|
+
*/
|
|
175
|
+
export type ApplyFirewallToResourcesResponse = z.infer<
|
|
176
|
+
typeof applyFirewallToResourcesResponseSchema
|
|
177
|
+
>;
|
|
178
|
+
|
|
179
|
+
/**
|
|
180
|
+
* Remove Firewall from Resources parameters
|
|
181
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-remove-from-resources
|
|
182
|
+
*/
|
|
183
|
+
export type RemoveFirewallFromResourcesParams = z.infer<
|
|
184
|
+
typeof removeFirewallFromResourcesRequestSchema
|
|
185
|
+
>;
|
|
186
|
+
|
|
187
|
+
/**
|
|
188
|
+
* Remove Firewall from Resources response
|
|
189
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-remove-from-resources
|
|
190
|
+
*/
|
|
191
|
+
export type RemoveFirewallFromResourcesResponse = z.infer<
|
|
192
|
+
typeof removeFirewallFromResourcesResponseSchema
|
|
193
|
+
>;
|
|
194
|
+
|
|
195
|
+
/**
|
|
196
|
+
* Set Firewall Rules parameters
|
|
197
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-set-rules
|
|
198
|
+
*/
|
|
199
|
+
export type SetFirewallRulesParams = z.infer<typeof setFirewallRulesRequestSchema>;
|
|
200
|
+
|
|
201
|
+
/**
|
|
202
|
+
* Set Firewall Rules response
|
|
203
|
+
* @see https://docs.hetzner.cloud/reference/cloud#firewalls-set-rules
|
|
204
|
+
*/
|
|
205
|
+
export type SetFirewallRulesResponse = z.infer<typeof setFirewallRulesResponseSchema>;
|