basaltic-sdk-python 0.1.1__py3-none-any.whl

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (47) hide show
  1. basaltic/__init__.py +26 -0
  2. basaltic/_client.py +136 -0
  3. basaltic/_common.py +284 -0
  4. basaltic/_transport.py +196 -0
  5. basaltic/_version.py +3 -0
  6. basaltic/auth.py +231 -0
  7. basaltic/client.py +144 -0
  8. basaltic/config.py +151 -0
  9. basaltic/errors.py +73 -0
  10. basaltic/models/__init__.py +17 -0
  11. basaltic/models/audit.py +85 -0
  12. basaltic/models/billing.py +284 -0
  13. basaltic/models/catalog.py +35 -0
  14. basaltic/models/certificate.py +127 -0
  15. basaltic/models/compute.py +905 -0
  16. basaltic/models/dns.py +256 -0
  17. basaltic/models/iam.py +736 -0
  18. basaltic/models/kms.py +157 -0
  19. basaltic/models/loadbalancer.py +574 -0
  20. basaltic/models/network.py +985 -0
  21. basaltic/models/quota.py +30 -0
  22. basaltic/models/secrets.py +136 -0
  23. basaltic/models/storage.py +789 -0
  24. basaltic/models/telemetry.py +393 -0
  25. basaltic/models/workspace.py +734 -0
  26. basaltic/py.typed +0 -0
  27. basaltic/response.py +152 -0
  28. basaltic/services/__init__.py +1 -0
  29. basaltic/services/audit.py +211 -0
  30. basaltic/services/billing.py +777 -0
  31. basaltic/services/catalog.py +172 -0
  32. basaltic/services/certificate.py +395 -0
  33. basaltic/services/compute.py +2395 -0
  34. basaltic/services/dns.py +1079 -0
  35. basaltic/services/iam.py +3405 -0
  36. basaltic/services/kms.py +742 -0
  37. basaltic/services/loadbalancer.py +1727 -0
  38. basaltic/services/network.py +4691 -0
  39. basaltic/services/quota.py +75 -0
  40. basaltic/services/secrets.py +550 -0
  41. basaltic/services/storage.py +3059 -0
  42. basaltic/services/telemetry.py +1316 -0
  43. basaltic/services/workspace.py +3899 -0
  44. basaltic_sdk_python-0.1.1.dist-info/METADATA +211 -0
  45. basaltic_sdk_python-0.1.1.dist-info/RECORD +47 -0
  46. basaltic_sdk_python-0.1.1.dist-info/WHEEL +4 -0
  47. basaltic_sdk_python-0.1.1.dist-info/licenses/LICENSE +202 -0
@@ -0,0 +1,985 @@
1
+ """Generated API models. Dictionary keys retain their wire names."""
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Literal, NotRequired, Required, TypeAlias, TypedDict
6
+
7
+ AttachFloatingIpRequest = TypedDict(
8
+ "AttachFloatingIpRequest",
9
+ {"interface": "Required[str]", "address_id": "Required[str]"},
10
+ total=False,
11
+ )
12
+ AttachFloatingIpBody: TypeAlias = "AttachFloatingIpRequest"
13
+ AttachFloatingIpResult = TypedDict(
14
+ "AttachFloatingIpResult", {"floating_ip": "NotRequired[FloatingIp]"}, total=False
15
+ )
16
+ FloatingIp = TypedDict(
17
+ "FloatingIp",
18
+ {
19
+ "id": "Required[str]",
20
+ "crn": "Required[str]",
21
+ "description": "NotRequired[str]",
22
+ "family": "Required[IpFamily]",
23
+ "attached_to": "Required[str | None]",
24
+ "members": "Required[list[FloatingIpMember]]",
25
+ "tags": "Required[dict[str, str]]",
26
+ "health_check": "NotRequired[FloatingIpHealthCheck]",
27
+ "created_at": "Required[str]",
28
+ "updated_at": "Required[str]",
29
+ "address": "Required[str]",
30
+ "visibility": "Required[Literal['public', 'private']]",
31
+ "subnet_id": "NotRequired[str | None]",
32
+ "vpc_id": "NotRequired[str]",
33
+ },
34
+ total=False,
35
+ )
36
+ IpFamily: TypeAlias = "Literal['ipv4', 'ipv6']"
37
+ FloatingIpMember = TypedDict(
38
+ "FloatingIpMember",
39
+ {
40
+ "interface": "Required[FloatingIpMemberInterfaceObject | None]",
41
+ "health": "Required[Literal['unknown', 'healthy', 'unhealthy']]",
42
+ "reason": "Required[Literal['unprobed', 'booting', 'probe_failed', 'passing']]",
43
+ "created_at": "Required[str]",
44
+ "address_id": "NotRequired[str | None]",
45
+ },
46
+ total=False,
47
+ )
48
+ FloatingIpMemberInterfaceObject = TypedDict(
49
+ "FloatingIpMemberInterfaceObject",
50
+ {
51
+ "id": "Required[str]",
52
+ "crn": "Required[str]",
53
+ "instance": "Required[FloatingIpMemberInterfaceObjectInstanceObject | None]",
54
+ },
55
+ total=False,
56
+ )
57
+ FloatingIpMemberInterfaceObjectInstanceObject = TypedDict(
58
+ "FloatingIpMemberInterfaceObjectInstanceObject",
59
+ {"id": "Required[str]", "crn": "Required[str]", "name": "Required[str]"},
60
+ total=False,
61
+ )
62
+ FloatingIpHealthCheck = TypedDict(
63
+ "FloatingIpHealthCheck",
64
+ {
65
+ "protocol": "Required[Literal['tcp', 'http', 'https']]",
66
+ "path": "NotRequired[str]",
67
+ "port": "Required[int]",
68
+ "interval_sec": "Required[int]",
69
+ "timeout_sec": "Required[int]",
70
+ "healthy_threshold": "Required[int]",
71
+ "unhealthy_threshold": "Required[int]",
72
+ "matcher": "NotRequired[str]",
73
+ },
74
+ total=False,
75
+ )
76
+ AttachFloatingIpResponse: TypeAlias = "AttachFloatingIpResult"
77
+ InternetGatewayAttachRequestInput = TypedDict(
78
+ "InternetGatewayAttachRequestInput", {"vpc": "Required[str]"}, total=False
79
+ )
80
+ AttachInternetGatewayBody: TypeAlias = "InternetGatewayAttachRequestInput"
81
+ InternetGatewayResponse = TypedDict(
82
+ "InternetGatewayResponse", {"internet_gateway": "NotRequired[InternetGateway]"}, total=False
83
+ )
84
+ InternetGateway = TypedDict(
85
+ "InternetGateway",
86
+ {
87
+ "id": "Required[str]",
88
+ "crn": "Required[str]",
89
+ "name": "Required[str]",
90
+ "description": "NotRequired[str]",
91
+ "attached_vpc_id": "NotRequired[str | None]",
92
+ "tags": "Required[dict[str, str]]",
93
+ "created_at": "Required[str]",
94
+ "updated_at": "Required[str]",
95
+ },
96
+ total=False,
97
+ )
98
+ AttachInternetGatewayResponse: TypeAlias = "InternetGatewayResponse"
99
+ EgressOnlyGatewayCreateRequestInput = TypedDict(
100
+ "EgressOnlyGatewayCreateRequestInput",
101
+ {
102
+ "name": "Required[str]",
103
+ "description": "NotRequired[str]",
104
+ "vpc": "Required[str]",
105
+ "tags": "NotRequired[dict[str, str]]",
106
+ },
107
+ total=False,
108
+ )
109
+ CreateEgressOnlyGatewayBody: TypeAlias = "EgressOnlyGatewayCreateRequestInput"
110
+ EgressOnlyGatewayResponse = TypedDict(
111
+ "EgressOnlyGatewayResponse",
112
+ {"egress_only_gateway": "NotRequired[EgressOnlyGateway]"},
113
+ total=False,
114
+ )
115
+ EgressOnlyGateway = TypedDict(
116
+ "EgressOnlyGateway",
117
+ {
118
+ "id": "Required[str]",
119
+ "crn": "Required[str]",
120
+ "name": "Required[str]",
121
+ "description": "NotRequired[str]",
122
+ "vpc": "Required[Vpc]",
123
+ "tags": "Required[dict[str, str]]",
124
+ "created_at": "Required[str]",
125
+ "updated_at": "Required[str]",
126
+ },
127
+ total=False,
128
+ )
129
+ Vpc = TypedDict(
130
+ "Vpc",
131
+ {
132
+ "id": "Required[str]",
133
+ "crn": "Required[str]",
134
+ "name": "Required[str]",
135
+ "description": "NotRequired[str]",
136
+ "cidr_ipv4": "Required[str]",
137
+ "cidr_ipv6": "NotRequired[str | None]",
138
+ "tags": "Required[dict[str, str]]",
139
+ "created_at": "Required[str]",
140
+ "updated_at": "Required[str]",
141
+ },
142
+ total=False,
143
+ )
144
+ CreateEgressOnlyGatewayResponse: TypeAlias = "EgressOnlyGatewayResponse"
145
+ FloatingIpCreateRequestInput = TypedDict(
146
+ "FloatingIpCreateRequestInput",
147
+ {
148
+ "description": "NotRequired[str]",
149
+ "family": "NotRequired[IpFamilyInput]",
150
+ "tags": "NotRequired[dict[str, str]]",
151
+ "health_check": "NotRequired[FloatingIpHealthCheckInput]",
152
+ "visibility": "NotRequired[Literal['public', 'private']]",
153
+ "subnet": "NotRequired[str]",
154
+ },
155
+ total=False,
156
+ )
157
+ IpFamilyInput: TypeAlias = "Literal['ipv4', 'ipv6']"
158
+ FloatingIpHealthCheckInput = TypedDict(
159
+ "FloatingIpHealthCheckInput",
160
+ {
161
+ "protocol": "Required[Literal['tcp', 'http', 'https']]",
162
+ "path": "NotRequired[str]",
163
+ "port": "Required[int]",
164
+ "interval_sec": "Required[int]",
165
+ "timeout_sec": "Required[int]",
166
+ "healthy_threshold": "Required[int]",
167
+ "unhealthy_threshold": "Required[int]",
168
+ "matcher": "NotRequired[str]",
169
+ },
170
+ total=False,
171
+ )
172
+ CreateFloatingIpBody: TypeAlias = "FloatingIpCreateRequestInput"
173
+ FloatingIpResponse = TypedDict(
174
+ "FloatingIpResponse", {"floating_ip": "NotRequired[FloatingIp]"}, total=False
175
+ )
176
+ CreateFloatingIpResponse: TypeAlias = "FloatingIpResponse"
177
+ InterfaceCreateRequestInput = TypedDict(
178
+ "InterfaceCreateRequestInput",
179
+ {
180
+ "subnet": "Required[str]",
181
+ "name": "Required[str]",
182
+ "description": "NotRequired[str]",
183
+ "mac": "NotRequired[str | None]",
184
+ "tags": "NotRequired[dict[str, str]]",
185
+ "addresses": "NotRequired[list[AddressRequestInput]]",
186
+ },
187
+ total=False,
188
+ )
189
+ AddressRequestInput = TypedDict(
190
+ "AddressRequestInput",
191
+ {"family": "Required[Literal['ipv4', 'ipv6']]", "address": "NotRequired[str]"},
192
+ total=False,
193
+ )
194
+ CreateInterfaceBody: TypeAlias = "InterfaceCreateRequestInput"
195
+ InterfaceResponse = TypedDict(
196
+ "InterfaceResponse", {"interface": "NotRequired[Interface]"}, total=False
197
+ )
198
+ Interface = TypedDict(
199
+ "Interface",
200
+ {
201
+ "id": "Required[str]",
202
+ "crn": "Required[str]",
203
+ "subnet": "Required[Subnet]",
204
+ "name": "Required[str]",
205
+ "description": "NotRequired[str]",
206
+ "mac": "Required[str]",
207
+ "attached_to": "NotRequired[str | None]",
208
+ "tags": "Required[dict[str, str]]",
209
+ "created_at": "Required[str]",
210
+ "updated_at": "Required[str]",
211
+ "addresses": "Required[list[InterfaceAddress]]",
212
+ "routed_prefixes": "Required[list[RoutedPrefix]]",
213
+ },
214
+ total=False,
215
+ )
216
+ Subnet = TypedDict(
217
+ "Subnet",
218
+ {
219
+ "id": "Required[str]",
220
+ "crn": "Required[str]",
221
+ "vpc": "Required[Vpc]",
222
+ "route_table": "Required[RouteTableSummary]",
223
+ "name": "Required[str]",
224
+ "description": "NotRequired[str]",
225
+ "cidr_ipv4": "Required[str]",
226
+ "gateway_ipv4": "Required[str]",
227
+ "cidr_ipv6": "NotRequired[str | None]",
228
+ "gateway_ipv6": "NotRequired[str | None]",
229
+ "tags": "Required[dict[str, str]]",
230
+ "created_at": "Required[str]",
231
+ "updated_at": "Required[str]",
232
+ },
233
+ total=False,
234
+ )
235
+ RouteTableSummary: TypeAlias = "RouteTableSummaryObject | None"
236
+ RouteTableSummaryObject = TypedDict(
237
+ "RouteTableSummaryObject",
238
+ {"id": "Required[str]", "crn": "Required[str]", "name": "Required[str]"},
239
+ total=False,
240
+ )
241
+ InterfaceAddress = TypedDict(
242
+ "InterfaceAddress",
243
+ {
244
+ "id": "Required[str]",
245
+ "family": "Required[Literal['ipv4', 'ipv6']]",
246
+ "address": "Required[str]",
247
+ "prefix": "Required[str]",
248
+ "primary": "Required[bool]",
249
+ "floating_ips": "Required[list[AddressFloatingIp]]",
250
+ },
251
+ total=False,
252
+ )
253
+ AddressFloatingIp = TypedDict(
254
+ "AddressFloatingIp",
255
+ {
256
+ "id": "Required[str]",
257
+ "crn": "Required[str]",
258
+ "visibility": "Required[Literal['public', 'private']]",
259
+ "address": "Required[str]",
260
+ },
261
+ total=False,
262
+ )
263
+ RoutedPrefix = TypedDict(
264
+ "RoutedPrefix",
265
+ {
266
+ "id": "Required[str]",
267
+ "pool_id": "Required[str]",
268
+ "family": "Required[Literal['ipv4']]",
269
+ "prefix": "Required[str]",
270
+ },
271
+ total=False,
272
+ )
273
+ CreateInterfaceResponse: TypeAlias = "InterfaceResponse"
274
+ CreateInterfaceAddressBody: TypeAlias = "AddressRequestInput"
275
+ CreateInterfaceAddressResult = TypedDict(
276
+ "CreateInterfaceAddressResult", {"address": "NotRequired[InterfaceAddress]"}, total=False
277
+ )
278
+ CreateInterfaceAddressResponse: TypeAlias = "CreateInterfaceAddressResult"
279
+ CreateInterfacePrefixRequest = TypedDict(
280
+ "CreateInterfacePrefixRequest", {"pool_id": "Required[str]"}, total=False
281
+ )
282
+ CreateInterfacePrefixBody: TypeAlias = "CreateInterfacePrefixRequest"
283
+ CreateInterfacePrefixResult = TypedDict(
284
+ "CreateInterfacePrefixResult",
285
+ {"routed_prefixes": "NotRequired[list[RoutedPrefix]]"},
286
+ total=False,
287
+ )
288
+ CreateInterfacePrefixResponse: TypeAlias = "CreateInterfacePrefixResult"
289
+ InternetGatewayCreateRequestInput = TypedDict(
290
+ "InternetGatewayCreateRequestInput",
291
+ {
292
+ "name": "Required[str]",
293
+ "description": "NotRequired[str]",
294
+ "tags": "NotRequired[dict[str, str]]",
295
+ },
296
+ total=False,
297
+ )
298
+ CreateInternetGatewayBody: TypeAlias = "InternetGatewayCreateRequestInput"
299
+ CreateInternetGatewayResponse: TypeAlias = "InternetGatewayResponse"
300
+ NATGatewayCreateRequestInput = TypedDict(
301
+ "NATGatewayCreateRequestInput",
302
+ {
303
+ "name": "Required[str]",
304
+ "description": "NotRequired[str]",
305
+ "subnet": "Required[str]",
306
+ "tags": "NotRequired[dict[str, str]]",
307
+ },
308
+ total=False,
309
+ )
310
+ CreateNATGatewayBody: TypeAlias = "NATGatewayCreateRequestInput"
311
+ NATGatewayResponse = TypedDict(
312
+ "NATGatewayResponse", {"nat_gateway": "NotRequired[NATGateway]"}, total=False
313
+ )
314
+ NATGateway = TypedDict(
315
+ "NATGateway",
316
+ {
317
+ "id": "Required[str]",
318
+ "crn": "Required[str]",
319
+ "name": "Required[str]",
320
+ "description": "NotRequired[str]",
321
+ "subnet": "Required[Subnet]",
322
+ "public_ipv4": "Required[str]",
323
+ "public_ipv6": "NotRequired[str]",
324
+ "tags": "Required[dict[str, str]]",
325
+ "created_at": "Required[str]",
326
+ "updated_at": "Required[str]",
327
+ },
328
+ total=False,
329
+ )
330
+ CreateNATGatewayResponse: TypeAlias = "NATGatewayResponse"
331
+ CreatePrefixPoolRequest = TypedDict(
332
+ "CreatePrefixPoolRequest", {"cidr_ipv4": "Required[str]"}, total=False
333
+ )
334
+ CreatePrefixPoolBody: TypeAlias = "CreatePrefixPoolRequest"
335
+ CreatePrefixPoolResult = TypedDict(
336
+ "CreatePrefixPoolResult", {"prefix_pools": "NotRequired[list[PrefixPool]]"}, total=False
337
+ )
338
+ PrefixPool = TypedDict(
339
+ "PrefixPool", {"id": "Required[str]", "cidr_ipv4": "Required[str]"}, total=False
340
+ )
341
+ CreatePrefixPoolResponse: TypeAlias = "CreatePrefixPoolResult"
342
+ RouteCreateRequestInput = TypedDict(
343
+ "RouteCreateRequestInput",
344
+ {
345
+ "description": "NotRequired[str]",
346
+ "destination_cidr": "Required[str]",
347
+ "next_hop_ip": "NotRequired[str | None]",
348
+ "target_internet_gateway": "NotRequired[str]",
349
+ "target_nat_gateway": "NotRequired[str]",
350
+ "target_egress_only_gateway": "NotRequired[str]",
351
+ "tags": "NotRequired[dict[str, str]]",
352
+ },
353
+ total=False,
354
+ )
355
+ CreateRouteBody: TypeAlias = "RouteCreateRequestInput"
356
+ RouteResponse = TypedDict("RouteResponse", {"route": "NotRequired[Route]"}, total=False)
357
+ Route = TypedDict(
358
+ "Route",
359
+ {
360
+ "id": "Required[str]",
361
+ "crn": "Required[str]",
362
+ "route_table_id": "Required[str]",
363
+ "description": "NotRequired[str]",
364
+ "destination_cidr": "Required[str]",
365
+ "target_type": "Required[RouteTargetType]",
366
+ "next_hop_ip": "NotRequired[str | None]",
367
+ "target_internet_gateway_id": "NotRequired[str | None]",
368
+ "target_nat_gateway_id": "NotRequired[str | None]",
369
+ "target_egress_only_gateway_id": "NotRequired[str | None]",
370
+ "tags": "Required[dict[str, str]]",
371
+ "created_at": "Required[str]",
372
+ "updated_at": "Required[str]",
373
+ },
374
+ total=False,
375
+ )
376
+ RouteTargetType: TypeAlias = (
377
+ "Literal['ip', 'internet_gateway', 'nat_gateway', 'egress_only_gateway']"
378
+ )
379
+ CreateRouteResponse: TypeAlias = "RouteResponse"
380
+ RouteTableCreateRequestInput = TypedDict(
381
+ "RouteTableCreateRequestInput",
382
+ {
383
+ "vpc": "Required[str]",
384
+ "name": "Required[str]",
385
+ "description": "NotRequired[str]",
386
+ "tags": "NotRequired[dict[str, str]]",
387
+ },
388
+ total=False,
389
+ )
390
+ CreateRouteTableBody: TypeAlias = "RouteTableCreateRequestInput"
391
+ RouteTableResponse = TypedDict(
392
+ "RouteTableResponse", {"route_table": "NotRequired[RouteTable]"}, total=False
393
+ )
394
+ RouteTable = TypedDict(
395
+ "RouteTable",
396
+ {
397
+ "id": "Required[str]",
398
+ "crn": "Required[str]",
399
+ "vpc": "Required[Vpc]",
400
+ "name": "Required[str]",
401
+ "description": "NotRequired[str]",
402
+ "is_main": "Required[bool]",
403
+ "tags": "Required[dict[str, str]]",
404
+ "created_at": "Required[str]",
405
+ "updated_at": "Required[str]",
406
+ },
407
+ total=False,
408
+ )
409
+ CreateRouteTableResponse: TypeAlias = "RouteTableResponse"
410
+ SecurityGroupCreateRequestInput = TypedDict(
411
+ "SecurityGroupCreateRequestInput",
412
+ {
413
+ "name": "Required[str]",
414
+ "description": "NotRequired[str]",
415
+ "tags": "NotRequired[dict[str, str]]",
416
+ },
417
+ total=False,
418
+ )
419
+ CreateSecurityGroupBody: TypeAlias = "SecurityGroupCreateRequestInput"
420
+ SecurityGroupResponse = TypedDict(
421
+ "SecurityGroupResponse", {"security_group": "NotRequired[SecurityGroup]"}, total=False
422
+ )
423
+ SecurityGroup = TypedDict(
424
+ "SecurityGroup",
425
+ {
426
+ "id": "Required[str]",
427
+ "crn": "Required[str]",
428
+ "name": "Required[str]",
429
+ "description": "NotRequired[str]",
430
+ "tags": "Required[dict[str, str]]",
431
+ "created_at": "Required[str]",
432
+ "updated_at": "Required[str]",
433
+ },
434
+ total=False,
435
+ )
436
+ CreateSecurityGroupResponse: TypeAlias = "SecurityGroupResponse"
437
+ SecurityGroupRuleCreateRequestInput = TypedDict(
438
+ "SecurityGroupRuleCreateRequestInput",
439
+ {
440
+ "description": "NotRequired[str]",
441
+ "direction": "Required[SecurityGroupRuleDirectionInput]",
442
+ "ethertype": "NotRequired[SecurityGroupRuleEthertypeInput]",
443
+ "protocol": "Required[SecurityGroupRuleProtocolInput]",
444
+ "port_min": "NotRequired[int | None]",
445
+ "port_max": "NotRequired[int | None]",
446
+ "remote_cidr": "NotRequired[str | None]",
447
+ "source_security_group": "NotRequired[str]",
448
+ },
449
+ total=False,
450
+ )
451
+ SecurityGroupRuleDirectionInput: TypeAlias = "Literal['ingress', 'egress']"
452
+ SecurityGroupRuleEthertypeInput: TypeAlias = "Literal['ipv4', 'ipv6']"
453
+ SecurityGroupRuleProtocolInput: TypeAlias = "Literal['tcp', 'udp', 'icmp', 'all']"
454
+ CreateSecurityGroupRuleBody: TypeAlias = "SecurityGroupRuleCreateRequestInput"
455
+ SecurityGroupRuleResponse = TypedDict(
456
+ "SecurityGroupRuleResponse", {"rule": "NotRequired[SecurityGroupRule]"}, total=False
457
+ )
458
+ SecurityGroupRule = TypedDict(
459
+ "SecurityGroupRule",
460
+ {
461
+ "id": "Required[str]",
462
+ "security_group_id": "Required[str]",
463
+ "description": "NotRequired[str]",
464
+ "direction": "Required[SecurityGroupRuleDirection]",
465
+ "ethertype": "Required[SecurityGroupRuleEthertype]",
466
+ "protocol": "Required[SecurityGroupRuleProtocol]",
467
+ "port_min": "NotRequired[int | None]",
468
+ "port_max": "NotRequired[int | None]",
469
+ "remote_cidr": "NotRequired[str | None]",
470
+ "source_security_group_id": "NotRequired[str | None]",
471
+ "created_at": "Required[str]",
472
+ },
473
+ total=False,
474
+ )
475
+ SecurityGroupRuleDirection: TypeAlias = "Literal['ingress', 'egress']"
476
+ SecurityGroupRuleEthertype: TypeAlias = "Literal['ipv4', 'ipv6']"
477
+ SecurityGroupRuleProtocol: TypeAlias = "Literal['tcp', 'udp', 'icmp', 'all']"
478
+ CreateSecurityGroupRuleResponse: TypeAlias = "SecurityGroupRuleResponse"
479
+ SubnetCreateRequestInput = TypedDict(
480
+ "SubnetCreateRequestInput",
481
+ {
482
+ "vpc": "Required[str]",
483
+ "name": "Required[str]",
484
+ "description": "NotRequired[str]",
485
+ "cidr_ipv4": "Required[str]",
486
+ "gateway_ipv4": "NotRequired[str | None]",
487
+ "route_table": "NotRequired[str]",
488
+ "allocate_cidr_ipv6": "NotRequired[bool]",
489
+ "cidr_ipv6": "NotRequired[str | None]",
490
+ "tags": "NotRequired[dict[str, str]]",
491
+ },
492
+ total=False,
493
+ )
494
+ CreateSubnetBody: TypeAlias = "SubnetCreateRequestInput"
495
+ SubnetResponse = TypedDict("SubnetResponse", {"subnet": "NotRequired[Subnet]"}, total=False)
496
+ CreateSubnetResponse: TypeAlias = "SubnetResponse"
497
+ VpcCreateRequestInput = TypedDict(
498
+ "VpcCreateRequestInput",
499
+ {
500
+ "name": "Required[str]",
501
+ "description": "NotRequired[str]",
502
+ "cidr_ipv4": "Required[str]",
503
+ "allocate_cidr_ipv6": "NotRequired[bool]",
504
+ "tags": "NotRequired[dict[str, str]]",
505
+ "cidr_ipv6": "NotRequired[str]",
506
+ },
507
+ total=False,
508
+ )
509
+ CreateVpcBody: TypeAlias = "VpcCreateRequestInput"
510
+ VpcResponse = TypedDict("VpcResponse", {"vpc": "NotRequired[Vpc]"}, total=False)
511
+ CreateVpcResponse: TypeAlias = "VpcResponse"
512
+ DetachFloatingIpRequest = TypedDict(
513
+ "DetachFloatingIpRequest", {"interface": "NotRequired[str]"}, total=False
514
+ )
515
+ DetachFloatingIpBody: TypeAlias = "DetachFloatingIpRequest"
516
+ DetachFloatingIpResult = TypedDict(
517
+ "DetachFloatingIpResult", {"floating_ip": "NotRequired[FloatingIp]"}, total=False
518
+ )
519
+ DetachFloatingIpResponse: TypeAlias = "DetachFloatingIpResult"
520
+ DetachInternetGatewayResponse: TypeAlias = "InternetGatewayResponse"
521
+ GetEgressOnlyGatewayResponse: TypeAlias = "EgressOnlyGatewayResponse"
522
+ GetEgressOnlyGatewayResource: TypeAlias = "EgressOnlyGateway"
523
+ GetEgressOnlyGatewayScope = TypedDict(
524
+ "GetEgressOnlyGatewayScope", {"limit": "NotRequired[int]"}, total=False
525
+ )
526
+ GetFloatingIpResponse: TypeAlias = "FloatingIpResponse"
527
+ GetFloatingIpResource: TypeAlias = "FloatingIp"
528
+ GetFloatingIpScope = TypedDict(
529
+ "GetFloatingIpScope",
530
+ {"attached_to": "NotRequired[str]", "limit": "NotRequired[int]"},
531
+ total=False,
532
+ )
533
+ GetInterfaceResponse: TypeAlias = "InterfaceResponse"
534
+ GetInterfaceResource: TypeAlias = "Interface"
535
+ GetInterfaceScope = TypedDict(
536
+ "GetInterfaceScope",
537
+ {"subnet": "NotRequired[str]", "vpc": "NotRequired[str]", "limit": "NotRequired[int]"},
538
+ total=False,
539
+ )
540
+ GetInterfaceAddressResult = TypedDict(
541
+ "GetInterfaceAddressResult", {"address": "NotRequired[InterfaceAddress]"}, total=False
542
+ )
543
+ GetInterfaceAddressResponse: TypeAlias = "GetInterfaceAddressResult"
544
+ GetInternetGatewayResponse: TypeAlias = "InternetGatewayResponse"
545
+ GetInternetGatewayResource: TypeAlias = "InternetGateway"
546
+ GetInternetGatewayScope = TypedDict(
547
+ "GetInternetGatewayScope", {"limit": "NotRequired[int]"}, total=False
548
+ )
549
+ GetNATGatewayResponse: TypeAlias = "NATGatewayResponse"
550
+ GetNATGatewayResource: TypeAlias = "NATGateway"
551
+ GetNATGatewayScope = TypedDict(
552
+ "GetNATGatewayScope",
553
+ {"subnet": "NotRequired[str]", "vpc": "NotRequired[str]", "limit": "NotRequired[int]"},
554
+ total=False,
555
+ )
556
+ GetRouteResponse: TypeAlias = "RouteResponse"
557
+ GetRouteResource: TypeAlias = "Route"
558
+ GetRouteScope = TypedDict("GetRouteScope", {"limit": "NotRequired[int]"}, total=False)
559
+ GetRouteTableResponse: TypeAlias = "RouteTableResponse"
560
+ GetRouteTableResource: TypeAlias = "RouteTable"
561
+ GetRouteTableScope = TypedDict(
562
+ "GetRouteTableScope", {"vpc": "NotRequired[str]", "limit": "NotRequired[int]"}, total=False
563
+ )
564
+ GetSecurityGroupResponse: TypeAlias = "SecurityGroupResponse"
565
+ GetSecurityGroupResource: TypeAlias = "SecurityGroup"
566
+ GetSecurityGroupScope = TypedDict(
567
+ "GetSecurityGroupScope", {"limit": "NotRequired[int]"}, total=False
568
+ )
569
+ GetSecurityGroupRuleResponse: TypeAlias = "SecurityGroupRuleResponse"
570
+ GetSecurityGroupRuleResource: TypeAlias = "SecurityGroupRule"
571
+ GetSecurityGroupRuleScope = TypedDict(
572
+ "GetSecurityGroupRuleScope", {"limit": "NotRequired[int]"}, total=False
573
+ )
574
+ GetSubnetResponse: TypeAlias = "SubnetResponse"
575
+ GetSubnetResource: TypeAlias = "Subnet"
576
+ GetSubnetScope = TypedDict(
577
+ "GetSubnetScope", {"vpc": "NotRequired[str]", "limit": "NotRequired[int]"}, total=False
578
+ )
579
+ GetVpcResponse: TypeAlias = "VpcResponse"
580
+ GetVpcResource: TypeAlias = "Vpc"
581
+ GetVpcScope = TypedDict("GetVpcScope", {"limit": "NotRequired[int]"}, total=False)
582
+ ListEgressOnlyGatewayRoutesParameters = TypedDict(
583
+ "ListEgressOnlyGatewayRoutesParameters",
584
+ {
585
+ "name": "NotRequired[str]",
586
+ "crn": "NotRequired[str]",
587
+ "limit": "NotRequired[int]",
588
+ "marker": "NotRequired[str]",
589
+ },
590
+ total=False,
591
+ )
592
+ ListEgressOnlyGatewayRoutesQuery: TypeAlias = "ListEgressOnlyGatewayRoutesParameters"
593
+ GatewayRouteListResponse = TypedDict(
594
+ "GatewayRouteListResponse",
595
+ {"routes": "Required[list[GatewayRoute]]", "meta": "Required[PaginationMeta]"},
596
+ total=False,
597
+ )
598
+ GatewayRoute = TypedDict(
599
+ "GatewayRoute",
600
+ {
601
+ "id": "Required[str]",
602
+ "crn": "Required[str]",
603
+ "route_table_id": "Required[str]",
604
+ "description": "NotRequired[str]",
605
+ "destination_cidr": "Required[str]",
606
+ "target_type": "Required[RouteTargetType]",
607
+ "next_hop_ip": "NotRequired[str | None]",
608
+ "target_internet_gateway_id": "NotRequired[str | None]",
609
+ "target_nat_gateway_id": "NotRequired[str | None]",
610
+ "target_egress_only_gateway_id": "NotRequired[str | None]",
611
+ "tags": "Required[dict[str, str]]",
612
+ "created_at": "Required[str]",
613
+ "updated_at": "Required[str]",
614
+ "route_table": "Required[RouteTableSummary]",
615
+ },
616
+ total=False,
617
+ )
618
+ PaginationMeta = TypedDict(
619
+ "PaginationMeta",
620
+ {
621
+ "total": "NotRequired[int]",
622
+ "limit": "NotRequired[int]",
623
+ "marker": "NotRequired[str]",
624
+ "has_more": "NotRequired[bool]",
625
+ },
626
+ total=False,
627
+ )
628
+ ListEgressOnlyGatewayRoutesResponse: TypeAlias = "GatewayRouteListResponse"
629
+ ListEgressOnlyGatewayRoutesItem: TypeAlias = "GatewayRoute"
630
+ ListEgressOnlyGatewaysParameters = TypedDict(
631
+ "ListEgressOnlyGatewaysParameters",
632
+ {
633
+ "name": "NotRequired[str]",
634
+ "crn": "NotRequired[str]",
635
+ "limit": "NotRequired[int]",
636
+ "marker": "NotRequired[str]",
637
+ },
638
+ total=False,
639
+ )
640
+ ListEgressOnlyGatewaysQuery: TypeAlias = "ListEgressOnlyGatewaysParameters"
641
+ EgressOnlyGatewayListResponse = TypedDict(
642
+ "EgressOnlyGatewayListResponse",
643
+ {
644
+ "egress_only_gateways": "Required[list[EgressOnlyGateway]]",
645
+ "meta": "Required[PaginationMeta]",
646
+ },
647
+ total=False,
648
+ )
649
+ ListEgressOnlyGatewaysResponse: TypeAlias = "EgressOnlyGatewayListResponse"
650
+ ListEgressOnlyGatewaysItem: TypeAlias = "EgressOnlyGateway"
651
+ ListFloatingIpsParameters = TypedDict(
652
+ "ListFloatingIpsParameters",
653
+ {
654
+ "name": "NotRequired[str]",
655
+ "crn": "NotRequired[str]",
656
+ "attached_to": "NotRequired[str]",
657
+ "limit": "NotRequired[int]",
658
+ "marker": "NotRequired[str]",
659
+ },
660
+ total=False,
661
+ )
662
+ ListFloatingIpsQuery: TypeAlias = "ListFloatingIpsParameters"
663
+ FloatingIpListResponse = TypedDict(
664
+ "FloatingIpListResponse",
665
+ {"floating_ips": "Required[list[FloatingIp]]", "meta": "Required[PaginationMeta]"},
666
+ total=False,
667
+ )
668
+ ListFloatingIpsResponse: TypeAlias = "FloatingIpListResponse"
669
+ ListFloatingIpsItem: TypeAlias = "FloatingIp"
670
+ ListInterfaceAddressesResult = TypedDict(
671
+ "ListInterfaceAddressesResult",
672
+ {"addresses": "NotRequired[list[InterfaceAddress]]"},
673
+ total=False,
674
+ )
675
+ ListInterfaceAddressesResponse: TypeAlias = "ListInterfaceAddressesResult"
676
+ ListInterfaceAddressesItem: TypeAlias = "InterfaceAddress"
677
+ ListInterfacePrefixesResult = TypedDict(
678
+ "ListInterfacePrefixesResult",
679
+ {"routed_prefixes": "NotRequired[list[RoutedPrefix]]"},
680
+ total=False,
681
+ )
682
+ ListInterfacePrefixesResponse: TypeAlias = "ListInterfacePrefixesResult"
683
+ ListInterfacePrefixesItem: TypeAlias = "RoutedPrefix"
684
+ ListInterfaceSecurityGroupsParameters = TypedDict(
685
+ "ListInterfaceSecurityGroupsParameters",
686
+ {"name": "NotRequired[str]", "crn": "NotRequired[str]"},
687
+ total=False,
688
+ )
689
+ ListInterfaceSecurityGroupsQuery: TypeAlias = "ListInterfaceSecurityGroupsParameters"
690
+ InterfaceSecurityGroupsResponse = TypedDict(
691
+ "InterfaceSecurityGroupsResponse", {"security_group_ids": "Required[list[str]]"}, total=False
692
+ )
693
+ ListInterfaceSecurityGroupsResponse: TypeAlias = "InterfaceSecurityGroupsResponse"
694
+ ListInterfaceSecurityGroupsItem: TypeAlias = "str"
695
+ ListInterfacesParameters = TypedDict(
696
+ "ListInterfacesParameters",
697
+ {
698
+ "name": "NotRequired[str]",
699
+ "crn": "NotRequired[str]",
700
+ "subnet": "NotRequired[str]",
701
+ "vpc": "NotRequired[str]",
702
+ "limit": "NotRequired[int]",
703
+ "marker": "NotRequired[str]",
704
+ },
705
+ total=False,
706
+ )
707
+ ListInterfacesQuery: TypeAlias = "ListInterfacesParameters"
708
+ InterfaceListResponse = TypedDict(
709
+ "InterfaceListResponse",
710
+ {"interfaces": "Required[list[Interface]]", "meta": "Required[PaginationMeta]"},
711
+ total=False,
712
+ )
713
+ ListInterfacesResponse: TypeAlias = "InterfaceListResponse"
714
+ ListInterfacesItem: TypeAlias = "Interface"
715
+ ListInternetGatewayRoutesParameters = TypedDict(
716
+ "ListInternetGatewayRoutesParameters",
717
+ {
718
+ "name": "NotRequired[str]",
719
+ "crn": "NotRequired[str]",
720
+ "limit": "NotRequired[int]",
721
+ "marker": "NotRequired[str]",
722
+ },
723
+ total=False,
724
+ )
725
+ ListInternetGatewayRoutesQuery: TypeAlias = "ListInternetGatewayRoutesParameters"
726
+ ListInternetGatewayRoutesResponse: TypeAlias = "GatewayRouteListResponse"
727
+ ListInternetGatewayRoutesItem: TypeAlias = "GatewayRoute"
728
+ ListInternetGatewaysParameters = TypedDict(
729
+ "ListInternetGatewaysParameters",
730
+ {
731
+ "name": "NotRequired[str]",
732
+ "crn": "NotRequired[str]",
733
+ "limit": "NotRequired[int]",
734
+ "marker": "NotRequired[str]",
735
+ },
736
+ total=False,
737
+ )
738
+ ListInternetGatewaysQuery: TypeAlias = "ListInternetGatewaysParameters"
739
+ InternetGatewayListResponse = TypedDict(
740
+ "InternetGatewayListResponse",
741
+ {"internet_gateways": "Required[list[InternetGateway]]", "meta": "Required[PaginationMeta]"},
742
+ total=False,
743
+ )
744
+ ListInternetGatewaysResponse: TypeAlias = "InternetGatewayListResponse"
745
+ ListInternetGatewaysItem: TypeAlias = "InternetGateway"
746
+ ListNATGatewayRoutesParameters = TypedDict(
747
+ "ListNATGatewayRoutesParameters",
748
+ {
749
+ "name": "NotRequired[str]",
750
+ "crn": "NotRequired[str]",
751
+ "limit": "NotRequired[int]",
752
+ "marker": "NotRequired[str]",
753
+ },
754
+ total=False,
755
+ )
756
+ ListNATGatewayRoutesQuery: TypeAlias = "ListNATGatewayRoutesParameters"
757
+ ListNATGatewayRoutesResponse: TypeAlias = "GatewayRouteListResponse"
758
+ ListNATGatewayRoutesItem: TypeAlias = "GatewayRoute"
759
+ ListNATGatewaysParameters = TypedDict(
760
+ "ListNATGatewaysParameters",
761
+ {
762
+ "name": "NotRequired[str]",
763
+ "crn": "NotRequired[str]",
764
+ "subnet": "NotRequired[str]",
765
+ "vpc": "NotRequired[str]",
766
+ "limit": "NotRequired[int]",
767
+ "marker": "NotRequired[str]",
768
+ },
769
+ total=False,
770
+ )
771
+ ListNATGatewaysQuery: TypeAlias = "ListNATGatewaysParameters"
772
+ NATGatewayListResponse = TypedDict(
773
+ "NATGatewayListResponse",
774
+ {"nat_gateways": "Required[list[NATGateway]]", "meta": "Required[PaginationMeta]"},
775
+ total=False,
776
+ )
777
+ ListNATGatewaysResponse: TypeAlias = "NATGatewayListResponse"
778
+ ListNATGatewaysItem: TypeAlias = "NATGateway"
779
+ ListPrefixPoolsResult = TypedDict(
780
+ "ListPrefixPoolsResult", {"prefix_pools": "NotRequired[list[PrefixPool]]"}, total=False
781
+ )
782
+ ListPrefixPoolsResponse: TypeAlias = "ListPrefixPoolsResult"
783
+ ListPrefixPoolsItem: TypeAlias = "PrefixPool"
784
+ ListRouteTablesParameters = TypedDict(
785
+ "ListRouteTablesParameters",
786
+ {
787
+ "name": "NotRequired[str]",
788
+ "crn": "NotRequired[str]",
789
+ "vpc": "NotRequired[str]",
790
+ "limit": "NotRequired[int]",
791
+ "marker": "NotRequired[str]",
792
+ },
793
+ total=False,
794
+ )
795
+ ListRouteTablesQuery: TypeAlias = "ListRouteTablesParameters"
796
+ RouteTableListResponse = TypedDict(
797
+ "RouteTableListResponse",
798
+ {"route_tables": "Required[list[RouteTable]]", "meta": "Required[PaginationMeta]"},
799
+ total=False,
800
+ )
801
+ ListRouteTablesResponse: TypeAlias = "RouteTableListResponse"
802
+ ListRouteTablesItem: TypeAlias = "RouteTable"
803
+ ListRoutesParameters = TypedDict(
804
+ "ListRoutesParameters",
805
+ {
806
+ "name": "NotRequired[str]",
807
+ "crn": "NotRequired[str]",
808
+ "limit": "NotRequired[int]",
809
+ "marker": "NotRequired[str]",
810
+ },
811
+ total=False,
812
+ )
813
+ ListRoutesQuery: TypeAlias = "ListRoutesParameters"
814
+ RouteListResponse = TypedDict(
815
+ "RouteListResponse",
816
+ {"routes": "Required[list[Route]]", "meta": "Required[PaginationMeta]"},
817
+ total=False,
818
+ )
819
+ ListRoutesResponse: TypeAlias = "RouteListResponse"
820
+ ListRoutesItem: TypeAlias = "Route"
821
+ ListSecurityGroupRulesParameters = TypedDict(
822
+ "ListSecurityGroupRulesParameters",
823
+ {
824
+ "name": "NotRequired[str]",
825
+ "crn": "NotRequired[str]",
826
+ "limit": "NotRequired[int]",
827
+ "marker": "NotRequired[str]",
828
+ },
829
+ total=False,
830
+ )
831
+ ListSecurityGroupRulesQuery: TypeAlias = "ListSecurityGroupRulesParameters"
832
+ SecurityGroupRuleListResponse = TypedDict(
833
+ "SecurityGroupRuleListResponse",
834
+ {"rules": "Required[list[SecurityGroupRule]]", "meta": "Required[PaginationMeta]"},
835
+ total=False,
836
+ )
837
+ ListSecurityGroupRulesResponse: TypeAlias = "SecurityGroupRuleListResponse"
838
+ ListSecurityGroupRulesItem: TypeAlias = "SecurityGroupRule"
839
+ ListSecurityGroupsParameters = TypedDict(
840
+ "ListSecurityGroupsParameters",
841
+ {
842
+ "name": "NotRequired[str]",
843
+ "crn": "NotRequired[str]",
844
+ "limit": "NotRequired[int]",
845
+ "marker": "NotRequired[str]",
846
+ },
847
+ total=False,
848
+ )
849
+ ListSecurityGroupsQuery: TypeAlias = "ListSecurityGroupsParameters"
850
+ SecurityGroupListResponse = TypedDict(
851
+ "SecurityGroupListResponse",
852
+ {"security_groups": "Required[list[SecurityGroup]]", "meta": "Required[PaginationMeta]"},
853
+ total=False,
854
+ )
855
+ ListSecurityGroupsResponse: TypeAlias = "SecurityGroupListResponse"
856
+ ListSecurityGroupsItem: TypeAlias = "SecurityGroup"
857
+ ListSubnetsParameters = TypedDict(
858
+ "ListSubnetsParameters",
859
+ {
860
+ "name": "NotRequired[str]",
861
+ "crn": "NotRequired[str]",
862
+ "vpc": "NotRequired[str]",
863
+ "limit": "NotRequired[int]",
864
+ "marker": "NotRequired[str]",
865
+ },
866
+ total=False,
867
+ )
868
+ ListSubnetsQuery: TypeAlias = "ListSubnetsParameters"
869
+ SubnetListResponse = TypedDict(
870
+ "SubnetListResponse",
871
+ {"subnets": "Required[list[Subnet]]", "meta": "Required[PaginationMeta]"},
872
+ total=False,
873
+ )
874
+ ListSubnetsResponse: TypeAlias = "SubnetListResponse"
875
+ ListSubnetsItem: TypeAlias = "Subnet"
876
+ ListVpcsParameters = TypedDict(
877
+ "ListVpcsParameters",
878
+ {
879
+ "name": "NotRequired[str]",
880
+ "crn": "NotRequired[str]",
881
+ "limit": "NotRequired[int]",
882
+ "marker": "NotRequired[str]",
883
+ },
884
+ total=False,
885
+ )
886
+ ListVpcsQuery: TypeAlias = "ListVpcsParameters"
887
+ VpcListResponse = TypedDict(
888
+ "VpcListResponse",
889
+ {"vpcs": "Required[list[Vpc]]", "meta": "Required[PaginationMeta]"},
890
+ total=False,
891
+ )
892
+ ListVpcsResponse: TypeAlias = "VpcListResponse"
893
+ ListVpcsItem: TypeAlias = "Vpc"
894
+ InterfaceSecurityGroupsRequestInput = TypedDict(
895
+ "InterfaceSecurityGroupsRequestInput", {"security_groups": "Required[list[str]]"}, total=False
896
+ )
897
+ SetInterfaceSecurityGroupsBody: TypeAlias = "InterfaceSecurityGroupsRequestInput"
898
+ SetInterfaceSecurityGroupsResponse: TypeAlias = "InterfaceSecurityGroupsResponse"
899
+ EgressOnlyGatewayUpdateRequestInput = TypedDict(
900
+ "EgressOnlyGatewayUpdateRequestInput",
901
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
902
+ total=False,
903
+ )
904
+ UpdateEgressOnlyGatewayBody: TypeAlias = "EgressOnlyGatewayUpdateRequestInput"
905
+ UpdateEgressOnlyGatewayResponse: TypeAlias = "EgressOnlyGatewayResponse"
906
+ FloatingIpUpdateRequestInput = TypedDict(
907
+ "FloatingIpUpdateRequestInput",
908
+ {
909
+ "description": "NotRequired[str | None]",
910
+ "tags": "NotRequired[dict[str, str]]",
911
+ "health_check": "NotRequired[FloatingIpHealthCheckInput | None]",
912
+ },
913
+ total=False,
914
+ )
915
+ UpdateFloatingIpBody: TypeAlias = "FloatingIpUpdateRequestInput"
916
+ UpdateFloatingIpResponse: TypeAlias = "FloatingIpResponse"
917
+ InterfaceUpdateRequestInput = TypedDict(
918
+ "InterfaceUpdateRequestInput",
919
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
920
+ total=False,
921
+ )
922
+ UpdateInterfaceBody: TypeAlias = "InterfaceUpdateRequestInput"
923
+ UpdateInterfaceResponse: TypeAlias = "InterfaceResponse"
924
+ InternetGatewayUpdateRequestInput = TypedDict(
925
+ "InternetGatewayUpdateRequestInput",
926
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
927
+ total=False,
928
+ )
929
+ UpdateInternetGatewayBody: TypeAlias = "InternetGatewayUpdateRequestInput"
930
+ UpdateInternetGatewayResponse: TypeAlias = "InternetGatewayResponse"
931
+ NATGatewayUpdateRequestInput = TypedDict(
932
+ "NATGatewayUpdateRequestInput",
933
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
934
+ total=False,
935
+ )
936
+ UpdateNATGatewayBody: TypeAlias = "NATGatewayUpdateRequestInput"
937
+ UpdateNATGatewayResponse: TypeAlias = "NATGatewayResponse"
938
+ RouteUpdateRequestInput = TypedDict(
939
+ "RouteUpdateRequestInput",
940
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
941
+ total=False,
942
+ )
943
+ UpdateRouteBody: TypeAlias = "RouteUpdateRequestInput"
944
+ UpdateRouteResponse: TypeAlias = "RouteResponse"
945
+ RouteTableUpdateRequestInput = TypedDict(
946
+ "RouteTableUpdateRequestInput",
947
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
948
+ total=False,
949
+ )
950
+ UpdateRouteTableBody: TypeAlias = "RouteTableUpdateRequestInput"
951
+ UpdateRouteTableResponse: TypeAlias = "RouteTableResponse"
952
+ SecurityGroupUpdateRequestInput = TypedDict(
953
+ "SecurityGroupUpdateRequestInput",
954
+ {"description": "NotRequired[str | None]", "tags": "NotRequired[dict[str, str]]"},
955
+ total=False,
956
+ )
957
+ UpdateSecurityGroupBody: TypeAlias = "SecurityGroupUpdateRequestInput"
958
+ UpdateSecurityGroupResponse: TypeAlias = "SecurityGroupResponse"
959
+ SubnetUpdateRequestInput = TypedDict(
960
+ "SubnetUpdateRequestInput",
961
+ {
962
+ "description": "NotRequired[str | None]",
963
+ "route_table": "NotRequired[str]",
964
+ "tags": "NotRequired[dict[str, str]]",
965
+ "allocate_cidr_ipv6": "NotRequired[bool]",
966
+ "cidr_ipv6": "NotRequired[str | None]",
967
+ "copy_ipv4_security_rules": "NotRequired[bool]",
968
+ "ipv6_routing": "NotRequired[Literal['match_ipv4', 'unchanged', 'internet_gateway', 'nat_gateway', 'egress_only_gateway']]",
969
+ },
970
+ total=False,
971
+ )
972
+ UpdateSubnetBody: TypeAlias = "SubnetUpdateRequestInput"
973
+ UpdateSubnetResponse: TypeAlias = "SubnetResponse"
974
+ VpcUpdateRequestInput = TypedDict(
975
+ "VpcUpdateRequestInput",
976
+ {
977
+ "description": "NotRequired[str | None]",
978
+ "tags": "NotRequired[dict[str, str]]",
979
+ "allocate_cidr_ipv6": "NotRequired[bool]",
980
+ "cidr_ipv6": "NotRequired[str]",
981
+ },
982
+ total=False,
983
+ )
984
+ UpdateVpcBody: TypeAlias = "VpcUpdateRequestInput"
985
+ UpdateVpcResponse: TypeAlias = "VpcResponse"