aws-sdk-ec2 1.431.0 → 1.522.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +465 -0
  3. data/VERSION +1 -1
  4. data/lib/aws-sdk-ec2/classic_address.rb +26 -16
  5. data/lib/aws-sdk-ec2/client.rb +10867 -4155
  6. data/lib/aws-sdk-ec2/client_api.rb +2924 -510
  7. data/lib/aws-sdk-ec2/customizations/instance.rb +18 -1
  8. data/lib/aws-sdk-ec2/customizations/resource.rb +46 -3
  9. data/lib/aws-sdk-ec2/customizations/tag.rb +13 -0
  10. data/lib/aws-sdk-ec2/customizations.rb +0 -22
  11. data/lib/aws-sdk-ec2/dhcp_options.rb +12 -12
  12. data/lib/aws-sdk-ec2/endpoint_parameters.rb +9 -6
  13. data/lib/aws-sdk-ec2/endpoint_provider.rb +14 -18
  14. data/lib/aws-sdk-ec2/endpoints.rb +2 -8608
  15. data/lib/aws-sdk-ec2/image.rb +166 -95
  16. data/lib/aws-sdk-ec2/instance.rb +425 -356
  17. data/lib/aws-sdk-ec2/internet_gateway.rb +7 -7
  18. data/lib/aws-sdk-ec2/key_pair.rb +14 -14
  19. data/lib/aws-sdk-ec2/key_pair_info.rb +30 -30
  20. data/lib/aws-sdk-ec2/nat_gateway.rb +7 -8
  21. data/lib/aws-sdk-ec2/network_acl.rb +70 -70
  22. data/lib/aws-sdk-ec2/network_interface.rb +94 -78
  23. data/lib/aws-sdk-ec2/network_interface_association.rb +3 -3
  24. data/lib/aws-sdk-ec2/placement_group.rb +37 -19
  25. data/lib/aws-sdk-ec2/plugins/endpoints.rb +20 -1242
  26. data/lib/aws-sdk-ec2/resource.rb +944 -811
  27. data/lib/aws-sdk-ec2/route.rb +34 -34
  28. data/lib/aws-sdk-ec2/route_table.rb +44 -44
  29. data/lib/aws-sdk-ec2/route_table_association.rb +3 -3
  30. data/lib/aws-sdk-ec2/security_group.rb +212 -201
  31. data/lib/aws-sdk-ec2/snapshot.rb +169 -105
  32. data/lib/aws-sdk-ec2/subnet.rb +391 -359
  33. data/lib/aws-sdk-ec2/tag.rb +7 -4
  34. data/lib/aws-sdk-ec2/types.rb +13807 -4774
  35. data/lib/aws-sdk-ec2/volume.rb +157 -119
  36. data/lib/aws-sdk-ec2/vpc.rb +278 -224
  37. data/lib/aws-sdk-ec2/vpc_address.rb +31 -21
  38. data/lib/aws-sdk-ec2/vpc_peering_connection.rb +6 -6
  39. data/lib/aws-sdk-ec2.rb +40 -36
  40. data/sig/classic_address.rbs +105 -0
  41. data/sig/client.rbs +14622 -0
  42. data/sig/dhcp_options.rbs +84 -0
  43. data/sig/errors.rbs +16 -0
  44. data/sig/image.rbs +228 -0
  45. data/sig/instance.rbs +564 -0
  46. data/sig/internet_gateway.rbs +91 -0
  47. data/sig/key_pair.rbs +54 -0
  48. data/sig/key_pair_info.rbs +63 -0
  49. data/sig/nat_gateway.rbs +107 -0
  50. data/sig/network_acl.rbs +144 -0
  51. data/sig/network_interface.rbs +239 -0
  52. data/sig/network_interface_association.rbs +62 -0
  53. data/sig/placement_group.rbs +78 -0
  54. data/sig/resource.rbs +1042 -0
  55. data/sig/route.rbs +113 -0
  56. data/sig/route_table.rbs +117 -0
  57. data/sig/route_table_association.rbs +69 -0
  58. data/sig/security_group.rbs +311 -0
  59. data/sig/snapshot.rbs +204 -0
  60. data/sig/subnet.rbs +436 -0
  61. data/sig/tag.rbs +63 -0
  62. data/sig/types.rbs +16812 -0
  63. data/sig/volume.rbs +210 -0
  64. data/sig/vpc.rbs +404 -0
  65. data/sig/vpc_address.rbs +101 -0
  66. data/sig/vpc_peering_connection.rbs +84 -0
  67. data/sig/waiters.rbs +664 -0
  68. metadata +44 -18
data/sig/resource.rbs ADDED
@@ -0,0 +1,1042 @@
1
+ # WARNING ABOUT GENERATED CODE
2
+ #
3
+ # This file is generated. See the contributing guide for more information:
4
+ # https://github.com/aws/aws-sdk-ruby/blob/version-3/CONTRIBUTING.md
5
+ #
6
+ # WARNING ABOUT GENERATED CODE
7
+
8
+ module Aws
9
+ module EC2
10
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html
11
+ class Resource
12
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#initialize-instance_method
13
+ def initialize: (
14
+ ?client: Client,
15
+ ?credentials: untyped,
16
+ ?region: String,
17
+ ?access_key_id: String,
18
+ ?account_id: String,
19
+ ?active_endpoint_cache: bool,
20
+ ?adaptive_retry_wait_to_fill: bool,
21
+ ?client_side_monitoring: bool,
22
+ ?client_side_monitoring_client_id: String,
23
+ ?client_side_monitoring_host: String,
24
+ ?client_side_monitoring_port: Integer,
25
+ ?client_side_monitoring_publisher: untyped,
26
+ ?convert_params: bool,
27
+ ?correct_clock_skew: bool,
28
+ ?defaults_mode: String,
29
+ ?disable_host_prefix_injection: bool,
30
+ ?disable_request_compression: bool,
31
+ ?endpoint: String,
32
+ ?endpoint_cache_max_entries: Integer,
33
+ ?endpoint_cache_max_threads: Integer,
34
+ ?endpoint_cache_poll_interval: Integer,
35
+ ?endpoint_discovery: bool,
36
+ ?ignore_configured_endpoint_urls: bool,
37
+ ?log_formatter: untyped,
38
+ ?log_level: Symbol,
39
+ ?logger: untyped,
40
+ ?max_attempts: Integer,
41
+ ?profile: String,
42
+ ?request_checksum_calculation: String,
43
+ ?request_min_compression_size_bytes: Integer,
44
+ ?response_checksum_validation: String,
45
+ ?retry_backoff: Proc,
46
+ ?retry_base_delay: Float,
47
+ ?retry_jitter: (:none | :equal | :full | ^(Integer) -> Integer),
48
+ ?retry_limit: Integer,
49
+ ?retry_max_delay: Integer,
50
+ ?retry_mode: ("legacy" | "standard" | "adaptive"),
51
+ ?sdk_ua_app_id: String,
52
+ ?secret_access_key: String,
53
+ ?session_token: String,
54
+ ?sigv4a_signing_region_set: Array[String],
55
+ ?stub_responses: untyped,
56
+ ?telemetry_provider: Aws::Telemetry::TelemetryProviderBase,
57
+ ?token_provider: untyped,
58
+ ?use_dualstack_endpoint: bool,
59
+ ?use_fips_endpoint: bool,
60
+ ?validate_params: bool,
61
+ ?endpoint_provider: untyped,
62
+ ?http_proxy: String,
63
+ ?http_open_timeout: (Float | Integer),
64
+ ?http_read_timeout: (Float | Integer),
65
+ ?http_idle_timeout: (Float | Integer),
66
+ ?http_continue_timeout: (Float | Integer),
67
+ ?ssl_timeout: (Float | Integer | nil),
68
+ ?http_wire_trace: bool,
69
+ ?ssl_verify_peer: bool,
70
+ ?ssl_ca_bundle: String,
71
+ ?ssl_ca_directory: String,
72
+ ?ssl_ca_store: String,
73
+ ?on_chunk_received: Proc,
74
+ ?on_chunk_sent: Proc,
75
+ ?raise_response_errors: bool
76
+ ) -> void
77
+ | (?Hash[Symbol, untyped]) -> void
78
+
79
+ def client: () -> Client
80
+
81
+
82
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_dhcp_options-instance_method
83
+ def create_dhcp_options: (
84
+ dhcp_configurations: Array[
85
+ {
86
+ key: ::String?,
87
+ values: Array[::String]?
88
+ },
89
+ ],
90
+ ?tag_specifications: Array[
91
+ {
92
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
93
+ tags: Array[
94
+ {
95
+ key: ::String?,
96
+ value: ::String?
97
+ },
98
+ ]?
99
+ },
100
+ ],
101
+ ?dry_run: bool
102
+ ) -> DhcpOptions
103
+ | (?Hash[Symbol, untyped]) -> DhcpOptions
104
+
105
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_instances-instance_method
106
+ def create_instances: (
107
+ ?block_device_mappings: Array[
108
+ {
109
+ ebs: {
110
+ delete_on_termination: bool?,
111
+ iops: ::Integer?,
112
+ snapshot_id: ::String?,
113
+ volume_size: ::Integer?,
114
+ volume_type: ("standard" | "io1" | "io2" | "gp2" | "sc1" | "st1" | "gp3")?,
115
+ kms_key_id: ::String?,
116
+ throughput: ::Integer?,
117
+ outpost_arn: ::String?,
118
+ encrypted: bool?,
119
+ volume_initialization_rate: ::Integer?
120
+ }?,
121
+ no_device: ::String?,
122
+ device_name: ::String?,
123
+ virtual_name: ::String?
124
+ },
125
+ ],
126
+ ?image_id: ::String,
127
+ ?instance_type: ("a1.medium" | "a1.large" | "a1.xlarge" | "a1.2xlarge" | "a1.4xlarge" | "a1.metal" | "c1.medium" | "c1.xlarge" | "c3.large" | "c3.xlarge" | "c3.2xlarge" | "c3.4xlarge" | "c3.8xlarge" | "c4.large" | "c4.xlarge" | "c4.2xlarge" | "c4.4xlarge" | "c4.8xlarge" | "c5.large" | "c5.xlarge" | "c5.2xlarge" | "c5.4xlarge" | "c5.9xlarge" | "c5.12xlarge" | "c5.18xlarge" | "c5.24xlarge" | "c5.metal" | "c5a.large" | "c5a.xlarge" | "c5a.2xlarge" | "c5a.4xlarge" | "c5a.8xlarge" | "c5a.12xlarge" | "c5a.16xlarge" | "c5a.24xlarge" | "c5ad.large" | "c5ad.xlarge" | "c5ad.2xlarge" | "c5ad.4xlarge" | "c5ad.8xlarge" | "c5ad.12xlarge" | "c5ad.16xlarge" | "c5ad.24xlarge" | "c5d.large" | "c5d.xlarge" | "c5d.2xlarge" | "c5d.4xlarge" | "c5d.9xlarge" | "c5d.12xlarge" | "c5d.18xlarge" | "c5d.24xlarge" | "c5d.metal" | "c5n.large" | "c5n.xlarge" | "c5n.2xlarge" | "c5n.4xlarge" | "c5n.9xlarge" | "c5n.18xlarge" | "c5n.metal" | "c6g.medium" | "c6g.large" | "c6g.xlarge" | "c6g.2xlarge" | "c6g.4xlarge" | "c6g.8xlarge" | "c6g.12xlarge" | "c6g.16xlarge" | "c6g.metal" | "c6gd.medium" | "c6gd.large" | "c6gd.xlarge" | "c6gd.2xlarge" | "c6gd.4xlarge" | "c6gd.8xlarge" | "c6gd.12xlarge" | "c6gd.16xlarge" | "c6gd.metal" | "c6gn.medium" | "c6gn.large" | "c6gn.xlarge" | "c6gn.2xlarge" | "c6gn.4xlarge" | "c6gn.8xlarge" | "c6gn.12xlarge" | "c6gn.16xlarge" | "c6i.large" | "c6i.xlarge" | "c6i.2xlarge" | "c6i.4xlarge" | "c6i.8xlarge" | "c6i.12xlarge" | "c6i.16xlarge" | "c6i.24xlarge" | "c6i.32xlarge" | "c6i.metal" | "cc1.4xlarge" | "cc2.8xlarge" | "cg1.4xlarge" | "cr1.8xlarge" | "d2.xlarge" | "d2.2xlarge" | "d2.4xlarge" | "d2.8xlarge" | "d3.xlarge" | "d3.2xlarge" | "d3.4xlarge" | "d3.8xlarge" | "d3en.xlarge" | "d3en.2xlarge" | "d3en.4xlarge" | "d3en.6xlarge" | "d3en.8xlarge" | "d3en.12xlarge" | "dl1.24xlarge" | "f1.2xlarge" | "f1.4xlarge" | "f1.16xlarge" | "g2.2xlarge" | "g2.8xlarge" | "g3.4xlarge" | "g3.8xlarge" | "g3.16xlarge" | "g3s.xlarge" | "g4ad.xlarge" | "g4ad.2xlarge" | "g4ad.4xlarge" | "g4ad.8xlarge" | "g4ad.16xlarge" | "g4dn.xlarge" | "g4dn.2xlarge" | "g4dn.4xlarge" | "g4dn.8xlarge" | "g4dn.12xlarge" | "g4dn.16xlarge" | "g4dn.metal" | "g5.xlarge" | "g5.2xlarge" | "g5.4xlarge" | "g5.8xlarge" | "g5.12xlarge" | "g5.16xlarge" | "g5.24xlarge" | "g5.48xlarge" | "g5g.xlarge" | "g5g.2xlarge" | "g5g.4xlarge" | "g5g.8xlarge" | "g5g.16xlarge" | "g5g.metal" | "hi1.4xlarge" | "hpc6a.48xlarge" | "hs1.8xlarge" | "h1.2xlarge" | "h1.4xlarge" | "h1.8xlarge" | "h1.16xlarge" | "i2.xlarge" | "i2.2xlarge" | "i2.4xlarge" | "i2.8xlarge" | "i3.large" | "i3.xlarge" | "i3.2xlarge" | "i3.4xlarge" | "i3.8xlarge" | "i3.16xlarge" | "i3.metal" | "i3en.large" | "i3en.xlarge" | "i3en.2xlarge" | "i3en.3xlarge" | "i3en.6xlarge" | "i3en.12xlarge" | "i3en.24xlarge" | "i3en.metal" | "im4gn.large" | "im4gn.xlarge" | "im4gn.2xlarge" | "im4gn.4xlarge" | "im4gn.8xlarge" | "im4gn.16xlarge" | "inf1.xlarge" | "inf1.2xlarge" | "inf1.6xlarge" | "inf1.24xlarge" | "is4gen.medium" | "is4gen.large" | "is4gen.xlarge" | "is4gen.2xlarge" | "is4gen.4xlarge" | "is4gen.8xlarge" | "m1.small" | "m1.medium" | "m1.large" | "m1.xlarge" | "m2.xlarge" | "m2.2xlarge" | "m2.4xlarge" | "m3.medium" | "m3.large" | "m3.xlarge" | "m3.2xlarge" | "m4.large" | "m4.xlarge" | "m4.2xlarge" | "m4.4xlarge" | "m4.10xlarge" | "m4.16xlarge" | "m5.large" | "m5.xlarge" | "m5.2xlarge" | "m5.4xlarge" | "m5.8xlarge" | "m5.12xlarge" | "m5.16xlarge" | "m5.24xlarge" | "m5.metal" | "m5a.large" | "m5a.xlarge" | "m5a.2xlarge" | "m5a.4xlarge" | "m5a.8xlarge" | "m5a.12xlarge" | "m5a.16xlarge" | "m5a.24xlarge" | "m5ad.large" | "m5ad.xlarge" | "m5ad.2xlarge" | "m5ad.4xlarge" | "m5ad.8xlarge" | "m5ad.12xlarge" | "m5ad.16xlarge" | "m5ad.24xlarge" | "m5d.large" | "m5d.xlarge" | "m5d.2xlarge" | "m5d.4xlarge" | "m5d.8xlarge" | "m5d.12xlarge" | "m5d.16xlarge" | "m5d.24xlarge" | "m5d.metal" | "m5dn.large" | "m5dn.xlarge" | "m5dn.2xlarge" | "m5dn.4xlarge" | "m5dn.8xlarge" | "m5dn.12xlarge" | "m5dn.16xlarge" | "m5dn.24xlarge" | "m5dn.metal" | "m5n.large" | "m5n.xlarge" | "m5n.2xlarge" | "m5n.4xlarge" | "m5n.8xlarge" | "m5n.12xlarge" | "m5n.16xlarge" | "m5n.24xlarge" | "m5n.metal" | "m5zn.large" | "m5zn.xlarge" | "m5zn.2xlarge" | "m5zn.3xlarge" | "m5zn.6xlarge" | "m5zn.12xlarge" | "m5zn.metal" | "m6a.large" | "m6a.xlarge" | "m6a.2xlarge" | "m6a.4xlarge" | "m6a.8xlarge" | "m6a.12xlarge" | "m6a.16xlarge" | "m6a.24xlarge" | "m6a.32xlarge" | "m6a.48xlarge" | "m6g.metal" | "m6g.medium" | "m6g.large" | "m6g.xlarge" | "m6g.2xlarge" | "m6g.4xlarge" | "m6g.8xlarge" | "m6g.12xlarge" | "m6g.16xlarge" | "m6gd.metal" | "m6gd.medium" | "m6gd.large" | "m6gd.xlarge" | "m6gd.2xlarge" | "m6gd.4xlarge" | "m6gd.8xlarge" | "m6gd.12xlarge" | "m6gd.16xlarge" | "m6i.large" | "m6i.xlarge" | "m6i.2xlarge" | "m6i.4xlarge" | "m6i.8xlarge" | "m6i.12xlarge" | "m6i.16xlarge" | "m6i.24xlarge" | "m6i.32xlarge" | "m6i.metal" | "mac1.metal" | "p2.xlarge" | "p2.8xlarge" | "p2.16xlarge" | "p3.2xlarge" | "p3.8xlarge" | "p3.16xlarge" | "p3dn.24xlarge" | "p4d.24xlarge" | "r3.large" | "r3.xlarge" | "r3.2xlarge" | "r3.4xlarge" | "r3.8xlarge" | "r4.large" | "r4.xlarge" | "r4.2xlarge" | "r4.4xlarge" | "r4.8xlarge" | "r4.16xlarge" | "r5.large" | "r5.xlarge" | "r5.2xlarge" | "r5.4xlarge" | "r5.8xlarge" | "r5.12xlarge" | "r5.16xlarge" | "r5.24xlarge" | "r5.metal" | "r5a.large" | "r5a.xlarge" | "r5a.2xlarge" | "r5a.4xlarge" | "r5a.8xlarge" | "r5a.12xlarge" | "r5a.16xlarge" | "r5a.24xlarge" | "r5ad.large" | "r5ad.xlarge" | "r5ad.2xlarge" | "r5ad.4xlarge" | "r5ad.8xlarge" | "r5ad.12xlarge" | "r5ad.16xlarge" | "r5ad.24xlarge" | "r5b.large" | "r5b.xlarge" | "r5b.2xlarge" | "r5b.4xlarge" | "r5b.8xlarge" | "r5b.12xlarge" | "r5b.16xlarge" | "r5b.24xlarge" | "r5b.metal" | "r5d.large" | "r5d.xlarge" | "r5d.2xlarge" | "r5d.4xlarge" | "r5d.8xlarge" | "r5d.12xlarge" | "r5d.16xlarge" | "r5d.24xlarge" | "r5d.metal" | "r5dn.large" | "r5dn.xlarge" | "r5dn.2xlarge" | "r5dn.4xlarge" | "r5dn.8xlarge" | "r5dn.12xlarge" | "r5dn.16xlarge" | "r5dn.24xlarge" | "r5dn.metal" | "r5n.large" | "r5n.xlarge" | "r5n.2xlarge" | "r5n.4xlarge" | "r5n.8xlarge" | "r5n.12xlarge" | "r5n.16xlarge" | "r5n.24xlarge" | "r5n.metal" | "r6g.medium" | "r6g.large" | "r6g.xlarge" | "r6g.2xlarge" | "r6g.4xlarge" | "r6g.8xlarge" | "r6g.12xlarge" | "r6g.16xlarge" | "r6g.metal" | "r6gd.medium" | "r6gd.large" | "r6gd.xlarge" | "r6gd.2xlarge" | "r6gd.4xlarge" | "r6gd.8xlarge" | "r6gd.12xlarge" | "r6gd.16xlarge" | "r6gd.metal" | "r6i.large" | "r6i.xlarge" | "r6i.2xlarge" | "r6i.4xlarge" | "r6i.8xlarge" | "r6i.12xlarge" | "r6i.16xlarge" | "r6i.24xlarge" | "r6i.32xlarge" | "r6i.metal" | "t1.micro" | "t2.nano" | "t2.micro" | "t2.small" | "t2.medium" | "t2.large" | "t2.xlarge" | "t2.2xlarge" | "t3.nano" | "t3.micro" | "t3.small" | "t3.medium" | "t3.large" | "t3.xlarge" | "t3.2xlarge" | "t3a.nano" | "t3a.micro" | "t3a.small" | "t3a.medium" | "t3a.large" | "t3a.xlarge" | "t3a.2xlarge" | "t4g.nano" | "t4g.micro" | "t4g.small" | "t4g.medium" | "t4g.large" | "t4g.xlarge" | "t4g.2xlarge" | "u-6tb1.56xlarge" | "u-6tb1.112xlarge" | "u-9tb1.112xlarge" | "u-12tb1.112xlarge" | "u-6tb1.metal" | "u-9tb1.metal" | "u-12tb1.metal" | "u-18tb1.metal" | "u-24tb1.metal" | "vt1.3xlarge" | "vt1.6xlarge" | "vt1.24xlarge" | "x1.16xlarge" | "x1.32xlarge" | "x1e.xlarge" | "x1e.2xlarge" | "x1e.4xlarge" | "x1e.8xlarge" | "x1e.16xlarge" | "x1e.32xlarge" | "x2iezn.2xlarge" | "x2iezn.4xlarge" | "x2iezn.6xlarge" | "x2iezn.8xlarge" | "x2iezn.12xlarge" | "x2iezn.metal" | "x2gd.medium" | "x2gd.large" | "x2gd.xlarge" | "x2gd.2xlarge" | "x2gd.4xlarge" | "x2gd.8xlarge" | "x2gd.12xlarge" | "x2gd.16xlarge" | "x2gd.metal" | "z1d.large" | "z1d.xlarge" | "z1d.2xlarge" | "z1d.3xlarge" | "z1d.6xlarge" | "z1d.12xlarge" | "z1d.metal" | "x2idn.16xlarge" | "x2idn.24xlarge" | "x2idn.32xlarge" | "x2iedn.xlarge" | "x2iedn.2xlarge" | "x2iedn.4xlarge" | "x2iedn.8xlarge" | "x2iedn.16xlarge" | "x2iedn.24xlarge" | "x2iedn.32xlarge" | "c6a.large" | "c6a.xlarge" | "c6a.2xlarge" | "c6a.4xlarge" | "c6a.8xlarge" | "c6a.12xlarge" | "c6a.16xlarge" | "c6a.24xlarge" | "c6a.32xlarge" | "c6a.48xlarge" | "c6a.metal" | "m6a.metal" | "i4i.large" | "i4i.xlarge" | "i4i.2xlarge" | "i4i.4xlarge" | "i4i.8xlarge" | "i4i.16xlarge" | "i4i.32xlarge" | "i4i.metal" | "x2idn.metal" | "x2iedn.metal" | "c7g.medium" | "c7g.large" | "c7g.xlarge" | "c7g.2xlarge" | "c7g.4xlarge" | "c7g.8xlarge" | "c7g.12xlarge" | "c7g.16xlarge" | "mac2.metal" | "c6id.large" | "c6id.xlarge" | "c6id.2xlarge" | "c6id.4xlarge" | "c6id.8xlarge" | "c6id.12xlarge" | "c6id.16xlarge" | "c6id.24xlarge" | "c6id.32xlarge" | "c6id.metal" | "m6id.large" | "m6id.xlarge" | "m6id.2xlarge" | "m6id.4xlarge" | "m6id.8xlarge" | "m6id.12xlarge" | "m6id.16xlarge" | "m6id.24xlarge" | "m6id.32xlarge" | "m6id.metal" | "r6id.large" | "r6id.xlarge" | "r6id.2xlarge" | "r6id.4xlarge" | "r6id.8xlarge" | "r6id.12xlarge" | "r6id.16xlarge" | "r6id.24xlarge" | "r6id.32xlarge" | "r6id.metal" | "r6a.large" | "r6a.xlarge" | "r6a.2xlarge" | "r6a.4xlarge" | "r6a.8xlarge" | "r6a.12xlarge" | "r6a.16xlarge" | "r6a.24xlarge" | "r6a.32xlarge" | "r6a.48xlarge" | "r6a.metal" | "p4de.24xlarge" | "u-3tb1.56xlarge" | "u-18tb1.112xlarge" | "u-24tb1.112xlarge" | "trn1.2xlarge" | "trn1.32xlarge" | "hpc6id.32xlarge" | "c6in.large" | "c6in.xlarge" | "c6in.2xlarge" | "c6in.4xlarge" | "c6in.8xlarge" | "c6in.12xlarge" | "c6in.16xlarge" | "c6in.24xlarge" | "c6in.32xlarge" | "m6in.large" | "m6in.xlarge" | "m6in.2xlarge" | "m6in.4xlarge" | "m6in.8xlarge" | "m6in.12xlarge" | "m6in.16xlarge" | "m6in.24xlarge" | "m6in.32xlarge" | "m6idn.large" | "m6idn.xlarge" | "m6idn.2xlarge" | "m6idn.4xlarge" | "m6idn.8xlarge" | "m6idn.12xlarge" | "m6idn.16xlarge" | "m6idn.24xlarge" | "m6idn.32xlarge" | "r6in.large" | "r6in.xlarge" | "r6in.2xlarge" | "r6in.4xlarge" | "r6in.8xlarge" | "r6in.12xlarge" | "r6in.16xlarge" | "r6in.24xlarge" | "r6in.32xlarge" | "r6idn.large" | "r6idn.xlarge" | "r6idn.2xlarge" | "r6idn.4xlarge" | "r6idn.8xlarge" | "r6idn.12xlarge" | "r6idn.16xlarge" | "r6idn.24xlarge" | "r6idn.32xlarge" | "c7g.metal" | "m7g.medium" | "m7g.large" | "m7g.xlarge" | "m7g.2xlarge" | "m7g.4xlarge" | "m7g.8xlarge" | "m7g.12xlarge" | "m7g.16xlarge" | "m7g.metal" | "r7g.medium" | "r7g.large" | "r7g.xlarge" | "r7g.2xlarge" | "r7g.4xlarge" | "r7g.8xlarge" | "r7g.12xlarge" | "r7g.16xlarge" | "r7g.metal" | "c6in.metal" | "m6in.metal" | "m6idn.metal" | "r6in.metal" | "r6idn.metal" | "inf2.xlarge" | "inf2.8xlarge" | "inf2.24xlarge" | "inf2.48xlarge" | "trn1n.32xlarge" | "i4g.large" | "i4g.xlarge" | "i4g.2xlarge" | "i4g.4xlarge" | "i4g.8xlarge" | "i4g.16xlarge" | "hpc7g.4xlarge" | "hpc7g.8xlarge" | "hpc7g.16xlarge" | "c7gn.medium" | "c7gn.large" | "c7gn.xlarge" | "c7gn.2xlarge" | "c7gn.4xlarge" | "c7gn.8xlarge" | "c7gn.12xlarge" | "c7gn.16xlarge" | "p5.48xlarge" | "m7i.large" | "m7i.xlarge" | "m7i.2xlarge" | "m7i.4xlarge" | "m7i.8xlarge" | "m7i.12xlarge" | "m7i.16xlarge" | "m7i.24xlarge" | "m7i.48xlarge" | "m7i-flex.large" | "m7i-flex.xlarge" | "m7i-flex.2xlarge" | "m7i-flex.4xlarge" | "m7i-flex.8xlarge" | "m7a.medium" | "m7a.large" | "m7a.xlarge" | "m7a.2xlarge" | "m7a.4xlarge" | "m7a.8xlarge" | "m7a.12xlarge" | "m7a.16xlarge" | "m7a.24xlarge" | "m7a.32xlarge" | "m7a.48xlarge" | "m7a.metal-48xl" | "hpc7a.12xlarge" | "hpc7a.24xlarge" | "hpc7a.48xlarge" | "hpc7a.96xlarge" | "c7gd.medium" | "c7gd.large" | "c7gd.xlarge" | "c7gd.2xlarge" | "c7gd.4xlarge" | "c7gd.8xlarge" | "c7gd.12xlarge" | "c7gd.16xlarge" | "m7gd.medium" | "m7gd.large" | "m7gd.xlarge" | "m7gd.2xlarge" | "m7gd.4xlarge" | "m7gd.8xlarge" | "m7gd.12xlarge" | "m7gd.16xlarge" | "r7gd.medium" | "r7gd.large" | "r7gd.xlarge" | "r7gd.2xlarge" | "r7gd.4xlarge" | "r7gd.8xlarge" | "r7gd.12xlarge" | "r7gd.16xlarge" | "r7a.medium" | "r7a.large" | "r7a.xlarge" | "r7a.2xlarge" | "r7a.4xlarge" | "r7a.8xlarge" | "r7a.12xlarge" | "r7a.16xlarge" | "r7a.24xlarge" | "r7a.32xlarge" | "r7a.48xlarge" | "c7i.large" | "c7i.xlarge" | "c7i.2xlarge" | "c7i.4xlarge" | "c7i.8xlarge" | "c7i.12xlarge" | "c7i.16xlarge" | "c7i.24xlarge" | "c7i.48xlarge" | "mac2-m2pro.metal" | "r7iz.large" | "r7iz.xlarge" | "r7iz.2xlarge" | "r7iz.4xlarge" | "r7iz.8xlarge" | "r7iz.12xlarge" | "r7iz.16xlarge" | "r7iz.32xlarge" | "c7a.medium" | "c7a.large" | "c7a.xlarge" | "c7a.2xlarge" | "c7a.4xlarge" | "c7a.8xlarge" | "c7a.12xlarge" | "c7a.16xlarge" | "c7a.24xlarge" | "c7a.32xlarge" | "c7a.48xlarge" | "c7a.metal-48xl" | "r7a.metal-48xl" | "r7i.large" | "r7i.xlarge" | "r7i.2xlarge" | "r7i.4xlarge" | "r7i.8xlarge" | "r7i.12xlarge" | "r7i.16xlarge" | "r7i.24xlarge" | "r7i.48xlarge" | "dl2q.24xlarge" | "mac2-m2.metal" | "i4i.12xlarge" | "i4i.24xlarge" | "c7i.metal-24xl" | "c7i.metal-48xl" | "m7i.metal-24xl" | "m7i.metal-48xl" | "r7i.metal-24xl" | "r7i.metal-48xl" | "r7iz.metal-16xl" | "r7iz.metal-32xl" | "c7gd.metal" | "m7gd.metal" | "r7gd.metal" | "g6.xlarge" | "g6.2xlarge" | "g6.4xlarge" | "g6.8xlarge" | "g6.12xlarge" | "g6.16xlarge" | "g6.24xlarge" | "g6.48xlarge" | "gr6.4xlarge" | "gr6.8xlarge" | "c7i-flex.large" | "c7i-flex.xlarge" | "c7i-flex.2xlarge" | "c7i-flex.4xlarge" | "c7i-flex.8xlarge" | "u7i-12tb.224xlarge" | "u7in-16tb.224xlarge" | "u7in-24tb.224xlarge" | "u7in-32tb.224xlarge" | "u7ib-12tb.224xlarge" | "c7gn.metal" | "r8g.medium" | "r8g.large" | "r8g.xlarge" | "r8g.2xlarge" | "r8g.4xlarge" | "r8g.8xlarge" | "r8g.12xlarge" | "r8g.16xlarge" | "r8g.24xlarge" | "r8g.48xlarge" | "r8g.metal-24xl" | "r8g.metal-48xl" | "mac2-m1ultra.metal" | "g6e.xlarge" | "g6e.2xlarge" | "g6e.4xlarge" | "g6e.8xlarge" | "g6e.12xlarge" | "g6e.16xlarge" | "g6e.24xlarge" | "g6e.48xlarge" | "c8g.medium" | "c8g.large" | "c8g.xlarge" | "c8g.2xlarge" | "c8g.4xlarge" | "c8g.8xlarge" | "c8g.12xlarge" | "c8g.16xlarge" | "c8g.24xlarge" | "c8g.48xlarge" | "c8g.metal-24xl" | "c8g.metal-48xl" | "m8g.medium" | "m8g.large" | "m8g.xlarge" | "m8g.2xlarge" | "m8g.4xlarge" | "m8g.8xlarge" | "m8g.12xlarge" | "m8g.16xlarge" | "m8g.24xlarge" | "m8g.48xlarge" | "m8g.metal-24xl" | "m8g.metal-48xl" | "x8g.medium" | "x8g.large" | "x8g.xlarge" | "x8g.2xlarge" | "x8g.4xlarge" | "x8g.8xlarge" | "x8g.12xlarge" | "x8g.16xlarge" | "x8g.24xlarge" | "x8g.48xlarge" | "x8g.metal-24xl" | "x8g.metal-48xl" | "i7ie.large" | "i7ie.xlarge" | "i7ie.2xlarge" | "i7ie.3xlarge" | "i7ie.6xlarge" | "i7ie.12xlarge" | "i7ie.18xlarge" | "i7ie.24xlarge" | "i7ie.48xlarge" | "i8g.large" | "i8g.xlarge" | "i8g.2xlarge" | "i8g.4xlarge" | "i8g.8xlarge" | "i8g.12xlarge" | "i8g.16xlarge" | "i8g.24xlarge" | "i8g.metal-24xl" | "u7i-6tb.112xlarge" | "u7i-8tb.112xlarge" | "u7inh-32tb.480xlarge" | "p5e.48xlarge" | "p5en.48xlarge" | "f2.12xlarge" | "f2.48xlarge" | "trn2.48xlarge"),
128
+ ?ipv_6_address_count: ::Integer,
129
+ ?ipv_6_addresses: Array[
130
+ {
131
+ ipv_6_address: ::String?,
132
+ is_primary_ipv_6: bool?
133
+ },
134
+ ],
135
+ ?kernel_id: ::String,
136
+ ?key_name: ::String,
137
+ max_count: ::Integer,
138
+ min_count: ::Integer,
139
+ ?monitoring: {
140
+ enabled: bool
141
+ },
142
+ ?placement: {
143
+ affinity: ::String?,
144
+ group_name: ::String?,
145
+ partition_number: ::Integer?,
146
+ host_id: ::String?,
147
+ tenancy: ("default" | "dedicated" | "host")?,
148
+ spread_domain: ::String?,
149
+ host_resource_group_arn: ::String?,
150
+ group_id: ::String?,
151
+ availability_zone: ::String?
152
+ },
153
+ ?ramdisk_id: ::String,
154
+ ?security_group_ids: Array[::String],
155
+ ?security_groups: Array[::String],
156
+ ?subnet_id: ::String,
157
+ ?user_data: ::String,
158
+ ?elastic_gpu_specification: Array[
159
+ {
160
+ type: ::String
161
+ },
162
+ ],
163
+ ?elastic_inference_accelerators: Array[
164
+ {
165
+ type: ::String,
166
+ count: ::Integer?
167
+ },
168
+ ],
169
+ ?tag_specifications: Array[
170
+ {
171
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
172
+ tags: Array[
173
+ {
174
+ key: ::String?,
175
+ value: ::String?
176
+ },
177
+ ]?
178
+ },
179
+ ],
180
+ ?launch_template: {
181
+ launch_template_id: ::String?,
182
+ launch_template_name: ::String?,
183
+ version: ::String?
184
+ },
185
+ ?instance_market_options: {
186
+ market_type: ("spot" | "capacity-block")?,
187
+ spot_options: {
188
+ max_price: ::String?,
189
+ spot_instance_type: ("one-time" | "persistent")?,
190
+ block_duration_minutes: ::Integer?,
191
+ valid_until: ::Time?,
192
+ instance_interruption_behavior: ("hibernate" | "stop" | "terminate")?
193
+ }?
194
+ },
195
+ ?credit_specification: {
196
+ cpu_credits: ::String
197
+ },
198
+ ?cpu_options: {
199
+ core_count: ::Integer?,
200
+ threads_per_core: ::Integer?,
201
+ amd_sev_snp: ("enabled" | "disabled")?
202
+ },
203
+ ?capacity_reservation_specification: {
204
+ capacity_reservation_preference: ("capacity-reservations-only" | "open" | "none")?,
205
+ capacity_reservation_target: {
206
+ capacity_reservation_id: ::String?,
207
+ capacity_reservation_resource_group_arn: ::String?
208
+ }?
209
+ },
210
+ ?hibernation_options: {
211
+ configured: bool?
212
+ },
213
+ ?license_specifications: Array[
214
+ {
215
+ license_configuration_arn: ::String?
216
+ },
217
+ ],
218
+ ?metadata_options: {
219
+ http_tokens: ("optional" | "required")?,
220
+ http_put_response_hop_limit: ::Integer?,
221
+ http_endpoint: ("disabled" | "enabled")?,
222
+ http_protocol_ipv_6: ("disabled" | "enabled")?,
223
+ instance_metadata_tags: ("disabled" | "enabled")?
224
+ },
225
+ ?enclave_options: {
226
+ enabled: bool?
227
+ },
228
+ ?private_dns_name_options: {
229
+ hostname_type: ("ip-name" | "resource-name")?,
230
+ enable_resource_name_dns_a_record: bool?,
231
+ enable_resource_name_dns_aaaa_record: bool?
232
+ },
233
+ ?maintenance_options: {
234
+ auto_recovery: ("disabled" | "default")?
235
+ },
236
+ ?disable_api_stop: bool,
237
+ ?enable_primary_ipv_6: bool,
238
+ ?network_performance_options: {
239
+ bandwidth_weighting: ("default" | "vpc-1" | "ebs-1")?
240
+ },
241
+ ?operator: {
242
+ principal: ::String?
243
+ },
244
+ ?dry_run: bool,
245
+ ?disable_api_termination: bool,
246
+ ?instance_initiated_shutdown_behavior: ("stop" | "terminate"),
247
+ ?private_ip_address: ::String,
248
+ ?client_token: ::String,
249
+ ?additional_info: ::String,
250
+ ?network_interfaces: Array[
251
+ {
252
+ associate_public_ip_address: bool?,
253
+ delete_on_termination: bool?,
254
+ description: ::String?,
255
+ device_index: ::Integer?,
256
+ groups: Array[::String]?,
257
+ ipv_6_address_count: ::Integer?,
258
+ ipv_6_addresses: Array[
259
+ {
260
+ ipv_6_address: ::String?,
261
+ is_primary_ipv_6: bool?
262
+ },
263
+ ]?,
264
+ network_interface_id: ::String?,
265
+ private_ip_address: ::String?,
266
+ private_ip_addresses: Array[
267
+ {
268
+ primary: bool?,
269
+ private_ip_address: ::String?
270
+ },
271
+ ]?,
272
+ secondary_private_ip_address_count: ::Integer?,
273
+ subnet_id: ::String?,
274
+ associate_carrier_ip_address: bool?,
275
+ interface_type: ::String?,
276
+ network_card_index: ::Integer?,
277
+ ipv_4_prefixes: Array[
278
+ {
279
+ ipv_4_prefix: ::String?
280
+ },
281
+ ]?,
282
+ ipv_4_prefix_count: ::Integer?,
283
+ ipv_6_prefixes: Array[
284
+ {
285
+ ipv_6_prefix: ::String?
286
+ },
287
+ ]?,
288
+ ipv_6_prefix_count: ::Integer?,
289
+ primary_ipv_6: bool?,
290
+ ena_srd_specification: {
291
+ ena_srd_enabled: bool?,
292
+ ena_srd_udp_specification: {
293
+ ena_srd_udp_enabled: bool?
294
+ }?
295
+ }?,
296
+ connection_tracking_specification: {
297
+ tcp_established_timeout: ::Integer?,
298
+ udp_stream_timeout: ::Integer?,
299
+ udp_timeout: ::Integer?
300
+ }?,
301
+ ena_queue_count: ::Integer?
302
+ },
303
+ ],
304
+ ?iam_instance_profile: {
305
+ arn: ::String?,
306
+ name: ::String?
307
+ },
308
+ ?ebs_optimized: bool
309
+ ) -> Instance::Collection
310
+ | (?Hash[Symbol, untyped]) -> Instance::Collection
311
+
312
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_internet_gateway-instance_method
313
+ def create_internet_gateway: (
314
+ ?tag_specifications: Array[
315
+ {
316
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
317
+ tags: Array[
318
+ {
319
+ key: ::String?,
320
+ value: ::String?
321
+ },
322
+ ]?
323
+ },
324
+ ],
325
+ ?dry_run: bool
326
+ ) -> InternetGateway
327
+ | (?Hash[Symbol, untyped]) -> InternetGateway
328
+
329
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_key_pair-instance_method
330
+ def create_key_pair: (
331
+ key_name: ::String,
332
+ ?key_type: ("rsa" | "ed25519"),
333
+ ?tag_specifications: Array[
334
+ {
335
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
336
+ tags: Array[
337
+ {
338
+ key: ::String?,
339
+ value: ::String?
340
+ },
341
+ ]?
342
+ },
343
+ ],
344
+ ?key_format: ("pem" | "ppk"),
345
+ ?dry_run: bool
346
+ ) -> KeyPair
347
+ | (?Hash[Symbol, untyped]) -> KeyPair
348
+
349
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_nat_gateway-instance_method
350
+ def create_nat_gateway: (
351
+ ?allocation_id: ::String,
352
+ ?client_token: ::String,
353
+ ?dry_run: bool,
354
+ subnet_id: ::String,
355
+ ?tag_specifications: Array[
356
+ {
357
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
358
+ tags: Array[
359
+ {
360
+ key: ::String?,
361
+ value: ::String?
362
+ },
363
+ ]?
364
+ },
365
+ ],
366
+ ?connectivity_type: ("private" | "public"),
367
+ ?private_ip_address: ::String,
368
+ ?secondary_allocation_ids: Array[::String],
369
+ ?secondary_private_ip_addresses: Array[::String],
370
+ ?secondary_private_ip_address_count: ::Integer
371
+ ) -> NatGateway
372
+ | (?Hash[Symbol, untyped]) -> NatGateway
373
+
374
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_network_acl-instance_method
375
+ def create_network_acl: (
376
+ ?tag_specifications: Array[
377
+ {
378
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
379
+ tags: Array[
380
+ {
381
+ key: ::String?,
382
+ value: ::String?
383
+ },
384
+ ]?
385
+ },
386
+ ],
387
+ ?client_token: ::String,
388
+ ?dry_run: bool,
389
+ vpc_id: ::String
390
+ ) -> NetworkAcl
391
+ | (?Hash[Symbol, untyped]) -> NetworkAcl
392
+
393
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_network_interface-instance_method
394
+ def create_network_interface: (
395
+ ?ipv_4_prefixes: Array[
396
+ {
397
+ ipv_4_prefix: ::String?
398
+ },
399
+ ],
400
+ ?ipv_4_prefix_count: ::Integer,
401
+ ?ipv_6_prefixes: Array[
402
+ {
403
+ ipv_6_prefix: ::String?
404
+ },
405
+ ],
406
+ ?ipv_6_prefix_count: ::Integer,
407
+ ?interface_type: ("efa" | "efa-only" | "branch" | "trunk"),
408
+ ?tag_specifications: Array[
409
+ {
410
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
411
+ tags: Array[
412
+ {
413
+ key: ::String?,
414
+ value: ::String?
415
+ },
416
+ ]?
417
+ },
418
+ ],
419
+ ?client_token: ::String,
420
+ ?enable_primary_ipv_6: bool,
421
+ ?connection_tracking_specification: {
422
+ tcp_established_timeout: ::Integer?,
423
+ udp_stream_timeout: ::Integer?,
424
+ udp_timeout: ::Integer?
425
+ },
426
+ ?operator: {
427
+ principal: ::String?
428
+ },
429
+ subnet_id: ::String,
430
+ ?description: ::String,
431
+ ?private_ip_address: ::String,
432
+ ?groups: Array[::String],
433
+ ?private_ip_addresses: Array[
434
+ {
435
+ primary: bool?,
436
+ private_ip_address: ::String?
437
+ },
438
+ ],
439
+ ?secondary_private_ip_address_count: ::Integer,
440
+ ?ipv_6_addresses: Array[
441
+ {
442
+ ipv_6_address: ::String?,
443
+ is_primary_ipv_6: bool?
444
+ },
445
+ ],
446
+ ?ipv_6_address_count: ::Integer,
447
+ ?dry_run: bool
448
+ ) -> NetworkInterface
449
+ | (?Hash[Symbol, untyped]) -> NetworkInterface
450
+
451
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_placement_group-instance_method
452
+ def create_placement_group: (
453
+ ?partition_count: ::Integer,
454
+ ?tag_specifications: Array[
455
+ {
456
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
457
+ tags: Array[
458
+ {
459
+ key: ::String?,
460
+ value: ::String?
461
+ },
462
+ ]?
463
+ },
464
+ ],
465
+ ?spread_level: ("host" | "rack"),
466
+ ?dry_run: bool,
467
+ ?group_name: ::String,
468
+ ?strategy: ("cluster" | "spread" | "partition")
469
+ ) -> PlacementGroup
470
+ | (?Hash[Symbol, untyped]) -> PlacementGroup
471
+
472
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_route_table-instance_method
473
+ def create_route_table: (
474
+ ?tag_specifications: Array[
475
+ {
476
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
477
+ tags: Array[
478
+ {
479
+ key: ::String?,
480
+ value: ::String?
481
+ },
482
+ ]?
483
+ },
484
+ ],
485
+ ?client_token: ::String,
486
+ ?dry_run: bool,
487
+ vpc_id: ::String
488
+ ) -> RouteTable
489
+ | (?Hash[Symbol, untyped]) -> RouteTable
490
+
491
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_security_group-instance_method
492
+ def create_security_group: (
493
+ description: ::String,
494
+ group_name: ::String,
495
+ ?vpc_id: ::String,
496
+ ?tag_specifications: Array[
497
+ {
498
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
499
+ tags: Array[
500
+ {
501
+ key: ::String?,
502
+ value: ::String?
503
+ },
504
+ ]?
505
+ },
506
+ ],
507
+ ?dry_run: bool
508
+ ) -> SecurityGroup
509
+ | (?Hash[Symbol, untyped]) -> SecurityGroup
510
+
511
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_snapshot-instance_method
512
+ def create_snapshot: (
513
+ ?description: ::String,
514
+ ?outpost_arn: ::String,
515
+ volume_id: ::String,
516
+ ?tag_specifications: Array[
517
+ {
518
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
519
+ tags: Array[
520
+ {
521
+ key: ::String?,
522
+ value: ::String?
523
+ },
524
+ ]?
525
+ },
526
+ ],
527
+ ?location: ("regional" | "local"),
528
+ ?dry_run: bool
529
+ ) -> Snapshot
530
+ | (?Hash[Symbol, untyped]) -> Snapshot
531
+
532
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_subnet-instance_method
533
+ def create_subnet: (
534
+ ?tag_specifications: Array[
535
+ {
536
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
537
+ tags: Array[
538
+ {
539
+ key: ::String?,
540
+ value: ::String?
541
+ },
542
+ ]?
543
+ },
544
+ ],
545
+ ?availability_zone: ::String,
546
+ ?availability_zone_id: ::String,
547
+ ?cidr_block: ::String,
548
+ ?ipv_6_cidr_block: ::String,
549
+ ?outpost_arn: ::String,
550
+ vpc_id: ::String,
551
+ ?ipv_6_native: bool,
552
+ ?ipv_4_ipam_pool_id: ::String,
553
+ ?ipv_4_netmask_length: ::Integer,
554
+ ?ipv_6_ipam_pool_id: ::String,
555
+ ?ipv_6_netmask_length: ::Integer,
556
+ ?dry_run: bool
557
+ ) -> Subnet
558
+ | (?Hash[Symbol, untyped]) -> Subnet
559
+
560
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_tags-instance_method
561
+ def create_tags: (
562
+ ?dry_run: bool,
563
+ resources: Array[::String],
564
+ tags: Array[
565
+ {
566
+ key: ::String?,
567
+ value: ::String?
568
+ },
569
+ ]
570
+ ) -> ::Aws::EmptyStructure
571
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
572
+
573
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#delete_tags-instance_method
574
+ def delete_tags: (
575
+ ?dry_run: bool,
576
+ resources: Array[::String],
577
+ ?tags: Array[
578
+ {
579
+ key: ::String?,
580
+ value: ::String?
581
+ },
582
+ ]
583
+ ) -> ::Aws::EmptyStructure
584
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
585
+
586
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_volume-instance_method
587
+ def create_volume: (
588
+ availability_zone: ::String,
589
+ ?encrypted: bool,
590
+ ?iops: ::Integer,
591
+ ?kms_key_id: ::String,
592
+ ?outpost_arn: ::String,
593
+ ?size: ::Integer,
594
+ ?snapshot_id: ::String,
595
+ ?volume_type: ("standard" | "io1" | "io2" | "gp2" | "sc1" | "st1" | "gp3"),
596
+ ?tag_specifications: Array[
597
+ {
598
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
599
+ tags: Array[
600
+ {
601
+ key: ::String?,
602
+ value: ::String?
603
+ },
604
+ ]?
605
+ },
606
+ ],
607
+ ?multi_attach_enabled: bool,
608
+ ?throughput: ::Integer,
609
+ ?client_token: ::String,
610
+ ?volume_initialization_rate: ::Integer,
611
+ ?operator: {
612
+ principal: ::String?
613
+ },
614
+ ?dry_run: bool
615
+ ) -> Volume
616
+ | (?Hash[Symbol, untyped]) -> Volume
617
+
618
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_vpc-instance_method
619
+ def create_vpc: (
620
+ ?cidr_block: ::String,
621
+ ?ipv_6_pool: ::String,
622
+ ?ipv_6_cidr_block: ::String,
623
+ ?ipv_4_ipam_pool_id: ::String,
624
+ ?ipv_4_netmask_length: ::Integer,
625
+ ?ipv_6_ipam_pool_id: ::String,
626
+ ?ipv_6_netmask_length: ::Integer,
627
+ ?ipv_6_cidr_block_network_border_group: ::String,
628
+ ?tag_specifications: Array[
629
+ {
630
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
631
+ tags: Array[
632
+ {
633
+ key: ::String?,
634
+ value: ::String?
635
+ },
636
+ ]?
637
+ },
638
+ ],
639
+ ?dry_run: bool,
640
+ ?instance_tenancy: ("default" | "dedicated" | "host"),
641
+ ?amazon_provided_ipv_6_cidr_block: bool
642
+ ) -> Vpc
643
+ | (?Hash[Symbol, untyped]) -> Vpc
644
+
645
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#create_vpc_peering_connection-instance_method
646
+ def create_vpc_peering_connection: (
647
+ ?peer_region: ::String,
648
+ ?tag_specifications: Array[
649
+ {
650
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
651
+ tags: Array[
652
+ {
653
+ key: ::String?,
654
+ value: ::String?
655
+ },
656
+ ]?
657
+ },
658
+ ],
659
+ ?dry_run: bool,
660
+ vpc_id: ::String,
661
+ ?peer_vpc_id: ::String,
662
+ ?peer_owner_id: ::String
663
+ ) -> VpcPeeringConnection
664
+ | (?Hash[Symbol, untyped]) -> VpcPeeringConnection
665
+
666
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#disassociate_route_table-instance_method
667
+ def disassociate_route_table: (
668
+ ?dry_run: bool,
669
+ association_id: ::String
670
+ ) -> ::Aws::EmptyStructure
671
+ | (?Hash[Symbol, untyped]) -> ::Aws::EmptyStructure
672
+
673
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#import_key_pair-instance_method
674
+ def import_key_pair: (
675
+ ?tag_specifications: Array[
676
+ {
677
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
678
+ tags: Array[
679
+ {
680
+ key: ::String?,
681
+ value: ::String?
682
+ },
683
+ ]?
684
+ },
685
+ ],
686
+ ?dry_run: bool,
687
+ key_name: ::String,
688
+ public_key_material: ::String
689
+ ) -> KeyPairInfo
690
+ | (?Hash[Symbol, untyped]) -> KeyPairInfo
691
+
692
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#register_image-instance_method
693
+ def register_image: (
694
+ ?image_location: ::String,
695
+ ?billing_products: Array[::String],
696
+ ?boot_mode: ("legacy-bios" | "uefi" | "uefi-preferred"),
697
+ ?tpm_support: ("v2.0"),
698
+ ?uefi_data: ::String,
699
+ ?imds_support: ("v2.0"),
700
+ ?tag_specifications: Array[
701
+ {
702
+ resource_type: ("capacity-reservation" | "client-vpn-endpoint" | "customer-gateway" | "carrier-gateway" | "coip-pool" | "declarative-policies-report" | "dedicated-host" | "dhcp-options" | "egress-only-internet-gateway" | "elastic-ip" | "elastic-gpu" | "export-image-task" | "export-instance-task" | "fleet" | "fpga-image" | "host-reservation" | "image" | "import-image-task" | "import-snapshot-task" | "instance" | "instance-event-window" | "internet-gateway" | "ipam" | "ipam-pool" | "ipam-scope" | "ipv4pool-ec2" | "ipv6pool-ec2" | "key-pair" | "launch-template" | "local-gateway" | "local-gateway-route-table" | "local-gateway-virtual-interface" | "local-gateway-virtual-interface-group" | "local-gateway-route-table-vpc-association" | "local-gateway-route-table-virtual-interface-group-association" | "natgateway" | "network-acl" | "network-interface" | "network-insights-analysis" | "network-insights-path" | "network-insights-access-scope" | "network-insights-access-scope-analysis" | "outpost-lag" | "placement-group" | "prefix-list" | "replace-root-volume-task" | "reserved-instances" | "route-table" | "security-group" | "security-group-rule" | "service-link-virtual-interface" | "snapshot" | "spot-fleet-request" | "spot-instances-request" | "subnet" | "subnet-cidr-reservation" | "traffic-mirror-filter" | "traffic-mirror-session" | "traffic-mirror-target" | "transit-gateway" | "transit-gateway-attachment" | "transit-gateway-connect-peer" | "transit-gateway-multicast-domain" | "transit-gateway-policy-table" | "transit-gateway-route-table" | "transit-gateway-route-table-announcement" | "volume" | "vpc" | "vpc-endpoint" | "vpc-endpoint-connection" | "vpc-endpoint-service" | "vpc-endpoint-service-permission" | "vpc-peering-connection" | "vpn-connection" | "vpn-gateway" | "vpc-flow-log" | "capacity-reservation-fleet" | "traffic-mirror-filter-rule" | "vpc-endpoint-connection-device-type" | "verified-access-instance" | "verified-access-group" | "verified-access-endpoint" | "verified-access-policy" | "verified-access-trust-provider" | "vpn-connection-device-type" | "vpc-block-public-access-exclusion" | "route-server" | "route-server-endpoint" | "route-server-peer" | "ipam-resource-discovery" | "ipam-resource-discovery-association" | "instance-connect-endpoint" | "verified-access-endpoint-target" | "ipam-external-resource-verification-token")?,
703
+ tags: Array[
704
+ {
705
+ key: ::String?,
706
+ value: ::String?
707
+ },
708
+ ]?
709
+ },
710
+ ],
711
+ ?dry_run: bool,
712
+ name: ::String,
713
+ ?description: ::String,
714
+ ?architecture: ("i386" | "x86_64" | "arm64" | "x86_64_mac" | "arm64_mac"),
715
+ ?kernel_id: ::String,
716
+ ?ramdisk_id: ::String,
717
+ ?root_device_name: ::String,
718
+ ?block_device_mappings: Array[
719
+ {
720
+ ebs: {
721
+ delete_on_termination: bool?,
722
+ iops: ::Integer?,
723
+ snapshot_id: ::String?,
724
+ volume_size: ::Integer?,
725
+ volume_type: ("standard" | "io1" | "io2" | "gp2" | "sc1" | "st1" | "gp3")?,
726
+ kms_key_id: ::String?,
727
+ throughput: ::Integer?,
728
+ outpost_arn: ::String?,
729
+ encrypted: bool?,
730
+ volume_initialization_rate: ::Integer?
731
+ }?,
732
+ no_device: ::String?,
733
+ device_name: ::String?,
734
+ virtual_name: ::String?
735
+ },
736
+ ],
737
+ ?virtualization_type: ::String,
738
+ ?sriov_net_support: ::String,
739
+ ?ena_support: bool
740
+ ) -> Image
741
+ | (?Hash[Symbol, untyped]) -> Image
742
+
743
+
744
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#classic_addresses-instance_method
745
+ def classic_addresses: (
746
+ ?public_ips: Array[::String],
747
+ ?dry_run: bool,
748
+ ?filters: Array[
749
+ {
750
+ name: ::String?,
751
+ values: Array[::String]?
752
+ },
753
+ ],
754
+ ?allocation_ids: Array[::String]
755
+ ) -> ClassicAddress::Collection
756
+ | (?Hash[Symbol, untyped]) -> ClassicAddress::Collection
757
+
758
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#dhcp_options-instance_method
759
+ def dhcp_options: (String id) -> DhcpOptions
760
+
761
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#dhcp_options_sets-instance_method
762
+ def dhcp_options_sets: (
763
+ ?dhcp_options_ids: Array[::String],
764
+ ?dry_run: bool,
765
+ ?filters: Array[
766
+ {
767
+ name: ::String?,
768
+ values: Array[::String]?
769
+ },
770
+ ]
771
+ ) -> DhcpOptions::Collection
772
+ | (?Hash[Symbol, untyped]) -> DhcpOptions::Collection
773
+
774
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#image-instance_method
775
+ def image: (String id) -> Image
776
+
777
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#images-instance_method
778
+ def images: (
779
+ ?executable_users: Array[::String],
780
+ ?image_ids: Array[::String],
781
+ ?owners: Array[::String],
782
+ ?include_deprecated: bool,
783
+ ?include_disabled: bool,
784
+ ?dry_run: bool,
785
+ ?filters: Array[
786
+ {
787
+ name: ::String?,
788
+ values: Array[::String]?
789
+ },
790
+ ]
791
+ ) -> Image::Collection
792
+ | (?Hash[Symbol, untyped]) -> Image::Collection
793
+
794
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#instance-instance_method
795
+ def instance: (String id) -> Instance
796
+
797
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#instances-instance_method
798
+ def instances: (
799
+ ?instance_ids: Array[::String],
800
+ ?dry_run: bool,
801
+ ?filters: Array[
802
+ {
803
+ name: ::String?,
804
+ values: Array[::String]?
805
+ },
806
+ ]
807
+ ) -> Instance::Collection
808
+ | (?Hash[Symbol, untyped]) -> Instance::Collection
809
+
810
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#internet_gateway-instance_method
811
+ def internet_gateway: (String id) -> InternetGateway
812
+
813
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#internet_gateways-instance_method
814
+ def internet_gateways: (
815
+ ?dry_run: bool,
816
+ ?internet_gateway_ids: Array[::String],
817
+ ?filters: Array[
818
+ {
819
+ name: ::String?,
820
+ values: Array[::String]?
821
+ },
822
+ ]
823
+ ) -> InternetGateway::Collection
824
+ | (?Hash[Symbol, untyped]) -> InternetGateway::Collection
825
+
826
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#key_pair-instance_method
827
+ def key_pair: (String name) -> KeyPairInfo
828
+
829
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#key_pairs-instance_method
830
+ def key_pairs: (
831
+ ?key_names: Array[::String],
832
+ ?key_pair_ids: Array[::String],
833
+ ?include_public_key: bool,
834
+ ?dry_run: bool,
835
+ ?filters: Array[
836
+ {
837
+ name: ::String?,
838
+ values: Array[::String]?
839
+ },
840
+ ]
841
+ ) -> KeyPairInfo::Collection
842
+ | (?Hash[Symbol, untyped]) -> KeyPairInfo::Collection
843
+
844
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#nat_gateway-instance_method
845
+ def nat_gateway: (String id) -> NatGateway
846
+
847
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#nat_gateways-instance_method
848
+ def nat_gateways: (
849
+ ?dry_run: bool,
850
+ ?filter: Array[
851
+ {
852
+ name: ::String?,
853
+ values: Array[::String]?
854
+ },
855
+ ],
856
+ ?nat_gateway_ids: Array[::String]
857
+ ) -> NatGateway::Collection
858
+ | (?Hash[Symbol, untyped]) -> NatGateway::Collection
859
+
860
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#network_acl-instance_method
861
+ def network_acl: (String id) -> NetworkAcl
862
+
863
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#network_acls-instance_method
864
+ def network_acls: (
865
+ ?dry_run: bool,
866
+ ?network_acl_ids: Array[::String],
867
+ ?filters: Array[
868
+ {
869
+ name: ::String?,
870
+ values: Array[::String]?
871
+ },
872
+ ]
873
+ ) -> NetworkAcl::Collection
874
+ | (?Hash[Symbol, untyped]) -> NetworkAcl::Collection
875
+
876
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#network_interface-instance_method
877
+ def network_interface: (String id) -> NetworkInterface
878
+
879
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#network_interfaces-instance_method
880
+ def network_interfaces: (
881
+ ?dry_run: bool,
882
+ ?network_interface_ids: Array[::String],
883
+ ?filters: Array[
884
+ {
885
+ name: ::String?,
886
+ values: Array[::String]?
887
+ },
888
+ ]
889
+ ) -> NetworkInterface::Collection
890
+ | (?Hash[Symbol, untyped]) -> NetworkInterface::Collection
891
+
892
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#placement_group-instance_method
893
+ def placement_group: (String name) -> PlacementGroup
894
+
895
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#placement_groups-instance_method
896
+ def placement_groups: (
897
+ ?group_ids: Array[::String],
898
+ ?dry_run: bool,
899
+ ?group_names: Array[::String],
900
+ ?filters: Array[
901
+ {
902
+ name: ::String?,
903
+ values: Array[::String]?
904
+ },
905
+ ]
906
+ ) -> PlacementGroup::Collection
907
+ | (?Hash[Symbol, untyped]) -> PlacementGroup::Collection
908
+
909
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#route_table-instance_method
910
+ def route_table: (String id) -> RouteTable
911
+
912
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#route_table_association-instance_method
913
+ def route_table_association: (String id) -> RouteTableAssociation
914
+
915
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#route_tables-instance_method
916
+ def route_tables: (
917
+ ?dry_run: bool,
918
+ ?route_table_ids: Array[::String],
919
+ ?filters: Array[
920
+ {
921
+ name: ::String?,
922
+ values: Array[::String]?
923
+ },
924
+ ]
925
+ ) -> RouteTable::Collection
926
+ | (?Hash[Symbol, untyped]) -> RouteTable::Collection
927
+
928
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#security_group-instance_method
929
+ def security_group: (String id) -> SecurityGroup
930
+
931
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#security_groups-instance_method
932
+ def security_groups: (
933
+ ?group_ids: Array[::String],
934
+ ?group_names: Array[::String],
935
+ ?dry_run: bool,
936
+ ?filters: Array[
937
+ {
938
+ name: ::String?,
939
+ values: Array[::String]?
940
+ },
941
+ ]
942
+ ) -> SecurityGroup::Collection
943
+ | (?Hash[Symbol, untyped]) -> SecurityGroup::Collection
944
+
945
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#snapshot-instance_method
946
+ def snapshot: (String id) -> Snapshot
947
+
948
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#snapshots-instance_method
949
+ def snapshots: (
950
+ ?owner_ids: Array[::String],
951
+ ?restorable_by_user_ids: Array[::String],
952
+ ?snapshot_ids: Array[::String],
953
+ ?dry_run: bool,
954
+ ?filters: Array[
955
+ {
956
+ name: ::String?,
957
+ values: Array[::String]?
958
+ },
959
+ ]
960
+ ) -> Snapshot::Collection
961
+ | (?Hash[Symbol, untyped]) -> Snapshot::Collection
962
+
963
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#subnet-instance_method
964
+ def subnet: (String id) -> Subnet
965
+
966
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#subnets-instance_method
967
+ def subnets: (
968
+ ?filters: Array[
969
+ {
970
+ name: ::String?,
971
+ values: Array[::String]?
972
+ },
973
+ ],
974
+ ?subnet_ids: Array[::String],
975
+ ?dry_run: bool
976
+ ) -> Subnet::Collection
977
+ | (?Hash[Symbol, untyped]) -> Subnet::Collection
978
+
979
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#volume-instance_method
980
+ def volume: (String id) -> Volume
981
+
982
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#volumes-instance_method
983
+ def volumes: (
984
+ ?volume_ids: Array[::String],
985
+ ?dry_run: bool,
986
+ ?filters: Array[
987
+ {
988
+ name: ::String?,
989
+ values: Array[::String]?
990
+ },
991
+ ]
992
+ ) -> Volume::Collection
993
+ | (?Hash[Symbol, untyped]) -> Volume::Collection
994
+
995
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#vpc-instance_method
996
+ def vpc: (String id) -> Vpc
997
+
998
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#vpc_addresses-instance_method
999
+ def vpc_addresses: (
1000
+ ?public_ips: Array[::String],
1001
+ ?dry_run: bool,
1002
+ ?filters: Array[
1003
+ {
1004
+ name: ::String?,
1005
+ values: Array[::String]?
1006
+ },
1007
+ ],
1008
+ ?allocation_ids: Array[::String]
1009
+ ) -> VpcAddress::Collection
1010
+ | (?Hash[Symbol, untyped]) -> VpcAddress::Collection
1011
+
1012
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#vpc_peering_connection-instance_method
1013
+ def vpc_peering_connection: (String id) -> VpcPeeringConnection
1014
+
1015
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#vpc_peering_connections-instance_method
1016
+ def vpc_peering_connections: (
1017
+ ?dry_run: bool,
1018
+ ?vpc_peering_connection_ids: Array[::String],
1019
+ ?filters: Array[
1020
+ {
1021
+ name: ::String?,
1022
+ values: Array[::String]?
1023
+ },
1024
+ ]
1025
+ ) -> VpcPeeringConnection::Collection
1026
+ | (?Hash[Symbol, untyped]) -> VpcPeeringConnection::Collection
1027
+
1028
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/EC2/Resource.html#vpcs-instance_method
1029
+ def vpcs: (
1030
+ ?filters: Array[
1031
+ {
1032
+ name: ::String?,
1033
+ values: Array[::String]?
1034
+ },
1035
+ ],
1036
+ ?vpc_ids: Array[::String],
1037
+ ?dry_run: bool
1038
+ ) -> Vpc::Collection
1039
+ | (?Hash[Symbol, untyped]) -> Vpc::Collection
1040
+ end
1041
+ end
1042
+ end